mutex_type_adaptive
指定したカーネル相互排他ロックが適応型の場合に、ゼロ以外の値を返します。
int mutex_type_adaptive(vmlinux`struct mutex *)
mutex_type_adaptive
関数は、指定したカーネル相互排他ロックが適応型の場合に、ゼロ以外の値を返します。Oracle Linuxカーネルのすべての相互排他ロックは適応型であり、mutex_type_adaptive
関数は常に1
を返します。
例7-30 mutex_type_adaptiveを使用して相互排他ロックが適応型でないかどうかを確認する方法
Oracle Linux上のすべての相互排他ロックは適応性があるため、このプログラムの最後の節は処理されません。
fbt::mutex_lock:entry
{
this->mutex = arg0;
}
fbt::mutex_lock:return
{
this->adaptive = mutex_type_adaptive((struct mutex *)this->mutex);
}
fbt::mutex_lock:return
/!this->adaptive/
{
printf("mutex_type_adaptive returned 0, expected non-zero\n");
exit(1);
}