When I resume my laptop from suspend, bge0 is no longer usable: Jul 14 12:35:53 scroll kernel: bge0: PHY write timed out (phy 1, reg 0, val 32768) Jul 14 12:35:53 scroll kernel: bge0: PHY read timed out (phy 1, reg 0, val 0xffffffff) Jul 14 12:35:53 scroll kernel: bge0: PHY write timed out (phy 1, reg 24, val 3072) Jul 14 12:35:53 scroll kernel: bge0: PHY write timed out (phy 1, reg 23, val 10) Jul 14 12:35:53 scroll kernel: bge0: PHY write timed out (phy 1, reg 21, val 12555) Jul 14 12:35:53 scroll kernel: bge0: PHY write timed out (phy 1, reg 23, val 8223) Jul 14 12:35:53 scroll kernel: bge0: PHY write timed out (phy 1, reg 21, val 38150) Jul 14 12:35:53 scroll kernel: bge0: PHY write timed out (phy 1, reg 23, val 16415) Jul 14 12:35:53 scroll kernel: bge0: PHY write timed out (phy 1, reg 21, val 5346) Jul 14 12:35:53 scroll kernel: bge0: PHY write timed out (phy 1, reg 24, val 1024) Jul 14 12:35:53 scroll kernel: bge0: PHY write timed out (phy 1, reg 24, val 7) And so on and so forth. I thought that compiling if_bge as a module, unloading it before suspend, and reloading it after resume, might get this working. However, doing a "kldload if_bge" after the resume does nothing. Well, the module gets loaded, but the device doesn't show up. No errors from kldload, and there is nothing new in dmesg. Before the suspend, the device shows up as: bge0@pci0:2:0:0: class=0x020000 card=0x01821028 chip=0x167714e4 rev=0x01 hdr=0x00 vendor = 'Broadcom Corporation' device = 'NetXtreme Gigabit Ethernet PCI Express (BCM5750A1)' class = network subclass = ethernet After resuming, and reloading the module, it's: none1@pci0:2:0:0: class=0x020000 card=0x01821028 chip=0x167714e4 rev=0x01 hdr=0x00 vendor = 'Broadcom Corporation' device = 'NetXtreme Gigabit Ethernet PCI Express (BCM5750A1)' class = network subclass = ethernet Following a suggestion by Paul Mahol, I set the following via sysctl: hw.pci.do_power_nodriver="3" hw.pci.do_power_resume="1" Then I unloaded if_bge, unloaded snd_ich, reloaded snd_ich, suspended, resumed, and loaded if_bge. In this situation, my entire machine locks up solid after displaying the following output: bge0: <Broadcom NetXtreme Gigabit Ethernet Controller, unknown ASIC rev. 0xffff> mem 0xdfdf0000-0xdfdfffff irq 16 at device 0.0 on pci2 There is no kernel panic, just a complete system hang. How-To-Repeat: Install 8.0-BETA1 on a laptop with bge (specifically, a Dell Latitude D610, but since someone else has reported the same problem, I imagine this is not limited to just that model), then suspend and resume.
Responsible Changed From-To: freebsd-bugs->freebsd-net Over to maintainer(s).
I can confirm experiencing the same behaviour on my Dell 1318 running FreeBSD 8.0-BETA2 for i386 using the stock kernel and kern.smp.disabled="1" on my device.hints. Hw: Dell 1318, Intel(R) Celeron(R) CPU 560@2.13GHz. bge0@pci0:9:0:0: class=0x020000 card=0x02861028 chip=0x171314e4 rev=0x02 hdr=0x00 vendor = 'Broadcom Corporation' device = 'Broadcom NetLink (TM) Fast Ethernet (BCM5906m)' class = network subclass = ethernet bar [10] = type Memory, range 64, base rxf69f0000, size 65536, enabled cap 01[48] = powerspec 3 supports D0 D3 current D0 cap 03[50] = VPD cap 09[58] = vendor (length 120) cap 05[e8] = MSI supports 1 message, 64 bit enabled with 1 message cap 10[d0] = PCI-Express 1 endpoint max data 128(128) link x1(x1) kldstat Id Refs Address Size Name 1 28 0xc0400000 cf6c70 kernel 2 1 0xc10f7000 11bc0 if_bge.ko 3 1 0xc1109000 1ac4c snd_hda.ko 4 2 0xc1124000 61f78 sound.ko 5 1 0xc1186000 2af4 coretemp.ko 6 1 0xc1189000 a6d8 i915.ko 7 2 0xc1194000 177d4 drm.ko kldunload if_bge snd_hda Jul 20 17:50:49 gargoyle login: ROOT LOGIN (root) ON ttyv0 Jul 20 17:51:06 gargoyle kernel: brgphy0: detached Jul 20 17:51:06 gargoyle kernel: lock order reversal: Jul 20 17:51:06 gargoyle kernel: 1st 0xc0dba45c kernel linker (kernel linker) @ /usr/src/sys/kern/kern_linker.c:1079 Jul 20 17:51:06 gargoyle kernel: 2nd 0xc0dbbc64 sysctl lock (sysctl lock) @ /usr/src/sys/kern/kern_sysctl.c:257 Jul 20 17:51:06 gargoyle kernel: KDB: stack backtrace: Jul 20 17:51:06 gargoyle kernel: db_trace_self_wrapper(c0c6baf4,e6daba34,c08bc995,c08ad6db,c0c6e989,...) at db_trace_self_wrapper+0x26 Jul 20 17:51:06 gargoyle kernel: kdb_backtrace(c08ad6db,c0c6e989,c452bc88,c4529e10,e6daba90,...) at kdb_backtrace+0x29 Jul 20 17:51:06 gargoyle kernel: _witness_debugger(c0c6e989,c0dbbc64,c0c69667,c4529e10,c0c6956e,...) at _witness_debugger+0x25 Jul 20 17:51:06 gargoyle kernel: witness_checkorder(c0dbbc64,9,c0c6956e,101,0,...) at witness_checkorder+0x839 Jul 20 17:51:06 gargoyle kernel: _sx_xlock(c0dbbc64,0,c0c6956e,101,c4722c00,...) at _sx_xlock+0x85 Jul 20 17:51:06 gargoyle kernel: sysctl_ctx_free(c4722c4c,c4722c00,e6dabb18,c08a3c85,c4722c00,...) at sysctl_ctx_free+0x30 Jul 20 17:51:06 gargoyle kernel: device_sysctl_fini(c4722c00,0,c0d4c848,c472a810,c4ab3400,...) at device_sysctl_fini+0x1a Jul 20 17:51:06 gargoyle kernel: device_detach(c4722c00,c4722b80,e6dabb38,c06bc622,c4722b80,...) at device_detach+0x1f5 Jul 20 17:51:06 gargoyle kernel: bus_generic_detach(c4722b80,c4722b80,e6dabb64,c08a3b1c,c4722b80,...) at bus_generic_detach+0x29 Jul 20 17:51:06 gargoyle kernel: miibus_detach(c4722b80,c45d6060,c0d4ca68,a3c,c0c76f47,...) at miibus_detach+0x12 Jul 20 17:51:06 gargoyle kernel: device_detach(c4722b80,c472b008,e6dabb98,c10ff7ff,c4722300,...) at device_detach+0x8c Jul 20 17:51:06 gargoyle kernel: bus_generic_detach(c4722300,1,c1104b66,aec,c4722300,...) at bus_generic_detach+0x29 Jul 20 17:51:06 gargoyle kernel: bge_detach(c4722300,c4677060,c0d4ca68,a3c,c4526300,...) at bge_detach+0xbf Jul 20 17:51:06 gargoyle kernel: device_detach(c4722300,c086c843,c0dbb570,c1106c20,c456fb80,...) at device_detach+0x8c Jul 20 17:51:06 gargoyle kernel: driver_module_handler(c4526300,1,c1106c20,109,0,...) at driver_module_handler+0x29c Jul 20 17:51:06 gargoyle kernel: module_unload(c4526300,c0c652ef,273,270,c08604b6,...) at module_unload+0x43 Jul 20 17:51:06 gargoyle kernel: linker_file_unload(c4544200,0,c0c652ef,437,c10f7000,...) at linker_file_unload+0x15e Jul 20 17:51:06 gargoyle kernel: kern_kldunload(c4b346c0,2,0,e6dabd2c,c0ba8dd3,...) at kern_kldunload+0xd5 Jul 20 17:51:06 gargoyle kernel: kldunloadf(c4b346c0,e6dabcf8,8,c0c6fa4b,c0d50450,...) at kldunloadf+0x2b Jul 20 17:51:06 gargoyle kernel: syscall(e6dabd38) at syscall+0x2a3 Jul 20 17:51:06 gargoyle kernel: Xint0x80_syscall() at Xint0x80_syscall+0x20 Jul 20 17:51:06 gargoyle kernel: --- syscall (444, FreeBSD ELF32, kldunloadf), eip = 0x280d516b, esp = 0xbfbfe47c, ebp = 0xbfbfecc8 --- Jul 20 17:51:06 gargoyle kernel: miibus0: detached Jul 20 17:51:06 gargoyle kernel: bge0: detached Jul 20 17:51:06 gargoyle kernel: sysctl_unregister_oid: failed to unregister sysctl Jul 20 17:51:06 gargoyle kernel: pcm0: detached Jul 20 17:51:06 gargoyle kernel: hdac0: detached kldoad snd_hda Jul 20 17:52:16 gargoyle kernel: hdac0: <Intel 82801H High Definition Audio Controller> mem 0xf6dfc000-0xf6dfffff irq 21 at device 27.0 on pci0 Jul 20 17:52:16 gargoyle kernel: hdac0: HDA Driver Revision: 20090624_0136 Jul 20 17:52:16 gargoyle kernel: hdac0: [ITHREAD] Jul 20 17:52:16 gargoyle kernel: hdac0: HDA Codec #0: Sigmatel STAC9228X Jul 20 17:52:16 gargoyle kernel: bge0: <Broadcom BCM5906 A2, ASIC rev. 0xc002> mem 0xf69f0000-0xf69fffff irq 17 at device 0.0 on pci9 Jul 20 17:52:16 gargoyle kernel: miibus0: <MII bus> on bge0 Jul 20 17:52:16 gargoyle kernel: brgphy0: <BCM5906 10/100baseTX PHY> PHY 1 on miibus0 Jul 20 17:52:16 gargoyle kernel: brgphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto Jul 20 17:52:16 gargoyle kernel: bge0: Ethernet address: 00:23:ae:04:ba:ca Jul 20 17:52:16 gargoyle kernel: bge0: [ITHREAD] Jul 20 17:52:16 gargoyle kernel: pcm0: <HDA Sigmatel STAC9228X PCM #0 Analog> at cad 0 nid 1 on hdac0 Jul 20 17:52:16 gargoyle kernel: bge0: link state changed to DOWN Jul 20 17:52:18 gargoyle kernel: bge0: link state changed to UP acpiconf -s 3 Jul 20 17:53:51 gargoyle acpi: suspend at 20090720 17:53:51 Jul 20 17:53:56 gargoyle kernel: fwohci0: fwohci_pci_suspend Jul 20 17:54:25 gargoyle kernel: bge0: PHY write timed out (phy 1, reg 0, val 32768) Jul 20 17:54:25 gargoyle kernel: bge0: PHY read timed out (phy 1, reg 0, val 0xffffffff) Jul 20 17:54:25 gargoyle kernel: bge0: PHY read timed out (phy 1, reg 24, val 0xffffffff) Jul 20 17:54:25 gargoyle kernel: bge0: PHY read timed out (phy 1, reg 16, val 0xffffffff) Jul 20 17:54:25 gargoyle kernel: bge0: PHY write timed out (phy 1, reg 16, val 0) Jul 20 17:54:25 gargoyle kernel: bge0: PHY read timed out (phy 1, reg 16, val 0xffffffff) Jul 20 17:54:25 gargoyle kernel: bge0: PHY write timed out (phy 1, reg 16, val 0) Jul 20 17:54:25 gargoyle kernel: bge0: PHY write timed out (phy 1, reg 23, val 18) Jul 20 17:54:25 gargoyle kernel: bge0: flow-through queue init failed Jul 20 17:54:25 gargoyle kernel: bge0: initialization failure Jul 20 17:54:25 gargoyle kernel: fwohci0: Phy 1394a available S400, 1 ports. Jul 20 17:54:25 gargoyle kernel: fwohci0: Link S400, max_rec 2048 bytes. Jul 20 17:54:25 gargoyle kernel: fwohci0: Initiate bus reset Jul 20 17:54:25 gargoyle kernel: fwohci0: fwohci_intr_core: BUS reset Jul 20 17:54:25 gargoyle kernel: fwohci0: fwohci_intr_core: node_id=0x00000000, SelfID Count=1, CYCLEMASTER mode Jul 20 17:54:25 gargoyle kernel: firewire0: 1 nodes, maxhop <= 0 cable IRM irm(0) (me) Jul 20 17:54:25 gargoyle kernel: firewire0: bus manager 0 Jul 20 17:54:25 gargoyle kernel: fwohci0: unrecoverable error Jul 20 17:54:25 gargoyle kernel: wakeup from sleeping state (slept 00:00:29) Jul 20 17:54:25 gargoyle acpi: resumed at 20090720 17:54:25 more info: http://lists.freebsd.org/pipermail/freebsd-current/2009-July/009023.html http://lists.freebsd.org/pipermail/freebsd-current/2009-July/009385.html This problem also affects FreeBSD 7.2-RELEASE: http://forums.freebsd.org/showthread.php?t=3886
bge0 problem is still present on BETA3 -- Blessings Gonzalo Nemmi
Still present in 8.0-BETA4 and 8.0-RC1
The problem is also present on amd64: > uname -a FreeBSD mobileKamikaze.norad 8.0-STABLE FreeBSD 8.0-STABLE #0: Tue Dec 15 22:48:25 CET 2009 root@mobileKamikaze.norad:/usr/obj/HP6510b-8/amd64/usr/src/sys/HP6510b-8 amd64 I can provide more details. I'd really like to see this work.
Responsible Changed From-To: freebsd-net->yongari Over to expert.
For bugs matching the following criteria: Status: In Progress Changed: (is less than) 2014-06-01 Reset to default assignee and clear in-progress tags. Mail being skipped