====================================== | [ 529.825526][ C1] page dumped because: VM_BUG_ON_PAGE(page_ref_count(page) == 0) | [ 529.825831][ C1] ------------[ cut here ]------------ | [ 529.826053][ C1] kernel BUG at include/linux/mm.h:1140! | [ 529.826237][ C1] Oops: invalid opcode: 0000 [#1] PREEMPT SMP KASAN NOPTI [ 529.826695][ C1] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.16.3-0-ga6ed6b701f0a-prebuilt.qemu.org 04/01/2014 [ 529.827016][ C1] RIP: 0010:__free_pages (./include/linux/mm.h:1140 ./include/linux/mm.h:1138 mm/page_alloc.c:4819) [ 529.827178][ C1] Code: 0f 94 c3 e9 ba fe ff ff 48 c7 c6 a0 18 78 ba 4c 89 e7 e8 df bf f4 ff 90 0f 0b 48 c7 c6 40 29 78 ba 4c 89 e7 e8 cd bf f4 ff 90 <0f> 0b 48 89 ef e8 72 03 09 00 e9 c5 fe ff ff e8 98 03 09 00 e9 35 All code ======== 0: 0f 94 c3 sete %bl 3: e9 ba fe ff ff jmp 0xfffffffffffffec2 8: 48 c7 c6 a0 18 78 ba mov $0xffffffffba7818a0,%rsi f: 4c 89 e7 mov %r12,%rdi 12: e8 df bf f4 ff call 0xfffffffffff4bff6 17: 90 nop 18: 0f 0b ud2 1a: 48 c7 c6 40 29 78 ba mov $0xffffffffba782940,%rsi 21: 4c 89 e7 mov %r12,%rdi 24: e8 cd bf f4 ff call 0xfffffffffff4bff6 29: 90 nop 2a:* 0f 0b ud2 <-- trapping instruction 2c: 48 89 ef mov %rbp,%rdi 2f: e8 72 03 09 00 call 0x903a6 34: e9 c5 fe ff ff jmp 0xfffffffffffffefe 39: e8 98 03 09 00 call 0x903d6 3e: e9 .byte 0xe9 3f: 35 .byte 0x35 Code starting with the faulting instruction =========================================== 0: 0f 0b ud2 2: 48 89 ef mov %rbp,%rdi 5: e8 72 03 09 00 call 0x9037c a: e9 c5 fe ff ff jmp 0xfffffffffffffed4 f: e8 98 03 09 00 call 0x903ac 14: e9 .byte 0xe9 15: 35 .byte 0x35 [ 529.827671][ C1] RSP: 0018:ffffc900001e8e08 EFLAGS: 00010246 [ 529.827861][ C1] RAX: 000000000000003e RBX: 0000000000000000 RCX: 1ffffffff767b43c [ 529.828069][ C1] RDX: 0000000000000000 RSI: 0000000000000004 RDI: 0000000000000001 [ 529.828275][ C1] RBP: ffffea0000178134 R08: 0000000000000000 R09: fffffbfff767b43c [ 529.828486][ C1] R10: 0000000000000003 R11: 205d314320202020 R12: ffffea0000178100 [ 529.828693][ C1] R13: ffffc900001e8ed0 R14: 0000000000000000 R15: 0000000000000008 [ 529.828902][ C1] FS: 00007f3e5b5a9740(0000) GS:ffff888036080000(0000) knlGS:0000000000000000 [ 529.829145][ C1] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 529.829325][ C1] CR2: 00007f3e5ba1b270 CR3: 0000000009ba0004 CR4: 0000000000772ef0 [ 529.829535][ C1] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 [ 529.829746][ C1] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 [ 529.829961][ C1] PKRU: 55555554 [ 529.830070][ C1] Call Trace: [ 529.830174][ C1] [ 529.830251][ C1] ? die (arch/x86/kernel/dumpstack.c:421 arch/x86/kernel/dumpstack.c:434 arch/x86/kernel/dumpstack.c:447) [ 529.830364][ C1] ? do_trap (arch/x86/kernel/traps.c:156 arch/x86/kernel/traps.c:197) [ 529.830475][ C1] ? __free_pages (./include/linux/mm.h:1140 ./include/linux/mm.h:1138 mm/page_alloc.c:4819) [ 529.830679][ C1] ? do_error_trap (./arch/x86/include/asm/traps.h:58 arch/x86/kernel/traps.c:218) [ 529.830844][ C1] ? __free_pages (./include/linux/mm.h:1140 ./include/linux/mm.h:1138 mm/page_alloc.c:4819) [ 529.830984][ C1] ? __free_pages (./include/linux/mm.h:1140 ./include/linux/mm.h:1138 mm/page_alloc.c:4819) [ 529.831133][ C1] ? handle_invalid_op (arch/x86/kernel/traps.c:256) [ 529.831272][ C1] ? __free_pages (./include/linux/mm.h:1140 ./include/linux/mm.h:1138 mm/page_alloc.c:4819) [ 529.831412][ C1] ? exc_invalid_op (arch/x86/kernel/traps.c:315) [ 529.831555][ C1] ? asm_exc_invalid_op (./arch/x86/include/asm/idtentry.h:621) [ 529.831702][ C1] ? __free_pages (./include/linux/mm.h:1140 ./include/linux/mm.h:1138 mm/page_alloc.c:4819) [ 529.831845][ C1] ? __free_pages (./include/linux/mm.h:1140 ./include/linux/mm.h:1138 mm/page_alloc.c:4819) [ 529.831983][ C1] ? rcu_do_batch (kernel/rcu/tree.c:2567) [ 529.832135][ C1] neigh_hash_free_rcu (net/core/neighbour.c:554) [ 529.832280][ C1] rcu_do_batch (kernel/rcu/tree.c:2567) [ 529.832420][ C1] ? __pfx_rcu_do_batch (kernel/rcu/tree.c:2491) [ 529.832571][ C1] ? lockdep_hardirqs_on_prepare (kernel/locking/lockdep.c:4339 kernel/locking/lockdep.c:4406) [ 529.832747][ C1] rcu_core (kernel/rcu/tree.c:2825) [ 529.832856][ C1] handle_softirqs (kernel/softirq.c:554) [ 529.832997][ C1] ? __dev_queue_xmit (./include/linux/rcupdate.h:347 ./include/linux/rcupdate.h:917 net/core/dev.c:4457) [ 529.833148][ C1] do_softirq (kernel/softirq.c:455 kernel/softirq.c:442) [ 529.833260][ C1] [ 529.833336][ C1] [ 529.833415][ C1] __local_bh_enable_ip (kernel/softirq.c:382) [ 529.833570][ C1] ? __dev_queue_xmit (./include/linux/rcupdate.h:347 ./include/linux/rcupdate.h:917 net/core/dev.c:4457) [ 529.833715][ C1] __dev_queue_xmit (net/core/dev.c:4458) [ 529.833860][ C1] ? __lock_release (kernel/locking/lockdep.c:5501) [ 529.834002][ C1] ? ip_finish_output2 (./include/net/neighbour.h:535 net/ipv4/ip_output.c:235) [ 529.834139][ C1] ? __pfx___lock_release (kernel/locking/lockdep.c:5477) [ 529.834280][ C1] ? __pfx_lock_acquire.part.0 (kernel/locking/lockdep.c:5790) [ 529.834442][ C1] ? __pfx___dev_queue_xmit (net/core/dev.c:4339) [ 529.834580][ C1] ? lockdep_hardirqs_on_prepare (kernel/locking/lockdep.c:4347 kernel/locking/lockdep.c:4406) [ 529.834774][ C1] ? neigh_hh_output (./include/linux/seqlock.h:74 ./include/linux/seqlock.h:757 ./include/net/neighbour.h:491) [ 529.834914][ C1] ip_finish_output2 (./include/net/neighbour.h:535 net/ipv4/ip_output.c:235) [ 529.835055][ C1] ? __pfx_ip_finish_output2 (net/ipv4/ip_output.c:199) [ 529.835192][ C1] ? __ip_finish_output (./include/linux/skbuff.h:1672 ./include/linux/skbuff.h:5019 net/ipv4/ip_output.c:307 net/ipv4/ip_output.c:295) [ 529.835332][ C1] ip_output (./include/linux/netfilter.h:303 net/ipv4/ip_output.c:433) [ 529.835434][ C1] ? __pfx_lock_acquire.part.0 (kernel/locking/lockdep.c:5790) [ 529.835570][ C1] ? __pfx_ip_output (net/ipv4/ip_output.c:427) [ 529.835708][ C1] ? lock_acquire (kernel/locking/lockdep.c:5798) [ 529.835856][ C1] ? lockdep_hardirqs_on_prepare (kernel/locking/lockdep.c:4347 kernel/locking/lockdep.c:4406) [ 529.836030][ C1] NF_HOOK.constprop.0 (./include/linux/skbuff.h:1672 ./include/linux/skbuff.h:5069 net/ipv4/ip_forward.c:99) [ 529.836170][ C1] ? __pfx_NF_HOOK.constprop.0 (./include/linux/netfilter.h:308) [ 529.836308][ C1] ? __get_random_u32_below (drivers/char/random.c:578) [ 529.836451][ C1] ? __ip_select_ident (./arch/x86/include/asm/atomic.h:85 ./include/linux/atomic/atomic-arch-fallback.h:564 ./include/linux/atomic/atomic-instrumented.h:124 net/ipv4/route.c:478 net/ipv4/route.c:494) [ 529.836592][ C1] raw_send_hdrinc (net/ipv4/raw.c:415) [ 529.836733][ C1] ? __pfx_raw_send_hdrinc (net/ipv4/raw.c:330) [ 529.836899][ C1] raw_sendmsg (net/ipv4/raw.c:644) [ 529.837083][ C1] ? __pfx_raw_sendmsg (net/ipv4/raw.c:483) [ 529.837390][ C1] ? usage_skip (kernel/locking/lockdep.c:2314 kernel/locking/lockdep.c:2282) [ 529.837531][ C1] ? __lock_release (kernel/locking/lockdep.c:5501) [ 529.837667][ C1] ? __might_fault (mm/memory.c:6700 mm/memory.c:6693) [ 529.837807][ C1] ? __pfx___lock_release (kernel/locking/lockdep.c:5477) [ 529.838024][ C1] ? trace_lock_acquire (./include/trace/events/lock.h:24 (discriminator 52)) [ 529.838168][ C1] ? __might_fault (mm/memory.c:6700 mm/memory.c:6693) [ 529.838304][ C1] ? lock_acquire (kernel/locking/lockdep.c:5798) [ 529.838444][ C1] ? __might_fault (mm/memory.c:6700 mm/memory.c:6693) [ 529.838665][ C1] ? __might_fault (mm/memory.c:6700 mm/memory.c:6693) [ 529.838804][ C1] __sys_sendto (net/socket.c:729 net/socket.c:744 net/socket.c:2214) [ 529.838942][ C1] ? __pfx___sys_sendto (net/socket.c:2184) [ 529.839090][ C1] ? __might_fault (mm/memory.c:6700 mm/memory.c:6693) [ 529.839310][ C1] ? trace_lock_acquire (./include/trace/events/lock.h:24 (discriminator 52)) [ 529.839452][ C1] ? lock_acquire (kernel/locking/lockdep.c:5798) [ 529.839591][ C1] ? __might_fault (mm/memory.c:6700 mm/memory.c:6693) [ 529.839728][ C1] ? trace_rseq_update (./include/trace/events/rseq.h:11 (discriminator 52)) [ 529.839875][ C1] ? __rseq_handle_notify_resume (kernel/rseq.c:316) [ 529.840137][ C1] ? __pfx___rseq_handle_notify_resume (kernel/rseq.c:316) [ 529.840328][ C1] ? __local_bh_enable (kernel/softirq.c:343) [ 529.840476][ C1] __x64_sys_sendto (net/socket.c:2222) [ 529.840702][ C1] ? lockdep_hardirqs_on_prepare (kernel/locking/lockdep.c:4347 kernel/locking/lockdep.c:4406) [ 529.840888][ C1] do_syscall_64 (arch/x86/entry/common.c:52 arch/x86/entry/common.c:83) [ 529.841037][ C1] entry_SYSCALL_64_after_hwframe (arch/x86/entry/entry_64.S:130) [ 529.841208][ C1] RIP: 0033:0x7f3e5b80385a [ 529.841444][ C1] Code: d8 64 89 02 48 c7 c0 ff ff ff ff eb b8 0f 1f 00 f3 0f 1e fa 41 89 ca 64 8b 04 25 18 00 00 00 85 c0 75 15 b8 2c 00 00 00 0f 05 <48> 3d 00 f0 ff ff 77 7e c3 0f 1f 44 00 00 41 54 48 83 ec 30 44 89 All code ======== 0: d8 64 89 02 fsubs 0x2(%rcx,%rcx,4) 4: 48 c7 c0 ff ff ff ff mov $0xffffffffffffffff,%rax b: eb b8 jmp 0xffffffffffffffc5 d: 0f 1f 00 nopl (%rax) 10: f3 0f 1e fa endbr64 14: 41 89 ca mov %ecx,%r10d 17: 64 8b 04 25 18 00 00 mov %fs:0x18,%eax 1e: 00 1f: 85 c0 test %eax,%eax 21: 75 15 jne 0x38 23: b8 2c 00 00 00 mov $0x2c,%eax 28: 0f 05 syscall 2a:* 48 3d 00 f0 ff ff cmp $0xfffffffffffff000,%rax <-- trapping instruction 30: 77 7e ja 0xb0 32: c3 ret 33: 0f 1f 44 00 00 nopl 0x0(%rax,%rax,1) 38: 41 54 push %r12 3a: 48 83 ec 30 sub $0x30,%rsp 3e: 44 rex.R 3f: 89 .byte 0x89 Code starting with the faulting instruction =========================================== 0: 48 3d 00 f0 ff ff cmp $0xfffffffffffff000,%rax 6: 77 7e ja 0x86 8: c3 ret 9: 0f 1f 44 00 00 nopl 0x0(%rax,%rax,1) e: 41 54 push %r12 10: 48 83 ec 30 sub $0x30,%rsp 14: 44 rex.R 15: 89 .byte 0x89 [ 529.841928][ C1] RSP: 002b:00007ffec99c8998 EFLAGS: 00000246 ORIG_RAX: 000000000000002c [ 529.842224][ C1] RAX: ffffffffffffffda RBX: 00000000376929d0 RCX: 00007f3e5b80385a [ 529.842439][ C1] RDX: 000000000000005c RSI: 00000000376925c0 RDI: 0000000000000005 [ 529.842655][ C1] RBP: 00000000376929d0 R08: 00007ffec99c89a0 R09: 0000000000000010 [ 529.842942][ C1] R10: 0000000000000000 R11: 0000000000000246 R12: 000000000000005c Finger prints: __free_pages:neigh_hash_free_rcu:rcu_do_batch:rcu_core:handle_softirqs