I'm hoping someone familiar with the lower layers of IDE/SATA disk communications can kindly have a look at this.
Following a long discussion on lkml, I picked up that it's no longer recommended to keep the legacy IDE drivers in at the same time as the newer SATA drivers, so without changing anything else on my system, I removed CONFIG_IDE and friends.
It's the same 22.214.171.124 as I've always run - just took out IDE. See the link to the diff between the old .config and the new .config (without IDE) below.
I would have thought this would cause things to run more smoothly, but instead, I now find that the fan is now running almost all the time (not full-speed, but still audible) while earlier, it was almost always off.
Note that nothing else is changed. Same scaling governor, booting to runlevel 3, no binary blobs, no difference in application load. Just the fan running slightly more than with the legacy ide drivers compiled in.
So - while I thought I'd get things even more smoothly, I ended with the opposite.
Now - before someone jump in and say I should stick with the stock Slackware kernel - note that this is part of a learning expedition on my side to understand further of the kernel - I really want to understand this. I've read and read, and now I've hit a temporary obsticle, with which I would greatly appreciate some constructive input.
I suspect the problem lies in how the upper layers of disk access/filesystems communicate with the lower-level drivers sata / ide, but I haven't a clue as to why I see this behaviour...
Any insight or pointers to where this might be address would be greatly appreciated!
Diff showing what I took out of .config : http://pastebin.com/m5ac1d423
System is a Lenovo X200 with SATA hdd and cdrom. No functional difference in the system. boots and mounts hdd/cdrom just fine. Just the fan that's different.
And one small difference in dmesg post boot:
These lines obviously don't appear where I've taken out CONFIG_IDE:
Uniform Multi-Platform E-IDE driver
ide_generic: please use "probe_mask=0x3f" module parameter for probing all legacy ISA IDE ports
Probing IDE interface ide0...
Probing IDE interface ide1...