On 6/14/2021 4:54 PM, Stuart Henderson wrote:
find when the problem started .. with 6.9 userland you can probably get away with just booting the relevant older kernel for a test for probably most/maybe all of the way back to 6.8.
So I booted the 6.8 kernel, and everything seemed to be mostly working, but the umb interface still wasn't initialized properly :(. I was thinking I'd have to do a fresh install of 6.8 and start the test from there, but then I considered that one thing I still hadn't done was a cold power cycle. I have a remote console on the serial port of the system, but it doesn't have built-in remote power control and it's not hooked up to a remote control power switch, so it's not that convenient to deal with power.
I coordinated a cold power cycle and booted up the 6.8 kernel, and the umb interface worked :). I then booted the 6.9 kernel, and it also worked? By default the kernel allocates the device to the umsm driver (it would be nice if the umb driver took priority instead), so the first 6.9 boot after the install used that driver until I disabled it and rebooted. I thought perhaps the 6.9 version of that driver put the card in a bad state, so I tried booting the 6.9 kernel with it enabled, and then booting it again with it disabled. But the umb interface was still working after that test.
So it seems that somehow the upgrade process put the hardware in a bad state where it would not initialize, and a cold power cycle seems to have sorted that out. I wasn't able to reproduce the issue doing some testing, so I guess I will write it off as "that's odd" and just be happy it seems to be working reliably now :).
Thanks much for your assistance looking at it…