Comment 95 for bug 508516

Revision history for this message
jim_charlton (charltn) wrote :

I have looked into the issues on the NB305 in some detail. Why do you think that the problem is in the BIOS and that it cannot be fixed in the kernel? MS Windows will boot fine using AHCI mode.

I am running Ubuntu 10.10 Maverick 22.6.35-27-generic in AHCI mode and I boot by tapping the left shift key during boot. Every time the disk light ceases to flicker, tap the key. Hibernate works fine but needs key tapping to restore the image.

I think that the problem is with the disk driver. If you set the disk to compatibility mode in the BIOS the problems go away (although I have not checked this recently and it is reported that suspend and hibernate still have problems in compatibility mode). "compatibility" mode will not work for the windows partition.

Using nohz=off highres=off changes your machine so that the kernel does not use "tickless" mode. This makes the machine less efficient making it run hotter and shortening the time it will run on the battery. It also screws up pulse audio some of the time.

Like others who have looked at this, I believe the problem is with the AHCI disk driver and the master scheduler. The driver does not generate interrupts to keep it running. Tapping the left shift key generates a keyboard interrupt which kicks the scheduler back into action and puts the driver back into the queue until it gets rolled out again. I believe that is why you have to keep tapping the key. I am not a kernel expert though... so this may be all just idle speculation and incorrect terminology.

Consistent with this is the fact that installing bootchart on earlier kernel version would completely cure the problem. And I found that any program that would saturate one of the CPUs during boot would also cure the problem. I think it just keeps the scheduler actively rolling the disk driver back in by some magic.

It is a pity that someone who actually knows how the kernel magic works, cannot find time to look at this.