[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CACycT3vaPcjYbORMN9mkFmZEgspPQ46y=ONQbiAEi-MYCu-0Mw@mail.gmail.com>
Date: Tue, 7 Dec 2021 19:38:04 +0800
From: Yongji Xie <xieyongji@...edance.com>
To: bcrl@...ck.org, Al Viro <viro@...iv.linux.org.uk>,
Thomas Gleixner <tglx@...utronix.de>,
Jens Axboe <axboe@...nel.dk>
Cc: linux-aio@...ck.org, linux-fsdevel@...r.kernel.org,
linux-kernel <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH] aio: Fix incorrect usage of eventfd_signal_allowed()
Ping again.
On Sun, Nov 14, 2021 at 3:15 PM Yongji Xie <xieyongji@...edance.com> wrote:
>
> Ping
>
> On Mon, Sep 13, 2021 at 7:20 PM Xie Yongji <xieyongji@...edance.com> wrote:
> >
> > We should defer eventfd_signal() to the workqueue when
> > eventfd_signal_allowed() return false rather than return
> > true.
> >
> > Fixes: b542e383d8c0 ("eventfd: Make signal recursion protection a task bit")
> > Signed-off-by: Xie Yongji <xieyongji@...edance.com>
> > ---
> > fs/aio.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/fs/aio.c b/fs/aio.c
> > index 51b08ab01dff..8822e3ed4566 100644
> > --- a/fs/aio.c
> > +++ b/fs/aio.c
> > @@ -1695,7 +1695,7 @@ static int aio_poll_wake(struct wait_queue_entry *wait, unsigned mode, int sync,
> > list_del(&iocb->ki_list);
> > iocb->ki_res.res = mangle_poll(mask);
> > req->done = true;
> > - if (iocb->ki_eventfd && eventfd_signal_allowed()) {
> > + if (iocb->ki_eventfd && !eventfd_signal_allowed()) {
> > iocb = NULL;
> > INIT_WORK(&req->work, aio_poll_put_work);
> > schedule_work(&req->work);
> > --
> > 2.11.0
> >
Powered by blists - more mailing lists