lkml.org 
[lkml]   [2007]   [Jul]   [31]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [RESEND] [BUG] futex_unlock_pi() hurts my brain and may cause application deadlock


    --
    On Tue, 31 Jul 2007, john stultz wrote:

    > On Wed, 2007-05-30 at 17:49 -0700, john stultz wrote:
    >
    > Hey Ingo,
    > I sent this fix for this back in the 2.6.21-rt9 era, and I thought to
    > picked it up, but I think it arrived amid some futex churn and
    > apparently has been dropped or was just lost.
    >
    > Some of our testers have been reporting futex deadlocks and this fix
    > resolves it, so I believe it to still be needed.

    Heh, I remember this bug. Wasn't there another patch that modified this.
    I almost definitly remember this getting into the patch queue, but it must
    have been dropped later.

    John, thanks for looking into this deeper!

    Acked-by: Steven Rostedt <rostedt@goodmis.org>

    >
    > thanks
    > -john
    >
    > Avoid futex_unlock_pi returning -EFAULT (which results in deadlock), by
    > clearing uval before jumping to retry_locked.
    >
    > Signed-off-by: John Stultz <johnstul@us.ibm.com>
    > Index: 2.6-rt/kernel/futex.c
    > ===================================================================
    > --- 2.6-rt.orig/kernel/futex.c 2007-07-31 16:48:41.000000000 -0700
    > +++ 2.6-rt/kernel/futex.c 2007-07-31 16:48:48.000000000 -0700
    > @@ -1673,6 +1673,7 @@ pi_faulted:
    > attempt);
    > if (ret)
    > goto out;
    > + uval = 0;
    > goto retry_unlocked;
    > }
    >
    >
    >
    >
    >
    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2007-08-01 02:03    [W:5.987 / U:0.180 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site