Server crashes with BUG: unable to handle kernel paging request at 0000776500007852 in the code path of third party module "gc_enforcement"

Solution In Progress - Updated -

Environment

  • Red Hat Enterprise Linux.
  • Third-Party Module [gc_enforcement].

Issue

  • The server crashed because unable to handle kernel paging request.
BUG: unable to handle kernel paging request at 0000776500007852
IP: [<ffffffffa087d605>] endr_port_table_find_explicit_rcu+0x195/0x4a0 [gc_enforcement]  <<====
Call Trace:
 <IRQ> 
 [<ffffffffa087d93f>] endr_port_table_find_task+0x2f/0x100 [gc_enforcement]
 [<ffffffffa085e109>] ? _endr_sm_process_packet_do+0xc9/0x7f40 [gc_enforcement]
 [<ffffffffa082f32c>] endr_sysctl_init+0x2bc/0x2550 [gc_enforcement]
 [<ffffffff814ff9d5>] ? inet_addr_type+0xa5/0x130
 [<ffffffff814caa2f>] ? __ip_local_out+0x9f/0xb0
 [<ffffffff81013ec3>] ? native_sched_clock+0x13/0x80
 [<ffffffff81013479>] ? sched_clock+0x9/0x10
 [<ffffffffa08375b9>] ? endr_trace_clock+0x9/0x10 [gc_enforcement]
 [<ffffffffa0865ff0>] ? endr_sm_process_packet_do+0x70/0x120 [gc_enforcement]
 [<ffffffffa083369b>] endr_nf_init+0x1ddb/0x44a0 [gc_enforcement]
 [<ffffffffa015815f>] ? addrtype_mt_v1+0xdf/0x110 [ipt_addrtype]
 [<ffffffffa01dc115>] ? ipt_do_table+0x295/0x680 [ip_tables]
 [<ffffffffa0319bf4>] ? nf_ct_invert_tuple+0x84/0xa0 [nf_conntrack]
 [<ffffffffa031accd>] ? nf_conntrack_tuple_taken+0x14d/0x160 [nf_conntrack]
 [<ffffffffa0835f07>] _endr_nfhook_in+0x17/0x20 [gc_enforcement]
 [<ffffffffa0835f83>] endr_nfhook_in+0x73/0x170 [gc_enforcement]
 [<ffffffffa083607c>] endr_nfhook_in+0x16c/0x170 [gc_enforcement]
 [<ffffffff814ba02f>] nf_iterate+0x6f/0xb0
 [<ffffffff814c5120>] ? ip_local_deliver_finish+0x0/0x2d0
 [<ffffffff814ba1e6>] nf_hook_slow+0x76/0x120
 [<ffffffff814c5120>] ? ip_local_deliver_finish+0x0/0x2d0
 [<ffffffff814c544a>] ip_local_deliver+0x5a/0xa0
 [<ffffffff814c4923>] ip_rcv_finish+0x133/0x460
 [<ffffffff814c4ec8>] ip_rcv+0x278/0x360
 [<ffffffff814891f3>] __netif_receive_skb+0x203/0x590
 [<ffffffff8148d0d8>] netif_receive_skb+0x58/0x60

Resolution

  • The [gc_enforcement] module is not shipped by Red Hat.

  • gc_enforcement is a third-party module. Kindly engage the module vendor to investigate further on the issue.

    Workaround:

Root Cause

  • The system crashed in the function of the third-party kernel module [gc_enforcement].

Diagnostic Steps

  • Server crashed due to [gc_enforcement] module function as shown below,

Kernel ring buffer:


crash> log BUG: unable to handle kernel paging request at 0000776500007852 IP: [<ffffffffa087d605>] endr_port_table_find_explicit_rcu+0x195/0x4a0 [gc_enforcement] <<------- Call Trace: <IRQ> [<ffffffffa087d93f>] endr_port_table_find_task+0x2f/0x100 [gc_enforcement] [<ffffffffa085e109>] ? _endr_sm_process_packet_do+0xc9/0x7f40 [gc_enforcement] [<ffffffffa082f32c>] endr_sysctl_init+0x2bc/0x2550 [gc_enforcement] [<ffffffff814ff9d5>] ? inet_addr_type+0xa5/0x130 [<ffffffff814caa2f>] ? __ip_local_out+0x9f/0xb0 [<ffffffff81013ec3>] ? native_sched_clock+0x13/0x80 [<ffffffff81013479>] ? sched_clock+0x9/0x10 [<ffffffffa08375b9>] ? endr_trace_clock+0x9/0x10 [gc_enforcement] [<ffffffffa0865ff0>] ? endr_sm_process_packet_do+0x70/0x120 [gc_enforcement] [<ffffffffa083369b>] endr_nf_init+0x1ddb/0x44a0 [gc_enforcement] [<ffffffffa015815f>] ? addrtype_mt_v1+0xdf/0x110 [ipt_addrtype] [<ffffffffa01dc115>] ? ipt_do_table+0x295/0x680 [ip_tables] [<ffffffffa0319bf4>] ? nf_ct_invert_tuple+0x84/0xa0 [nf_conntrack] [<ffffffffa031accd>] ? nf_conntrack_tuple_taken+0x14d/0x160 [nf_conntrack] [<ffffffffa0835f07>] _endr_nfhook_in+0x17/0x20 [gc_enforcement] [<ffffffffa0835f83>] endr_nfhook_in+0x73/0x170 [gc_enforcement] [<ffffffffa083607c>] endr_nfhook_in+0x16c/0x170 [gc_enforcement] [<ffffffff814ba02f>] nf_iterate+0x6f/0xb0 [<ffffffff814c5120>] ? ip_local_deliver_finish+0x0/0x2d0 [<ffffffff814ba1e6>] nf_hook_slow+0x76/0x120 [<ffffffff814c5120>] ? ip_local_deliver_finish+0x0/0x2d0 [<ffffffff814c544a>] ip_local_deliver+0x5a/0xa0 [<ffffffff814c4923>] ip_rcv_finish+0x133/0x460 [<ffffffff814c4ec8>] ip_rcv+0x278/0x360 [<ffffffff814891f3>] __netif_receive_skb+0x203/0x590 [<ffffffff8148d0d8>] netif_receive_skb+0x58/0x60

Backtrace of panic task:

  • The server panicked in the function endr_port_table_find_explicit_rcu().

crash> bt PID: 0 TASK: ffff88043989a040 CPU: 2 COMMAND: "swapper" #0 [ffff880038083270] machine_kexec+0x18b at ffffffff8104111b #1 [ffff8800380832d0] crash_kexec+0x72 at ffffffff810d6932 #2 [ffff8800380833a0] oops_end+0xc0 at ffffffff8155e310 #3 [ffff8800380833d0] no_context+0xfb at ffffffff810546bb #4 [ffff880038083420] __bad_area_nosemaphore+0x125 at ffffffff81054945 #5 [ffff880038083470] bad_area_nosemaphore+0x13 at ffffffff81054a13 #6 [ffff880038083480] __do_page_fault+0x30c at ffffffff8105512c #7 [ffff8800380835a0] do_page_fault+0x3e at ffffffff815602ce #8 [ffff8800380835d0] page_fault+0x25 at ffffffff8155d265 [exception RIP: endr_port_table_find_explicit_rcu+405] <<------- RIP: ffffffffa087d605 RSP: ffff880038083680 RFLAGS: 00010202 RAX: 0000000000050f58 RBX: 00007765000077ea RCX: 00000000d39351b8 RDX: 000000002b90beee RSI: ffff8800380836a0 RDI: 00000000f0000072 RBP: ffff880038083760 R8: 000000000000da6e R9: 0000000000000000 R10: 000000003a75496e R11: 000000003ecd5a0a R12: 0000000000000000 R13: 000000000a0c39fa R14: 0000000000000000 R15: 000000000a0c2d40 ORIG_RAX: ffffffffffffffff CS: 0010 SS: 0018 #9 [ffff880038083768] endr_port_table_find_task+0x2f at ffffffffa087d93f [gc_enforcement] #10 [ffff880038083798] endr_sysctl_init+0x2bc at ffffffffa082f32c [gc_enforcement] #11 [ffff8800380838e8] endr_nf_init+0x1ddb at ffffffffa083369b [gc_enforcement] #12 [ffff880038083aa8] _endr_nfhook_in+0x17 at ffffffffa0835f07 [gc_enforcement] #13 [ffff880038083ab8] endr_nfhook_in+0x73 at ffffffffa0835f83 [gc_enforcement] #14 [ffff880038083b08] endr_nfhook_in+0x16c at ffffffffa083607c [gc_enforcement] #15 [ffff880038083b68] nf_hook_slow+0x76 at ffffffff814ba1e6 #16 [ffff880038083be8] ip_local_deliver+0x5a at ffffffff814c544a #17 [ffff880038083c18] ip_rcv_finish+0x133 at ffffffff814c4923 #18 [ffff880038083c58] ip_rcv+0x278 at ffffffff814c4ec8 #19 [ffff880038083c98] __netif_receive_skb+0x203 at ffffffff814891f3 #20 [ffff880038083ce8] netif_receive_skb+0x58 at ffffffff8148d0d8 #21 [ffff880038083d28] napi_skb_finish+0x50 at ffffffff8148d1e0 #22 [ffff880038083d48] napi_gro_receive+0x39 at ffffffff8148d7f9 #23 [ffff880038083d68] vmxnet3_rq_rx_complete+0x6eb at ffffffffa017972b [vmxnet3] #24 [ffff880038083e18] vmxnet3_poll_rx_only+0x43 at ffffffffa0179fc3 [vmxnet3] #25 [ffff880038083e58] net_rx_action+0x109 at ffffffff8148ed59 #26 [ffff880038083eb8] __do_softirq+0xea at ffffffff8108994a #27 [ffff880038083f38] call_softirq+0x1c at ffffffff8156591c #28 [ffff880038083f50] do_softirq+0x65 at ffffffff8100e4c5 #29 [ffff880038083f70] irq_exit+0x8d at ffffffff810895dd #30 [ffff880038083f80] do_IRQ+0x75 at ffffffff81566795

Dis-assembly of exception RIP:

crash> sym endr_port_table_find_explicit_rcu
ffffffffa087d470 (t) endr_port_table_find_explicit_rcu [gc_enforcement]
                                         ^                     ^
                                         |                     |
                [ Function within the module code ]      [ Module Name ]


Third-party modules:

  • Details of an unsigned (U) module: [gc_enforcement].

crash> mod -t | grep -i 'gc_enforcement' gc_enforcement (U) <<------- crash>

This solution is part of Red Hat’s fast-track publication program, providing a huge library of solutions that Red Hat engineers have created while supporting our customers. To give you the knowledge you need the instant it becomes available, these articles may be presented in a raw and unedited form.

Comments