Home
last modified time | relevance | path

Searched refs:hash (Results 1 – 3 of 3) sorted by relevance

/io_uring/
Dio-wq.c121 struct io_wq_hash *hash; member
458 static bool io_wait_on_hash(struct io_wqe *wqe, unsigned int hash) in io_wait_on_hash() argument
463 spin_lock_irq(&wq->hash->wait.lock); in io_wait_on_hash()
465 __add_wait_queue(&wq->hash->wait, &wqe->wait); in io_wait_on_hash()
466 if (!test_bit(hash, &wq->hash->map)) { in io_wait_on_hash()
472 spin_unlock_irq(&wq->hash->wait.lock); in io_wait_on_hash()
486 unsigned int hash; in io_get_next_work() local
496 hash = io_get_work_hash(work); in io_get_next_work()
498 tail = wqe->hash_tail[hash]; in io_get_next_work()
501 if (!test_and_set_bit(hash, &wqe->wq->hash->map)) { in io_get_next_work()
[all …]
Dtctx.c18 struct io_wq_hash *hash; in io_init_wq_offload() local
23 hash = ctx->hash_map; in io_init_wq_offload()
24 if (!hash) { in io_init_wq_offload()
25 hash = kzalloc(sizeof(*hash), GFP_KERNEL); in io_init_wq_offload()
26 if (!hash) { in io_init_wq_offload()
30 refcount_set(&hash->refs, 1); in io_init_wq_offload()
31 init_waitqueue_head(&hash->wait); in io_init_wq_offload()
32 ctx->hash_map = hash; in io_init_wq_offload()
36 data.hash = hash; in io_init_wq_offload()
Dio-wq.h33 static inline void io_wq_put_hash(struct io_wq_hash *hash) in io_wq_put_hash() argument
35 if (refcount_dec_and_test(&hash->refs)) in io_wq_put_hash()
36 kfree(hash); in io_wq_put_hash()
40 struct io_wq_hash *hash; member