Inconsistent GNU/Linux Booting with ASUS U46

GNU/Linux distros such as Debian, Ubuntu, and Trisquel don't boot properly every time with the ASUS U46 family of laptops. One attempt to fix the issue initially was to turn off acpi in /etc/default/grub by adding 'acpi=off' in GRUB_CMDLINE_LINUX. Later, I found out reading long threads 'nolapic' works as well. It did seem to work but I still had boot problems after a while. Although this is a solution that works most of the time I wouldn't recommend it, take a look first at the VT-d one below:

Better solution:

It turns out the issue with the ASUS U46 is due to VT-d, and if you get into the BIOS settings (press F2 when you see the ASUS startup logo), you can disable VT-d. This fixes all the issue, and none of the boot options are needed then. I'll have to read up on what VT-d does exactly. Hopefully a newer version of the Linux Kernel will address the issue (Ubuntu is running 3.0.0-12 and the latest version is 3.1.5).

Less good solution:

If disabling VT-d doesn't take care of the issue, you might want to try the boot option nolapic. I didn't see any side effect with Intel Core i7 when using it. In Ubuntu/Trisquel, to add this boot option you can always use the live cd, after pressing a key when Ubuntu, you can press F6 and check 'nolapic', then select Try Ubuntu without installing. You can then mount the / partition of your harddrive, for instance if it is /dev/sda3:

cd /media
sudo mkdir hd
sudo mount /dev/sda3 hd

Then modify /media/hd/etc/default/grub:

sudo gedit /media/hd/etc/default/grub

Change the line that start with GRUB_CMDLINE_LINUX with:

GRUB_CMDLINE_LINUX="nolapic"

then update grub by running:

grub-install --boot-directory=/media/temp/boot/ /dev/sda

If /media/temp is your mounted partition and /dev/sda is your hard drive, this should update your grub.