cpuextintr_ctl サブルーチン
目的
CPU に対する中央演算処理装置 (CPU) 外部割り込み制御関連の操作を実行します。
ライブラリー
標準 C ライブラリー (libc.a)
構文
#include <sys/intr.h>
int cpuextintr_ctl(command,cpuset,flags)
extintrctl_t command;
rsethandle_t cpuset;
uint flags;
説明
cpuextintr_ctl サブルーチンは、CPU リソース・セットによって記述された CPU 上の外部割り込み状態を使用可能化、使用不可化、および照会する手段を提供します。 CPU の外部割り込みを使用可能または使用不可にすると、CPU への外部割り込み送達に影響します。 通常、複数 CPU システムでは、外部割り込みは実行中の任意の CPU に送信することができ、CPU 間の分散は事前定義された方式によって決定されます。 ある CPU への外部割り込みの送達が可能となるのは、外部割り込みの割り込み優先順位が、CPU の現在の外部割り込み優先順位よりも高い場合のみです。 このインターフェースを介して外部割り込みを使用不可にすると、INTMAX より優先度の低い外部割り込み優先度は、割り込みが再び使用可能になるまでブロックされます。 cpuextintr_ctl サブルーチンは、選択的なハードウェア・タイプにのみ適用できます。
パラメーター
| 項目 | 説明 |
|---|---|
| command | CPU リソース・セットによって指定された CPU に対する操作を指定します。 <sys/intr.h> ファイルに定義されている以下のいずれかの値を使用できます。
|
| cpuset (cpuset) | CPU リソース・セットへの参照。 このカーネル・サービスから正常に戻ると、外部割り込み制御操作が完了した CPU が CPU リソース・セットに設定されます。 cpuset パラメーターによって指定される CPU は、論理 CPU ID です。 |
| flags | 常に 0 に設定するか、または EINVAL が戻されます。 |
セキュリティー
呼び出し側は、 CAP_NUMA_ATTACH 機能または RBAC 環境の PV_KER_CONF 特権を持つ root 権限を持っている必要があります。
戻り値
正常終了すると、 cpuextintr_ctl サブルーチンは、コマンドが正常に完了した CPU の数を戻します。 失敗した場合は-1が返され、エラーを示すerrnoグローバル変数が設定される。
エラー・コード
| 項目 | 説明 |
|---|---|
| EINVAL | コマンドが無効であるか、 cpuset が NULL を参照しているか、 cpuset が空であるか、またはフラグ値が不明です。 |
| EFAULT | 渡された cpuset バッファーが有効ではありません。 |
| ENOSYS | この機能はプラットフォームには実装されていません。 |
| EPERM | 呼び出し元には、要求された操作を実行するための十分な特権がありません。 |