* Re: wake up io_uring_enter(...IORING_ENTER_GETEVENTS..) via eventfd [not found] <CAAss7+rhVS669Q=PCHrmHXbr067HpdC7Dtu0ogm4u-uj6-qK3Q@mail.gmail.com> @ 2020-08-07 7:29 ` Pavel Begunkov 2020-08-07 8:17 ` Josef 0 siblings, 1 reply; 2+ messages in thread From: Pavel Begunkov @ 2020-08-07 7:29 UTC (permalink / raw) To: Josef, io-uring Hi, I'd love to help but don't have time at the moment. I'll take a look but in a week, either send it to [email protected]. Jens deals with such stuff lightning fast! > io_uring application should be a single thread in my application which > means a different thread wakes up io_uring_enter via eventfd. The issue is > that io_uring_enter(fd, 0, min_complete, IORING_ENTER_GETEVENTS, 0) which > is blocking doesn't get any poling event from eventfd_write when both > functions are executed in different threads Yeah, sounds strange. Did you try to do the same but without io_uring? e.g. with write(2), select(2). > > > here small example > > https://gist.github.com/1Jo1/6496d1b8b6b363c301271340e2eab95b > > > io_uring_enter will get a polling event if you move eventfd_write(efd, > (eventfd_t) 1L) to the main thread, > > I don't get it..probably I missed something, why can't I run both functions > on different threads, any ideas what the cause might be? > > > (Linux Kernel 5.7.10-201) liburing 0.6 & 0.7 > > --- > Josef > -- Pavel Begunkov ^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: wake up io_uring_enter(...IORING_ENTER_GETEVENTS..) via eventfd 2020-08-07 7:29 ` wake up io_uring_enter(...IORING_ENTER_GETEVENTS..) via eventfd Pavel Begunkov @ 2020-08-07 8:17 ` Josef 0 siblings, 0 replies; 2+ messages in thread From: Josef @ 2020-08-07 8:17 UTC (permalink / raw) To: Pavel Begunkov, io-uring Hi, yeah thanks, there is already a fix patch from Jens [PATCH] io_uring: use TWA_SIGNAL for task_work related to eventfd On Fri, 7 Aug 2020 at 09:31, Pavel Begunkov <[email protected]> wrote: > > Hi, > > I'd love to help but don't have time at the moment. I'll take a look but > in a week, either send it to [email protected]. Jens deals with > such stuff lightning fast! > > > io_uring application should be a single thread in my application which > > means a different thread wakes up io_uring_enter via eventfd. The issue is > > that io_uring_enter(fd, 0, min_complete, IORING_ENTER_GETEVENTS, 0) which > > is blocking doesn't get any poling event from eventfd_write when both > > functions are executed in different threads > > Yeah, sounds strange. Did you try to do the same but without io_uring? > e.g. with write(2), select(2). > > > > > > > here small example > > > > https://gist.github.com/1Jo1/6496d1b8b6b363c301271340e2eab95b > > > > > > io_uring_enter will get a polling event if you move eventfd_write(efd, > > (eventfd_t) 1L) to the main thread, > > > > I don't get it..probably I missed something, why can't I run both functions > > on different threads, any ideas what the cause might be? > > > > > > (Linux Kernel 5.7.10-201) liburing 0.6 & 0.7 > > > > --- > > Josef > > > > -- > Pavel Begunkov ^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2020-08-07 8:17 UTC | newest] Thread overview: 2+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- [not found] <CAAss7+rhVS669Q=PCHrmHXbr067HpdC7Dtu0ogm4u-uj6-qK3Q@mail.gmail.com> 2020-08-07 7:29 ` wake up io_uring_enter(...IORING_ENTER_GETEVENTS..) via eventfd Pavel Begunkov 2020-08-07 8:17 ` Josef
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox