*参照元 [#x4011401]
#backlinks

*説明 [#p01e3914]
-パス: [[linux-2.6.33/include/linux/spinlock.h]]

-FIXME: これは何?
--説明


**引数 [#m85e4504]
-raw_spinlock_t *lock
--
--[[linux-2.6.33/raw_spinlock_t]]
-unsigned long flags
--


**返り値 [#p5f0e2e2]
-なし


**参考 [#jee8a0bc]


*実装 [#beb3d1b7]
 #if defined(CONFIG_SMP) || defined(CONFIG_DEBUG_SPINLOCK)
 
-
-SMP 有効の場合
--[[linux-2.6.33/CONFIG_SMP]]
--[[linux-2.6.33/CONFIG_DEBUG_SPINLOCK]]

 (中略)
 
 #define raw_spin_lock_irqsave(lock, flags)			\
 	do {						\
 		typecheck(unsigned long, flags);	\
-
--[[linux-2.6.33/typecheck()]]

 		flags = _raw_spin_lock_irqsave(lock);	\
-SMP 有効の場合は、引数 1つの _raw_spin_lock_irqsave() を呼ぶ。
-引数 1つの _raw_spin_lock_irqsave() を呼ぶ。
--[[linux-2.6.33/_raw_spin_lock_irqsave()]]

 	} while (0)
 
 (中略)
 
 #else
 
 (中略)
 
-SMP 無効の場合

 #define raw_spin_lock_irqsave(lock, flags)		\
 	do {						\
 		typecheck(unsigned long, flags);	\
 		_raw_spin_lock_irqsave(lock, flags);	\
-SMP 有効の場合は、引数 2つの _raw_spin_lock_irqsave() を呼ぶ。
-引数 2つの _raw_spin_lock_irqsave() を呼ぶ。

 	} while (0)
 
 (中略)
 
 #endif

*コメント [#y9a2fa51]

トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS