Patrick McHardy
9951101438
[XFRM]: Fix policy double put
The policy is put once immediately and once at the error label, which results
in the following Oops:
kernel BUG at net/xfrm/xfrm_policy.c:250!
invalid opcode: 0000 [#2]
PREEMPT
[...]
CPU: 0
EIP: 0060:[<c028caf7>] Not tainted VLI
EFLAGS: 00210246 (2.6.16-rc3 #39)
EIP is at __xfrm_policy_destroy+0xf/0x46
eax: d49f2000 ebx: d49f2000 ecx: f74bd880 edx: f74bd280
esi: d49f2000 edi: 00000001 ebp: cd506dcc esp: cd506dc8
ds: 007b es: 007b ss: 0068
Process ssh (pid: 31970, threadinfo=cd506000 task=cfb04a70)
Stack: <0>cd506000 cd506e34 c028e92b ebde7280 cd506e58 cd506ec0 f74bd280 00000000
00000214 0000000a 0000000a 00000000 00000002 f7ae6000 00000000 cd506e58
cd506e14 c0299e36 f74bd280 e873fe00 c02943fd cd506ec0 ebde7280 f271f440
Call Trace:
[<c0103a44>] show_stack_log_lvl+0xaa/0xb5
[<c0103b75>] show_registers+0x126/0x18c
[<c0103e68>] die+0x14e/0x1db
[<c02b6809>] do_trap+0x7c/0x96
[<c0104237>] do_invalid_op+0x89/0x93
[<c01035af>] error_code+0x4f/0x54
[<c028e92b>] xfrm_lookup+0x349/0x3c2
[<c02b0b0d>] ip6_datagram_connect+0x317/0x452
[<c0281749>] inet_dgram_connect+0x49/0x54
[<c02404d2>] sys_connect+0x51/0x68
[<c0240928>] sys_socketcall+0x6f/0x166
[<c0102aa1>] syscall_call+0x7/0xb
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
2006-02-19 22:11:50 -08:00
..
2006-02-13 15:38:42 -08:00
2006-01-11 18:42:14 -08:00
2006-01-11 18:42:14 -08:00
2006-02-13 15:34:58 -08:00
2006-01-11 18:42:14 -08:00
2006-02-13 11:40:03 +01:00
2006-02-15 01:47:48 -08:00
2006-02-13 16:06:10 -08:00
2006-02-07 20:56:35 -05:00
2006-01-11 18:42:14 -08:00
2006-01-04 13:56:08 -08:00
2006-01-06 13:05:58 -08:00
2006-01-30 17:41:36 -05:00
2006-02-15 15:22:21 -08:00
2006-02-15 15:24:15 -08:00
2006-01-11 18:42:14 -08:00
2006-02-09 16:59:48 -08:00
2006-01-24 12:57:19 -08:00
2005-08-29 15:31:14 -07:00
2006-01-03 14:18:33 -08:00
2006-02-15 15:25:18 -08:00
2006-02-13 15:51:24 -08:00
2006-01-11 18:42:14 -08:00
2006-01-23 16:28:02 -08:00
2006-01-11 18:42:14 -08:00
2006-01-17 13:03:54 -08:00
2006-01-17 13:01:06 -08:00
2006-02-02 16:57:31 -08:00
2006-02-01 12:52:25 -05:00
2006-01-18 00:45:16 +01:00
2006-01-09 15:59:24 -08:00
2006-01-11 18:42:14 -08:00
2006-01-11 18:42:14 -08:00
2006-02-19 22:11:50 -08:00
2005-09-08 08:14:11 -07:00
2006-02-02 20:40:09 -08:00
2006-01-12 14:06:31 -08:00
2006-01-03 13:11:17 -08:00
2006-02-05 11:06:51 -08:00
2005-10-03 14:16:34 -07:00
2005-04-16 15:20:36 -07:00