[Bug 216554] LACP integer divide fault

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Sat Jan 28 19:36:31 UTC 2017


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=216554

            Bug ID: 216554
           Summary: LACP integer divide fault
           Product: Base System
           Version: 11.0-STABLE
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Some People
          Priority: ---
         Component: kern
          Assignee: freebsd-bugs at FreeBSD.org
          Reporter: slw at zxy.spb.ru

Fatal trap 18: integer divide fault while in kernel mode
cpuid = 3; apic id = 06
instruction pointer     = 0x20:0xffffffff81453230
stack pointer           = 0x28:0xfffffe3e56f46480
frame pointer           = 0x28:0xfffffe3e56f464a0
code segment            = base 0x0, limit 0xfffff, type 0x1b
                        = DPL 0, pres 1, long 1, def32 0, gran 1
processor eflags        = interrupt enabled, resume, IOPL = 0
current process         = 12 (swi4: clock (3))
trap number             = 18
panic: integer divide fault
cpuid = 3
KDB: stack backtrace:
db_trace_self_wrapper() at 0xffffffff8032b3eb =
db_trace_self_wrapper+0x2b/frame 0xfffffe3e56f460c0
vpanic() at 0xffffffff804e33a6 = vpanic+0x186/frame 0xfffffe3e56f46140
panic() at 0xffffffff804e3213 = panic+0x43/frame 0xfffffe3e56f461a0
trap_fatal() at 0xffffffff807b07c2 = trap_fatal+0x322/frame 0xfffffe3e56f461f0
trap() at 0xffffffff807b0475 = trap+0x6b5/frame 0xfffffe3e56f463b0
calltrap() at 0xffffffff807946b1 = calltrap+0x8/frame 0xfffffe3e56f463b0
--- trap 0x12, rip = 0xffffffff81453230, rsp = 0xfffffe3e56f46480, rbp =
0xfffffe3e56f464a0 ---
lacp_select_tx_port() at 0xffffffff81453230 = lacp_select_tx_port+0x70/frame
0xfffffe3e56f464a0
lagg_lacp_start() at 0xffffffff814504ae = lagg_lacp_start+0xe/frame
0xfffffe3e56f464c0
lagg_transmit() at 0xffffffff8144e73f = lagg_transmit+0xbf/frame
0xfffffe3e56f46530
ether_output() at 0xffffffff805f30bc = ether_output+0x71c/frame
0xfffffe3e56f465d0
ip_output() at 0xffffffff80629935 = ip_output+0x1585/frame 0xfffffe3e56f46720
tcp_output() at 0xffffffff806b9e16 = tcp_output+0x1876/frame 0xfffffe3e56f468c0
tcp_timer_rexmt() at 0xffffffff806c572f = tcp_timer_rexmt+0x4df/frame
0xfffffe3e56f46900
softclock_call_cc() at 0xffffffff804fd1b6 = softclock_call_cc+0x156/frame
0xfffffe3e56f469b0
softclock() at 0xffffffff804fd754 = softclock+0x94/frame 0xfffffe3e56f469e0
intr_event_execute_handlers() at 0xffffffff8049d15f =
intr_event_execute_handlers+0x20f/frame 0xfffffe3e56f46a20
ithread_loop() at 0xffffffff8049d766 = ithread_loop+0xc6/frame
0xfffffe3e56f46a70
fork_exit() at 0xffffffff80499e25 = fork_exit+0x85/frame 0xfffffe3e56f46ab0
fork_trampoline() at 0xffffffff80794bee = fork_trampoline+0xe/frame
0xfffffe3e56f46ab0
--- trap 0, rip = 0, rsp = 0, rbp = 0 ---

(kgdb) info line *0xffffffff81453230
Line 848 of "/usr/src/sys/modules/if_lagg/../../net/ieee8023ad_lacp.c" starts
at address 0xffffffff8145322e <lacp_select_tx_port+110> and ends at
0xffffffff81453233 <lacp_select_tx_port+115>.

===

Lacp configuration:
cc0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
       
options=ec07bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,TSO4,TSO6,LRO,VLAN_HWTSO,LINKSTATE,RXCSUM_IPV6,TXCSUM_IPV6>
        ether 00:07:43:39:8c:00
        nd6 options=9<PERFORMNUD,IFDISABLED>
        media: Ethernet 40Gbase-SR4 <full-duplex>
        status: active
cc1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
       
options=ec07bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,TSO4,TSO6,LRO,VLAN_HWTSO,LINKSTATE,RXCSUM_IPV6,TXCSUM_IPV6>
        ether 00:07:43:39:8c:00
        nd6 options=9<PERFORMNUD,IFDISABLED>
        media: Ethernet 40Gbase-SR4 <full-duplex>
        status: no carrier
lagg0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
       
options=ec07bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,TSO4,TSO6,LRO,VLAN_HWTSO,LINKSTATE,RXCSUM_IPV6,TXCSUM_IPV6>
        ether 00:07:43:39:8c:00
        inet 37.220.36.136 netmask 0xffffff00 broadcast 37.220.36.255 
        nd6 options=9<PERFORMNUD,IFDISABLED>
        media: Ethernet autoselect
        status: active
        groups: lagg 
        laggproto lacp lagghash l2,l3,l4
        laggport: cc0 flags=1c<ACTIVE,COLLECTING,DISTRIBUTING>
        laggport: cc1 flags=0<>


======

I mean last member of lagg0 gone between lines 838 and 848 (race condition at
access pm->pm_count).

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the freebsd-bugs mailing list