Lines Matching refs:rq_qos
27 struct rq_qos { struct
31 struct rq_qos *next; argument
38 void (*throttle)(struct rq_qos *, struct bio *); argument
39 void (*track)(struct rq_qos *, struct request *, struct bio *);
40 void (*merge)(struct rq_qos *, struct request *, struct bio *);
41 void (*issue)(struct rq_qos *, struct request *);
42 void (*requeue)(struct rq_qos *, struct request *);
43 void (*done)(struct rq_qos *, struct request *);
44 void (*done_bio)(struct rq_qos *, struct bio *);
45 void (*cleanup)(struct rq_qos *, struct bio *);
46 void (*queue_depth_changed)(struct rq_qos *);
47 void (*exit)(struct rq_qos *);
61 static inline struct rq_qos *rq_qos_id(struct request_queue *q, in rq_qos_id()
64 struct rq_qos *rqos; in rq_qos_id()
65 for (rqos = q->rq_qos; rqos; rqos = rqos->next) { in rq_qos_id()
72 static inline struct rq_qos *wbt_rq_qos(struct request_queue *q) in wbt_rq_qos()
77 static inline struct rq_qos *blkcg_rq_qos(struct request_queue *q) in blkcg_rq_qos()
88 static inline int rq_qos_add(struct request_queue *q, struct rq_qos *rqos) in rq_qos_add()
102 rqos->next = q->rq_qos; in rq_qos_add()
103 q->rq_qos = rqos; in rq_qos_add()
122 static inline void rq_qos_del(struct request_queue *q, struct rq_qos *rqos) in rq_qos_del()
124 struct rq_qos **cur; in rq_qos_del()
133 for (cur = &q->rq_qos; *cur; cur = &(*cur)->next) { in rq_qos_del()
159 void __rq_qos_cleanup(struct rq_qos *rqos, struct bio *bio);
160 void __rq_qos_done(struct rq_qos *rqos, struct request *rq);
161 void __rq_qos_issue(struct rq_qos *rqos, struct request *rq);
162 void __rq_qos_requeue(struct rq_qos *rqos, struct request *rq);
163 void __rq_qos_throttle(struct rq_qos *rqos, struct bio *bio);
164 void __rq_qos_track(struct rq_qos *rqos, struct request *rq, struct bio *bio);
165 void __rq_qos_merge(struct rq_qos *rqos, struct request *rq, struct bio *bio);
166 void __rq_qos_done_bio(struct rq_qos *rqos, struct bio *bio);
167 void __rq_qos_queue_depth_changed(struct rq_qos *rqos);
171 if (q->rq_qos) in rq_qos_cleanup()
172 __rq_qos_cleanup(q->rq_qos, bio); in rq_qos_cleanup()
177 if (q->rq_qos) in rq_qos_done()
178 __rq_qos_done(q->rq_qos, rq); in rq_qos_done()
183 if (q->rq_qos) in rq_qos_issue()
184 __rq_qos_issue(q->rq_qos, rq); in rq_qos_issue()
189 if (q->rq_qos) in rq_qos_requeue()
190 __rq_qos_requeue(q->rq_qos, rq); in rq_qos_requeue()
198 if (q->rq_qos) in rq_qos_done_bio()
199 __rq_qos_done_bio(q->rq_qos, bio); in rq_qos_done_bio()
205 if (q->rq_qos) { in rq_qos_throttle()
207 __rq_qos_throttle(q->rq_qos, bio); in rq_qos_throttle()
214 if (q->rq_qos) in rq_qos_track()
215 __rq_qos_track(q->rq_qos, rq, bio); in rq_qos_track()
221 if (q->rq_qos) { in rq_qos_merge()
223 __rq_qos_merge(q->rq_qos, rq, bio); in rq_qos_merge()
229 if (q->rq_qos) in rq_qos_queue_depth_changed()
230 __rq_qos_queue_depth_changed(q->rq_qos); in rq_qos_queue_depth_changed()