Re: [PATCH -mm -next] ipc,sem: untangle RCU locking with find_alloc_undo

From: Rik van Riel
Date: Fri Apr 05 2013 - 09:21:43 EST


On 04/05/2013 12:38 AM, Mike Galbraith wrote:
On Tue, 2013-03-26 at 16:00 -0400, Rik van Riel wrote:

The ipc semaphore code has a nasty RCU locking tangle, with both
find_alloc_undo and semtimedop taking the rcu_read_lock(). The
code can be cleaned up somewhat by only taking the rcu_read_lock
once.

There are no other callers to find_alloc_undo.

This should also solve the trinity issue reported by Sasha Levin.

I take it this is on top of the patchlet Sasha submitted?

Indeed, and all the other fixes that got submitted :)

(I hit rcu stall banging on patch set in rt with 60 synchronized core
executive model if I let it run long enough, fwtw)

What are you using to trigger an rcu stall?

Reported-by: Sasha Levin <sasha.levin@xxxxxxxxxx>
Signed-off-by: Rik van Riel <riel@xxxxxxxxxx>

--
All rights reversed.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/