diff options
Diffstat (limited to 'include/linux/blkdev.h')
| -rw-r--r-- | include/linux/blkdev.h | 22 |
1 files changed, 13 insertions, 9 deletions
diff --git a/include/linux/blkdev.h b/include/linux/blkdev.h index c179966f1a..d0cac8b58d 100644 --- a/include/linux/blkdev.h +++ b/include/linux/blkdev.h | |||
| @@ -55,25 +55,29 @@ struct as_io_context { | |||
| 55 | 55 | ||
| 56 | struct cfq_queue; | 56 | struct cfq_queue; |
| 57 | struct cfq_io_context { | 57 | struct cfq_io_context { |
| 58 | /* | 58 | struct rb_node rb_node; |
| 59 | * circular list of cfq_io_contexts belonging to a process io context | ||
| 60 | */ | ||
| 61 | struct list_head list; | ||
| 62 | struct cfq_queue *cfqq[2]; | ||
| 63 | void *key; | 59 | void *key; |
| 64 | 60 | ||
| 61 | struct cfq_queue *cfqq[2]; | ||
| 62 | |||
| 65 | struct io_context *ioc; | 63 | struct io_context *ioc; |
| 66 | 64 | ||
| 67 | unsigned long last_end_request; | 65 | unsigned long last_end_request; |
| 68 | unsigned long last_queue; | 66 | sector_t last_request_pos; |
| 67 | unsigned long last_queue; | ||
| 68 | |||
| 69 | unsigned long ttime_total; | 69 | unsigned long ttime_total; |
| 70 | unsigned long ttime_samples; | 70 | unsigned long ttime_samples; |
| 71 | unsigned long ttime_mean; | 71 | unsigned long ttime_mean; |
| 72 | 72 | ||
| 73 | unsigned int seek_samples; | ||
| 74 | u64 seek_total; | ||
| 75 | sector_t seek_mean; | ||
| 76 | |||
| 73 | struct list_head queue_list; | 77 | struct list_head queue_list; |
| 74 | 78 | ||
| 75 | void (*dtor)(struct cfq_io_context *); | 79 | void (*dtor)(struct io_context *); /* destructor */ |
| 76 | void (*exit)(struct cfq_io_context *); | 80 | void (*exit)(struct io_context *); /* called on task exit */ |
| 77 | }; | 81 | }; |
| 78 | 82 | ||
| 79 | /* | 83 | /* |
| @@ -94,7 +98,7 @@ struct io_context { | |||
| 94 | int nr_batch_requests; /* Number of requests left in the batch */ | 98 | int nr_batch_requests; /* Number of requests left in the batch */ |
| 95 | 99 | ||
| 96 | struct as_io_context *aic; | 100 | struct as_io_context *aic; |
| 97 | struct cfq_io_context *cic; | 101 | struct rb_root cic_root; |
| 98 | }; | 102 | }; |
| 99 | 103 | ||
| 100 | void put_io_context(struct io_context *ioc); | 104 | void put_io_context(struct io_context *ioc); |
