Can not start X on 12.1 update using x11-video-nvidiaG02 driver

Hello all,
To resolve a number of wireless issues I was having earlier, it was recommended that I update my system from 11.3 to 12.1. I did a DVD update but now I can’t starts. I added the nvidia ftp repo using zipper, refreshed it, and installed x11-video-nvidiaG02 driver (and associated packages, by the way it’s the 290.10 driver) for my GeForce 7700 card. I then ran

nvidia-xconfig

to update my xorg.conf file. At first when I tried to startx or even boot run level 5 with the nomodeset option, I was getting a permissions issue as described in http://forums.opensuse.org/english/get-technical-help-here/install-boot-login/456567-cannot-startx-unless-superuser.html. I added

/usr/bin/Xorg root:root 4711

to my /etc/permissions.local file, but this did not solve the problem. Now when I try to starts, I get the following output (please forgive, I’ll try to paraphrase the relevant lines since I’m working on a different computer, so can’t just copy the output here):


...
(==) Using config file: "/etc/X11/xorg.conf"
(similar lines for config directory and system config directory, yes xorg.conf.d directory is being used but all lines are commented)
(EE) NVIDIA(0): Failed to get supported display device(s)
(EE) NVIDIA(0): No display devices found for this X screen.
(EE) Screen(s) found, but none have a usable configuration.

Fatal server error:
no screens found

(a bunch of X.Org foundations stuff, please check /var/log/Xorg.0.log, etc etc)

xinit: giving up
xinit: unable to connect to X server: Connection refused
xinit: server error

when I looked into the /var/log/Xorg.0.log file, nothing jumped out at me except for the (EE) flagged (error) entries that were reported when I tried to starts, except for one line that said

...NVIDIA(0): Connected display device(s) on GeForce Go 7700 at PCI:1:0:0

…which to me means that the driver has found the correct card. Below I’ve included two of the sections from the auto generated xorg.conf file (just the last two sections, since I think they’re the only important ones and I don’t want to hand type the rest):


Section "Device"
  Identifier "Device0"
  Driver "nvidia"
  VendorName "NVIDIA Corporation"
EndSection

Section "Screen"
  Identifier "Screen0"
  Device "Device0"
  Monitor "Monitor0"
  DefaultDepth 24
  SubSection "Display"
    Depth 24
  EndSubSection
EndSection

Please, can anyone help? I’ve poured over forums and tried many of the fixes that are suggested, though none have worked. Of course my computer is unusable until I can get this going. Any help is appreciated!!!
Taylor

First: did you update the 11.3 install with a 12.1 DVD, or did you perform a clean 12.1 install. The first will likely cause trouble, updating works from one version to the next, i.e. 11.3 -> 11.4
Second: you generated an xorg.conf by running nvidia-xconfig; there should be no need for that, xorg.conf is deprecated, the autodetection and -configuration should do the job.
Third: you started X as the root user; don’t, never login on a desktop environment as root. In this specific case it may even cause trouble
Fourth: never change the permissions of system software.

My 2 cents: perform a clean 12.1 install, update -all this using the nouveau driver-, then install the NVIDIA driver from the NVIDIA repo.

Hi, thank you for the reply.
Doesn’t a clean install wipe everything though? I mean, won’t I have to recreate my user profile, reinstall all my software, copy over all my files, etc?
And a quick question, just so I’m totally clear, what do you mean by update -all using nouveau driver? Why do I need to use that driver at all, why can’t I just issue zipper update from command line?
Thank you very much.
Taylor

A clean install shouldn’t wipe everything, but it depends on how you installed in the past. If /home is on a separate partition, the installer allows you to leave it untouched. I’ve been working like that for years now, instaling every new openSUSE version, reusing the same /home. But it needs checking. If your /home does live on a separate partition, all your files and folders, your settings etc etc will remain. Software you installed has to be reinstalled, from the repos with the proper versions for your openSUSE version.

I meant, that you should bring the system completely up to date first (a new kernel is part of the updates provided by the update repo), before installing the NVIDIA driver. “Using the nouveau” driver was just meant to indicate that you update before installing the proprietary NVIDIA driver.

All clear now?

I think so, thank you for helping clarify. I’m now doing a clean install (formatting / but not /home, for example), and when prompted for a new user I entered the same information as before. Once that’s done, I’ll run from su:


zypper up
zypper -ar -f ftp://nvidia_repo_location nvidia
zypper in whatever_nvidia_driver

Sorry, can’t remember the repo or packages at the moment, but I think I get the idea. I’ll update this thread once finished with either a ‘success!’ or fail: now what?
Thanks again!

That’s the way to go, IMHO. If you used the same username, the question should have popped up whether to change the perms for the folder in /home to that of the newly created user, Answer yes, and your homedir is where it should be, ready for reuse.

Hi, okay. So things were going smoothly, after the clean install the X server started (although presumably running with this nouveau driver). I updated everything and then added the nvidia repo and installed the driver. Restarted and X won’t start. When I log in and issue starts, I get


xauth: file /home/taylor/.serverauth.1597 does not exist

Fatal server error:
Cannot more old log file "/var/log/Xorg.0.log to "/var/log/Xorg.0.log.backup"

Please consult...blah, blah, X.org foundations stuff

xinit: giving up
xinit: unable to connect to X server: Connection refused
xinit: server error
-----------------------------
xinit failed. /usr/bin/Xorg in not setuid, maybe that's the reason?
If so either use a display manager (stingily recommended) or adjust /etc/permissions.local

This is the same error I go the first time actually, before I adjusted the permissions in /etc/permissions.local, when then gave me the next error and I opened this thread. What can I do here? Thank you in advance,
Taylor

You cannot 'startx" as a normal user. Don’t attempt to do so as root. Please post output of following commands


rpm -qa | grep kernel-
rpm -qa | grep nvidia
grep KMS /etc/sysconfig/kernel

Thanks for the reply. Here are the outputs, in order:

kernel-firmware-20111025git-1.7.1.noarch
kernel-desktop-3.1.9-1.4.1.x86_64
nvidia-computeG02-290.10-13.1.x86_64
nvidia-settings-[270.41.06-1.33.x86](tel:270.41.06-1.33.x86)_64
x11-video-nvidiaG02-290.10-13.1.x86_64
nvidia-gfxG02-kmp-desktop-290.10_k3.1.0_1.2-12.1.x86_64
# This variable disables the initialization of KMS in the initrd
# by not including the modules required for KMS even though KMS is
NO_KMS_IN_INITRD="yes"

I should also mention that the nvidia settings module that appears above is something I thought I’d try after. I get the same error though, so I don’t think having nvidia-settings installed makes a difference to the outcome.

Take a look at the kernel version number and the numbers on the back, after the “k” of the nvidia kmp package. The NVIDIA kernel module is for the kernel that came with your install. Since then there has been a kernel update and now the NVIDIA packages aren’t there yet. But … there’s always “the hard way”, as it was called. To get the driver installed, first uninstall the NVIDIA driver through Yast from the console. Install the Kernel Development Pattern.

Then, reboot the machine, in the GRUB boot menu, hit F5, choose System V, and enter " 3" on the options line, after “vga=…” separate by a space.
At the login prompt, login with username and password. Then do:


wget ftp://download.nvidia.com/XFree86/Linux-x86_64/295.20/NVIDIA-Linux-x86_64-295.20.run
su -c 'sh NVIDIA-Linux-x86_64-295.20.run -q'

“Enter” your way through the driver install, when done, reboot. You should be presented with a nice login screen, preceded by the NVIDIA logo. Good luck, let us know what came out.

I really appreciate the help. The pattern is just installing now, I presume you meant

HI thank you. Really appreciate the advice! Everything worked, and I know have a workable X server, except I had to blacklist the nouveau driver and try again, and after the driver had installed it asked me to run sax2 (read below: in the past I’d had to do this with sax2 -r -m 0=nvidia). I did NOT run sax2 however, because I had understood that this feature was deprecated. Should I do this? I am noticing that the display is, well, not as nice, for example window decorations are really boxy and gnome-ish.

So let me see if I understand this correctly. The currently supported nvidia driver (as available from the repo) is basically not caompatible with the kernel that I just installed by upgrading to 12.1 (and then doing a big package update). So I have to find another driver source form the nvidia website, and get what is perhaps some kind of a beta driver, release for compatibility with the new kernel I’m running? This seems unsustainable. What happens what I update my kernel, as part of regular system maintenance? Will I have to do a similar procedure again, finding another cutting edge driver, or what if that driver hasn’t been released yet?
I’m just concerned because I had a similar issue a few years ago. After each kernel update I had to reinstall the nvidia driver in the exact same way, and run sax2. It because predictable. So how is this different, and will I ever be able to use the nvidia repositories to simply install the G02 driver?
So far the update procedure has been far more disruptive than others I’ve done: I lost a lot of vital software that I had installed (some of which had taken weeks to configure), and for example some things don’t work the way they should (latex doesn’t work even though texlive binaries are installed, for example, some programs just hang and then don’t open when I call them, kmix and networkmanager don’t appear in the system tray, etc).

