Re: [PATCH v2] futex: lower the lock contention on the HB lock during wake up

From: Kevin Hilman
Date: Fri Jun 19 2015 - 13:51:52 EST

On Wed, Jun 17, 2015 at 1:33 AM, Sebastian Andrzej Siewior
<bigeasy@xxxxxxxxxxxxx> wrote:
> wake_futex_pi() wakes the task before releasing the hash bucket lock
> (HB). The first thing the woken up task usually does is to acquire the
> lock which requires the HB lock. On SMP Systems this leads to blocking
> on the HB lock which is released by the owner shortly after.
> This patch rearranges the unlock path by first releasing the HB lock and
> then waking up the task.
> [bigeasy: redo ontop of lockless wake-queues]
> Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
> Signed-off-by: Sebastian Andrzej Siewior <bigeasy@xxxxxxxxxxxxx>
> ---
> * Davidlohr Bueso | 2015-06-16 12:50:26 [-0700]:
>>I prefer having two separate patches, thus keeping their own changelog
>>for the change justification.
> okay, here it is on top of #1.

A handful of boot test failures on ARM/OMAP were found by
in next-20150619[1] and were bisected down to this patch, which hit
next-20150619 in the form of commit 881bd58d6e9e (futex: Lower the
lock contention on the HB lock during wake up). I confirmed that
reverting that patch on top of next-20150619 gets things booting again
for the affected platforms.

I haven't debugged this any further, but full boot logs are available
for the boot failures[2][3] and the linux-omap list and maintainer are
Cc'd here to help investigate further if needed.


To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
Please read the FAQ at