* Does io_uring_enter have anti-deadlock magic?
@ 2025-10-30 1:30 Levo D
0 siblings, 0 replies; 2+ messages in thread
From: Levo D @ 2025-10-30 1:30 UTC (permalink / raw)
To: io-uring
Sorry, Ignore my previous message. My original problem was I didn't check if I added something to the queue and my second problem was forgetting to change IORING_ENTER_SQ_WAIT back to IORING_ENTER_GETEVENTS. I guess this is what I get for debugging/emailing right before the world series
^ permalink raw reply [flat|nested] 2+ messages in thread
* Does io_uring_enter have anti-deadlock magic?
@ 2025-10-30 0:32 Levo D
0 siblings, 0 replies; 2+ messages in thread
From: Levo D @ 2025-10-30 0:32 UTC (permalink / raw)
To: io-uring
I'm using io-uring through system calls (I am *not* using liburing)
I tried to deadlock my code intentionally, but it's not allowing me, which makes me think I'm blocking incorrectly. I submitted a few commands (open, stat, reads on files, a read on a pipe), and on purpose I didn't write to the pipe.
I called 'io_uring_enter(fd, 0, 1, IORING_ENTER_SQ_WAIT, 0);' in a loop, and my logging says my submission head and tail are at 13, and my consume head and tail are at 12. Then I call enter, why is it returning without processing anything? I understand there's nothing to do because I didn't write to the pipe, but shouldn't this block?
I called io_uring_setup with 'IORING_SETUP_SQPOLL | IORING_SETUP_SINGLE_ISSUER | IORING_SETUP_NO_SQARRAY'
I'm not sure what else people may want to know, but how do I block until there's work to be consumed? Removing the IORING_SETUP_SINGLE_ISSUER doesn't help.
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2025-10-30 1:30 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-10-30 1:30 Does io_uring_enter have anti-deadlock magic? Levo D
-- strict thread matches above, loose matches on Subject: below --
2025-10-30 0:32 Levo D
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox