- 追加された行はこの色です。
- 削除された行はこの色です。
*参照元 [#jab1722e]
#backlinks
*説明 [#ye94266f]
-パス: [[linux-2.6.33/include/linux/smp_lock.h]]
-FIXME: これは何?
--説明
-BKL(Big Kernel Lock)がロック状態かどうかを返す。
**引数 [#r0ba8d82]
-なし
**返り値 [#bcfc896a]
-int
--
--ロック状態なら 0以外、ロックされていない状態なら 0
**参考 [#t6803084]
-BKL 関連の関数
--[[linux-2.6.33/kernel_locked()]]
--[[linux-2.6.33/lock_kernel()]]
--[[linux-2.6.33/unlock_kernel()]]
*実装 [#d7d10ebd]
** [#t87ae910]
**BKL(Big Kernel Lock)有効の場合 [#t87ae910]
#ifdef CONFIG_LOCK_KERNEL
-
-BKL 有効の場合
--[[linux-2.6.33/CONFIG_LOCK_KERNEL]]
(略)
#define kernel_locked() (current->lock_depth >= 0)
-
-ロックカウントをみてロック状態を判断する。
--0 以上: ロック状態
--負: ロックされていない状態
--[[linux-2.6.33/current(global)]]
(略)
** [#ha82ce29]
**BKL(Big Kernel Lock)無効の場合 [#ha82ce29]
#else
-BKL 無効の場合
(略)
#define kernel_locked() 1
-
-常にロック状態であると返す。
#endif /* CONFIG_LOCK_KERNEL */
*コメント [#q95402c5]