From: leroy christophe <christophe.leroy@c-s.fr>
To: "linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
netdev <netdev@vger.kernel.org>,
netfilter-devel@vger.kernel.org
Cc: "David S. Miller" <davem@davemloft.net>
Subject: 3.16/3.16.1: Kernel Oops in nft_do_chain
Date: Tue, 02 Sep 2014 12:14:27 +0200 [thread overview]
Message-ID: <54059883.4060309@c-s.fr> (raw)
Calling 'iptables-compat -L', first time nothing is listed on the screen.
Second try, it generates following Oops.
See below the console dump and the disassembled code around the failing
address
root@vgoip:~# /usr/local/sbin/iptables-compat -L
root@vgoip:~# /usr/local/sbin/iptables-compat -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
root@vgoip:~#
[ 191.400860] Unable to handle kernel paging request for data at
address 0x00000008
[ 191.408022] Faulting instruction address: 0xc02f9924
[ 191.413126] Oops: Kernel access of bad area, sig: 11 [#1]
[ 191.418245] PREEMPT CMPC885
[ 191.421002] Modules linked in:
[ 191.424060] CPU: 0 PID: 69 Comm: irq/38-fs_enet- Not tainted 3.16.1 #236
[ 191.433166] task: c793ab50 ti: c7ff2000 task.ti: c79e4000
[ 191.438487] NIP: c02f9924 LR: c0365b54 CTR: c0365ae8
[ 191.443407] REGS: c7ff3b70 TRAP: 0300 Not tainted (3.16.1)
[ 191.451554] MSR: 00009032 <EE,ME,IR,DR,RI> CR: 28002082 XER: 00000000
[ 191.458102] DAR: 00000008 DSISR: c0000000
GPR00: 00000300 c7ff3c20 c793ab50 c7ff3d98 c7a9d540 c791a000 00000000
c030db0c
GPR08: c7ff3e28 00000000 00000011 00000000 0000004e 00000000 0000005c
00000044
GPR16: c7a9d590 c7ff3c80 fffffffc ffffffff 00000001 00000000 c7ff3c28
c7ff3c74
GPR24: ffffffff c7a9d590 00000000 c7a9d590 c041252c c041242c c7ff3c30
c7ff3d98
[ 191.490095] NIP [c02f9924] nft_do_chain+0x438/0x4f4
[ 191.494890] LR [c0365b54] nft_do_chain_ipv4+0x6c/0x7c
[ 191.499833] Call Trace:
[ 191.502295] [c7ff3c20] [c02f9970] nft_do_chain+0x484/0x4f4 (unreliable)
[ 191.508830] [c7ff3d90] [c0365b54] nft_do_chain_ipv4+0x6c/0x7c
[ 191.514514] [c7ff3de0] [c02e134c] nf_iterate+0xe4/0x12c
[ 191.519673] [c7ff3e20] [c02e15c8] nf_hook_slow+0xa0/0x1f4
[ 191.525034] [c7ff3e60] [c030dd70] ip_local_deliver+0xa0/0xac
[ 191.530613] [c7ff3e70] [c030d4f4] ip_rcv_finish+0x130/0x350
[ 191.536128] [c7ff3e90] [c02b5304] __netif_receive_skb_core+0x4c4/0x600
[ 191.542595] [c7ff3ef0] [c0237824] fs_enet_rx_napi+0x30c/0x448
[ 191.548252] [c7ff3f50] [c02b5c38] net_rx_action+0x140/0x20c
[ 191.553771] [c7ff3f90] [c001c918] __do_softirq+0x13c/0x2b4
[ 191.559177] [c7ff3ff0] [c000b660] call_do_softirq+0x24/0x3c
[ 191.564696] [c79e5e50] [c0003e04] do_softirq_own_stack+0x3c/0x7c
[ 191.570625] [c79e5e70] [c001c7d8] do_softirq+0x58/0x5c
[ 191.575705] [c79e5e80] [c001cd34] __local_bh_enable_ip+0xa0/0xc4
[ 191.581649] [c79e5e90] [c00525cc] irq_forced_thread_fn+0x64/0x84
[ 191.587577] [c79e5eb0] [c00521fc] irq_thread+0x130/0x188
[ 191.592848] [c79e5ef0] [c0039190] kthread+0xd0/0xe4
[ 191.597651] [c79e5f40] [c000c6d0] ret_from_kernel_thread+0x5c/0x64
[ 191.603706] Instruction dump:
[ 191.606636] 83210014 4bfffc90 813f0000 80090060 74090001 40820070
54290024 8009000c
[ 191.614294] 30000200 9009000c 8130fff8 39600000 <80690008> 8089000c
80a90000 31040001
[ 191.622147] ---[ end trace 86fcabb2513eb932 ]---
[ 191.626687]
[ 192.599223] Kernel panic - not syncing: Fatal exception in interrupt
[ 192.605305] Rebooting in 180 seconds..
if (unlikely(pkt->skb->nf_trace))
c02f98fc: 81 3f 00 00 lwz r9,0(r31)
c02f9900: 80 09 00 60 lwz r0,96(r9)
c02f9904: 74 09 00 01 andis. r9,r0,1
c02f9908: 40 82 00 70 bne- c02f9978 <nft_do_chain+0x48c>
c02f990c: 54 29 00 24 rlwinm r9,r1,0,0,18
c02f9910: 80 09 00 0c lwz r0,12(r9)
c02f9914: 30 00 02 00 addic r0,r0,512
c02f9918: 90 09 00 0c stw r0,12(r9)
nft_trace_packet(pkt, basechain, -1, NFT_TRACE_POLICY);
rcu_read_lock_bh();
stats =
this_cpu_ptr(rcu_dereference(nft_base_chain(basechain)->stats));
c02f991c: 81 30 ff f8 lwz r9,-8(r16)
u64_stats_update_begin(&stats->syncp);
stats->pkts++;
stats->bytes += pkt->skb->len;
c02f9920: 39 60 00 00 li r11,0
nft_trace_packet(pkt, basechain, -1, NFT_TRACE_POLICY);
rcu_read_lock_bh();
stats =
this_cpu_ptr(rcu_dereference(nft_base_chain(basechain)->stats));
u64_stats_update_begin(&stats->syncp);
stats->pkts++;
==> c02f9924: 80 69 00 08 lwz r3,8(r9)
c02f9928: 80 89 00 0c lwz r4,12(r9)
stats->bytes += pkt->skb->len;
c02f992c: 80 a9 00 00 lwz r5,0(r9)
nft_trace_packet(pkt, basechain, -1, NFT_TRACE_POLICY);
rcu_read_lock_bh();
stats =
this_cpu_ptr(rcu_dereference(nft_base_chain(basechain)->stats));
u64_stats_update_begin(&stats->syncp);
stats->pkts++;
c02f9930: 31 04 00 01 addic r8,r4,1
c02f9934: 7c e3 01 94 addze r7,r3
c02f9938: 90 e9 00 08 stw r7,8(r9)
c02f993c: 91 09 00 0c stw r8,12(r9)
stats->bytes += pkt->skb->len;
c02f9940: 80 c9 00 04 lwz r6,4(r9)
c02f9944: 81 5f 00 00 lwz r10,0(r31)
__local_bh_enable_ip(ip, SOFTIRQ_DISABLE_OFFSET);
}
Christophe
next reply other threads:[~2014-09-02 10:14 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-09-02 10:14 leroy christophe [this message]
2014-09-02 10:41 ` 3.16/3.16.1: Kernel Oops in nft_do_chain Pablo Neira Ayuso
2014-09-02 16:44 ` leroy christophe
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=54059883.4060309@c-s.fr \
--to=christophe.leroy@c-s.fr \
--cc=davem@davemloft.net \
--cc=linux-kernel@vger.kernel.org \
--cc=netdev@vger.kernel.org \
--cc=netfilter-devel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.