cfq: Remove wait_request flag when idle time is being deleted
[safe/jmp/linux-2.6] / block / blk-cgroup.h
index b24ab71..4d316df 100644 (file)
@@ -15,6 +15,8 @@
 
 #include <linux/cgroup.h>
 
+#ifdef CONFIG_BLK_CGROUP
+
 struct blkio_cgroup {
        struct cgroup_subsys_state css;
        unsigned int weight;
@@ -41,6 +43,40 @@ struct blkio_group {
        unsigned long sectors;
 };
 
+extern bool blkiocg_css_tryget(struct blkio_cgroup *blkcg);
+extern void blkiocg_css_put(struct blkio_cgroup *blkcg);
+
+typedef void (blkio_unlink_group_fn) (void *key, struct blkio_group *blkg);
+typedef void (blkio_update_group_weight_fn) (struct blkio_group *blkg,
+                                               unsigned int weight);
+
+struct blkio_policy_ops {
+       blkio_unlink_group_fn *blkio_unlink_group_fn;
+       blkio_update_group_weight_fn *blkio_update_group_weight_fn;
+};
+
+struct blkio_policy_type {
+       struct list_head list;
+       struct blkio_policy_ops ops;
+};
+
+/* Blkio controller policy registration */
+extern void blkio_policy_register(struct blkio_policy_type *);
+extern void blkio_policy_unregister(struct blkio_policy_type *);
+
+#else
+
+struct blkio_group {
+};
+
+struct blkio_policy_type {
+};
+
+static inline void blkio_policy_register(struct blkio_policy_type *blkiop) { }
+static inline void blkio_policy_unregister(struct blkio_policy_type *blkiop) { }
+
+#endif
+
 #define BLKIO_WEIGHT_MIN       100
 #define BLKIO_WEIGHT_MAX       1000
 #define BLKIO_WEIGHT_DEFAULT   500
@@ -69,6 +105,7 @@ extern struct blkio_group *blkiocg_lookup_group(struct blkio_cgroup *blkcg,
 void blkiocg_update_blkio_group_stats(struct blkio_group *blkg,
                        unsigned long time, unsigned long sectors);
 #else
+struct cgroup;
 static inline struct blkio_cgroup *
 cgroup_to_blkio_cgroup(struct cgroup *cgroup) { return NULL; }