On Tue, Jul 22, 2025 at 05:52:28PM +0200, Johannes Berg wrote: > Hi, > > > Commit 378677eb8f44621ecc9ce659f7af61e5baa94d81 ("wifi: > > mac80211: Purge vif txq in ieee80211_do_stop()") seems to > > have made rsi_usb/rsi_91x cause a kernel panic when > > removing the USB while the interface is up. > > So it's been a while ... is this still happening? I checked a few versions ago, I can't remember which one off the top of my head, but yeah this seems to still be an issue. > > [ 81.148175] [ T11] RSP: 0018:ffffcb54c009b918 EFLAGS: 00010202 > > [ 81.148466] [ T11] RAX: ffff89629dff2328 RBX: ffff89629dff2328 RCX= ffff89628cb49210 > > [ 81.148757] [ T11] RDX: 000000009dff2328 RSI: 000000009dff2320 RDI= ffff89628cb489c0 > > This is just ... weird. RDX and RSI are pretty much holding truncated > pointers of RAX and RBX respectively? How does that happen? > (...) > but that's about as far as I get ... I'm probably just chasing ghosts > and completely wrong about all of this... > I went down the same rabbit hole as you and came to the same conclusion, at this point in the code it was just going over my head. This driver and chip is a really odd one. In the proprietary driver for this chip, it brings up a virtual "rpine0" interface along with wlan0/hci0, and although this tree driver doesn't do that it wouldn't surprise me if there is some inspired logic in this driver for that. > > I have kernel dumps, vmcore dumps, whatever you may need, > > any help is appreciated! > > If it still happens, I guess it might help to put some noinline > annotations on some of the functions involved to get a better handle on > what exactly is being passed. And run it in a VM ;-) > I will try this next week sometime when I am back from vacation and I can access the chip. I will have to play about with inlining the code since C isn't my strongest, but I will try and get you the details. Thanks for looking into this! > johannes > Cameron P.S. Thanks for the notice about Outlook bouncing your email to me, I know exactly how annoying M$ can be about blocking whatever it feels like. I should really switch at some point...