Thank you again for getting me to where I am now though, couldn’t have done it without you!

On 2012-04-02 20:56, Knurpht wrote:

> First: did you update the 11.3 install with a 12.1 DVD, or did you
> perform a clean 12.1 install. The first will likely cause trouble,
> updating works from one version to the next, i.e. 11.3 -> 11.4

While it is true that an upgrade should best be done from one version to
the next, and upgrade of two versions is perfectly feasible with the DVD
upgrade method (not so much via zypper dup). It is AFAIK a supported method.

Offline upgrade method


Cheers / Saludos,

Carlos E. R.
(from 11.4 x86_64 “Celadon” at Telcontar)

Hey,

Had the same issue this morning after a kernel update to 12.1. Using Linux 3.1.10-1.19-desktop x86_64 now. I fixed it by loading the failsafe kernel which does not use the nvidia driver (so real yucky graphics) and then installing the nvidia G03 packages which supersede the G02 ones. The former have the correct nvidia driver 310.32. Restarted and everything was fine. The packages installed are: nvidia-computeG03, nvidia-gfxG03-kmp-desktop, x11-video-nvidiaG03. Deleted their G02 counterparts.

I did not dig too deep since it got solved rather quick but it seemed to be due to a problem initializing the GLX module. Probably a mismatch somewhere after the update. This was the output of the Xorg.0.log…


   153.030] (II) Loading sub module "wfb"
   153.030] (II) LoadModule: "wfb"
   153.031] (II) Loading /usr/lib64/xorg/modules/libwfb.so
   153.031] (II) Module wfb: vendor="X.Org Foundation"
   153.031]     compiled for 1.10.4, module version = 1.0.0
   153.031]     ABI class: X.Org ANSI C Emulation, version 0.4
   153.031] (II) Loading sub module "ramdac"
   153.031] (II) LoadModule: "ramdac"
   153.031] (II) Module "ramdac" already built-in
   153.031] (II) Loading /usr/lib64/xorg/modules/drivers/nvidia_drv.so
   153.032] (II) Loading /usr/lib64/xorg/modules/libwfb.so
   153.032] (**) NVIDIA(0): Depth 24, (--) framebuffer bpp 32
   153.032] (==) NVIDIA(0): RGB weight 888
   153.032] (==) NVIDIA(0): Default visual is TrueColor
   153.032] (==) NVIDIA(0): Using gamma correction (1.0, 1.0, 1.0)
   153.032] (**) NVIDIA(0): Enabling 2D acceleration
   153.032] (EE) NVIDIA(0): Failed to initialize the GLX module; please check in your X
   153.032] (EE) NVIDIA(0):     log file that the GLX module has been loaded in your X
   153.032] (EE) NVIDIA(0):     server, and that the module is the NVIDIA GLX module.  If
   153.032] (EE) NVIDIA(0):     you continue to encounter problems, Please try
   153.032] (EE) NVIDIA(0):     reinstalling the NVIDIA driver.
   153.033] (EE) NVIDIA(0): Failed to initialize the NVIDIA kernel module. Please see the
   153.033] (EE) NVIDIA(0):     system's kernel log for additional error messages and
   153.033] (EE) NVIDIA(0):     consult the NVIDIA README for details.
   153.033] (EE) NVIDIA(0):  *** Aborting ***
   153.033] (EE) NVIDIA(0): Failing initialization of X screen 0
   153.033] (II) UnloadModule: "nvidia"
   153.033] (II) Unloading nvidia
   153.033] (II) UnloadModule: "wfb"
   153.033] (II) Unloading wfb
   153.033] (EE) Screen(s) found, but none have a usable configuration.
   153.033] 

On second thought do not delete the G02 packages. Had the problem again after I deleted them so had to reinstall them. X is just a bit sluggish now. I’ll keep monitoring it and hopefully it is sorted before too long but at least it is a functional desktop.

Sounds like you got bitten by this bug:
https://bugzilla.novell.com/show_bug.cgi?id=802624

Try the following:

  • start Yast Software Management and delete all the nvidia packages
  • then start Yast again (before rebooting) and install the G03 packages
    After a reboot, the driver should work fine then.

And it does. Thanks…