Monday, February 8, 2016

NVidia driver, normal boot results in blank screen, recovery boot works fine


Ok, so, like many others I'm having a lot of trouble with NVidia drivers, in this case, the new 340.32 ones downloaded from here (http://www.nvidia.com/object/unix.html), but I've had these problems across the board with pretty much all versions.


So, this is currently where I'm at, as far as I can tell, the driver is installed fine, but if I let Ubuntu try to boot normally, I end up at a blank screen and nothing ends up getting displayed. No run level changes work, it's completely locked up, yadda yadda.


If I boot into recovery mode and then resume the boot (with no other changes, I literally just hit "resume boot"), everything seems to work fine.


So I'm assuming that something is starting up with a regular boot that doesn't start up with a recovery boot (there is, obviously, a warning for such when resuming the boot), but I have no idea what or how to diagnose it.


Here's the other major symptom, nvidia-settings launches fine & I can save the xorg.conf file in /etc/X11 with no problem (without merging). However, when I perform a recovery boot, the system has lost any of the changes I made to the configuration, so I'm guessing something isn't reading the xorg file or something like that.


Ubuntu 14.04, kernel 36.
NVidia drivers 340.32 (but happens with all versions that I've tried, even back to 3.04)
2x EVGA NVidia 780 GTX (connected with an SLI bridge) with 2 WQHD Monitors both driven from Card 0, plus an Oculus Rift DK2 that I keep disabling from NVidia Settings but which keeps showing up as active every time I reboot (the problem predates the Rift, so I suspect this is a symptom and not a cause).


Any ideas? How do I even begin to figure out what's tripping the damned thing up on boot?


Thanks.



Ok, so it seems this is actually less to do with the NVidia cards and more to do with the fact that I'm using an SSD as a system drive.


As I understand it, the problem is that it's trying to start lightdm before the video card has finished initializing or some such nonsense.


It's a big problem on Macs;
https://devtalk.nvidia.com/default/topic/573252/linux/evo-push-buffer-channel-allocation-failed-is-back-as-usedplib-false-no-more-supported-with-325-15/4/


I've tried a LOT of fixes related to the EVO Buffer problem, but it seems that most of them don't work with Ubuntu.


Seems the only thing that works is to deliberately give the system time to catch up before trying to launch lightdm.


So, in /etc/init.d/lightdm.conf, locate the line that says:


exec lightdm

.. and simply change it to:


sleep 2
exec lightdm

It's an ugly, kludgy fix, but I have no idea how to go about telling lightdm to wait for the cards.


Incidentally, not sure what the fix for the xorg.conf file was, I'd read that copying it to /usr/lib/X11/xorg.conf.d was more reliable and that setting the screens using the Ubuntu display manager was more reliable.


I did both, one of them worked, but I couldn't tell you which one.


No comments:

Post a Comment

11.10 - Can't boot from USB after installing Ubuntu

I bought a Samsung series 5 notebook and a very strange thing happened: I installed Ubuntu 11.10 from a usb pen drive but when I restarted (...