All of lore.kernel.org
 help / color / mirror / Atom feed
From: Darren Hart <dvhart@linux.intel.com>
To: Eric Dumazet <eric.dumazet@gmail.com>
Cc: Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
	Linux Stable <stable@kernel.org>,
	Thomas Gleixner <tglx@linutronix.de>,
	Peter Zijlstra <peterz@infradead.org>,
	Ingo Molnar <mingo@elte.hu>, John Kacur <jkacur@redhat.com>
Subject: Re: [PATCH V3] futex: set FLAGS_HAS_TIMEOUT during demux for FUTEX_WAIT
Date: Thu, 14 Apr 2011 13:47:49 -0700	[thread overview]
Message-ID: <4DA75D75.8050408@linux.intel.com> (raw)
In-Reply-To: <1302813795.2744.41.camel@edumazet-laptop>



On 04/14/2011 01:43 PM, Eric Dumazet wrote:
> Le jeudi 14 avril 2011 à 13:39 -0700, Darren Hart a écrit :
>> The FLAGS_HAS_TIMEOUT flag was not getting set, causing the restart_block to
>> restart futex_wait() without a timeout after a signal.
>>
>> Commit b41277dc7a18ee332d in 2.6.38 introduced the regression by accidentally
>> removing the the FLAGS_HAS_TIMEOUT assignment from futex_wait() during the setup
>> of the restart block. Restore the originaly behavior.
>>
>> Fixes: https://bugzilla.kernel.org/show_bug.cgi?id=32922
>>
>> V2: Added references to commit message.
>> V3: Set flag during restart block instead of do_futex()
>>
>> Signed-off-by: Darren Hart <dvhart@linux.intel.com>
>> Reported-by: Tim Smith <tsmith201104@yahoo.com>
>> Reported-by: Torsten Hilbrich <torsten.hilbrich@secunet.com>
>> Cc: Thomas Gleixner <tglx@linutronix.de>
>> Cc: Peter Zijlstra <peterz@infradead.org>
>> Cc: Ingo Molnar <mingo@elte.hu>
>> CC: Eric Dumazet <eric.dumazet@gmail.com>
>> CC: John Kacur <jkacur@redhat.com>
>> ---
>>  kernel/futex.c |    1 +
>>  1 files changed, 1 insertions(+), 0 deletions(-)
>>
>> diff --git a/kernel/futex.c b/kernel/futex.c
>> index bda4157..9d9c476 100644
>> --- a/kernel/futex.c
>> +++ b/kernel/futex.c
>> @@ -1887,6 +1887,7 @@ retry:
>>  	restart->futex.time = abs_time->tv64;
>>  	restart->futex.bitset = bitset;
>>  	restart->futex.flags = flags;
>> +	flags |= FLAGS_HAS_TIMEOUT;
>>  
>>  	ret = -ERESTART_RESTARTBLOCK;
>>  
> 
> 
> Hmmm, I am sorry but this wont work... please try :
> 
> -	restart->futex.flags = flags;
> +	restart->futex.flags = flags | FLAGS_HAS_TIMEOUT;

Ah crud... now that's just embarrassing... resending.


-- 
Darren Hart
Intel Open Source Technology Center
Yocto Project - Linux Kernel

      reply	other threads:[~2011-04-14 20:48 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-04-14 20:39 [PATCH V3] futex: set FLAGS_HAS_TIMEOUT during demux for FUTEX_WAIT Darren Hart
2011-04-14 20:43 ` Eric Dumazet
2011-04-14 20:47   ` Darren Hart [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4DA75D75.8050408@linux.intel.com \
    --to=dvhart@linux.intel.com \
    --cc=eric.dumazet@gmail.com \
    --cc=jkacur@redhat.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@elte.hu \
    --cc=peterz@infradead.org \
    --cc=stable@kernel.org \
    --cc=tglx@linutronix.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.