3

After I updated my kernel I restarted my computer (as it always requests) and now I can't log in (I can't get past the login screen). The resolution of the screen at login has also changed, leaving me to believe that the video driver I normally used was changed.

As I boot up the computer the screen at one point is momentarily black and displays the following messages:

[ 7.635692] nvidia: version magic '4.4.0-113-generic SMP mod_unload modversions 686 ' should be '4.4.0-113-generic SMP mod_unload modversions 686 retpoline '

[ 7.788685] nvidia: version magic '4.4.0-113-generic SMP mod_unload modversions 686 ' should be '4.4.0-113-generic SMP mod_unload modversions 686 retpoline '

Any suggestions as to what I can do to fix this issue? I am a novice when it comes to Ubuntu, so any help is greatly appreciated!

KJFS
  • 43
  • 1
    Retpoline is the Spectre patch. In grub Advanced Options menu select Kernel 4.4.0-112 to boot with. – WinEunuuchs2Unix Feb 09 '18 at 23:08
  • Your advice worked at first. After I booted up from Kernel 4.4.0-112, I was able to get past the login screen. To make sure it was a permanent fix, I rebooted my computer with the 4.4.0-112 Kernel and now it's giving me the same problem. – KJFS Feb 10 '18 at 00:01
  • Are you sure when you rebooted you didn't take the Ubuntu main option by muscle memory? – WinEunuuchs2Unix Feb 10 '18 at 00:04
  • I chose the 4.4.0-112 main (not the recovery) option the first time. During my second boot, I chose the same and it gave me my afformentioned issue. I tried the recovery option afterwards, but I didn't know how to use it, so I just resumed the boot process. Please forgive me, I should have mentioned in my question that I'm still a novice when it comes to Ubuntu. I'll add it now. – KJFS Feb 10 '18 at 00:10
  • We were all novices at one time. But then again I've never had to use the recovery option either. I would have to google it. I'm at a loss to explain why it worked booting 4.4.0-112 the first time and not the second time. – WinEunuuchs2Unix Feb 10 '18 at 00:22
  • That's quite alright. Thank you for your continuing support, I greatly appreciate it! – KJFS Feb 10 '18 at 00:39
  • I'm also having this problem, I can boot up 4.4.0-112 and it seems to work fine. But I'm curious how to fix this problem longer term. I tried installing the latest NVIDIA driver (390.30) but that didn't seem to help. Is this a known issue with the Spectre patch that has a forthcoming fix? – Nate Feb 14 '18 at 23:37
  • 2
    Someone has reported this upstream: https://bugs.launchpad.net/ubuntu/+source/xorg/+bug/1750937 – Cheetah Feb 22 '18 at 03:43

1 Answers1

0

I solved the problem by following this post from the bugs launchpad. In summary:

Run the following command and look for the vermagic line:

modinfo nvidia-384 -k 4.4.0-116-generic

It will probably say: vermagic: 4.4.0-116-generic SMP mod_unload modversions. Here the retpoline string is missing. You can fix this by removing and re-building the module with DKMS

sudo dkms remove nvidia-384/384.111 -k 4.4.0-116-generic
sudo dkms install nvidia-384/384.111 -k 4.4.0-116-generic

After that the modinfo command will show vermagic: 4.4.0-116-generic SMP mod_unload modversions retpoline

If you are using custom version of gcc this post is also relevant:

If you are using a Ubuntu version of gcc, then gcc probably updated when you got the newer kernel. The changes to gcc necessary to support retpoline should have been backported to most active versions of gcc. However if you have installed a custom version of gcc then your kernel module probably will not build correctly.

So if the above procedure does not work you may have to check which gcc version you are using.

bluenote10
  • 1,885
  • 1
  • 18
  • 23