Hi, Orange Pi R1 has 2 interfaces, a dwxe(4) and an ure(4).
dwxe(4) is in the SoC but ure(4) is connected through ehci(4). I can reproduce reliably by simply removing the media and inserting it again. It's stable if you don't change your topology too much, but crashes often even when not removing the media, e.g. when reconfiguring an adjacent router. ure0: usb error on tx: IN_PROGRESS usb_insert_transfer: xfer=0xc4609c38 not free After this, it stops forwarding packages and anything like an ifconfig will ddb. Anyone seeing this on other systems, if any, using ure(4)? Thanks. $ doas ifconfig -a lo0: flags=2008049<UP,LOOPBApanic: kernel diagnostic assertion "ex->sqtdstart != NULL && ex->sqtdend != NUL L" failed: file "/usr/src/sys/dev/usb/ehci.c", line 694 Stopped at db_enter: ldrb r15, [r15, r15, ror r15]! TID PID UID PRFLAGS PFLAGS CPU COMMAND *142270 45311 0 0x14000 0x200 0 zerothread db_enter rlv=0xc06c0f2c rfp=0xc9d5be60 panic rlv=0xc04f6ac8 rfp=0xc9d5be88 ehci_check_qh_intr+0x44 rlv=0xc04f3c88 rfp=0xc9d5beb0 ehci_softintr+0x174 rlv=0xc062f308 rfp=0xc9d5bed8 softintr_dispatch+0x90 rlv=0xc030d918 rfp=0xc9d5bf00 arm_do_pending_intr+0xe0 rlv=0xc076f45c rfp=0xc9d5bf28 ampintc_irq_handler+0x1b4 rlv=0xc06af574 rfp=0xc9d5bfa8 irq_entry+0x78 rlv=0xc078dc04 rfp=0xc0a7af60 Bad frame pointer: 0xc0a7af60 https://www.openbsd.org/ddb.html describes the minimum info required in bug reports. Insufficient info makes it difficult to find and fix bugs. ddb> bt db_enter rlv=0xc06c0f2c rfp=0xc9d5be60 panic rlv=0xc04f6ac8 rfp=0xc9d5be88 ehci_check_qh_intr+0x44 rlv=0xc04f3c88 rfp=0xc9d5beb0 ehci_softintr+0x174 rlv=0xc062f308 rfp=0xc9d5bed8 softintr_dispatch+0x90 rlv=0xc030d918 rfp=0xc9d5bf00 arm_do_pending_intr+0xe0 rlv=0xc076f45c rfp=0xc9d5bf28 ampintc_irq_handler+0x1b4 rlv=0xc06af574 rfp=0xc9d5bfa8 irq_entry+0x78 rlv=0xc078dc04 rfp=0xc0a7af60 Bad frame pointer: 0xc0a7af60 ddb> dmesg OpenBSD 7.4 (GENERIC) #165: Tue Oct 10 10:01:38 MDT 2023 dera...@armv7.openbsd.org:/usr/src/sys/arch/armv7/compile/GENERIC real mem = 182517760 (174MB) avail mem = 168239104 (160MB) random: good seed from bootblocks mainbus0 at root: Xunlong Orange Pi R1 cpu0 at mainbus0 mpidr 0: ARM Cortex-A7 r0p5 cpu0: 32KB 32b/line 2-way L1 VIPT I-cache, 32KB 64b/line 4-way L1 D-cache cpu0: 512KB 64b/line 8-way L2 cache cortex0 at mainbus0 psci0 at mainbus0: PSCI 0.0 simplebus0 at mainbus0: "soc" syscon0 at simplebus0: "syscon" sxiccmu0 at simplebus0 sxipio0 at simplebus0: 94 pins ampintc0 at simplebus0 nirq 160, ncpu 4: "interrupt-controller" sxirtc0 at simplebus0 sxiccmu1 at simplebus0 sxipio1 at simplebus0: 12 pins sxisyscon0 at simplebus0 "clock" at simplebus0 not configured "mixer" at simplebus0 not configured "dma-controller" at simplebus0 not configured "lcd-controller" at simplebus0 not configured sximmc0 at simplebus0 sdmmc0 at sximmc0: 4-bit, sd high-speed, mmc high-speed, dma sximmc1 at simplebus0 sdmmc1 at sximmc1: 4-bit, sd high-speed, mmc high-speed, dma "usb" at simplebus0 not configured "phy" at simplebus0 not configured ehci0 at simplebus0 usb0 at ehci0: USB revision 2.0 uhub0 at usb0 configuration 1 interface 0 "Generic EHCI root hub" rev 2.00/1.00 addr 1 ohci0 at simplebus0: version 1.0 ehci1 at simplebus0 usb1 at ehci1: USB revision 2.0 uhub1 at usb1 configuration 1 interface 0 "Generic EHCI root hub" rev 2.00/1.00 addr 1 "timer" at simplebus0 not configured dwxe0 at simplebus0: address 02:42:9c:62:1b:4e ukphy0 at dwxe0 phy 1: Generic IEEE 802.3u media interface, rev. 0: OUI 0x00110 5, model 0x0000 sxidog0 at simplebus0 com0 at simplebus0: dw16550 com0: console "hdmi-phy" at simplebus0 not configured "codec-analog" at simplebus0 not configured "gpu" at simplebus0 not configured gpio0 at sxipio0: 32 pins gpio1 at sxipio0: 32 pins gpio2 at sxipio0: 32 pins gpio3 at sxipio0: 32 pins gpio4 at sxipio0: 32 pins gpio5 at sxipio0: 32 pins gpio6 at sxipio0: 32 pins gpio7 at sxipio1: 32 pins usb2 at ohci0: USB revision 1.0 uhub2 at usb2 configuration 1 interface 0 "Generic OHCI root hub" rev 1.00/1.00 addr 1 agtimer0 at mainbus0: 24000 kHz scsibus0 at sdmmc0: 2 targets, initiator 0 sd0 at scsibus0 targ 1 lun 0: <Sandisk, SU08G, 0080> removable sd0: 7580MB, 512 bytes/sector, 15523840 sectors sdmmc1: bad CIS ptr 0 sdmmc1: can't read CIS sdmmc1: i/o init failed manufacturer 0x024c, product 0x8179 at sdmmc1 function 1 not configured ure0 at uhub1 port 1 configuration 1 interface 0 "Realtek USB 10/100 LAN" rev 2 .10/20.00 addr 2 ure0: RTL8152 (0x4c10), address c0:74:2b:ff:d4:b2 rlphy0 at ure0 phy 0: RTL8201E 10/100 PHY, rev. 2 vscsi0 at root scsibus1 at vscsi0: 256 targets softraid0 at root scsibus2 at softraid0: 256 targets bootfile: sd0a:/bsd boot device: sd0 root on sd0a (39f5723681e8c0bf.a) swap on sd0b dump on sd0b WARNING: / was not properly unmounted ure0: usb error on tx: IN_PROGRESS usb_insert_transfer: xfer=0xc4609c38 not free panic: kernel diagnostic assertion "ex->sqtdstart != NULL && ex->sqtdend != NUL L" failed: file "/usr/src/sys/dev/usb/ehci.c", line 694 Stopped at db_enter: ldrb r15, [r15, r15, ror r15]! TID PID UID PRFLAGS PFLAGS CPU COMMAND *142270 45311 0 0x14000 0x200 0 zerothread db_enter rlv=0xc06c0f2c rfp=0xc9d5be60 panic rlv=0xc04f6ac8 rfp=0xc9d5be88 ehci_check_qh_intr+0x44 rlv=0xc04f3c88 rfp=0xc9d5beb0 ehci_softintr+0x174 rlv=0xc062f308 rfp=0xc9d5bed8 softintr_dispatch+0x90 rlv=0xc030d918 rfp=0xc9d5bf00 arm_do_pending_intr+0xe0 rlv=0xc076f45c rfp=0xc9d5bf28 ampintc_irq_handler+0x1b4 rlv=0xc06af574 rfp=0xc9d5bfa8 irq_entry+0x78 rlv=0xc078dc04 rfp=0xc0a7af60 Bad frame pointer: 0xc0a7af60 https://www.openbsd.org/ddb.html describes the minimum info required in bug reports. Insufficient info makes it difficult to find and fix bugs. ddb> db_enter rlv=0xc06c0f2c rfp=0xc9d5be60 panic rlv=0xc04f6ac8 rfp=0xc9d5be88 ehci_check_qh_intr+0x44 rlv=0xc04f3c88 rfp=0xc9d5beb0 ehci_softintr+0x174 rlv=0xc062f308 rfp=0xc9d5bed8 softintr_dispatch+0x90 rlv=0xc030d918 rfp=0xc9d5bf00 arm_do_pending_intr+0xe0 rlv=0xc076f45c rfp=0xc9d5bf28 ampintc_irq_handler+0x1b4 rlv=0xc06af574 rfp=0xc9d5bfa8 irq_entry+0x78 rlv=0xc078dc04 rfp=0xc0a7af60 Bad frame pointer: 0xc0a7af60 ddb> No such command ddb> -- db