So, I spent today at the day job wondering why the hell the FreeBSD Jenkins CI slave kept timing out during build, which I originally assumed was due to my fiddling with the day job code. Turns out it was because the VM's disc i/o was rather slower than usual. I reboot the VM, and see it is like treacle, plus logging into the hypervisor is slow. Hmm, I wonder, is there something up with disc i/o latency across the whole machine. A quick fsync test later and yes, fsyncs are about 40% lower than they should be, and the VMs are being particularly punished. So, I reboot the whole machine which is something I very rarely do because my boot sequence is very ... manual ... and after the customary twenty minutes of hand booting services the i/o latency problem is gone, and all is back to normal.
So what caused the problem? I suspect it is my fault: last few days I have been writing a Linux kernel driver which hacks around the fact my DVB-S tuner has forgotten its USB VID and PID ids, so basically my hack driver spots the default VID PID and does a cold firmware load on the tuner, whereupon the proper Linux drivers pick up and run with the tuner as normal. In fact, my hacky Linux driver can be seen at https://github.com/ned14/dvb_ttusb_ned. And my hack driver's I2C bus support is very flaky, and was probably introducing i/o timeouts across the system.
And why the sudden urgency on getting satellite TV into the house? Well, the car's fuel pump has died, so Megan + Clara are stuck in the house until we fix it (there is no point paying a mechanic, he'd charge half the car's worth, so it'll be a DIY between extended family). And Clara is teething. So Megan isn't exactly chipper. And hence the idea for TV for her to watch (we used to pipe Irish TV over the internet, but the provider killed the free service so no more TV since).
Never rains when it could pour eh!