diff options
author | Jens Axboe <jens.axboe@oracle.com> | 2008-02-19 10:02:29 +0100 |
---|---|---|
committer | Jens Axboe <jens.axboe@oracle.com> | 2008-02-19 10:04:00 +0100 |
commit | ffc4e7595734cf768fa60cea8a4d545dfef8231a (patch) | |
tree | 9b95aca67ea7c9e87254da501f73cca64504051d /include/linux/iocontext.h | |
parent | 84e9e03c55c2456799ab19f1d577e72f721fdd39 (diff) | |
download | blackbird-op-linux-ffc4e7595734cf768fa60cea8a4d545dfef8231a.tar.gz blackbird-op-linux-ffc4e7595734cf768fa60cea8a4d545dfef8231a.zip |
cfq-iosched: add hlist for browsing parallel to the radix tree
It's cumbersome to browse a radix tree from start to finish, especially
since we modify keys when a process exits. So add a hlist for the single
purpose of browsing over all known cfq_io_contexts, used for exit,
io prio change, etc.
This fixes http://bugzilla.kernel.org/show_bug.cgi?id=9948
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Diffstat (limited to 'include/linux/iocontext.h')
-rw-r--r-- | include/linux/iocontext.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/include/linux/iocontext.h b/include/linux/iocontext.h index 593b222d9dcc..1b4ccf25b4d2 100644 --- a/include/linux/iocontext.h +++ b/include/linux/iocontext.h @@ -50,6 +50,7 @@ struct cfq_io_context { sector_t seek_mean; struct list_head queue_list; + struct hlist_node cic_list; void (*dtor)(struct io_context *); /* destructor */ void (*exit)(struct io_context *); /* called on task exit */ @@ -77,6 +78,7 @@ struct io_context { struct as_io_context *aic; struct radix_tree_root radix_root; + struct hlist_head cic_list; void *ioc_data; }; |