Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 16 Sep 2014 11:17:38 +0000
From:      bugzilla-noreply@freebsd.org
To:        freebsd-bugs@FreeBSD.org
Subject:   [Bug 193681] New: kernel panic: dhclient NULL pointer in ether_output_frame() when using dummynet at layer2
Message-ID:  <bug-193681-8@https.bugs.freebsd.org/bugzilla/>

next in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=193681

            Bug ID: 193681
           Summary: kernel panic: dhclient NULL pointer in
                    ether_output_frame() when using dummynet at layer2
           Product: Base System
           Version: 11.0-CURRENT
          Hardware: Any
                OS: Any
            Status: Needs Triage
          Severity: Affects Only Me
          Priority: ---
         Component: kern
          Assignee: freebsd-bugs@FreeBSD.org
          Reporter: kate@elide.org

# ifconfig bridge0
bridge0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
        ether 9e:e1:ad:03:c9:45
        id 00:00:00:00:00:00 priority 32768 hellotime 2 fwddelay 15
        maxage 20 holdcnt 6 proto rstp maxaddr 2000 timeout 1200
        root id 00:00:00:00:00:00 priority 32768 ifcost 0 port 0
        member: arge1 flags=143<LEARNING,DISCOVER,AUTOEDGE,AUTOPTP>
                ifmaxaddr 0 port 6 priority 128 path cost 2000000
        member: arge0 flags=143<LEARNING,DISCOVER,AUTOEDGE,AUTOPTP>
                ifmaxaddr 0 port 5 priority 128 path cost 200000
#
#
# sysctl net.link.ether.ipfw=1
net.link.ether.ipfw: 0 -> 1
# sysctl net.link.bridge.ipfw=1
net.link.bridge.ipfw: 0 -> 1
# ipfw add 100 pipe 1 ip from any to any layer2
00100 pipe 1 ip from any to any layer2
# ipfw pipe 1 config
#
#
# dhclient arge0
DHCPDISCOVER on arge0 to 255.255.255.255 port 67 interval 6
Trap cause = 2 (TLB miss (load or instr. fetch) - kernel mode)
[ thread pid 11 tid 100024 ]
Stopped at      ether_output_frame+0x50:        lw      v0,680(s0)
db>
db>
db>
db>
db> bt
Tracing pid 11 tid 100024 td 0x8077b000
db_trace_thread+30 (?,?,?,?) ra c232f58800000018 sp 0 sz 0
80085a94+114 (0,?,ffffffff,?) ra c232f5a000000020 sp 100000000 sz 1
80085170+388 (?,?,?,?) ra c232f5c0000000a8 sp 0 sz 0
db_command_loop+70 (?,?,?,?) ra c232f66800000018 sp 0 sz 0
80087cb0+f4 (?,?,?,?) ra c232f680000001a8 sp 0 sz 0
kdb_trap+110 (?,?,?,?) ra c232f82800000030 sp 0 sz 0
trap+13c0 (?,?,?,?) ra c232f858000000c0 sp 0 sz 0
MipsKernGenException+134 (805823b4,8077b000,40000000,0) ra c232f918000000c8 sp
100000001 sz 1
ether_output_frame+50 (?,80995900,?,?) ra c232f9e000000020 sp 1 sz 0
8039d150+14c (?,?,?,?) ra c232fa0000000030 sp 0 sz 0
dummynet_io+454 (?,?,?,?) ra c232fa3000000038 sp 0 sz 0
ipfw_check_frame+290 (?,?,?,?) ra c232fa6800000140 sp 0 sz 0
pfil_run_hooks+9c (?,?,?,?) ra c232fba800000060 sp 0 sz 0
ether_demux+50 (?,80995900,?,?) ra c232fc0800000028 sp 1 sz 0
802f9814+4e0 (80995900,?,?,?) ra c232fc3000000030 sp 100000000 sz 0
netisr_dispatch_src+f0 (?,?,?,?) ra c232fc6000000038 sp 0 sz 0
netisr_dispatch+14 (?,?,?,?) ra c232fc9800000018 sp 0 sz 0
802f941c+20 (?,?,?,?) ra c232fcb000000018 sp 0 sz 0
802f5d4c+3bc (?,80d74e00,?,?) ra c232fcc800000038 sp 1 sz 0
802f9814+40c (80d74e00,?,?,?) ra c232fd0000000030 sp 100000000 sz 0
netisr_dispatch_src+f0 (?,?,?,?) ra c232fd3000000038 sp 0 sz 0
netisr_dispatch+14 (?,?,?,?) ra c232fd6800000018 sp 0 sz 0
802f941c+20 (?,?,?,?) ra c232fd8000000018 sp 0 sz 0
80450f4c+348 (?,?,?,?) ra c232fd9800000048 sp 0 sz 0
intr_event_execute_handlers+1c0 (?,?,?,?) ra c232fde000000030 sp 0 sz 0
801e7344+b4 (?,?,?,?) ra c232fe1000000048 sp 0 sz 0
fork_exit+a0 (?,?,?,?) ra c232fe5800000028 sp 0 sz 0
fork_trampoline+10 (?,?,?,?) ra c232fe8000000000 sp 0 sz 0
pid 11
db>
db> show reg
at                   0
v0          0x80995900
v1                   0
a0          0x805823b4  pfil_lock
a1          0x8077b000
a2          0x40000000
a3                   0
t0                   0
t1                   0
t2                   0
t3          0x807081e0
t4                   0
t5                   0
t6                   0
t7                   0
s0                   0
s1          0x80995900
s2                   0
s3          0x4b3cc420
s4          0x804913a0  tcprexmtthresh+0x43c
s5                 0x4  _DYNAMIC_LINKING+0x3
s6          0x805820a0  link_pfil_hook
s7          0xc232fc34
t8                0x1c  _DYNAMIC_LINKING+0x1b
t9          0x4055ce10
k0          0xc232fbc0
k1          0x80560120  pcpu_space+0x120
gp                   0
sp          0xc232f9e0
s8          0x808c3074
ra          0x8039d29c  dn_enqueue+0x6bc
sr              0xcc03  _DYNAMIC_LINKING+0xcc02
lo          0x7c389600
hi             0x2916c
bad              0x2a8  _DYNAMIC_LINKING+0x2a7
cs                 0x8  _DYNAMIC_LINKING+0x7
pc          0x802f94e8  ether_output_frame+0x50
ether_output_frame+0x50:        lw      v0,680(s0)
db>

According to kdb, ether_output_frame+0x50 is:

(kgdb) list *ether_output_frame+0x50
0x802f94e8 is in ether_output_frame
(/usr/home/kate/src/freebsd/sys/net/if_ethersubr.c:374).

which is:

        return ((ifp->if_transmit)(ifp, m));

I am using a Carambola 2, with 11.0-CURRENT r269949 built using Adrian's
freebsd-wifi-build. I've no reason to believe this is specific to mips, but I
don't have any other architectures around to test.

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



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-193681-8>