xenial (1) prctl.1.gz

Provided by: prctl_1.6-1_amd64 bug

NAME

       prctl - Process operations

SYNOPSIS

       prctl [-v] [-h|--help] [--version] <-q|<options....>> [command]

       where <options> are:

       --unaligned=[silent|signal|always-signal|default]

       --fpemu=[silent|signal|default]

       --mcekill=[early|late|default]

DESCRIPTION

       prctl allows you to query or control certain process behavior.  Supported options are:

       Unaligned  memory access: When a process performs an unaligned memory access, by default the kernel would
       emulate the unaligned access correctly and log the unaligned access  in  syslog.  This  behavior  can  be
       changed  so  the  kernel  could  either  emulate  the unaligned access correctly without logging an error
       ("silent") or send SIGBUS to the process ("signal" and "always-signal"). "always-signal" is available  on
       ia64 only.

       Floating  point  assistance faults: when a process encounters a floating point assist fault, kernel would
       invoke floating point emulator and log the floating point assist fault. This behavior can be  changed  so
       the  kernel  could  either  emulate  floating point operation without logging an error ("silent") or send
       SIGFPE to the offending process ("signal").

       Machine check memory corruption kill policy: If a  hardware  memeory  corruption  is  detected  inside  a
       thread's  address  space, mmemory corruption kill policy determines whether the thread received SIGBUS as
       soon as corruption is detected ("early"), when it accesses corrupted memory ("late"), or use system  wide
       default.

       prctl  can  optionally  be  followed by a command. If a command is specified, prctl will exec the command
       with the processor behavior set to as specified by the options. If a command is not specified, prctl will
       fork  a  new shell unless the command only queried the current settings.  The shell started by prctl will
       be as defined by the environment variable SHELL. If environment variable SHELL is not defined,  shell  in
       the password entry for the user will be started. If a shell is not found in the password entry, bash will
       be started.

   OPTIONS
       -v     Verbose mode. In verbose mode, any new settings are confirmed with a message on stdout.

       --help Print usage information and exit.

       --version
              Print software version and exit.

       -q     Query the current settings for the process options controllable by prctl.

       --unaligned=[silent|signal|always-signal|default]]
              Set unaligned memory access behavior to not log the access (silent), send SIGBUS  to  the  process
              (signal),  or do the default (default). On IA-64 architecture an additional value always-signal is
              supported which causes a SIGBUS to be generated every time an unaligned access  occurs.  Refer  to
              the  section  titled  "Memory Datum Alignment and Atomicity" in "Intel IA-64 Architecture Software
              Developer's Manual: Volume 2" for details on when an unaligned access would  not  generate  signal
              normally. If a value is not specified after "=", current setting is returned.

       --fpemu=[silent|signal|default]]
              Set  floating  point  assist  fault  behavior  to  not log the faulti (silent), send SIGFPE to the
              process (signal), or do the default (default). If a value is  not  specified  after  "=",  current
              setting is returned.

       If an option is specified multiple times, the last one takes effect.

EXAMPLES

       prctl --unaligned=signal
              starts  up  a shell (as defined by the environment variable SHELL) and sets up any process running
              under this shell to be sent SIGBUS upon an unaligned memory access.

       prctl --unaligned=signal gdb tst
              starts up a gdb session for the program "tst" with the process set to receive SIGBUS upon unligned
              memory access.

       prctl --unaligned=
              displays the current setting for unaligned memory access handling.

       prctl --unaligned= gdb tst
              displays  the current setting for unaligned memory access handling and starts up a gdb session for
              the program "tst".

NOTES

       prctl works on 2.4.0 and above kernels only.

       --fpemu= option is specific to IPF (Itanium Processor Family, previously known as IA-64) and is supported
       on kernels 2.4.11 and above. Other architectures and kernels may return "Invalid argument" error.

SEE ALSO

       prctl(2)

AUTHOR

       Khalid Aziz <khalid.aziz@oracle.com>

LICENSE

       This  software  is  made  available  under the GNU General Public License (GPL) Version 2.  This software
       comes with NO WARRANTY.

                                               Process operations                                       PRCTL(1)