mpadmin(1)                                                          mpadmin(1)


NAME
     mpadmin - control and report processor status

SYNOPSIS
     mpadmin -n

     mpadmin -u[processor]

     mpadmin -r[processor]

     mpadmin -c[processor]

     mpadmin -f[processor]

     mpadmin -I[processor]

     mpadmin -U[processor]

     mpadmin -D[processor]

     mpadmin -C[processor]

     mpadmin -p[processor]

     mpadmin -w[processor]

     mpadmin -x[processor]

     mpadmin -y[processor]

     mpadmin -N

     mpadmin -s

DESCRIPTION
     mpadmin provides control over and information about processor status.

     Exactly one argument is accepted by mpadmin at each invocation.  The
     following arguments are accepted:

     -n           Report which processors are physically configured.  The
                  numbers of the physically configured processors are written
                  to the standard output, one processor number per line.
                  Processors are numbered beginning from 0.

     -u[processor]
                  When no processor is specified, the numbers of the
                  processors that are available to schedule unrestricted
                  processes are written to the standard output.  Otherwise,
                  mpadmin enables the processor number processor to run any
                  unrestricted processes.


     -r[processor]
                  When no processor is specified, the numbers of the
                  processors that are restricted from running any processes
                  (except those assigned via the sysmp(MP_MUSTRUN) function,
                  the runon(1) command, or because of hardware necessity) are
                  written to the standard output.  Otherwise, mpadmin
                  restricts the processor numbered processor.

     -c[processor]
                  When no processor is specified, the number of the processor
                  that handles the operating system software clock is written
                  to the standard output.  Otherwise, operating system
                  software clock handling is moved to the processor numbered
                  processor.  Operating system software clock handling cannot
                  be assigned to a processor that has been excluded via the -x
                  option nor to a processor that has timeouts warded off via
                  the -w option.  See timers(5) for more details.

     -f[processor]
                  When no processor is specified, the number of the processor
                  that handles the operating system fast clock is written to
                  the standard output.  Otherwise, operating system fast clock
                  handling is moved to the processor numbered processor.  Fast
                  clock handling cannot be assigned to a processor that has
                  been excluded via the -x option.  See ftimer(1) and
                  timers(5) for a description of the fast clock usage.

     -I[processor]
                  When no processor is specified, the numbers of the
                  processors that are isolated are written to the standard
                  output.  Otherwise, mpadmin isolates the processor numbered
                  processor.  An isolated processor is restricted as by the -r
                  argument.  In addition, instruction cache and Translation
                  Lookaside Buffer synchronization are blocked, and
                  synchronization is delayed until a system service is
                  requested.

     -U[processor]
                  When no processor is specified, the numbers of the
                  processors that are not isolated are written to the standard
                  output.  Otherwise, mpadmin unisolates the processor
                  numbered processor.

     -D[processor]
                  When no processor is specified, the numbers of the
                  processors that are not running the clock scheduler are
                  written to the standard output.  Otherwise, mpadmin disables
                  the clock scheduler on the processor numbered processor.
                  This makes that processor nonpreemptive, so that normal IRIX
                  process time slicing is no longer enforced.  Processes that
                  run on a non-preemptive processor are not preempted because
                  of timer interrupts.  They are preempted only when


                  requesting a system service that causes them to wait, or
                  that makes a higher-priority process runnable (for example,
                  posting a semaphore).  This command also wards off Real-Time
                  Clock interrupts from timeouts and interval timers to other
                  processors.

     -C[processor]
                  When no processor is specified, the numbers of the
                  processors that are running the clock scheduler are written
                  to the standard output.  Otherwise, mpadmin enables the
                  clock scheduler on the processor numbered processor.
                  Processes on a preemptive processor can be preempted at the
                  end of their time slice.  This command also permits RTC
                  interrupts to be handled.

     -p[processor]
                  When no processor is specified, the numbers of the
                  processors that are permitted to use the Real-Time Clock
                  (RTC) for timeouts and interval timers are written to the
                  standard output.  Otherwise mpadmin permits the RTC to be
                  used on the processor numbered processor.

     -w[processor]
                  When no processor is specified, the numbers of the
                  processors that have warded off use of the RTC for timeouts
                  and interval timers to other processors are written to the
                  standard output.  Otherwise mpadmin wards off their usage
                  from the processor numbered processor.  Timeouts created by
                  threads running on processor are queued to other processors.

     -x[processor]
                  When no processor is specified, the numbers of the
                  processors that are excluded are written to the standard
                  output.  Otherwise, mpadmin excludes the processor numbered
                  processor.  An excluded processor is removed from system
                  usage.  Currently, the processor is isolated in the same
                  manner as the -I argument.  In addition, the runon command
                  and sysmp(MP_MUSTRUN) function are prohibited from executing
                  any commands on the processor.  This request fails if there
                  are any MUSTRUN processes currently running on the
                  processor.

     -y[processor]
                  When no processor is specified, the numbers of the
                  processors that are not excluded are written to the standard
                  output.  Otherwise, mpadmin unexcludes the processor
                  numbered processor.

     -N           A list of processors that are isolated from receiving
                  sprayed interrupts.  The system administrator can isolate
                  one or more CPUs from receiving sprayed interrupts by
                  placing the NOINTR statement in the system configuration


                  file, /var/sysgen/system/irix.sm

     -s           A summary of the unrestricted, restricted, isolated,
                  excluded, preemptive and clock processor numbers is written
                  to the standard output.

FILES
     /var/sysgen/system/irix.sm      system configuration file

SEE ALSO
     ftimer(1), runon(1), sysmp(2), timers(5).

DIAGNOSTICS
     When an argument specifies a processor, 0 is returned on success, -1 on
     failure.  Otherwise, the number of processors associated with argument is
     returned.

WARNINGS
     It is not possible to restrict, isolate, ward, or excluded all
     processors.  Processor 0 must never be restricted, isolated, or excluded.

BUGS
     Changing the clock processor may cause the system to lose a small amount
     of system time.

     When a processor is not provided as an argument, mpadmin's exit value
     will not exceed 255.  If more than 255 processors exist, mpadmin will
     return 0.


                                                                        Page 4