Commit d7015c12 authored by Julia Lawall's avatar Julia Lawall Committed by Martin Schwidefsky

[S390] arch/s390/kernel: Add missing unlock

In the default case the lock is not unlocked.  The return is
converted to a goto, to share the unlock at the end of the function.

A simplified version of the semantic patch that finds this problem is as
follows: (http://coccinelle.lip6.fr/)

// <smpl>
@r exists@
expression E1;
identifier f;
@@

f (...) { <+...
* spin_lock_irq (E1,...);
... when != E1
* return ...;
...+> }
// </smpl>
Signed-off-by: default avatarJulia Lawall <julia@diku.dk>
Signed-off-by: default avatarHeiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: default avatarMartin Schwidefsky <schwidefsky@de.ibm.com>
parent d620a7cf
...@@ -165,10 +165,11 @@ static void tl_to_cores(struct tl_info *info) ...@@ -165,10 +165,11 @@ static void tl_to_cores(struct tl_info *info)
default: default:
clear_cores(); clear_cores();
machine_has_topology = 0; machine_has_topology = 0;
return; goto out;
} }
tle = next_tle(tle); tle = next_tle(tle);
} }
out:
spin_unlock_irq(&topology_lock); spin_unlock_irq(&topology_lock);
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment