*参照元 [#hd84d1c4] #backlinks *説明 [#u214a5db] -パス: [[linux-2.6.25/block/blk-core.c]] -FIXME: これは何? --説明 **引数 [#x72aa7ae] -struct work_struct *work -- --[[linux-2.6.25/work_struct]] **返り値 [#e2ccd429] -なし **参考 [#kcd8b467] -なし *実装 [#feea0e0a] void blk_unplug_work(struct work_struct *work) { struct request_queue *q = container_of(work, struct request_queue, unplug_work); -渡された work が指すメンバー(メンバー名は unplug_work)を含む、 request_queue 構造体へのポインタを取得する。 --[[linux-2.6.25/container_of()]] --[[linux-2.6.25/request_queue]] blk_add_trace_pdu_int(q, BLK_TA_UNPLUG_IO, NULL, q->rq.count[READ] + q->rq.count[WRITE]); - --[[linux-2.6.25/blk_add_trace_pdu_int()]] q->unplug_fn(q); -リクエストキューを unplug(栓を外すこと)する。 -現在のところ generic_unplug_device が呼び出される。 --[[linux-2.6.25/generic_unplug_device()]] } *コメント [#c3057407]