LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - General (http://www.linuxquestions.org/questions/linux-general-1/)
-   -   akmod-nvida, Fedora 9 update, lost 3d graphics abilities (http://www.linuxquestions.org/questions/linux-general-1/akmod-nvida-fedora-9-update-lost-3d-graphics-abilities-662408/)

JohnLocke 08-13-2008 04:21 AM

akmod-nvida, Fedora 9 update, lost 3d graphics abilities
 
Ok, I got myself a little lost.

I let Fedora's updater do an update, and it either didn't tell me, or I didn't notice that it was going to remove:
xorg-x11-drv-nvidia, kmod-nvidia-2.6.25.11-97.fc9.x86-64, kmod-nvidia-2.6.25.11-97.fc9.x86-64, kmod-nvidia, xorg-x11-drv-nvidia-libs, xorg-x11-drv-nvidia-libs
(don't ask me why some of those appear twice ... I couldn't tell you. This is just the output from the updater history).

Ok, so I see that (mostly when I next go to try and run World of Warcraft and notice it doesn't work). I try to re-install kmod-nvidia, but I guess livna hasn't come out with the newest ones yet. No biggie, I've heard some buzz about akmod-nvidia, so I get that sucker going.

Now, my xorg.conf has not changed through all of this (I made a copy and did a diff to check it), and all was happy and working before this update tonight (I'm now on 2.6.25.14-108.fc9.x86_64). I've got some of what I know I need installed:

Code:

> rpm -qa | grep nvidia
akmod-nvidia-173.14.12-2.lvn9.x86_64
kmod-nvidia-2.6.25.14-108.fc9.x86_64-173.14.12-2.fc9.x86_64
xorg-x11-drv-nvidia-173.14.12-1.lvn10.x86_64
xorg-x11-drv-nvidia-libs-173.14.12-1.lvn10.x86_64

But I can't run warcraft still (I get a black screen with proper sound playing ... if I try to switch desktops I get booted out to the login screen). I thought maybe it's a WINE problem ... not so much. I can run other non-3d programs fine in WINE. I also checked by attempting to run a linux 3d program (neverball) and get the following:

Quote:

Your system currently is not capable of hardware accelerated 3D. Therefore neverball cannot run.

Usually the cause of this error is that there are no Free Software drivers for your graphics card, please contact your graphics card manufacturer and kindly ask them to provide Free Software support for your card.
So ... I just don't know where to go from here?

Do I need to go find other nvidia drivers somewhere and install them? Turn on 3d somewhere else? Do I need a 32 bit version of those drivers that got built on the fly for Warcraft to run? I'm lost at this point, please help!

Edit: Sorry, thought Compiz was working and said so, but no, it's not, as it shouldn't be without 3D turned on

JohnLocke 08-13-2008 04:49 AM

A step further ...

I checked my xorg.conf and on a hunch changed the driver for the following from:
Code:

Section "Device"
  Identifier  "GeForce 8800"
  Driver      "nv"
EndSection

to "nvidia" instead of "nv"

I now get the following when trying to start compiz (instead of just an instant abort after Checking for Xgl):
Code:

Checking for Xgl: not present.
Detected PCI ID for VGA: 01:00.0 0300: 10de:0611 (rev a2) (prog-if 00 [VGA controller])
Checking for texture_from_pixmap: not present.
Trying again with indirect rendering:
Checking for texture_from_pixmap: not present.
aborting and using fallback: /usr/bin/metacity

and the following when trying to run WoW (same result, though):
Code:

> wine /games/WoW/Wow.exe -opengl
fixme:mixer:ALSA_MixerInit No master control found on USB camera, disabling mixer
fixme:advapi:SetSecurityInfo stub
archive Data\patch.MPQ opened
archive Data\enUS\patch-enUS.MPQ opened
archive Data\enUS\patch-enUS-2.MPQ opened
archive Data\patch-2.MPQ opened
archive Data\expansion.MPQ opened
archive Data\common.MPQ opened
archive Data\enUS\locale-enUS.MPQ opened
archive Data\enUS\speech-enUS.MPQ opened
archive Data\enUS\expansion-locale-enUS.MPQ opened
archive Data\enUS\expansion-speech-enUS.MPQ opened
fixme:win:EnumDisplayDevicesW ((null),0,0x32eda4,0x00000000), stub!
fixme:win:EnumDisplayDevicesW ((null),0,0x32ec94,0x00000000), stub!
fixme:win:EnumDisplayDevicesW ((null),0,0x32f42c,0x00000000), stub!
fixme:win:EnumDisplayDevicesW ((null),0,0x32f5a8,0x00000000), stub!
fixme:win:EnumDisplayDevicesW ((null),0,0x32f5a0,0x00000000), stub!
fixme:win:EnumDisplayDevicesW ((null),0,0x32f57c,0x00000000), stub!
fixme:win:EnumDisplayDevicesW ((null),0,0x32f57c,0x00000000), stub!
fixme:win:EnumDisplayDevicesW ((null),0,0x32f57c,0x00000000), stub!
fixme:win:EnumDisplayDevicesW ((null),0,0x32f144,0x00000000), stub!
fixme:wininet:InternetSetOptionW Option INTERNET_OPTION_CONNECT_TIMEOUT (5000): STUB
fixme:wininet:InternetSetOptionW INTERNET_OPTION_SEND/RECEIVE_TIMEOUT
fixme:wininet:InternetSetOptionW Option INTERNET_OPTION_CONNECT_TIMEOUT (5000): STUB
fixme:wininet:InternetSetOptionW INTERNET_OPTION_SEND/RECEIVE_TIMEOUT
fixme:reg:GetNativeSystemInfo (0x37402bc4) using GetSystemInfo()
fixme:wininet:InternetSetOptionW Option INTERNET_OPTION_CONTEXT_VALUE; STUB
fixme:wininet:InternetSetOptionW Option INTERNET_OPTION_CONTEXT_VALUE; STUB
fixme:imm:ImmAssociateContextEx (0x40024, (nil), 16): stub

Not sure that output is terribly helpful, but maybe it gives someone an idea.

jay73 08-13-2008 05:07 AM

You need to check your xorg.conf whether the glx module is loaded. That is one of the vital differences between nv and nvidia.

JohnLocke 08-13-2008 05:11 AM

Quote:

Originally Posted by jay73 (Post 3245694)
You need to check your xorg.conf whether the glx module is loaded. That is one of the vital differences between nv and nvidia.

I'm afraid I don't quite understand. I /think/ it is, but I'll post the whole shebang here just in case I am misunderstanding:

Code:

# Xorg configuration created by livna-config-display

Section "ServerLayout"
        Identifier    "single head configuration"
        Screen      0  "Screen0" 0 0
        InputDevice    "Mouse0" "CorePointer"
        InputDevice    "Keyboard0" "CoreKeyboard"
EndSection

Section "Files"
        ModulePath  "/usr/lib64/xorg/modules"
EndSection

Section "ServerFlags"
        Option            "AIGLX" "on"
EndSection

Section "InputDevice"

    # generated from default
        Identifier  "Mouse0"
        Driver      "mouse"
        Option            "Protocol" "auto"
        Option            "Device" "/dev/input/mice"
        Option            "Emulate3Buttons" "no"
        Option            "ZAxisMapping" "4 5"
EndSection

Section "InputDevice"

# keyboard added by rhpxl
        Identifier  "Keyboard0"
        Driver      "kbd"
        Option            "XkbModel" "pc105"
        Option            "XkbLayout" "us"
EndSection

Section "Monitor"
        Identifier  "ViewSonic"
        HorizSync    30.0 - 60.0
        VertRefresh  60.0 - 75.0
        Option            "DPMS"
EndSection

Section "Device"
        Identifier  "GeForce 8800"
        Driver      "nvidia"
EndSection

Section "Screen"
        Identifier "Screen0"
        Device    "GeForce 8800"
        Monitor    "ViewSonic"
        DefaultDepth    24
        Option            "RenderAccel" "True"
        Option            "AddARGBGLXVisuals" "True"
        SubSection "Display"
                Viewport  0 0
                Depth    24
                Modes    "1280x1024" "1280x960" "1152x864" "1024x768" "832x624" "800x600" "720x400" "640x480"
        EndSubSection
EndSection

Section "Extensions"
        Option            "Composite" "Enable"
EndSection


jay73 08-13-2008 05:46 AM

This is what I mean:

Quote:

Section "Module"
Load "dbe"
Load "extmod"
Load "type1"
Load "freetype"
Load "glx"
EndSection
Clearly not in your xorg.conf. I would make a backup and check whether adding it manually (preferably as one of the first entries) makes any difference.

JohnLocke 08-13-2008 11:51 AM

Quote:

Originally Posted by jay73 (Post 3245727)
Clearly not in your xorg.conf. I would make a backup and check whether adding it manually (preferably as one of the first entries) makes any difference.

No dice. Didn't change anything as far as I can tell. Still getting the "Could not create GL content" for games like netherball, compiz-manager still errors out with the same error above and even warcraft has the same error.

Good side is I now see the Nvidia splash screen when booting for a moment. So that's at least promising.

JohnLocke 08-13-2008 01:04 PM

well crap. I have no idea what changed between yesterday and today (other than trying to switch drivers in xorg.conf), but half of it is working now.

After having no luck with the nvidia driver in xorg.conf, I switched it back to "nv" and took out the module section to load glx and dri and whatnot.

Bam. ctrl-alt-bksp and things looked halfway normal. Restart and they /were/ normal.

All but warcraft. Getting errors there still:
Code:

fixme:mixer:ALSA_MixerInit No master control found on USB camera, disabling mixer
fixme:advapi:SetSecurityInfo stub
archive Data\patch.MPQ opened
archive Data\enUS\patch-enUS.MPQ opened
archive Data\enUS\patch-enUS-2.MPQ opened
archive Data\patch-2.MPQ opened
archive Data\expansion.MPQ opened
archive Data\common.MPQ opened
archive Data\enUS\locale-enUS.MPQ opened
archive Data\enUS\speech-enUS.MPQ opened
archive Data\enUS\expansion-locale-enUS.MPQ opened
archive Data\enUS\expansion-speech-enUS.MPQ opened
fixme:win:EnumDisplayDevicesW ((null),0,0x32eda4,0x00000000), stub!
err:d3d:WineD3D_CreateFakeGLContext Can't find a suitable iPixelFormat
err:d3d:InitAdapters Failed to get a gl context for default adapter
err:wine_d3d:WineDirect3DCreate Direct3D9 is not available without opengl
fixme:dbghelp:dump_system_info fill in CPU vendorID and feature set

Going to try and google that stuff, but I really wish I knew what had changed so I could fix it in the future.

jay73 08-13-2008 01:38 PM

It seems to be using wine. Was wine updated too?

JohnLocke 08-13-2008 01:48 PM

Quote:

Originally Posted by jay73 (Post 3246258)
It seems to be using wine. Was wine updated too?

No, I can't find where wine was updated, but I even tried and yum update wine and got that it was not tagged for update.

My suspicion is that wine is somehow still trying to point to the old drivers (that don't exist) and if I can figure out how to make it use the new ones, all would be well.

I suspect that partially because I'm getting a "address 00000 cannot be read" type error on the GUI error report from the warcraft game. Makes me think there's a bad softlink or pointer somewhere.

Of course, I've no idea where to even /begin/ looking for that.

Wondering if my best bet is to try to yum erase wine and then reinstall? Don't know if that would screw anything else up, though.

JohnLocke 08-14-2008 11:10 AM

Anyone? I'm at a total loss still, and I think it's probably something fairly easy ...

I tried "yum erase wine; yum install wine", but no luck there. Heck, it didn't even end up erasing my registry settings, so I'm guessing I didn't get everything anyway.

How do I make wine use OpenGL correctly?

JohnLocke 08-14-2008 10:15 PM

An update:

I backed off to kernel 2.6.25.10-86.fc9.x86_64 (what I was running when everything worked). I tried to run "yum install kmod-nvidia", but got the same dang dependency errors:
Code:

Error: Missing Dependency: kernel-uname-r = 2.6.25.11-97.fc9.x86_64 is
 needed by package kmod-nvidia-2.6.25.11-97.fc9.x86_64-173.14.12-2.lvn9.x86_64 (livna)

Seems kmod will /only/ work with kernel 2.6.25.11-97 (which I don't have and don't really know how to update to that specific of a kernel).

So I installed akmod (in single user mode, after removing all nvidia drivers). I then fully removed Wine (all 11 packages of it and it's helper packages), and then reinstalled using just "yum install wine" (got back all 11 packages). Again, got right back to the point where openGL works fine for linux programs (compiz, linux games, glxgears), but not for Wine. Still have the exact same error.

Have the drivers:
Code:

rpm -qa | grep nvidia
kmod-nvidia-2.6.25.10-86.fc9.x86_64-173.14.12-2.fc9.x86_64
xorg-x11-drv-nvidia-173.14.12-1.lvn10.x86_64
akmod-nvidia-173.14.12-2.lvn9.x86_64
xorg-x11-drv-nvidia-libs-173.14.12-1.lvn10.x86_64

> glxinfo | grep direct
direct rendering: Yes

> glxinfo | grep server
server glx vendor string: NVIDIA Corporation
server glx version string: 1.4
server glx extensions:

> glxinfo | grep client
client glx vendor string: NVIDIA Corporation
client glx version string: 1.4
client glx extensions:

> rpm -qai kmod\*86\*
Name        : kmod-nvidia-2.6.25.10-86.fc9.x86_64  Relocations: (not relocatable)
Version    : 173.14.12                        Vendor: (none)
Release    : 2.fc9                        Build Date: Thu 14 Aug 2008 07:38:14 PM MDT
Install Date: Thu 14 Aug 2008 07:38:20 PM MDT      Build Host: LinBob
Group      : System Environment/Kernel    Source RPM: nvidia-kmod-173.14.12-2.fc9.src.rpm
Size        : 10318592                        License: Redistributable, no modification permitted
Signature  : (none)
URL        : http://www.nvidia.com/
Summary    : nvidia kernel module(s) for 2.6.25.10-86.fc9.x86_64
Description :
This package provides the nvidia kernel modules built for the Linux
kernel 2.6.25.10-86.fc9.x86_64 for the x86_64 family of processors.

No good. Wine refuses to run openGL apps now.

Here's the xorg (minus things like the keyboard):
Code:

# Xorg configuration created by livna-config-display

Section "ServerLayout"
        Identifier    "single head configuration"
        Screen      0  "Screen0" 0 0
        InputDevice    "Mouse0" "CorePointer"
        InputDevice    "Keyboard0" "CoreKeyboard"
EndSection

Section "Files"
        ModulePath  "/usr/lib64/xorg/modules/extensions/nvidia"
        ModulePath  "/usr/lib64/xorg/modules"
EndSection

Section "Module"
        Load  "i2c"
        Load  "bitmap"
        Load  "ddc"
        Load  "freetype"
        Load  "int10"
        Load  "type1"
        Load  "vbe"
        Load  "glx"
        Load  "dbe"
        Load  "extmod"
EndSection

Section "ServerFlags"
        Option      "AIGLX" "on"
EndSection

Section "Monitor"
        Identifier  "ViewSonic"
        HorizSync    30.0 - 60.0
        VertRefresh  60.0 - 75.0
        Option      "DPMS"
EndSection

Section "Device"
        Identifier  "GeForce 8800"
        Driver      "nvidia"
        Option      "AddARGBGLXVisuals" "True"
EndSection

Section "Screen"
        Identifier "Screen0"
        Device    "GeForce 8800"
        Monitor    "ViewSonic"
        DefaultDepth    24
        Option      "RenderAccel" "True"
        Option      "AddARGBGLXVisuals" "True"
        SubSection "Display"
                Viewport  0 0
                Depth    24
        EndSubSection
EndSection

Section "Extensions"
        Option      "Composite" "Enable"
EndSection


There's got to be some simple step of wine missing something. I'm sitting on a clean install of wine, and a clean install of the drivers (that work!), so Wine is the only thing that can be broken right now (that I can think of).

Any ideas?

JohnLocke 08-14-2008 10:38 PM

Ok ... found the problem. Basically I'm an idiot because I forgot one important detail. Warcraft requires the i386 libraries ...

Installing xorg-x11-drv-nvidia-libs-173.14.12-1.lvn10.i386 (same version as what I'm running from akmod) makes it work perfectly.

Thanks for the help, though!

I did find a new problem that has little to do with this particular thread, but in the spirit of helping others if they run across this thread, I'll post here if I have an update:

Now that I'm using akmod, I can upgrade kernels with no problem. I have NOT yet figured out how to make akmod build me a i386 version of xorg-x11-drv-nvidia-libs for the new guys, though. So basically the update works fine, but wine won't be able to run anything that requires the i386 drivers, so you have to back down your kernel version. (if I find a good fix, I'll post it).

I'm going to create a new akmod thread asking this question, and as I said, if I find a good answer, I'll post it here as well so it's easy to find in searches.

Fergatron 09-27-2008 09:19 AM

Thanks for this post. I've been despretely trying to find a way to work with opensource drivers for my nVidia and get WoW working. How did you find out... or figure out that you needed 32-bit xorg libraries? I had them just sitting there the entire time, but never thought to install them. Thanks.

JohnLocke 09-27-2008 11:51 AM

Quote:

Originally Posted by Fergatron (Post 3293370)
Thanks for this post. I've been despretely trying to find a way to work with opensource drivers for my nVidia and get WoW working. How did you find out... or figure out that you needed 32-bit xorg libraries? I had them just sitting there the entire time, but never thought to install them. Thanks.

Glad this helped.

Mostly I was looking at the error messages and when they stopped making sense (saying I needed drivers that I thought I had), I had an epiphany that WoW might be running a 32 bit architecture and WINE might not map the video drivers onto a 64 bit video driver.

From there, the test was simple and showed me that, yes, it wanted 32 bit drivers.


All times are GMT -5. The time now is 06:42 PM.