]> git.baikalelectronics.ru Git - kernel.git/commit
[TIPC]: Use tipc_port_unlock
authorJulia Lawall <julia@diku.dk>
Wed, 9 Jan 2008 07:48:20 +0000 (23:48 -0800)
committerDavid S. Miller <davem@davemloft.net>
Mon, 28 Jan 2008 23:01:05 +0000 (15:01 -0800)
commitef3f4738d701c3058bd9f1dd0e81ad2e7dd56309
tree71cd934f540055e67f447f3fa2f95e66b13512e0
parentf47bfb147081773ec00027a1344b2011e120cd77
[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>
net/tipc/port.c