Eee Kernel 2.6.31.2-1 Update
I rebuilt the Eee kernel tonight with a handful of changes since the last one I released. The progression can be seen in the git repository as individual commits, and I’ll talk briefly below about them.
First, when bumping the configuration to 2.6.31 from the .30 kernel, I mistakenly removed the support for the webcam. That is back and appears to be working fine; sorry for inconveniencing anyone.
The second big change is going back to the CFQ scheduler as the default I/O scheduler. This is a different animal than the CFS/BFS debate that is currently going on in the CPU scheduling land, so don’t get it confused. When the Eee originally came out, the I/O schedulers tended to have a bias towards minimizing seeks as those would introduce delay in a rotational drive. Obviously for a SSD, this is not a concern, so switching to the deadline scheduler seemed to be the best choice. Since I made this switch over a year ago, the kernel has introduced a tweak in sysfs to mark a drive as non-rotational, and the CFQ scheduler adjusts accordingly, so it makes sense to switch back. The key here is ensuing we get this flag set correctly, and that is accomplished via a udev rule now provided by my package:
# ensure our SSD drive is set up as non-rotational
ACTION=="add" SUBSYSTEM=="block", SUBSYSTEMS=="pci", ATTRS{subsystem_vendor}=="0x1043", \
ATTRS{subsystem_device}=="0x82d8", ATTR{queue/rotational}="0"
This rule basically says “if the block device added has the following PCI identifier, set the rotational attribute to 0”.
See Also
- Arch Kernel Eee 2.6.31 built - September 9, 2009
- Arch Eee Repository - April 1, 2008
- Slicehost kernel upgrade - November 1, 2009
- Eee Kernel Scheduler Tweaks - September 25, 2009
- New Eee kernel has KMS enabled by default - June 23, 2009