*参照元 [#d152ce95]
#backlinks

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

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


**引数 [#vef14b1b]
-void *word
--
-int bit
--
-int (*action)(void *)
--
-unsigned mode
--


**返り値 [#md9efc23]
-int
--


**参考 [#f42a7b7e]


*実装 [#g9a3bd26]
 /**
  * wait_on_bit_lock - wait for a bit to be cleared, when wanting to set it
  * @word: the word being waited on, a kernel virtual address
  * @bit: the bit of the word being waited on
  * @action: the function used to sleep, which may take special actions
  * @mode: the task state to sleep in
  *
  * There is a standard hashed waitqueue table for generic use. This
  * is the part of the hashtable's accessor API that waits on a bit
  * when one intends to set it, for instance, trying to lock bitflags.
  * For instance, if one were to have waiters trying to set bitflag
  * and waiting for it to clear before setting it, one would call
  * wait_on_bit() in threads waiting to be able to set the bit.
  * One uses wait_on_bit_lock() where one is waiting for the bit to
  * clear with the intention of setting it, and when done, clearing it.
  */
 static inline int wait_on_bit_lock(void *word, int bit,
 				int (*action)(void *), unsigned mode)
 {
 	if (!test_and_set_bit(bit, word))
-
--[[linux-2.6.33/test_and_set_bit()]]

 		return 0;
 	return out_of_line_wait_on_bit_lock(word, bit, action, mode);
-
--[[linux-2.6.33/out_of_line_wait_on_bit_lock()]]

 }


*コメント [#a375de5b]


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