qmi_wwan netdev watchdog / xhci: Ring expansion failed
after literally letting the phone lie on the table doing nothing, after 3 days, suddenly the following happens, suggesting some kind of memory leak:
Apr 16 06:40:58 pureos kernel: ------------[ cut here ]------------
Apr 16 06:40:58 pureos kernel: NETDEV WATCHDOG: wwx2a413d796d06 (qmi_wwan): transmit queue 0 timed out
Apr 16 06:40:58 pureos kernel: WARNING: CPU: 0 PID: 0 at net/sched/sch_generic.c:525 dev_watchdog+0x280/0x2a0
Apr 16 06:40:58 pureos kernel: Modules linked in: brcmfmac_cyw bnep hci_uart btqca bluetooth brcmfmac brcmutil mtdblock mtd_blkdevs ofpart spi_nor mtd caam_jr caamhash_desc caamalg_desc crypto_engine st_lsm6dsx>
Apr 16 06:40:58 pureos kernel: ip_tables x_tables ipv6 uas usb_storage xhci_plat_hcd xhci_hcd usbcore dwc3 ulpi aes_ce_blk crct10dif_ce ghash_ce sha2_ce sha1_ce pwm_vibra cdns_mhdp_imx cdns_mhdp_drmcore udc_co>
Apr 16 06:40:58 pureos kernel: CPU: 0 PID: 0 Comm: swapper/0 Tainted: G C 6.2.10-librem5-00003-g9c48b1bed3ca #235
Apr 16 06:40:58 pureos kernel: Hardware name: Purism Librem 5r4 (DT)
Apr 16 06:40:58 pureos kernel: pstate: 60000005 (nZCv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--)
Apr 16 06:40:58 pureos kernel: pc : dev_watchdog+0x280/0x2a0
Apr 16 06:40:58 pureos kernel: lr : dev_watchdog+0x280/0x2a0
Apr 16 06:40:58 pureos kernel: sp : ffff800008003e00
Apr 16 06:40:58 pureos kernel: x29: ffff800008003e00 x28: ffff800009601d00 x27: 0000000000000002
Apr 16 06:40:58 pureos kernel: x26: ffff8000095f89e0 x25: ffff8000095f89e0 x24: ffff800009268008
Apr 16 06:40:58 pureos kernel: x23: ffff8000095f6000 x22: 0000000000000000 x21: ffff0000c1fc53dc
Apr 16 06:40:58 pureos kernel: x20: ffff0000c1fc5000 x19: ffff0000c1fc5488 x18: 00000000fffffffe
Apr 16 06:40:58 pureos kernel: x17: 6974203020657565 x16: 75712074696d736e x15: 617274203a296e61
Apr 16 06:40:58 pureos kernel: x14: 77775f696d712820 x13: 74756f2064656d69 x12: 7420302065756575
Apr 16 06:40:58 pureos kernel: x11: 00000000ffffdfff x10: 00000000ffffdfff x9 : ffff800008718f94
Apr 16 06:40:58 pureos kernel: x8 : 000000000002ffe8 x7 : 0000000000000000 x6 : 0000000000000000
Apr 16 06:40:58 pureos kernel: x5 : 0000000000000000 x4 : 0000000000000000 x3 : 0000000000000000
Apr 16 06:40:58 pureos kernel: x2 : 0000000000000000 x1 : 0000000000000000 x0 : ffff800009601d00
Apr 16 06:40:58 pureos kernel: Call trace:
Apr 16 06:40:58 pureos kernel: dev_watchdog+0x280/0x2a0
Apr 16 06:40:58 pureos kernel: call_timer_fn+0x3c/0x1cc
Apr 16 06:40:58 pureos kernel: expire_timers+0xcc/0x190
Apr 16 06:40:58 pureos kernel: run_timer_softirq+0xfc/0x260
Apr 16 06:40:58 pureos kernel: __do_softirq+0x120/0x3c0
Apr 16 06:40:58 pureos kernel: ____do_softirq+0x18/0x24
Apr 16 06:40:58 pureos kernel: call_on_irq_stack+0x2c/0x54
Apr 16 06:40:58 pureos kernel: do_softirq_own_stack+0x24/0x3c
Apr 16 06:40:58 pureos kernel: __irq_exit_rcu+0xb8/0xe0
Apr 16 06:40:58 pureos kernel: irq_exit_rcu+0x18/0x24
Apr 16 06:40:58 pureos kernel: el1_interrupt+0x38/0x70
Apr 16 06:40:58 pureos kernel: el1h_64_irq_handler+0x18/0x2c
Apr 16 06:40:58 pureos kernel: el1h_64_irq+0x64/0x68
Apr 16 06:40:58 pureos kernel: cpuidle_enter_state+0xbc/0x4b0
Apr 16 06:40:58 pureos kernel: cpuidle_enter+0x40/0x60
Apr 16 06:40:58 pureos kernel: do_idle+0x234/0x2c0
Apr 16 06:40:58 pureos kernel: cpu_startup_entry+0x2c/0x3c
Apr 16 06:40:58 pureos kernel: rest_init+0xf8/0x100
Apr 16 06:40:58 pureos kernel: arch_post_acpi_subsys_init+0x0/0x28
Apr 16 06:40:58 pureos kernel: start_kernel+0x708/0x748
Apr 16 06:40:58 pureos kernel: __primary_switched+0xbc/0xc4
Apr 16 06:40:58 pureos kernel: ---[ end trace 0000000000000000 ]---
Apr 16 14:28:28 pureos kernel: ------------[ cut here ]------------
Apr 16 14:28:28 pureos kernel: Failed to get suitable pool for 38200000.usb
Apr 16 14:28:28 pureos kernel: WARNING: CPU: 0 PID: 0 at kernel/dma/pool.c:279 dma_alloc_from_pool+0x90/0x1e0
Apr 16 14:28:28 pureos kernel: Modules linked in: brcmfmac_cyw bnep hci_uart btqca bluetooth brcmfmac brcmutil mtdblock mtd_blkdevs ofpart spi_nor mtd caam_jr caamhash_desc caamalg_desc crypto_engine st_lsm6dsx>
Apr 16 14:28:28 pureos kernel: ip_tables x_tables ipv6 uas usb_storage xhci_plat_hcd xhci_hcd usbcore dwc3 ulpi aes_ce_blk crct10dif_ce ghash_ce sha2_ce sha1_ce pwm_vibra cdns_mhdp_imx cdns_mhdp_drmcore udc_co>
Apr 16 14:28:28 pureos kernel: CPU: 0 PID: 0 Comm: swapper/0 Tainted: G WC 6.2.10-librem5-00003-g9c48b1bed3ca #235
Apr 16 14:28:28 pureos kernel: Hardware name: Purism Librem 5r4 (DT)
Apr 16 14:28:28 pureos kernel: pstate: 600000c5 (nZCv daIF -PAN -UAO -TCO -DIT -SSBS BTYPE=--)
Apr 16 14:28:28 pureos kernel: pc : dma_alloc_from_pool+0x90/0x1e0
Apr 16 14:28:28 pureos kernel: lr : dma_alloc_from_pool+0x90/0x1e0
Apr 16 14:28:28 pureos kernel: sp : ffff800008003850
Apr 16 14:28:28 pureos kernel: x29: ffff800008003850 x28: ffff8000098e5740 x27: 0000000000000000
Apr 16 14:28:28 pureos kernel: x26: ffff0000c0860600 x25: ffff800008003910 x24: ffff0000c0ad9010
Apr 16 14:28:28 pureos kernel: x23: ffff8000098e5720 x22: ffff8000080e0990 x21: ffff8000090c6178
Apr 16 14:28:28 pureos kernel: x20: 0000000000001000 x19: ffff0000d634e298 x18: ffff0000ff7a804c
Apr 16 14:28:28 pureos kernel: x17: ffff8000f64cc000 x16: 001fffffffffffff x15: f935e8b07ee39061
Apr 16 14:28:28 pureos kernel: x14: 0000000000000000 x13: 6273752e30303030 x12: 3032383320726f66
Apr 16 14:28:28 pureos kernel: x11: 00000000ffffdfff x10: 00000000ffffdfff x9 : ffff8000080b4a58
Apr 16 14:28:28 pureos kernel: x8 : 000000000002ffe8 x7 : c0000000ffffdfff x6 : 0000000000017ff4
Apr 16 14:28:28 pureos kernel: x5 : ffff0000ff735a08 x4 : 0000000000000000 x3 : 0000000000000027
Apr 16 14:28:28 pureos kernel: x2 : 0000000000000000 x1 : 0000000000000000 x0 : ffff800009601d00
Apr 16 14:28:28 pureos kernel: Call trace:
Apr 16 14:28:28 pureos kernel: dma_alloc_from_pool+0x90/0x1e0
Apr 16 14:28:28 pureos kernel: dma_direct_alloc+0x94/0x310
Apr 16 14:28:28 pureos kernel: dma_alloc_attrs+0x88/0x100
Apr 16 14:28:28 pureos kernel: dma_pool_alloc+0x11c/0x200
Apr 16 14:28:28 pureos kernel: xhci_segment_alloc+0x94/0x160 [xhci_hcd]
Apr 16 14:28:28 pureos kernel: xhci_alloc_segments_for_ring+0xe4/0x1d0 [xhci_hcd]
Apr 16 14:28:28 pureos kernel: xhci_ring_expansion+0x74/0x380 [xhci_hcd]
Apr 16 14:28:28 pureos kernel: prepare_ring+0x198/0x2c0 [xhci_hcd]
Apr 16 14:28:28 pureos kernel: prepare_transfer+0x88/0x170 [xhci_hcd]
Apr 16 14:28:28 pureos kernel: xhci_queue_bulk_tx+0xd4/0x910 [xhci_hcd]
Apr 16 14:28:28 pureos kernel: xhci_urb_enqueue+0x330/0x580 [xhci_hcd]
Apr 16 14:28:28 pureos kernel: usb_hcd_submit_urb+0xd0/0xa90 [usbcore]
Apr 16 14:28:28 pureos kernel: usb_submit_urb+0x1f0/0x670 [usbcore]
Apr 16 14:28:28 pureos kernel: rx_submit+0x148/0x310 [usbnet]
Apr 16 14:28:28 pureos kernel: rx_complete+0x200/0x330 [usbnet]
Apr 16 14:28:28 pureos kernel: __usb_hcd_giveback_urb+0xa4/0x164 [usbcore]
Apr 16 14:28:28 pureos kernel: usb_giveback_urb_bh+0xb0/0x1a0 [usbcore]
Apr 16 14:28:28 pureos kernel: tasklet_action_common.constprop.0+0x104/0x130
Apr 16 14:28:28 pureos kernel: tasklet_action+0x30/0x40
Apr 16 14:28:28 pureos kernel: __do_softirq+0x120/0x3c0
Apr 16 14:28:28 pureos kernel: ____do_softirq+0x18/0x24
Apr 16 14:28:28 pureos kernel: call_on_irq_stack+0x2c/0x54
Apr 16 14:28:28 pureos kernel: do_softirq_own_stack+0x24/0x3c
Apr 16 14:28:28 pureos kernel: __irq_exit_rcu+0xb8/0xe0
Apr 16 14:28:28 pureos kernel: irq_exit_rcu+0x18/0x24
Apr 16 14:28:28 pureos kernel: el1_interrupt+0x38/0x70
Apr 16 14:28:28 pureos kernel: el1h_64_irq_handler+0x18/0x2c
Apr 16 14:28:28 pureos kernel: el1h_64_irq+0x64/0x68
Apr 16 14:28:28 pureos kernel: cpuidle_enter_state+0xc0/0x4b0
Apr 16 14:28:28 pureos kernel: cpuidle_enter+0x40/0x60
Apr 16 14:28:28 pureos kernel: do_idle+0x234/0x2c0
Apr 16 14:28:28 pureos kernel: cpu_startup_entry+0x30/0x3c
Apr 16 14:28:28 pureos kernel: rest_init+0xf8/0x100
Apr 16 14:28:28 pureos kernel: arch_post_acpi_subsys_init+0x0/0x28
Apr 16 14:28:28 pureos kernel: start_kernel+0x708/0x748
Apr 16 14:28:28 pureos kernel: __primary_switched+0xbc/0xc4
Apr 16 14:28:28 pureos kernel: ---[ end trace 0000000000000000 ]---
Apr 16 14:28:28 pureos kernel: xhci-hcd xhci-hcd.4.auto: Ring expansion failed
Apr 16 14:28:28 pureos kernel: ------------[ cut here ]------------
Apr 16 14:28:28 pureos kernel: Failed to get suitable pool for 38200000.usb
Apr 16 14:28:28 pureos kernel: WARNING: CPU: 0 PID: 14 at kernel/dma/pool.c:279 dma_alloc_from_pool+0x90/0x1e0
Apr 16 14:28:28 pureos kernel: Modules linked in: brcmfmac_cyw bnep hci_uart btqca bluetooth brcmfmac brcmutil mtdblock mtd_blkdevs ofpart spi_nor mtd caam_jr caamhash_desc caamalg_desc crypto_engine st_lsm6dsx>
Apr 16 14:28:28 pureos kernel: ip_tables x_tables ipv6 uas usb_storage xhci_plat_hcd xhci_hcd usbcore dwc3 ulpi aes_ce_blk crct10dif_ce ghash_ce sha2_ce sha1_ce pwm_vibra cdns_mhdp_imx cdns_mhdp_drmcore udc_co>
Apr 16 14:28:28 pureos kernel: CPU: 0 PID: 14 Comm: ksoftirqd/0 Tainted: G WC 6.2.10-librem5-00003-g9c48b1bed3ca #235
Apr 16 14:28:28 pureos kernel: Hardware name: Purism Librem 5r4 (DT)
Apr 16 14:28:28 pureos kernel: pstate: 600000c5 (nZCv daIF -PAN -UAO -TCO -DIT -SSBS BTYPE=--)
Apr 16 14:28:28 pureos kernel: pc : dma_alloc_from_pool+0x90/0x1e0
Apr 16 14:28:28 pureos kernel: lr : dma_alloc_from_pool+0x90/0x1e0
Apr 16 14:28:28 pureos kernel: sp : ffff800009b036b0
Apr 16 14:28:28 pureos kernel: x29: ffff800009b036b0 x28: ffff8000098e5740 x27: 0000000000000000
Apr 16 14:28:28 pureos kernel: x26: ffff0000c0860600 x25: ffff800009b03770 x24: ffff0000c0ad9010
Apr 16 14:28:28 pureos kernel: x23: ffff8000098e5720 x22: ffff8000080e0990 x21: ffff8000090c6178
Apr 16 14:28:28 pureos kernel: x20: 0000000000001000 x19: ffff00000682c998 x18: ffff0000ff7a804c
Apr 16 14:28:28 pureos kernel: x17: 000000040044ffff x16: 001fffffffffffff x15: a313d2543da5da02
Apr 16 14:28:28 pureos kernel: x14: 0000000000000000 x13: 6273752e30303030 x12: 3032383320726f66
Apr 16 14:28:28 pureos kernel: x11: 00000000ffffdfff x10: 00000000ffffdfff x9 : ffff8000080b4a58
Apr 16 14:28:28 pureos kernel: x8 : 000000000002ffe8 x7 : c0000000ffffdfff x6 : 0000000000017ff4
Apr 16 14:28:28 pureos kernel: x5 : ffff0000ff735a08 x4 : 0000000000000000 x3 : 0000000000000027
Apr 16 14:28:28 pureos kernel: x2 : 0000000000000000 x1 : 0000000000000000 x0 : ffff0000c0254740
Apr 16 14:28:28 pureos kernel: Call trace:
Apr 16 14:28:28 pureos kernel: dma_alloc_from_pool+0x90/0x1e0
Apr 16 14:28:28 pureos kernel: dma_direct_alloc+0x94/0x310
Apr 16 14:28:28 pureos kernel: dma_alloc_attrs+0x88/0x100
Apr 16 14:28:28 pureos kernel: dma_pool_alloc+0x11c/0x200
Apr 16 14:28:28 pureos kernel: xhci_segment_alloc+0x94/0x160 [xhci_hcd]
Apr 16 14:28:28 pureos kernel: xhci_alloc_segments_for_ring+0xe4/0x1d0 [xhci_hcd]
Apr 16 14:28:28 pureos kernel: xhci_ring_expansion+0x74/0x380 [xhci_hcd]
Apr 16 14:28:28 pureos kernel: prepare_ring+0x198/0x2c0 [xhci_hcd]
Apr 16 14:28:28 pureos kernel: prepare_transfer+0x88/0x170 [xhci_hcd]
Apr 16 14:28:28 pureos kernel: xhci_queue_bulk_tx+0xd4/0x910 [xhci_hcd]
Apr 16 14:28:28 pureos kernel: xhci_urb_enqueue+0x330/0x580 [xhci_hcd]
Apr 16 14:28:28 pureos kernel: usb_hcd_submit_urb+0xd0/0xa90 [usbcore]
Apr 16 14:28:28 pureos kernel: usb_submit_urb+0x1f0/0x670 [usbcore]
Apr 16 14:28:28 pureos kernel: rx_submit+0x148/0x310 [usbnet]
Apr 16 14:28:28 pureos kernel: rx_alloc_submit+0x58/0x94 [usbnet]
Apr 16 14:28:28 pureos kernel: usbnet_bh+0x2d0/0x36c [usbnet]
Apr 16 14:28:28 pureos kernel: usbnet_bh_tasklet+0x1c/0x30 [usbnet]
Apr 16 14:28:28 pureos kernel: tasklet_action_common.constprop.0+0x104/0x130
Apr 16 14:28:28 pureos kernel: tasklet_action+0x30/0x40
Apr 16 14:28:28 pureos kernel: __do_softirq+0x120/0x3c0
Apr 16 14:28:28 pureos kernel: run_ksoftirqd+0x54/0x70
Apr 16 14:28:28 pureos kernel: smpboot_thread_fn+0x244/0x270
Apr 16 14:28:28 pureos kernel: kthread+0x114/0x120
Apr 16 14:28:28 pureos kernel: ret_from_fork+0x10/0x20
Apr 16 14:28:28 pureos kernel: ---[ end trace 0000000000000000 ]---
Apr 16 14:28:28 pureos kernel: xhci-hcd xhci-hcd.4.auto: Ring expansion failed
does NXP possibly have a workaround for us? https://community.nxp.com/t5/i-MX-Processors/imx8mq-yocto-4-9-51-ga-USB3-0-issue/m-p/857504 seen when searching real quick...