cpuextintr_ctl Command

Purpose

Performs CPU external interrupt control related operations on CPUs.

Syntax

cpuextintr_ctl [ -R rsetname | -C CPUList] -i [enable | disable]

cpuextintr_ctl -q [enable | disable]

cpuextintr_ctl -Q

Description

This command provides means of enabling, disabling, and querying the external interrupt state on the CPU described by the CPU resource set. Enabling or disabling a CPUs external interrupt could affect the external interrupt delivery to the CPU. Normally, on multiple CPU system, external interrupts can be delivered to any running CPU, and the distribution of interrupts among the CPU is determined by a predefined method. Any external interrupt can only be delivered to a CPU if its interrupt priority is more favored than the current external interrupt priority of the CPU. When external interrupts are disabled via this interface, any external interrupt priority less favoured than INTMAX will be blocked until interrupts are enabled again. This command is applicable only on selective hardware types.

Note: Since this command change the way that interrupts is delivered, system performance may be affected. This service guarantees at least one online CPU will have external interrupts enabled for all device interrupts. Any DLPAR CPU removal can fail if the operation breaks this guarantee. On an I/O bound system, one CPU may not be enough to handle all of the external interrupts received by the partition. Performance may suffer when there are not enough CPUs enabled to handle external interrupts.

Flags

Item Description
-R rsetname The CPU resource set that is the target for minimal allowed external interrupt priority related operations.
-C CPUlist List of CPUs to be in the rset for minimal allowed external interrupt priority related operations.
-i enable/disable This operation will enable or disable external interrupts on the CPUs specified by either rsetname or CPUlist.
-q enable/disable This operation will return a list of CPUs that have its external interrupt enabled or disabled.
-Q This operation will query the external interrupt control state for all the online CPU's.
Note: The CPU id used by this command is logic CPU id.

Security

The user must have root authority with CAP_NUMA_ATTACH capability or PV_KER_CONF privilege in the RBAC environment.

Attention RBAC users and Trusted AIX® users: This command can perform privileged operations. Only privileged users can run privileged operations. For more information about authorizations and privileges, see Privileged Command Database in Security. For a list of privileges and the authorizations associated with this command, see the lssecattr command or the getcmdattr subcommand.

Examples

  1. To disable external interrupts on CPU 0, 4, 8, 12-40:
    cpuextintr_ctl –C 0 4 8 12-40 –i disable
  2. To enable all the external interrupts on the cpu rset named test/mycpuset:
    cpuextintr_ctl –R test/mycpuset –i enable
  3. To query CPU external interrupt control status on the system:
    cpuextintr_ctl -Q
    The CPUs that have external interrupts enabled:
       0    1    2    3    4    5    6    7    8    9 
      10   11   12   13   14   15   16   17   18   19 
      20   21   22   23   24   25   26   27   28   29 
      30   31   32   33   34   35   36   37   38   39 
      40   41   42   43   44   45   46   47   48   49 
      50   51   52   53   54   55   56   57   58   59 
      60   61   62   63   64   65   66   67   68   69 

    The CPUs that have external interrupts disabled:

    70   71   72   73   74   75   76   77   78   79
  4. To query CPUs that have external interrupts disabled on the system:
    cpuextintr_ctl -q enable

    The CPUs that have external interrupts enabled:

    50   51   52 
  5. To disable external interrupts on all online CPUs
    cpuextintr_ctl -R sys/sys0 -i disable

    The -i option failed on some of the CPUs.

This command will try to disable external interrupts on all online CPUs at the time of operation. Since there is a minimal external interrupt enabled CPU requirement, this operation will be failed on one of the CPUs. The CPU left with external interrupts enabled will be based on the system choice.

Files

Item Description
/usr/sbin/cpuextintr_ctl Contains the cpuextintr_ctl command.