Skip to main content

Drivers in Windows

Windows. Huh. I didn’t anticipate me writing about Windows here. Thankfully, it’s going to be a rant about drivers. I’ve got three short stories that all happened somewhere earlier this year. The first one chronologically is about one of the computers at work.

Long story short — we wanted to test whether Linux was a problem or not1 so we installed Windows 10. Installation took couple minutes, new system booted from the NVMe drive, so far so good. There was one little issue, the network didn’t work. The on-board LAN (some popular Intel chip) was detected but it was unable to negotiate any link. Some generic Microsoft-provided driver was loaded…

It’s 2022 and the system is dysfunctional after the fresh installation. What if someone didn’t have a second computer to fetch and transfer the driver via the USB stick? Less and less PC cases include 5.25″ bays2 so the provided driver CDs are only a piling trash.

Second story is also going to be about a network adapter driver but on my private computer. Recently I changed my ISP to the one that offered a FTTH so I could upgrade from the old unstable 150/15 Mbps cable3. The technician did his thing in 1.5h and left. It was around 11:30 so I was still working but I “risked” switching to the new connection. The speeds were oscillating around the expected values (943/301 Mbps averaged over three speedtests) on Linux. After work I switched to Windows to, you know, maintain the mythical work-life balance4.

First thing I did was another speedtest, just in case. I observed the pointer of the speedometer going rapidly up. 200, 300, 500, 700, 800. BAM. Both my screens went black for a second. Huh. Strange. Can’t be related to the new internet, can it? I fired up another speedtest. 300, 700, 800. BAM. Black screens again but also recovered quickly. When I checked the Event Viewer, I found out that the black screens were related to the Nvidia driver crash.

I started yet another speedtest but this time I also opened Task Manager to take a look at resource usage. To my surprise both CPU and GPU were going crazy high on some system daemon when the test was accelerating. I didn’t have high hopes but I tried to update my Nvidia driver… and the system crashed while downloading it. This time the screens didn’t come back without a reboot. Then it suddenly dawned on me that it must be related to the crappy MS-provided drivers for the network adapter. I manually overrode the link speed to 100 Mbps and downloaded a driver from the mobo manufacturer.

Et voilà, all my problems solved. This time the generic driver “worked” and I didn’t realize that it was not offloading to the chip for almost a year thanks to my old internet connection. I’d probably found out about it sooner if I had less powerful components in my PC. But hey, at least now we know that a 10th gen i9 and an RTX2070S are not capable of calculating checksums at gigabit speeds using the generic driver. This time I wished it didn’t work at all.

Third story is going to revolve around a HDD. In January I bought a new 8TB HDD5, formatted it under Windows to use NTFS and Bitlocker so I could use it from Linux as well. The last time I checked, Windows still didn’t support ext4 and LUKS out of the box :(. Everything looked good so far. This unfortunately changed when I started to copy files onto the new disk. Write speeds were never exceeding ~30 MBps flat on Windows with huge files. I couldn’t resist and checked how it behaves on Linux. Despite a weird filesystem and Bitlocker, the drive could maintain a stable 110+ MBps writes there.

I did some googling but nothing useful or even remotely connected came up so I gave up. It was just Windows doing windowsy things all over again. The experiment showed that the drive clearly wasn’t an issue here. I could live with those speeds because it’s going to be used only for archiving purpose. However, this weekend while I browsed the Device Manager I found out that the SATA controller was listed as Standard SATA AHCI Controller and used the MS-provided driver… So, I hope you know the drill by now.

The thing that pains me the most is that it’s 2022 already and Microsoft still doesn’t ship proper drivers for common hardware. And that their automatic updates fail to update the drivers to match the devices properly. Ok, ok. Most people probably wouldn’t notice the 3rd issue I presented but it’s still there.

  1. Surprise, surprise! It was not. System literally froze randomly. Sometimes after an one hour, sometimes after 42 or 69 since the start. No logs, no other indicators from the monitoring either. It turned out to be a hardware mobo issue but the seller refused to replace/fix it because they “couldn’t reproduce the issue”. ↩︎

  2. I scouted a popular consumer-grade PC part shop. They offered 707 PC cases, out of which 504 had no 5.25″ bays, 97 had one and 106 had two or more. ↩︎

  3. This unresolved mystery deserves a post on its own. Adding to the TODO list. ↩︎

  4. I have a dual-boot setup with Debian being my daily work and hobby driver and Windows for stuff that doesn’t work on Linux. For instance, that last group includes streaming games to Oculus via WiFi. Dual boot significance will come up once again later so stay tuned. ↩︎

  5. It was my first drive to use GPT because all other drives could function with MBR so I didn’t bother exploring GPT. I think it had nothing to do with the whole situation but I just felt like sharing this. ↩︎