MCPcopy Create free account
hub / github.com/axboe/liburing / io_uring_submit_and_wait_reg

Function io_uring_submit_and_wait_reg

src/queue.c:384–404  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

382}
383
384int io_uring_submit_and_wait_reg(struct io_uring *ring,
385 struct io_uring_cqe **cqe_ptr,
386 unsigned wait_nr, int reg_index)
387{
388 unsigned long offset = reg_index * sizeof(struct io_uring_reg_wait);
389
390 struct get_data data = {
391 .submit = __io_uring_flush_sq(ring),
392 .wait_nr = wait_nr,
393 .get_flags = IORING_ENTER_EXT_ARG |
394 IORING_ENTER_EXT_ARG_REG,
395 .sz = sizeof(struct io_uring_reg_wait),
396 .has_ts = true,
397 .arg = (void *) (uintptr_t) offset,
398 };
399
400 if (!(ring->features & IORING_FEAT_EXT_ARG))
401 return -EINVAL;
402
403 return _io_uring_get_cqe(ring, cqe_ptr, &data);
404}
405
406static int __io_uring_submit_and_wait_timeout(struct io_uring *ring,
407 struct io_uring_cqe **cqe_ptr, unsigned wait_nr,

Callers 4

test_invalid_sigFunction · 0.85
test_offsetsFunction · 0.85
test_basicFunction · 0.85
mainFunction · 0.85

Calls 2

_io_uring_get_cqeFunction · 0.85
__io_uring_flush_sqFunction · 0.70

Tested by 3

test_invalid_sigFunction · 0.68
test_offsetsFunction · 0.68
test_basicFunction · 0.68