Why can't linux kernel boot on my new Intel i7-6500U CPU?

Turns out the issue was i2c_hid

This seems to be some kind of touchpad driver. For some reason, when I disable it, I can still use my touchpad. It could be that the touch screen on the laptop was using this driver, too, because that doesn't work.

I don't like to mung up my laptop screen with fingerprints, anyway... So bye bye i2c_hid!

I fixed it by adding this to the kernel params: modprobe.blacklist=i2c_hid

Although nolapic also worked, it disabled all but 1 core in processors.

I'd highly recommend to anyone else out there to not use apci=off or nolapic for this reason.

Using these options is a nuclear weapon that might make your machine work, but you will lose a lot of performance and/or i/o devices as collateral damage. It's a good starting point to get booted, and then you can pour throught journalctl like I did to analyse the boots that fail.

Good luck to those who find this.


All of these errors look like ones I've seen with bad kernel modules.

There's someone on ubuntuforums that claimed they got ubuntu to boot on a 710-14ISK by disabling acpi (add acpi=off to the kernel options). https://ubuntuforums.org/showthread.php?t=2329448

Another customer on lenovo's forums said they had trouble booting fedora 24 and traced the problem to a piece of broadcom firmware: https://forums.lenovo.com/t5/Linux-Discussion/Yoga-710-How-to-install-Linux/td-p/3361544

Try blacklisting the broadcom and nouveau modules (leave them unclaimed) and boot with acpi off. I had similar logs when I had an ill-behaved ralink module in an old acer: blacklisting the module let me boot and stopped the kernel panics, but left me without wifi.

PS. I'd put all of this in a comment, but I don't have enough reputation to comment (sorry).


I experienced similar problems with recent kernels (4.7.x to 4.8.2) on my yoga710 with i5-6200U. Disabling i2c_h2d works for me. I also found that linux-lts (currently 4.4.25) seems to work well, including the touchpad and the touchscreen.

Edit: by experimenting with the driver code, I found that this is indeed caused by the hid_sensor_hub driver, so blacklisting it solves the problem and the touchscreen is also usable. Surely disabling it makes the sensors (such as the accelerometer) unrecognized. I tried to fix the driver; however I have not yet figured out a way.