Searched refs:rq_wait (Results 1 – 4 of 4) sorted by relevance
| /linux/block/ |
| H A D | blk-rq-qos.h | 22 struct rq_wait { struct 82 static inline void rq_wait_init(struct rq_wait *rq_wait) in rq_wait_init() argument 84 atomic_set(&rq_wait->inflight, 0); in rq_wait_init() 85 init_waitqueue_head(&rq_wait->wait); in rq_wait_init() 92 typedef bool (acquire_inflight_cb_t)(struct rq_wait *rqw, void *private_data); 93 typedef void (cleanup_cb_t)(struct rq_wait *rqw, void *private_data); 95 void rq_qos_wait(struct rq_wait *rqw, void *private_data, 98 bool rq_wait_inc_below(struct rq_wait *rq_wait, unsigned int limit);
|
| H A D | blk-wbt.c | 92 struct rq_wait rq_wait[WBT_NUM_RWQ]; member 173 static inline struct rq_wait *get_rq_wait(struct rq_wb *rwb, in get_rq_wait() 177 return &rwb->rq_wait[WBT_RWQ_SWAP]; in get_rq_wait() 179 return &rwb->rq_wait[WBT_RWQ_DISCARD]; in get_rq_wait() 181 return &rwb->rq_wait[WBT_RWQ_BG]; in get_rq_wait() 189 struct rq_wait *rqw = &rwb->rq_wait[i]; in rwb_wake_all() 196 static void wbt_rqw_done(struct rq_wb *rwb, struct rq_wait *rqw, in wbt_rqw_done() 233 struct rq_wait *rqw; in __wbt_done() 293 ret += atomic_read(&rwb->rq_wait[i].inflight); in wbt_inflight() 570 static bool wbt_inflight_cb(struct rq_wait *rqw, void *private_data) in wbt_inflight_cb() [all …]
|
| H A D | blk-rq-qos.c | 21 bool rq_wait_inc_below(struct rq_wait *rq_wait, unsigned int limit) in rq_wait_inc_below() argument 23 return atomic_inc_below(&rq_wait->inflight, limit); in rq_wait_inc_below() 199 struct rq_wait *rqw; 254 void rq_qos_wait(struct rq_wait *rqw, void *private_data, in rq_qos_wait()
|
| /linux/fs/ |
| H A D | aio.c | 133 struct ctx_rq_wait *rq_wait; member 634 if (ctx->rq_wait && atomic_dec_and_test(&ctx->rq_wait->count)) in free_ioctx_reqs() 635 complete(&ctx->rq_wait->comp); in free_ioctx_reqs() 879 ctx->rq_wait = wait; in kill_ioctx()
|