I have a small PC booting CentOS 5.8 with kernel 2.6.18-164 from a CF card on a CF to SATA adapter. Boot time on this machine is cca 2 minutes, but with an updated kernel to 3.x it drops down to 80 secs. What is more, according to tests, it has 10 times bigger data rate transfer with this newer kernel!
I think that this is because of an older version of driver which handles SATA to CF adapter. My first idea was to find the driver/module name, download the source code of its new version, compile it to the 2.6 kernel and load it and use it instead of its older version.
I searched for the driver in /sys/block/hda/device which points to /sys/devices/ide0/0.0. This directory contains the link called "driver" which points to /sys/bus/ide/drivers/ide-disk. I assume, that the name of module I am searching for is "ide-disk". Am I right?
Now I checked loaded modules with lsmod and found out that no such module is loaded. I then checked /boot/config-2.6.18-164.11.1.el5 and found that ide-disk is not kernel module but it is a part of the kernel itself.
My questions are:
What can I do now to update these drivers?
Is the driver name correct? I found module called ata_piix which is another candidate for the driver.
Should I update to the new version of the kernel entirely?
EDIT: Through lspci -k I found that ide-disk is NOT the right driver which handles the adapter. It is the ata_piix module I mentioned before. I will try to get its source code and compile it against the 2.6 kernel.