linux-2.6.33/request_queue
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
*参照元 [#a39af280]
#backlinks
*説明 [#iccd54e2]
-パス: [[linux-2.6.33/include/linux/blkdev.h]]
-FIXME: これは何?
--説明
**参考 [#qf759182]
*実装 [#w9560b92]
struct request_queue
{
/*
* Together with queue_head for cacheline sharing
*/
struct list_head queue_head;
struct request *last_merge;
struct elevator_queue *elevator;
-
--[[linux-2.6.33/list_head]]
-
--[[linux-2.6.33/request]]
-
--[[linux-2.6.33/elevator_queue]]
/*
* the queue request freelist, one for reads and one fo...
*/
struct request_list rq;
-
--[[linux-2.6.33/request_list]]
request_fn_proc *request_fn;
make_request_fn *make_request_fn;
prep_rq_fn *prep_rq_fn;
unplug_fn *unplug_fn;
-
--[[linux-2.6.33/request_fn_proc]]
-
--[[linux-2.6.33/make_request_fn]]
-
--[[linux-2.6.33/prep_rq_fn]]
-
--[[linux-2.6.33/unplug_fn]]
merge_bvec_fn *merge_bvec_fn;
prepare_flush_fn *prepare_flush_fn;
softirq_done_fn *softirq_done_fn;
rq_timed_out_fn *rq_timed_out_fn;
-
--[[linux-2.6.33/merge_bvec_fn]]
-
--[[linux-2.6.33/prepare_flush_fn]]
-
--[[linux-2.6.33/softirq_done_fn]]
-
--[[linux-2.6.33/rq_timed_out_fn]]
dma_drain_needed_fn *dma_drain_needed;
lld_busy_fn *lld_busy_fn;
-
--[[linux-2.6.33/dma_drain_needed_fn]]
-
--[[linux-2.6.33/lld_busy_fn]]
/*
* Dispatch queue sorting
*/
sector_t end_sector;
struct request *boundary_rq;
-
--[[linux-2.6.33/sector_t]]
-
--[[linux-2.6.33/request]]
/*
* Auto-unplugging state
*/
struct timer_list unplug_timer;
int unplug_thresh; /* After this many requests */
unsigned long unplug_delay; /* After this many jiffies...
struct work_struct unplug_work;
-
--[[linux-2.6.33/timer_list]]
-
--[[linux-2.6.33/work_struct]]
struct backing_dev_info backing_dev_info;
-
--[[linux-2.6.33/backing_dev_info]]
/*
* The queue owner gets to use this for whatever they l...
* ll_rw_blk doesn't touch it.
*/
void *queuedata;
/*
* queue needs bounce pages for pages above this limit
*/
gfp_t bounce_gfp;
-
--[[linux-2.6.33/gfp_t]]
/*
* various queue flags, see QUEUE_* below
*/
unsigned long queue_flags;
/*
* protects queue structures from reentrancy. ->__queue...
* _never_ be used directly, it is queue private. alway...
* ->queue_lock.
*/
spinlock_t __queue_lock;
spinlock_t *queue_lock;
-
--[[linux-2.6.33/spinlock_t]]
/*
* queue kobject
*/
struct kobject kobj;
-
--[[linux-2.6.33/kobject]]
/*
* queue settings
*/
unsigned long nr_requests; /* Max # of requests */
unsigned int nr_congestion_on;
unsigned int nr_congestion_off;
unsigned int nr_batching;
void *dma_drain_buffer;
unsigned int dma_drain_size;
unsigned int dma_pad_mask;
unsigned int dma_alignment;
struct blk_queue_tag *queue_tags;
struct list_head tag_busy_list;
-
--[[linux-2.6.33/blk_queue_tag]]
unsigned int nr_sorted;
unsigned int in_flight[2];
unsigned int rq_timeout;
struct timer_list timeout;
struct list_head timeout_list;
struct queue_limits limits;
-
--[[linux-2.6.33/queue_limits]]
/*
* sg stuff
*/
unsigned int sg_timeout;
unsigned int sg_reserved_size;
int node;
#ifdef CONFIG_BLK_DEV_IO_TRACE
struct blk_trace *blk_trace;
#endif
-
--[[linux-2.6.33/blk_trace]]
/*
* reserved for flush operations
*/
unsigned int ordered, next_ordered, ordseq;
int orderr, ordcolor;
struct request pre_flush_rq, bar_rq, post_flush_rq;
struct request *orig_bar_rq;
struct mutex sysfs_lock;
-
--[[linux-2.6.33/mutex]]
#if defined(CONFIG_BLK_DEV_BSG)
struct bsg_class_device bsg_dev;
#endif
-
--[[linux-2.6.33/bsg_class_device]]
};
*コメント [#u1598381]
終了行:
*参照元 [#a39af280]
#backlinks
*説明 [#iccd54e2]
-パス: [[linux-2.6.33/include/linux/blkdev.h]]
-FIXME: これは何?
--説明
**参考 [#qf759182]
*実装 [#w9560b92]
struct request_queue
{
/*
* Together with queue_head for cacheline sharing
*/
struct list_head queue_head;
struct request *last_merge;
struct elevator_queue *elevator;
-
--[[linux-2.6.33/list_head]]
-
--[[linux-2.6.33/request]]
-
--[[linux-2.6.33/elevator_queue]]
/*
* the queue request freelist, one for reads and one fo...
*/
struct request_list rq;
-
--[[linux-2.6.33/request_list]]
request_fn_proc *request_fn;
make_request_fn *make_request_fn;
prep_rq_fn *prep_rq_fn;
unplug_fn *unplug_fn;
-
--[[linux-2.6.33/request_fn_proc]]
-
--[[linux-2.6.33/make_request_fn]]
-
--[[linux-2.6.33/prep_rq_fn]]
-
--[[linux-2.6.33/unplug_fn]]
merge_bvec_fn *merge_bvec_fn;
prepare_flush_fn *prepare_flush_fn;
softirq_done_fn *softirq_done_fn;
rq_timed_out_fn *rq_timed_out_fn;
-
--[[linux-2.6.33/merge_bvec_fn]]
-
--[[linux-2.6.33/prepare_flush_fn]]
-
--[[linux-2.6.33/softirq_done_fn]]
-
--[[linux-2.6.33/rq_timed_out_fn]]
dma_drain_needed_fn *dma_drain_needed;
lld_busy_fn *lld_busy_fn;
-
--[[linux-2.6.33/dma_drain_needed_fn]]
-
--[[linux-2.6.33/lld_busy_fn]]
/*
* Dispatch queue sorting
*/
sector_t end_sector;
struct request *boundary_rq;
-
--[[linux-2.6.33/sector_t]]
-
--[[linux-2.6.33/request]]
/*
* Auto-unplugging state
*/
struct timer_list unplug_timer;
int unplug_thresh; /* After this many requests */
unsigned long unplug_delay; /* After this many jiffies...
struct work_struct unplug_work;
-
--[[linux-2.6.33/timer_list]]
-
--[[linux-2.6.33/work_struct]]
struct backing_dev_info backing_dev_info;
-
--[[linux-2.6.33/backing_dev_info]]
/*
* The queue owner gets to use this for whatever they l...
* ll_rw_blk doesn't touch it.
*/
void *queuedata;
/*
* queue needs bounce pages for pages above this limit
*/
gfp_t bounce_gfp;
-
--[[linux-2.6.33/gfp_t]]
/*
* various queue flags, see QUEUE_* below
*/
unsigned long queue_flags;
/*
* protects queue structures from reentrancy. ->__queue...
* _never_ be used directly, it is queue private. alway...
* ->queue_lock.
*/
spinlock_t __queue_lock;
spinlock_t *queue_lock;
-
--[[linux-2.6.33/spinlock_t]]
/*
* queue kobject
*/
struct kobject kobj;
-
--[[linux-2.6.33/kobject]]
/*
* queue settings
*/
unsigned long nr_requests; /* Max # of requests */
unsigned int nr_congestion_on;
unsigned int nr_congestion_off;
unsigned int nr_batching;
void *dma_drain_buffer;
unsigned int dma_drain_size;
unsigned int dma_pad_mask;
unsigned int dma_alignment;
struct blk_queue_tag *queue_tags;
struct list_head tag_busy_list;
-
--[[linux-2.6.33/blk_queue_tag]]
unsigned int nr_sorted;
unsigned int in_flight[2];
unsigned int rq_timeout;
struct timer_list timeout;
struct list_head timeout_list;
struct queue_limits limits;
-
--[[linux-2.6.33/queue_limits]]
/*
* sg stuff
*/
unsigned int sg_timeout;
unsigned int sg_reserved_size;
int node;
#ifdef CONFIG_BLK_DEV_IO_TRACE
struct blk_trace *blk_trace;
#endif
-
--[[linux-2.6.33/blk_trace]]
/*
* reserved for flush operations
*/
unsigned int ordered, next_ordered, ordseq;
int orderr, ordcolor;
struct request pre_flush_rq, bar_rq, post_flush_rq;
struct request *orig_bar_rq;
struct mutex sysfs_lock;
-
--[[linux-2.6.33/mutex]]
#if defined(CONFIG_BLK_DEV_BSG)
struct bsg_class_device bsg_dev;
#endif
-
--[[linux-2.6.33/bsg_class_device]]
};
*コメント [#u1598381]
ページ名: