[486832.953431] [] ? nf_bridge_alloc.isra.18+0x32/0x32 [bridge]
> [486832.953431] [] ? NF_HOOK_THRESH+0x1d/0x4c [bridge]
> [486832.953431] [] ? nf_bridge_alloc.isra.18+0x32/0x32 [bridge]
> [486832.953431] [] ? br_nf_pre_routing+0x32c/0x33f [bridge]
> [486832.953431] [] ? nf_bridge_alloc.isra.18+0x32/0x32 [bridge]
> [486832.953431] [] ? nf_iterate+0x3c/0x69
> [486832.953431] [] ? br_handle_local_finish+0x4d/0x4d [bridge]
> [486832.953431] [] ? nf_hook_slow+0x52/0xed
> [486832.953431] [] ? br_handle_local_finish+0x4d/0x4d [bridge]
> [486832.953431] [] ? nf_hook_thresh.constprop.10+0x36/0x42
> [bridge]
> [486832.953431] [] ? br_handle_local_finish+0x4d/0x4d [bridge]
> [486832.953431] [] ? br_handle_frame+0x18f/0x1b5 [bridge]
> [486832.953431] [] ? br_handle_local_finish+0x4d/0x4d [bridge]
> [486832.953431] [] ? br_handle_frame_finish+0x264/0x264 [bridge]
> [486832.953431] [] ? __netif_receive_skb_core+0x2b5/0x406
> [486832.953431] [] ? __getnstimeofday+0x17/0x52
> [486832.953431] [] ? get_monotonic_boottime+0x73/0x92
> [486832.953431] [] ? napi_gro_receive+0x2e/0x69
> [486832.953431] [] ? __stop_machine.isra.0.constprop.1+0x27/0x27
> [486832.953431] [] ? sky2_poll+0x6d8/0x8f3 [sky2]
> [486832.953431] [] ? native_sched_clock+0x40/0x98
> [486832.953431] [] ? native_sched_clock+0x40/0x98
> [486832.953431] [] ? paravirt_sched_clock+0x8/0xb
> [486832.953431] [] ? native_sched_clock+0x40/0x98
> [486832.953431] [] ? net_rx_action+0x6e/0x180
> [486832.953431] [] ? paravirt_sched_clock+0x8/0xb
> [486832.953431] [] ? __do_softirq+0xa5/0x19e
> [486832.953431] [] ? irq_exit+0x36/0x69
> [486832.953431] [] ? do_IRQ+0x6e/0x81
> [486832.953431] [] ? common_interrupt+0x33/0x38
> [486832.953431] [] ? native_safe_halt+0x2/0x3
> [486832.953431] [] ? default_idle+0x23/0x3e
> [486832.953431] [] ? cpu_idle+0x75/0x8f
> [486832.953431] [] ? start_kernel+0x34e/0x353
> [486832.953431] [] ? repair_env_string+0x4d/0x4d
> [486832.953431] Code: f9 ff 8b 43 74 c7 43 70 00 00 00 00 85 c0 74 0e ff
> 08 0f 94 c2 84 d2 74 05 e8 c7 6b e1 ff 8b 43 48 c7 43 74 00 00 00 00 83
> e0 fe <8b> 50 10 89 d8 ff 52 34 83 f8 01 89 c7 0f 85 21 02 00 00 8b 53
> [486832.953431] EIP: [] xfrm_output_resume+0x61/0x29f SS:ESP
> 0068:c1407c44
> [486832.953431] CR2: 0010
> [486833.573872] ---[ end trace ed321ebdc197b3d7 ]---
> [486833.578576] Kernel panic - not syncing: Fatal exception in interrupt
> [486833.582572] Rebooting in 60 seconds..
>
> (gdb) list *xfrm_output_resume+0x61
> 0xc12a4dd0 is in xfrm_output_resume (net/xfrm/xfrm_output.c:125).
> 120 int xfrm_output_resume(struct sk_buff *skb, int err)
> 121 {
> 122 while (likely((err = xfrm_output_one(skb, err)) == 0)) {
> 123 nf_reset(skb);
> 124
> 125 err = skb_dst(skb)->ops->local_out(skb);
> 126 if (unlikely(err != 1))
> 127 goto out;
> 128
> 129 if (!skb_dst(skb)->xfrm)
Try this:
diff --git a/net/xfrm/xfrm_output.c b/net/xfrm/xfrm_output.c
index bcfda89..0cf003d 100644
--- a/net/xfrm/xfrm_output.c
+++ b/net/xfrm/xfrm_output.c
@@ -64,6 +64,7 @@ static int xfrm_output_one(struct sk_buff *skb, int err)
if (unlikely(x->km.state != XFRM_STATE_VALID)) {
XFRM_INC_STATS(net, LINUX_MIB_XFRMOUTSTATEINVALID);
+ err = -EINVAL;
goto error;
}
--
Jean Sacren
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/