1
linux/net/tipc
Julia Lawall 4cec72c890 [TIPC]: Use tipc_port_unlock
The file net/tipc/port.c takes a lock using the function tipc_port_lock and
then releases the lock sometimes using tipc_port_unlock and sometimes using
spin_unlock_bh(p_ptr->publ.lock).  tipc_port_unlock simply does the
spin_unlock_bh, but it seems cleaner to use it everywhere.

The problem was fixed using the following semantic patch.
(http://www.emn.fr/x-info/coccinelle/)

// <smpl>
@@
struct port *p_ptr;
@@

   p_ptr = tipc_port_lock(...)
   ...
(
   p_ptr = tipc_port_lock(...);
|
?- spin_unlock_bh(p_ptr->publ.lock);
+  tipc_port_unlock(p_ptr);
)
// </smpl>

Signed-off-by: Julia Lawall <julia@diku.dk>
Acked-by: Jon Paul Maloy <maloy@donjonn.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2008-01-28 15:01:05 -08:00
..
addr.c
addr.h
bcast.c
bcast.h
bearer.c
bearer.h
cluster.c
cluster.h
config.c
config.h
core.c
core.h [NET]: Convert init_timer into setup_timer 2008-01-28 14:53:35 -08:00
dbg.c
dbg.h
discover.c
discover.h
eth_media.c
handler.c
Kconfig
link.c
link.h
Makefile
msg.c
msg.h
name_distr.c
name_distr.h
name_table.c
name_table.h
net.c
net.h
netlink.c
node_subscr.c
node_subscr.h
node.c
node.h
port.c [TIPC]: Use tipc_port_unlock 2008-01-28 15:01:05 -08:00
port.h
ref.c
ref.h
socket.c
subscr.c
subscr.h
user_reg.c
user_reg.h
zone.c
zone.h