On Sun, Apr 26, 2015 at 10:07:19AM +0200, Stefan Sperling wrote: > On Sun, Apr 26, 2015 at 09:36:06AM +0200, Remi Locherer wrote: > > Since a couple of month every now and then I'm getting a > > "urtwn0: device timeout". Usually I deal with it by unlugging the > > urtwn device and plug it in again, then run "sh /etc/netstart urtwn0". > > Is ifconfig down/up (or just 'sh /etc/netstart urtwn0') not enough? > That is essentially what the driver should be doing in this situation. > However, USB wifi drivers which need to load firmware currently don't > reset properly when transmit times out -- they simply do nothing instead > of resetting the interface. > > > > Sometimes the systems crashes when I unplug the urtwn device. > > > > Photos from ddb after such a crash: > > > > https://relo.ch/crash_on_urtwn_removal-trace_part1.jpg > > https://relo.ch/crash_on_urtwn_removal-trace_part2.jpg > > https://relo.ch/crash_on_urtwn_removal-ps_part1.jpg > > https://relo.ch/crash_on_urtwn_removal-ps_part2.jpg > > https://relo.ch/crash_on_urtwn_removal-ps_part3.jpg > > Can you please recompile your kernel with > makeoptions DEBUG="-g" > in the config when reproducing crashes? That's slightly more convenient > for us to debug since ddb output will contain line numbers.
I rebuilt a kernel with /etc/mk.conf containing this: SUDO=/usr/bin/sudo DEBUG=-g #DEBUGLIB=-g But there are no line numbers in the ddb output (see end of dmesg). Is there another why to build a kernel with debug symbols? > Something is going wrong in the IPv6 code. This problem is not specific > to urtwn(4). The relevant part of the trace is: With a series of removals and insertions of the urtwn device I could provoke another panic. I didn't wait for a timeout message to apear. This time no nd6_* or in6_* are visible in the trace. I updated kernel sources short before building the kernel. OpenBSD 5.7-current (GENERIC.MP) #9: Sun Apr 26 21:27:24 CEST 2015 r...@mistral.relo.ch:/usr/src/sys/arch/amd64/compile/GENERIC.MP real mem = 3881746432 (3701MB) avail mem = 3760246784 (3586MB) mpath0 at root scsibus0 at mpath0: 256 targets mainbus0 at root bios0 at mainbus0: SMBIOS rev. 2.7 @ 0xe0970 (63 entries) bios0: vendor Phoenix Technologies Ltd. version "P00ACX" date 04/26/2013 bios0: SAMSUNG ELECTRONICS CO., LTD. 900X3F acpi0 at bios0: rev 2 acpi0: sleep states S0 S3 S4 S5 acpi0: tables DSDT FACP SLIC SSDT ASF! HPET APIC MCFG FPDT SSDT SSDT UEFI MSDM UEFI UEFI acpi0: wakeup devices P0P1(S4) GLAN(S4) XHC_(S4) HDEF(S4) PXSX(S4) RP01(S4) PXSX(S4) RP02(S4) PXSX(S4) RP03(S4) PXSX(S4) RP04(S4) PXSX(S4) RP06(S4) PXSX(S4) RP07(S4) [...] acpitimer0 at acpi0: 3579545 Hz, 24 bits acpihpet0 at acpi0: 14318179 Hz acpimadt0 at acpi0 addr 0xfee00000: PC-AT compat cpu0 at mainbus0: apid 0 (boot processor) cpu0: Intel(R) Core(TM) i5-3337U CPU @ 1.80GHz, 1696.44 MHz cpu0: FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE,SSE3,PCLMUL,DTES64,MWAIT,DS-CPL,VMX,EST,TM2,SSSE3,CX16,xTPR,PDCM,PCID,SSE4.1,SSE4.2,x2APIC,POPCNT,DEADLINE,XSAVE,AVX,F16C,RDRAND,NXE,LONG,LAHF,PERF,ITSC,FSGSBASE,SMEP,ERMS cpu0: 256KB 64b/line 8-way L2 cache cpu0: smt 0, core 0, package 0 mtrr: Pentium Pro MTRR support, 10 var ranges, 88 fixed ranges cpu0: apic clock running at 99MHz cpu0: mwait min=64, max=64, C-substates=0.2.1.1.2, IBE cpu1 at mainbus0: apid 1 (application processor) cpu1: Intel(R) Core(TM) i5-3337U CPU @ 1.80GHz, 1696.15 MHz cpu1: FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE,SSE3,PCLMUL,DTES64,MWAIT,DS-CPL,VMX,EST,TM2,SSSE3,CX16,xTPR,PDCM,PCID,SSE4.1,SSE4.2,x2APIC,POPCNT,DEADLINE,XSAVE,AVX,F16C,RDRAND,NXE,LONG,LAHF,PERF,ITSC,FSGSBASE,SMEP,ERMS cpu1: 256KB 64b/line 8-way L2 cache cpu1: smt 1, core 0, package 0 cpu2 at mainbus0: apid 2 (application processor) cpu2: Intel(R) Core(TM) i5-3337U CPU @ 1.80GHz, 1696.15 MHz cpu2: FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE,SSE3,PCLMUL,DTES64,MWAIT,DS-CPL,VMX,EST,TM2,SSSE3,CX16,xTPR,PDCM,PCID,SSE4.1,SSE4.2,x2APIC,POPCNT,DEADLINE,XSAVE,AVX,F16C,RDRAND,NXE,LONG,LAHF,PERF,ITSC,FSGSBASE,SMEP,ERMS cpu2: 256KB 64b/line 8-way L2 cache cpu2: smt 0, core 1, package 0 cpu3 at mainbus0: apid 3 (application processor) cpu3: Intel(R) Core(TM) i5-3337U CPU @ 1.80GHz, 1696.15 MHz cpu3: FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE,SSE3,PCLMUL,DTES64,MWAIT,DS-CPL,VMX,EST,TM2,SSSE3,CX16,xTPR,PDCM,PCID,SSE4.1,SSE4.2,x2APIC,POPCNT,DEADLINE,XSAVE,AVX,F16C,RDRAND,NXE,LONG,LAHF,PERF,ITSC,FSGSBASE,SMEP,ERMS cpu3: 256KB 64b/line 8-way L2 cache cpu3: smt 1, core 1, package 0 ioapic0 at mainbus0: apid 2 pa 0xfec00000, version 20, 24 pins acpimcfg0 at acpi0 addr 0xf8000000, bus 0-63 acpiprt0 at acpi0: bus 0 (PCI0) acpiprt1 at acpi0: bus -1 (P0P1) acpiprt2 at acpi0: bus 1 (RP01) acpiprt3 at acpi0: bus -1 (RP02) acpiprt4 at acpi0: bus -1 (RP03) acpiprt5 at acpi0: bus 2 (RP04) acpiprt6 at acpi0: bus 3 (RP05) acpiprt7 at acpi0: bus -1 (RP06) acpiprt8 at acpi0: bus -1 (RP07) acpiprt9 at acpi0: bus -1 (RP08) acpiprt10 at acpi0: bus -1 (PEG0) acpiprt11 at acpi0: bus -1 (PEG1) acpiprt12 at acpi0: bus -1 (PEG2) acpiprt13 at acpi0: bus -1 (PEG3) acpiec0 at acpi0 acpicpu0 at acpi0: C3, C2, C1, PSS acpicpu1 at acpi0: C3, C2, C1, PSS acpicpu2 at acpi0: C3, C2, C1, PSS acpicpu3 at acpi0: C3, C2, C1, PSS acpipwrres0 at acpi0: FN00, resource for FAN0 acpipwrres1 at acpi0: FN01, resource for FAN1 acpipwrres2 at acpi0: FN02, resource for FAN2 acpipwrres3 at acpi0: FN03, resource for FAN3 acpipwrres4 at acpi0: FN04, resource for FAN4 acpitz0 at acpi0: critical temperature is 106 degC acpitz1 at acpi0: critical temperature is 106 degC acpibat0 at acpi0: BAT1 type LION oem "SAMSUNG Electronics" acpiac0 at acpi0: AC unit online acpibtn0 at acpi0: LID0 acpibtn1 at acpi0: PWRB acpivideo0 at acpi0: GFX0 acpivout0 at acpivideo0: DD02 cpu0: Enhanced SpeedStep 1696 MHz: speeds: 1801, 1800, 1700, 1600, 1500, 1400, 1300, 1200, 1100, 1000, 900, 800, 774 MHz pci0 at mainbus0 bus 0 pchb0 at pci0 dev 0 function 0 "Intel Core 3G Host" rev 0x09 vga1 at pci0 dev 2 function 0 "Intel HD Graphics 4000" rev 0x09 intagp at vga1 not configured inteldrm0 at vga1 drm0 at inteldrm0 inteldrm0: 1920x1080 wsdisplay0 at vga1 mux 1: console (std, vt100 emulation) wsdisplay0: screen 1-5 added (std, vt100 emulation) "Intel 7 Series MEI" rev 0x04 at pci0 dev 22 function 0 not configured azalia0 at pci0 dev 27 function 0 "Intel 7 Series HD Audio" rev 0x04: msi azalia0: codecs: Realtek ALC269, Intel/0x2806, using Realtek ALC269 audio0 at azalia0 ppb0 at pci0 dev 28 function 0 "Intel 7 Series PCIE" rev 0xc4: msi pci1 at ppb0 bus 1 "Atheros AR9462" rev 0x01 at pci1 dev 0 function 0 not configured ppb1 at pci0 dev 28 function 3 "Intel 7 Series PCIE" rev 0xc4: msi pci2 at ppb1 bus 2 re0 at pci2 dev 0 function 0 "Realtek 8168" rev 0x06: RTL8168E/8111E-VL (0x2c80), msi, address 18:67:b0:3e:b4:8f rgephy0 at re0 phy 7: RTL8169S/8110S PHY, rev. 5 ppb2 at pci0 dev 28 function 4 "Intel 7 Series PCIE" rev 0xc4: msi pci3 at ppb2 bus 3 xhci0 at pci3 dev 0 function 0 "Renesas uPD720202 xHCI" rev 0x02: msi usb0 at xhci0: USB revision 3.0 uhub0 at usb0 "Renesas xHCI root hub" rev 3.00/1.00 addr 1 ehci0 at pci0 dev 29 function 0 "Intel 7 Series USB" rev 0x04: apic 2 int 23 usb1 at ehci0: USB revision 2.0 uhub1 at usb1 "Intel EHCI root hub" rev 2.00/1.00 addr 1 pcib0 at pci0 dev 31 function 0 "Intel HM75 LPC" rev 0x04 ahci0 at pci0 dev 31 function 2 "Intel 7 Series AHCI" rev 0x04: msi, AHCI 1.3 ahci0: port 0: 6.0Gb/s scsibus1 at ahci0: 32 targets sd0 at scsibus1 targ 0 lun 0: <ATA, LITEONIT LMT-128, DM72> SCSI3 0/direct fixed t10.ATA_LITEONIT_LMT-128M6M_002306109122_ sd0: 122104MB, 512 bytes/sector, 250069680 sectors, thin ichiic0 at pci0 dev 31 function 3 "Intel 7 Series SMBus" rev 0x04: apic 2 int 18 iic0 at ichiic0 isa0 at pcib0 isadma0 at isa0 pckbc0 at isa0 port 0x60/5 pckbd0 at pckbc0 (kbd slot) pckbc0: using irq 1 for kbd slot wskbd0 at pckbd0: console keyboard, using wsdisplay0 pms0 at pckbc0 (aux slot) pckbc0: using irq 12 for aux slot wsmouse0 at pms0 mux 0 pcppi0 at isa0 port 0x61 spkr0 at pcppi0 uhub2 at uhub1 port 1 "Intel Rate Matching Hub" rev 2.00/0.00 addr 2 urtwn0 at uhub2 port 2 "Realtek 802.11n WLAN Adapter" rev 2.00/2.00 addr 3 urtwn0: MAC/BB RTL8188CUS, RF 6052 1T1R, address 80:1f:02:da:13:e3 ugen0 at uhub2 port 5 "Atheros Communications product 0x3004" rev 1.10/0.01 addr 4 uvideo0 at uhub2 port 6 configuration 1 interface 0 "Namuga\M^? WebCam SC-13HDL11624N" rev 2.00/0.31 addr 5 video0 at uvideo0 vscsi0 at root scsibus2 at vscsi0: 256 targets softraid0 at root scsibus3 at softraid0: 256 targets softraid0: sd1 was not shutdown properly sd1 at scsibus3 targ 1 lun 0: <OPENBSD, SR CRYPTO, 005> SCSI2 0/direct fixed sd1: 122103MB, 512 bytes/sector, 250067198 sectors root on sd1a (22dc7bbd666a1a3e.a) swap on sd1b dump on sd1b WARNING: / was not properly unmounted usb_transfer_complete: actlen > len 4294951300 > 4 urtwn0 detached urtwn0 at uhub2 port 2 "Realtek 802.11n" rev 2.00/2.00 addr 3 urtwn0: MAC/BB RTL8188CUS, RF 6052 1T1R, address 80:1f:02:da:13:e3 urtwn0 detached urtwn0 at uhub2 port 2 "Realtek 802.11n WLAN Adapter" rev 2.00/2.00 addr 3 urtwn0: MAC/BB RTL8188CUS, RF 6052 1T1R, address 80:1f:02:da:13:e3 urtwn0 detached urtwn0 at uhub2 port 2 "Realtek 802.11n WLAN Adapter" rev 2.00/2.00 addr 3 urtwn0: MAC/BB RTL8188CUS, RF 6052 1T1R, address 80:1f:02:da:13:e3 urtwn0 detached urtwn0 at uhub2 port 2 "Realtek 802.11n WLAN Adapter" rev 2.00/2.00 addr 3 urtwn0: MAC/BB RTL8188CUS, RF 6052 1T1R, address 80:1f:02:da:13:e3 urtwn0 detached urtwn0 at uhub2 port 2 "Realtek 802.11n WLAN Adapter" rev 2.00/2.00 addr 3 urtwn0: MAC/BB RTL8188CUS, RF 6052 1T1R, address 80:1f:02:da:13:e3 urtwn0 detached urtwn0 at uhub2 port 2 "Realtek 802.11n WLAN Adapter" rev 2.00/2.00 addr 3 urtwn0: MAC/BB RTL8188CUS, RF 6052 1T1R, address 80:1f:02:da:13:e3 urtwn0 detached urtwn0 at uhub2 port 2 "Realtek 802.11n WLAN Adapter" rev 2.00/2.00 addr 3 urtwn0: MAC/BB RTL8188CUS, RF 6052 1T1R, address 80:1f:02:da:13:e3 urtwn0 detached urtwn0 at uhub2 port 2 "Realtek 802.11n WLAN Adapter" rev 2.00/2.00 addr 3 urtwn0: MAC/BB RTL8188CUS, RF 6052 1T1R, address 80:1f:02:da:13:e3 usb_transfer_complete: actlen > len 4294951305 > 1 urtwn0: timeout waiting for checksum report urtwn0: timeout waiting for checksum report urtwn0 detached urtwn0 at uhub2 port 2 "Realtek 802.11n WLAN Adapter" rev 2.00/2.00 addr 3 urtwn0: MAC/BB RTL8188CUS, RF 6052 1T1R, address 80:1f:02:da:13:e3 urtwn0: timeout waiting for MAC auto ON urtwn0 detached urtwn0 at uhub2 port 2 "Realtek 802.11n WLAN Adapter" rev 2.00/2.00 addr 3 urtwn0: MAC/BB RTL8188CUS, RF 6052 1T1R, address 80:1f:02:da:13:e3 usb_transfer_complete: actlen > len 4294951300 > 4 urtwn0 detached urtwn0 at uhub2 port 2 "Realtek 802.11n WLAN Adapter" rev 2.00/2.00 addr 3 urtwn0: MAC/BB RTL8188CUS, RF 6052 1T1R, address 80:1f:02:da:13:e3 usb_transfer_complete: actlen > len 4294951684 > 4 urtwn0 detached urtwn0 at uhub2 port 2 "Realtek 802.11n WLAN Adapter" rev 2.00/2.00 addr 3 urtwn0: MAC/BB RTL8188CUS, RF 6052 1T1R, address 80:1f:02:da:13:e3 usb_transfer_complete: actlen > len 4294951948 > 4 usb_transfer_complete: actlen > len 4294951180 > 4 usb_insert_transfer: xfer=0xffffff011a23e118 not free kernel: protection fault trap, code=0 Stopped at ehci_check_intr+0xb: movq 0x10(%rax),%rax ddb{0}> ehci_check_intr() at ehci_check_intr+0xb ehci_softintr() at ehci_softintr+0x3f softintr_dispatch() at softintr_dispatch+0x7f Xsoftnet() at Xsoftnet+0x2d --- interrupt --- end trace frame: 0x0, count: -4 0x8: ddb{0}> Stopped at Debugger+0x9: leave ddb{1}> Debugger() at Debugger+0x9 x86_ipi_handler() at x86_ipi_handler+0x76 Xresume_lapic_ipi() at Xresume_lapic_ipi+0x1c --- interrupt --- cpu_idle_mwait_cycle() at cpu_idle_mwait_cycle+0x62 cpu_idle_cycle() at cpu_idle_cycle+0x10 end trace frame: 0x0, count: -5 ddb{1}> Stopped at Debugger+0x9: leave ddb{2}> Debugger() at Debugger+0x9 x86_ipi_handler() at x86_ipi_handler+0x76 Xresume_lapic_ipi() at Xresume_lapic_ipi+0x1c --- interrupt --- __mp_lock() at __mp_lock+0x42 syscall() at syscall+0x285 --- syscall (number 54) --- end of kernel end trace frame: 0x118f5735a220, count: -5 0x118f56f15d9a: ddb{2}> Stopped at Debugger+0x9: leave ddb{3}> Debugger() at Debugger+0x9 x86_ipi_handler() at x86_ipi_handler+0x76 Xresume_lapic_ipi() at Xresume_lapic_ipi+0x1c --- interrupt --- cpu_idle_mwait_cycle() at cpu_idle_mwait_cycle+0x62 cpu_idle_cycle() at cpu_idle_cycle+0x10 end trace frame: 0x0, count: -5 ddb{3}> splassert: if_down: want 5 have 14 kernel: privileged instructio