Quadro P1000 on Lenovo P330 on Ubuntu 18.04: snafus a-plenty

I am testing a Lenovo P330 which came with a Quadro P1000 preinstalled.
I let the preinstalled Windows stay on the disk, and installed Ubuntu 18.04 alongside of it.
This worked very smoothly as long as I was happy with integrated graphics.

When I powered on the system to do the above, only the intel Displayport graphics port on the motherboard seemed active. (This is with an i7-8700.)
Also, the nvidia card did not show up in device manager in windows nor in lspci in ubuntu.
I eventually realized it’s customary for BIOS to have a setting to choose between integrated and pci3 graphics, so I pressed F1 at next boot and flipped that to pcie.

At next boot, it still didn’t recognize the card… but on the next next boot, it seemed to :-)

‘sudo ubuntu-drivers autoinstall’ worked smoothly and installed the expected proprietary nvidia drivers. Since secureboot is enabled by default, it prompted me to enter a password to give to bios at next boot. So far so good.

Unfortunately, next boot failed. No POST, no nothing. This is like the situation I ran into recently trying to install a GTX1070 on a recent Dell 8930; there, I had to remove the GTX1070 to get the system to POST at all.

I was never prompted by BIOS to enter the (MOK?) key I entered while installing the nvidia driver with ubuntu-drivers… I’ve looked all over BIOS and don’t see where to do that. Secure Boot has all sorts of configuration thingies, but none for adding that password that I can see.

It does, however, have a “Disable” option, and using that let me boot with the Nvidia P1000 card installed again.
Caveats: the screen flickers once at 10 seconds, and shows a normal desktop login prompt at 33 seconds, but otherwise is black. It’s very disconcerting. There’s no GRUB prompt; only once did ESC or F1 get it into BIOS; pressing any key seems to cause a black screen hang. Not pressing anything lets it boot to Linux (after a 30 second delay, which seems like ages).

Once it does boot to Linux, it has fairly good performance on FishGL in Chrome (my quickie acceptance test).

Removing the P1000 card makes everything happy again on the DisplayPort integrated graphics; BIOS splash and grub prompt work as expected, and Linux boots (albeit into 800x600… possibly because I added nomodeset. Hmm.)

So in short:

  1. bit odd you have to reboot twice after enabling pcie graphics in BIOS, is that expected? I guess that’s a Lenovo question…?
  2. bit odd I can’t use the Nvidia drivers in secure boot mode; the kernel is still signed, and the driver installer jumped through the right hoops, how does one enter the (MOK?) password again in BIOS? I guess that’s also a Lenovo question, but the Nvidia linux engineer(s) have probably run into it and might have some guidance.
  3. bit odd there’s no BIOS splash nor GRUB prompt on the nvidia card. Would some magic grub setting help?

If you got no POST or grub screen, the intel gpu is still on and primary, you’ll have to change that in bios.
Please run nvidia-bug-report.sh as root and attach the resulting .gz file to your post. Hovering the mouse over an existing post will reveal a paperclip icon.

No, no, the POST/grub screen problem lay elsewhere! Happily (or unhappily, depending on your mood), the problem was a seemingly incompatible mini-dp-to-hdmi adaptor (Accell B086B-012B, v4.0 F/W:7.1E 1609). Switching to a straight through mini-dp cable to our monitor made that problem go away.

Do you have any advice about how to use the nvidia driver, as installed by ubuntu 18.04’s system tools, in secure boot mode? It’s supposed to work, but I don’t see where to jam the new password in to the P330.

The password should only be used again on driver update or reinstall, don’t know exactly.
Since the adapter thingy is fixed, do you see anything now while booting in secure boot mode?
Is more of an Ubuntu module signing issue, though.