1
linux/net/xfrm
David S. Miller 37b08e34a9 ipsec: Fix deadlock in xfrm_state management.
Ever since commit 4c563f7669
("[XFRM]: Speed up xfrm_policy and xfrm_state walking") it is
illegal to call __xfrm_state_destroy (and thus xfrm_state_put())
with xfrm_state_lock held.  If we do, we'll deadlock since we
have the lock already and __xfrm_state_destroy() tries to take
it again.

Fix this by pushing the xfrm_state_put() calls after the lock
is dropped.

Signed-off-by: David S. Miller <davem@davemloft.net>
2008-09-02 20:14:15 -07:00
..
Kconfig ipsec: ipcomp - Merge IPComp implementations 2008-07-25 02:54:40 -07:00
Makefile ipsec: ipcomp - Merge IPComp implementations 2008-07-25 02:54:40 -07:00
xfrm_algo.c net: convert BUG_TRAP to generic WARN_ON 2008-07-25 21:43:18 -07:00
xfrm_hash.c [IPSEC]: kmalloc + memset conversion to kzalloc 2008-01-28 14:55:05 -08:00
xfrm_hash.h [XFRM] STATE: Use destination address for src hash. 2006-10-04 00:31:02 -07:00
xfrm_input.c [IPSEC]: Fix inter address family IPsec tunnel handling. 2008-03-24 14:51:51 -07:00
xfrm_ipcomp.c net: convert BUG_TRAP to generic WARN_ON 2008-07-25 21:43:18 -07:00
xfrm_output.c xfrm: remove unnecessary variable in xfrm_output_resume() 2nd try 2008-08-13 13:35:37 -07:00
xfrm_policy.c net/xfrm: Use an IS_ERR test rather than a NULL test 2008-09-02 17:24:28 -07:00
xfrm_proc.c [XFRM]: Fix statistics. 2008-01-31 19:28:30 -08:00
xfrm_state.c ipsec: Fix deadlock in xfrm_state management. 2008-09-02 20:14:15 -07:00
xfrm_user.c xfrm: Add a XFRM_STATE_AF_UNSPEC flag to xfrm_usersa_info 2008-07-10 16:55:37 -07:00