linux-2.6.25/kblockd_schedule_work()
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
*参照元 [#c3ff55cb]
#backlinks
*注意 [#a15d9286]
-より新しいバージョンがあります。
--[[linux-2.6.33/kblockd_schedule_work()]]
*説明 [#u25e834b]
-パス: [[linux-2.6.25/block/blk-core.c]]
-指定した仕事をワークキューにスケジュールする。ワークキュ...
関数はいずれカーネルスレッドが実行してくれる。
-何に使っているか?
--リクエストキューの unplug(栓を取りさること)に使う。
--ほかも?
**引数 [#l5901979]
-struct work_struct *work
--スケジュールする仕事を指定する。
--[[linux-2.6.25/work_struct]]
**返り値 [#m6d93ffd]
-int
--キューに追加しようとした仕事が既に登録済みだったときは ...
成功すれば 1 を返す。
**参考 [#da048403]
static struct workqueue_struct *kblockd_workqueue;
-
--[[linux-2.6.25/workqueue_struct()]]
-ワークキューに登録した関数はカーネルスレッド上で実行され...
--ユーザコンテキストは存在しない。copy_to_user とかできま...
--内部でスリープ可能である。
--割り込みが許可されている。
*実装 [#r1675863]
int kblockd_schedule_work(struct work_struct *work)
{
return queue_work(kblockd_workqueue, work);
-ブロックデバイス用のワークキューに、
指定された仕事を登録する。
--[[linux-2.6.25/queue_work()]]
--kblockd_workqueue はグローバル変数
}
EXPORT_SYMBOL(kblockd_schedule_work);
-関数をエクスポートする。
--[[linux-2.6.25/EXPORT_SYMBOL()]]
*コメント [#m5297a26]
終了行:
*参照元 [#c3ff55cb]
#backlinks
*注意 [#a15d9286]
-より新しいバージョンがあります。
--[[linux-2.6.33/kblockd_schedule_work()]]
*説明 [#u25e834b]
-パス: [[linux-2.6.25/block/blk-core.c]]
-指定した仕事をワークキューにスケジュールする。ワークキュ...
関数はいずれカーネルスレッドが実行してくれる。
-何に使っているか?
--リクエストキューの unplug(栓を取りさること)に使う。
--ほかも?
**引数 [#l5901979]
-struct work_struct *work
--スケジュールする仕事を指定する。
--[[linux-2.6.25/work_struct]]
**返り値 [#m6d93ffd]
-int
--キューに追加しようとした仕事が既に登録済みだったときは ...
成功すれば 1 を返す。
**参考 [#da048403]
static struct workqueue_struct *kblockd_workqueue;
-
--[[linux-2.6.25/workqueue_struct()]]
-ワークキューに登録した関数はカーネルスレッド上で実行され...
--ユーザコンテキストは存在しない。copy_to_user とかできま...
--内部でスリープ可能である。
--割り込みが許可されている。
*実装 [#r1675863]
int kblockd_schedule_work(struct work_struct *work)
{
return queue_work(kblockd_workqueue, work);
-ブロックデバイス用のワークキューに、
指定された仕事を登録する。
--[[linux-2.6.25/queue_work()]]
--kblockd_workqueue はグローバル変数
}
EXPORT_SYMBOL(kblockd_schedule_work);
-関数をエクスポートする。
--[[linux-2.6.25/EXPORT_SYMBOL()]]
*コメント [#m5297a26]
ページ名: