I always enjoy a troubleshooting story.
Might be a bit of a hot take here, but stuff like this is what keeps me using MacOS. I ran Linux on bare metal for years and had a blast learning how to use a UNIX system effectively, but eventually just got tired of being my own sysadmin. This article took me back to the days of my system just deciding that it no longer had a NIC right before a major assignment was due.
I agree with you wholly, the numerous articles of people switching to FreeBSD/OpenBSD entices me. But I know that I will run into an issue and I am not certain of my abilities to either fix it much less diagnose. At least for my main machine I will hold off.
I currently have a similar issue with my webcam (Logitech StreamCam). When I use it, my system freezes or peripherals stop working (please let me know if and how I can be of help for debugging and troubleshooting, or if somebody else here is also experiencing this problem).
I know from experience that it’s most likely due to a race condition in the firmware, and I’ll have to wait for a firmware update (or an update in the Linux UVC driver), but I find it fascinating that a single misbehaving peripheral can destabilize the entire system.
I know there are good reasons against this, but one can only dream of an ideal world where a kernel is more resilient and self-segregational (i.e. a microkernel) with strictly mandated IPC mechanisms.
I’d gladly trade a bit of performance for the advantages it would provide.
I don’t think a microkernel would actually help though, right? The problem wasn’t the kernel, it was that the hardware was bad in certain situations. If you put your WiFi/Ethernet card driver in a userspace process, that’s not going to change the fact that the physical networking card is getting lots of interference from the USB and HDMI cards, and is dropping or corrupting packets like nobody’s business.