Searched refs:rqw (Results 1 – 4 of 4) sorted by relevance
/block/ |
D | blk-rq-qos.c | 206 struct rq_wait *rqw; member 223 if (!data->cb(data->rqw, data->private_data)) in rq_qos_wake_function() 249 void rq_qos_wait(struct rq_wait *rqw, void *private_data, in rq_qos_wait() argument 259 .rqw = rqw, in rq_qos_wait() 265 has_sleeper = wq_has_sleeper(&rqw->wait); in rq_qos_wait() 266 if (!has_sleeper && acquire_inflight_cb(rqw, private_data)) in rq_qos_wait() 269 prepare_to_wait_exclusive(&rqw->wait, &data.wq, TASK_UNINTERRUPTIBLE); in rq_qos_wait() 270 has_sleeper = !wq_has_single_sleeper(&rqw->wait); in rq_qos_wait() 275 if (!has_sleeper && acquire_inflight_cb(rqw, private_data)) { in rq_qos_wait() 276 finish_wait(&rqw->wait, &data.wq); in rq_qos_wait() [all …]
|
D | blk-wbt.c | 120 struct rq_wait *rqw = &rwb->rq_wait[i]; in rwb_wake_all() local 122 if (wq_has_sleeper(&rqw->wait)) in rwb_wake_all() 123 wake_up_all(&rqw->wait); in rwb_wake_all() 127 static void wbt_rqw_done(struct rq_wb *rwb, struct rq_wait *rqw, in wbt_rqw_done() argument 132 inflight = atomic_dec_return(&rqw->inflight); in wbt_rqw_done() 161 if (wq_has_sleeper(&rqw->wait)) { in wbt_rqw_done() 165 wake_up_all(&rqw->wait); in wbt_rqw_done() 172 struct rq_wait *rqw; in __wbt_done() local 177 rqw = get_rq_wait(rwb, wb_acct); in __wbt_done() 178 wbt_rqw_done(rwb, rqw, wb_acct); in __wbt_done() [all …]
|
D | blk-iolatency.c | 268 static void iolat_cleanup_cb(struct rq_wait *rqw, void *private_data) in iolat_cleanup_cb() argument 270 atomic_dec(&rqw->inflight); in iolat_cleanup_cb() 271 wake_up(&rqw->wait); in iolat_cleanup_cb() 274 static bool iolat_acquire_inflight(struct rq_wait *rqw, void *private_data) in iolat_acquire_inflight() argument 277 return rq_wait_inc_below(rqw, iolat->rq_depth.max_depth); in iolat_acquire_inflight() 285 struct rq_wait *rqw = &iolat->rq_wait; in __blkcg_iolatency_throttle() local 299 atomic_inc(&rqw->inflight); in __blkcg_iolatency_throttle() 303 rq_qos_wait(rqw, iolat, iolat_acquire_inflight, iolat_cleanup_cb); in __blkcg_iolatency_throttle() 591 struct rq_wait *rqw; in blkcg_iolatency_done_bio() local 617 rqw = &iolat->rq_wait; in blkcg_iolatency_done_bio() [all …]
|
D | blk-rq-qos.h | 123 typedef bool (acquire_inflight_cb_t)(struct rq_wait *rqw, void *private_data); 124 typedef void (cleanup_cb_t)(struct rq_wait *rqw, void *private_data); 126 void rq_qos_wait(struct rq_wait *rqw, void *private_data,
|