Home
last modified time | relevance | path

Searched refs:rq_wait (Results 1 – 5 of 5) sorted by relevance

/linux-6.12.1/block/
Dblk-rq-qos.h22 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);
Dblk-wbt.c92 struct rq_wait rq_wait[WBT_NUM_RWQ]; member
172 static inline struct rq_wait *get_rq_wait(struct rq_wb *rwb, in get_rq_wait()
176 return &rwb->rq_wait[WBT_RWQ_SWAP]; in get_rq_wait()
178 return &rwb->rq_wait[WBT_RWQ_DISCARD]; in get_rq_wait()
180 return &rwb->rq_wait[WBT_RWQ_BG]; in get_rq_wait()
188 struct rq_wait *rqw = &rwb->rq_wait[i]; in rwb_wake_all()
195 static void wbt_rqw_done(struct rq_wb *rwb, struct rq_wait *rqw, in wbt_rqw_done()
232 struct rq_wait *rqw; in __wbt_done()
291 ret += atomic_read(&rwb->rq_wait[i].inflight); in wbt_inflight()
568 static bool wbt_inflight_cb(struct rq_wait *rqw, void *private_data) in wbt_inflight_cb()
[all …]
Dblk-rq-qos.c21 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()
200 struct rq_wait *rqw;
243 void rq_qos_wait(struct rq_wait *rqw, void *private_data, in rq_qos_wait()
Dblk-iolatency.c145 struct rq_wait rq_wait; member
274 static void iolat_cleanup_cb(struct rq_wait *rqw, void *private_data) in iolat_cleanup_cb()
280 static bool iolat_acquire_inflight(struct rq_wait *rqw, void *private_data) in iolat_acquire_inflight()
291 struct rq_wait *rqw = &iolat->rq_wait; in __blkcg_iolatency_throttle()
390 wake_up_all(&iolat->rq_wait.wait); in scale_change()
456 wake_up_all(&iolat->rq_wait.wait); in check_scale_change()
594 struct rq_wait *rqw; in blkcg_iolatency_done_bio()
619 rqw = &iolat->rq_wait; in blkcg_iolatency_done_bio()
1003 rq_wait_init(&iolat->rq_wait); in iolatency_pd_init()
/linux-6.12.1/fs/
Daio.c133 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()