Ubuntu 18.04 LTS on Lenovo ThinkPad E485

💻 Stop Ubuntu from hanging itself on boot

James Hegedus
Sep 3, 2018 · 3 min read

📑 Table of Contents

TLDR: add the parametersivrs_ioapic[32]=00:14.0 and spec_store_bypass_disable=prctl to the Linux kernel command in Grub on the Install Ubuntu option during installation. To make it permanent, edit Grub’s Default Linux command in/etc/default/grub. Don’t forget to run sudo update-grub afterwards! 💯

UPDATE: also applies to Ubuntu 18.10.

New to Ubuntu? Follow the more thorough steps below!

Lenovo ThinkPad E485

To launch from a Ubuntu Bootable USB, press Enter when the Lenovo logo appears, then choose to select a device to boot from with F12, then select your Bootable USB device to launch.

Installing Ubuntu

The following applies to either launching into a USB Live session of Ubuntu, Try Ubuntu, or running the Install Ubuntu command.

Running either of these commands at this point will cause the machine to silently error and hang.

A screen full of Ubuntu aubergine

To fix the issue we must edit the command executed by Grub (Try Ubuntu or Install Ubuntu) Pressing e with the menu item selected will open the command and allow you to edit it:

Add these two parameters at the end of the Linux command:

ivrs_ioapic[32]=00:14.0 spec_store_bypass_disable=prctl

like so:

no screen capture available in the BIOS 😿

You should now be able to install or run the Live session as expected 😄

Making the changes Permanent

Unfortunately, the above process only changes the command for that execution. If you reboot it will still hang attempting to boot Ubuntu. We don’t want to enter these commands each time we boot our machine.

On First Boot

Once you’ve installed Ubuntu, you are instructed to remove the USB. And your PC hangs again… To fix this, follow the steps above, but this time edit the ubuntu Grub command as seen here:

Once Logged In

we can now edit the boot Grub command permanently by running:

sudo nano /etc/default/grub

Now add the aforementioned parameters to line GRUB_CMDLINE_LINUX_DEFAULT

Save and quit Nano with ctrl+x then Y.

Lastly, run this final command to make the above change permanent:

sudo update-grub

Reboot and your machine should run as expected 😄

Conclusion

As always there are a few hurdles with getting Ubuntu up and running on a mobile device, but thanks to the work of EvilAzrael over at https://evilazrael.de/ it was easy enough to get up running.

If you found this useful, please share with your friends & colleagues.

James Hegedus

Written by

GCP, Firebase & ReasonML fan! @jthegedus on GitHub & Twitter.

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade