*参照元 [#s0a87966] #backlinks *説明 [#md54a076] -パス: [[linux-2.6.33/block/blk-core.c]] -FIXME: これは何? --説明 -指定した仕事をワークキューに追加する。 ワークキュー内の関数はいつかカーネルスレッドが実行してくれる。 --[[linux-2.6/ワークキュー]] --[[linux-2.6/カーネルスレッド]] -何に使っているか? --リクエストキューの unplug(栓を取りさること)に使う。 --ほかも? **引数 [#s4067873] -struct request_queue *q -- --[[linux-2.6.33/request_queue]] -struct work_struct *work --遅延実行したい仕事を指定する。 --[[linux-2.6.33/work_struct]] **返り値 [#vfc2062e] -int --キューに追加しようとした仕事が既に登録済みだったときは 0 を返す。 成功すれば 1 を返す。 **参考 [#p41e0a5a] *実装 [#w57d0f78] int kblockd_schedule_work(struct request_queue *q, struct work_struct *work) { return queue_work(kblockd_workqueue, work); -ワークキューに登録した関数はいずれカーネルスレッド上で実行される。 --[[linux-2.6.33/queue_work()]] --[[linux-2.6/カーネルスレッド]] } EXPORT_SYMBOL(kblockd_schedule_work); -ライセンスに関係なくシンボルを公開する --[[linux-2.6.33/EXPORT_SYMBOL()]] *コメント [#c999cfc8]