summaryrefslogtreecommitdiffstats
path: root/lib/idr.c
diff options
context:
space:
mode:
authorJulia Lawall <julia@diku.dk>2010-06-20 11:24:54 +0000
committerPaul Mundt <lethal@linux-sh.org>2010-06-21 13:46:53 +0900
commit0e6f989ba83e6fa64e979d3488f01670b8be7959 (patch)
tree867fd6607fb419ab3a6250c38ec7e966131c145c /lib/idr.c
parent9973e38575070b70c68bad177fb5056548fea349 (diff)
downloadlinux-0e6f989ba83e6fa64e979d3488f01670b8be7959.tar.gz
linux-0e6f989ba83e6fa64e979d3488f01670b8be7959.tar.bz2
linux-0e6f989ba83e6fa64e979d3488f01670b8be7959.zip
arch/sh/mm: Eliminate a double lock
The function begins and ends with a read_lock. The latter is changed to a read_unlock. A simplified version of the semantic match that finds this problem is as follows: (http://coccinelle.lip6.fr/) // <smpl> @locked@ expression E1; position p; @@ read_lock(E1@p,...); @r exists@ expression x <= locked.E1; expression locked.E1; expression E2; identifier lock; position locked.p,p1,p2; @@ *lock@p1 (E1@p,...); ... when != E1 when != \(x = E2\|&x\) *lock@p2 (E1,...); // </smpl> Signed-off-by: Julia Lawall <julia@diku.dk> Acked-by: Matt Fleming <matt@console-pimps.org> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'lib/idr.c')
0 files changed, 0 insertions, 0 deletions