lkml.org 
[lkml]   [2009]   [Jul]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [KVM PATCH v9 2/5] eventfd: use locked POLLHUP
    On Thu, 2 Jul 2009, Gregory Haskins wrote:

    > eventfd currently emits a POLLHUP wakeup on f_ops->release() to generate a
    > "release" callback. This lets eventfd clients know if the eventfd is about
    > to go away and is very useful particularly for in-kernel clients. However,
    > as it stands today it is not possible to use this feature of eventfd in a
    > race-free way. This patch changes the POLLHUP code to use the locked variant
    > to rectify this problem.
    >
    > Signed-off-by: Gregory Haskins <ghaskins@novell.com>
    > CC: Davide Libenzi <davidel@xmailserver.org>
    > ---
    >
    > fs/eventfd.c | 7 +------
    > 1 files changed, 1 insertions(+), 6 deletions(-)
    >
    > diff --git a/fs/eventfd.c b/fs/eventfd.c
    > index d9849a1..31d12de 100644
    > --- a/fs/eventfd.c
    > +++ b/fs/eventfd.c
    > @@ -105,12 +105,7 @@ static int eventfd_release(struct inode *inode, struct file *file)
    > {
    > struct eventfd_ctx *ctx = file->private_data;
    >
    > - /*
    > - * No need to hold the lock here, since we are on the file cleanup
    > - * path and the ones still attached to the wait queue will be
    > - * serialized by wake_up_locked_poll().
    > - */
    > - wake_up_locked_poll(&ctx->wqh, POLLHUP);
    > + wake_up_poll(&ctx->wqh, POLLHUP);
    > eventfd_ctx_put(ctx);
    > return 0;
    > }

    ACK.
    BTW, mainline already has the correct wake_up_poll().


    - Davide




    \
     
     \ /
      Last update: 2009-07-02 18:45    [W:0.022 / U:3.712 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site