]> err.no Git - linux-2.6/blobdiff - include/linux/iocontext.h
ssb: Add CHIPCO IRQ access functions
[linux-2.6] / include / linux / iocontext.h
index cd44d458124ae21d4a57d88d571914dceede0738..1b4ccf25b4d22ac109edd6e73ac06ed580141726 100644 (file)
@@ -1,6 +1,8 @@
 #ifndef IOCONTEXT_H
 #define IOCONTEXT_H
 
+#include <linux/radix-tree.h>
+
 /*
  * This is the per-process anticipatory I/O scheduler state.
  */
@@ -29,8 +31,8 @@ struct as_io_context {
 
 struct cfq_queue;
 struct cfq_io_context {
-       struct rb_node rb_node;
        void *key;
+       unsigned long dead_key;
 
        struct cfq_queue *cfqq[2];
 
@@ -48,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 */
@@ -74,7 +77,8 @@ struct io_context {
        int nr_batch_requests;     /* Number of requests left in the batch */
 
        struct as_io_context *aic;
-       struct rb_root cic_root;
+       struct radix_tree_root radix_root;
+       struct hlist_head cic_list;
        void *ioc_data;
 };