*参照元 [#vd530e0a]
#backlinks

*説明 [#t5e25c95]
-パス: [[linux-2.6.33/block/blk-core.c]]

-FIXME: これは何?
--説明
-unplug 用タイマーの期限が来ると呼び出される関数である。
--ブロックデバイス用のワークキューに、
unplug の仕事を追加するだけ。
--[[linux-2.6/タイマー]]


**引数 [#jf196237]
**引数 [#i2bf5ea8]
-unsigned long data
--
--タイマー作成時に渡したデータ。
このタイマーの場合は、
struct request_queue へのポインタを unsigned long にキャストした値が渡される。
--[[linux-2.6.33/request_queue]]


**返り値 [#r1675b82]
**返り値 [#fcd2bb88]
-なし


**参考 [#m3c67715]
-unplug_work の初期化をしている関数
--[[linux-2.6.33/blk_alloc_queue_node()]]

-unplug_work は blk_unplug_work() を実行するように初期化されている。
-FIXME: 特殊なケースもあるかもしれないので、あれば追加。
--[[linux-2.6.33/blk_unplug_work()]]


*実装 [#la66a129]
 void blk_unplug_timeout(unsigned long data)
 {
 	struct request_queue *q = (struct request_queue *)data;
 
-
--[[linux-2.6.33/request_queue]]

 	trace_block_unplug_timer(q);
 	kblockd_schedule_work(q, &q->unplug_work);
-unplug_work は work_struct 型
--[[linux-2.6.33/work_struct]]
-
--[[linux-2.6.33/trace_block_unplug_timer()]]
-
--[[linux-2.6.33/kblockd_schedule_work()]]

 }


*コメント [#m5aca85d]

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