scsi: blk-mq: Return budget token from .get_budget callback
[linux-2.6-microblaze.git] / include / linux / blk-mq.h
index 2c473c9..3bd3ee6 100644 (file)
@@ -306,12 +306,21 @@ struct blk_mq_ops {
         * reserved budget. Also we have to handle failure case
         * of .get_budget for avoiding I/O deadlock.
         */
-       bool (*get_budget)(struct request_queue *);
+       int (*get_budget)(struct request_queue *);
 
        /**
         * @put_budget: Release the reserved budget.
         */
-       void (*put_budget)(struct request_queue *);
+       void (*put_budget)(struct request_queue *, int);
+
+       /*
+        * @set_rq_budget_toekn: store rq's budget token
+        */
+       void (*set_rq_budget_token)(struct request *, int);
+       /*
+        * @get_rq_budget_toekn: retrieve rq's budget token
+        */
+       int (*get_rq_budget_token)(struct request *);
 
        /**
         * @timeout: Called on request timeout.