*参照元 [#b39a2972] #backlinks *説明 [#df0132e5] -パス: [[linux-2.6.33/block/blk-core.c]] -FIXME: これは何? --説明 **引数 [#vcc2cfec] -なし **返り値 [#i6bfd887] -int --成功の時は 0、失敗なら 0 以外 **参考 [#kde2fdbc] -kblockd_workqueue にキューイングする関数 --[[linux-2.6.33/kblockd_schedule_work()]] *実装 [#q05f8f6e] int __init blk_dev_init(void) { BUILD_BUG_ON(__REQ_NR_BITS > 8 * sizeof(((struct request *)0)->cmd_flags)); - --[[linux-2.6.33/__REQ_NR_BITS]] - --[[linux-2.6.33/request]] - --[[linux-2.6.33/BUILD_BUG_ON()]] kblockd_workqueue = create_workqueue("kblockd"); if (!kblockd_workqueue) panic("Failed to create kblockd\n"); -kblockd_workqueue は static 変数、workqueue_struct * 型 --[[linux-2.6.33/workqueue_struct]] - --[[linux-2.6.33/create_workqueue()]] - --[[linux-2.6.33/panic()]] request_cachep = kmem_cache_create("blkdev_requests", sizeof(struct request), 0, SLAB_PANIC, NULL); - --[[linux-2.6.33/SLAB_PANIC]] -request_cachep は static 変数、kmem_cache 型 --[[linux-2.6.33/kmem_cache]] - --[[linux-2.6.33/kmem_cache_create()]] blk_requestq_cachep = kmem_cache_create("blkdev_queue", sizeof(struct request_queue), 0, SLAB_PANIC, NULL); -blk_requestq_cachep は static 変数、kmem_cache 型 - --[[linux-2.6.33/request_queue]] return 0; } *コメント [#hc4be9f8]