io-uring.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* 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 io-uring@vger.kernel.org. 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 <asml.silence@gmail.com> 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 io-uring@vger.kernel.org. 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;
as well as URLs for NNTP newsgroup(s).