*参照元 [#pdf05652] #backlinks *説明 [#c413c131] -パス: [[linux-2.6.33/include/linux/smp_lock.h]] -BKL(Big Kernel Lock)を解放する。 --BKL はネスト可能である。 **引数 [#x1f01e70] -なし **返り値 [#l8557d57] -なし **参考 [#ae08a0fa] -BKL 関連の関数 --[[linux-2.6.33/kernel_locked()]] --[[linux-2.6.33/lock_kernel()]] --[[linux-2.6.33/unlock_kernel()]] *実装 [#d4638564] **BKL(Big Kernel Lock)有効の場合 [#t87ae910] #ifdef CONFIG_LOCK_KERNEL -BKL 有効の場合 --[[linux-2.6.33/CONFIG_LOCK_KERNEL]] (略) #define unlock_kernel() do { \ _unlock_kernel(__func__, __FILE__, __LINE__); \ -BKL のアンロック関数を呼び出した、関数名、ソースファイル名、行数を、 BKL のアンロック関数に渡す。 BKL のアンロック関数の本体(_unlock_kernel() 関数)に渡す。 --[[linux-2.6.33/_unlock_kernel()]] } while (0) **BKL(Big Kernel Lock)無効の場合 [#ha82ce29] #else -BKL 無効の場合 (略) #define unlock_kernel() -何もしない。 #endif /* CONFIG_LOCK_KERNEL */ *コメント [#i480ffbf]