SOLVED: Null pointer dereference (tproxy)
Posted: Sat Sep 24, 2016 6:00 am
Hi again
This happens to me starting from 4.7.1 - 4.7.4 on a kvm virtual machine running squid/tproxy. I didn't find a way to trigger it, happens occasionally.Running 4.6.5-hardened-r1 is fine.
--8<--
BUG: unable to handle kernel NULL pointer dereference at 0000000000000441
IP: [<ffffffff8774ded1>] __inet_lookup_listener+0x70/0x198
PGD 6e2a8000
Oops: 0000 [#1] SMP
CPU: 0 PID: 1917 Comm: tor Not tainted 4.7.1-hardened-domU-gw25 #3
Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011
task: ffff88007c8d2200 ti: ffff88007c8d2880 task.ti: ffff88007c8d2880
RIP: 0010:[<ffffffff8774ded1>] [<ffffffff8774ded1>] __inet_lookup_listener+0x70/0x198
RSP: 0000:ffff88007fc03a50 EFLAGS: 00010286
RAX: 0000000000000000 RBX: 0000000000000411 RCX: 0000000000000000
RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000411
RBP: 00000000ffffffff R08: 000000009b02a8c0 R09: 0000000000008aa7
R10: ffff88006cbca400 R11: 000000006608a8c0 R12: 0000000000000000
R13: ffffffff87e5dc80 R14: 0000000000000c39 R15: 0000000000000c39
FS: 00000375398b4700(0000) GS:ffff88007fc00000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000000000000441 CR3: 0000000007ced000 CR4: 00000000000006b0
Stack:
ffff88006cbca400 0000003c87e5dc80 00008aa79b02a8c0 ffff88006cbca400
0000000000000c39 ffff88006d788262 ffff88006d78824e ffffffff87e5dc80
0000000000000000 ffffffff876ffc9a 000000006608a8c0 0000000000000c39
Call Trace:
<IRQ>
[<ffffffff876ffc9a>] ? tproxy_tg4+0x38a/0x45e
[<ffffffff877a3fb6>] ? ipt_do_table+0x346/0x5f1
[<ffffffff876e61c9>] ? tcp_new+0x1bb/0x1bb
[<ffffffff876e1834>] ? nf_conntrack_in+0x37a/0x4bd
[<ffffffff876d9391>] ? nf_iterate+0x58/0x8f
[<ffffffff876d93ee>] ? nf_hook_slow+0x26/0x9b
[<ffffffff87743e17>] ? ip_rcv+0x4c5/0x515
[<ffffffff87743431>] ? ip_local_deliver_finish+0x24d/0x24d
[<ffffffff87679532>] ? __netif_receive_skb_core+0x854/0xadb
[<ffffffff87679532>] ? __netif_receive_skb_core+0x854/0xadb
[<ffffffff87679d96>] ? dev_gro_receive+0x3d0/0x5de
[<ffffffff87679d96>] ? dev_gro_receive+0x3d0/0x5de
[<ffffffff876798d5>] ? netif_receive_skb_internal+0x37/0x7b
[<ffffffff876798d5>] ? netif_receive_skb_internal+0x37/0x7b
[<ffffffff8767e14a>] ? napi_gro_receive+0x40/0xb2
[<ffffffff875ec5c8>] ? virtnet_receive+0x8d4/0x8fa
[<ffffffff871022be>] ? __wake_up+0x33/0x4c
[<ffffffff87563ed2>] ? serial8250_tx_chars+0x119/0x2af
[<ffffffff875ec7f3>] ? virtnet_poll+0x13/0x76
[<ffffffff8767e82e>] ? net_rx_action+0x185/0x441
[<ffffffff870d466a>] ? __do_softirq+0xda/0x1e1
[<ffffffff870d4908>] ? irq_exit+0x39/0x80
[<ffffffff8701804a>] ? do_IRQ+0xc1/0xe5
[<ffffffff87833cce>] ? common_interrupt+0x8e/0x8e
<EOI>
Code: e0 04 48 01 c6 48 8b 46 08 48 8d 50 98 48 85 c0 48 0f 45 da 45 31 e4 31 d2 31 f6 31 c9 31 c0 48 85 db 0f 84 0b 01 00 00 83 cd ff <4c> 39 6b 30 0f 85 b1 00 00 00 66 44 39 73 0e 0f 85 a6 00 00 00
RIP [<ffffffff8774ded1>] __inet_lookup_listener+0x70/0x198
RSP <ffff88007fc03a50>
CR2: 0000000000000441
---[ end trace d24122622dce7472 ]---
Kernel panic - not syncing: Fatal exception in interrupt
Kernel Offset: 0x6000000 from 0xffffffff81000000 (relocation range: 0xffffffff80000000-0xffffffffbfffffff)
---[ end Kernel panic - not syncing: Fatal exception in interrupt
--8<--
This happens to me starting from 4.7.1 - 4.7.4 on a kvm virtual machine running squid/tproxy. I didn't find a way to trigger it, happens occasionally.Running 4.6.5-hardened-r1 is fine.
--8<--
BUG: unable to handle kernel NULL pointer dereference at 0000000000000441
IP: [<ffffffff8774ded1>] __inet_lookup_listener+0x70/0x198
PGD 6e2a8000
Oops: 0000 [#1] SMP
CPU: 0 PID: 1917 Comm: tor Not tainted 4.7.1-hardened-domU-gw25 #3
Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011
task: ffff88007c8d2200 ti: ffff88007c8d2880 task.ti: ffff88007c8d2880
RIP: 0010:[<ffffffff8774ded1>] [<ffffffff8774ded1>] __inet_lookup_listener+0x70/0x198
RSP: 0000:ffff88007fc03a50 EFLAGS: 00010286
RAX: 0000000000000000 RBX: 0000000000000411 RCX: 0000000000000000
RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000411
RBP: 00000000ffffffff R08: 000000009b02a8c0 R09: 0000000000008aa7
R10: ffff88006cbca400 R11: 000000006608a8c0 R12: 0000000000000000
R13: ffffffff87e5dc80 R14: 0000000000000c39 R15: 0000000000000c39
FS: 00000375398b4700(0000) GS:ffff88007fc00000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000000000000441 CR3: 0000000007ced000 CR4: 00000000000006b0
Stack:
ffff88006cbca400 0000003c87e5dc80 00008aa79b02a8c0 ffff88006cbca400
0000000000000c39 ffff88006d788262 ffff88006d78824e ffffffff87e5dc80
0000000000000000 ffffffff876ffc9a 000000006608a8c0 0000000000000c39
Call Trace:
<IRQ>
[<ffffffff876ffc9a>] ? tproxy_tg4+0x38a/0x45e
[<ffffffff877a3fb6>] ? ipt_do_table+0x346/0x5f1
[<ffffffff876e61c9>] ? tcp_new+0x1bb/0x1bb
[<ffffffff876e1834>] ? nf_conntrack_in+0x37a/0x4bd
[<ffffffff876d9391>] ? nf_iterate+0x58/0x8f
[<ffffffff876d93ee>] ? nf_hook_slow+0x26/0x9b
[<ffffffff87743e17>] ? ip_rcv+0x4c5/0x515
[<ffffffff87743431>] ? ip_local_deliver_finish+0x24d/0x24d
[<ffffffff87679532>] ? __netif_receive_skb_core+0x854/0xadb
[<ffffffff87679532>] ? __netif_receive_skb_core+0x854/0xadb
[<ffffffff87679d96>] ? dev_gro_receive+0x3d0/0x5de
[<ffffffff87679d96>] ? dev_gro_receive+0x3d0/0x5de
[<ffffffff876798d5>] ? netif_receive_skb_internal+0x37/0x7b
[<ffffffff876798d5>] ? netif_receive_skb_internal+0x37/0x7b
[<ffffffff8767e14a>] ? napi_gro_receive+0x40/0xb2
[<ffffffff875ec5c8>] ? virtnet_receive+0x8d4/0x8fa
[<ffffffff871022be>] ? __wake_up+0x33/0x4c
[<ffffffff87563ed2>] ? serial8250_tx_chars+0x119/0x2af
[<ffffffff875ec7f3>] ? virtnet_poll+0x13/0x76
[<ffffffff8767e82e>] ? net_rx_action+0x185/0x441
[<ffffffff870d466a>] ? __do_softirq+0xda/0x1e1
[<ffffffff870d4908>] ? irq_exit+0x39/0x80
[<ffffffff8701804a>] ? do_IRQ+0xc1/0xe5
[<ffffffff87833cce>] ? common_interrupt+0x8e/0x8e
<EOI>
Code: e0 04 48 01 c6 48 8b 46 08 48 8d 50 98 48 85 c0 48 0f 45 da 45 31 e4 31 d2 31 f6 31 c9 31 c0 48 85 db 0f 84 0b 01 00 00 83 cd ff <4c> 39 6b 30 0f 85 b1 00 00 00 66 44 39 73 0e 0f 85 a6 00 00 00
RIP [<ffffffff8774ded1>] __inet_lookup_listener+0x70/0x198
RSP <ffff88007fc03a50>
CR2: 0000000000000441
---[ end trace d24122622dce7472 ]---
Kernel panic - not syncing: Fatal exception in interrupt
Kernel Offset: 0x6000000 from 0xffffffff81000000 (relocation range: 0xffffffff80000000-0xffffffffbfffffff)
---[ end Kernel panic - not syncing: Fatal exception in interrupt
--8<--