Slashdot Mirror


NVIDIA Releases New Linux Drivers

mlmitton writes "NVIDIA just released new Linux drivers (1.0-5328). But the early reports by users are less than encouraging. People are weighing in with mostly bad news about how well these new drivers work. Some people are finding that Neverwinter Nights doesn't work and they're reverting to the old drivers (4496). I spent a few long hours recently trying to get the old drivers to work with Fedora Core 1 so I'm going to hold off on these new ones."

31 of 429 comments (clear)

  1. Yay! by Saville · · Score: 5, Interesting

    GNU/Linux gets dynamic shader compilers!
    http://www.nvidia.com/object/IO_9292.h tml

    Do these drivers export all the same extensions as their windows counter parts?

  2. changelog by wo1verin3 · · Score: 5, Informative

    Changes:
    This release adds support for the latest GeForce FX and Quadro FX GPUs, UBB
    and FSAA Stereo, Red Hat Enterprise Linux 3.0, and GLX_SGI_swap_control,
    improves XPixamp support, and reduces CPU usage when OpenGL applications
    are syncing to vblank.

    Complete Changelog/Readme

  3. Good job NVIDIA by after · · Score: 4, Insightful

    Good, they haven't updated the Linux drivers for a while.

    I am happy to see that NVIDIA is even supporting Linux, unlike some Microsoft-only "partners" that do not care for Professor Joe.

    I also like that they include some source code, so I can change what I want. However, I would like to see the full source code to the drivers (???, sorry if I am wrong here) just for the pleasure of how they do all the neat tricks they do.

    Good job NVIDIA, thanks for the drivers.

    1. Re:Good job NVIDIA by skookum · · Score: 5, Informative

      Screw wanting to see how they work, most people just want the source so that they can get it to work, period. Since they're binary only it means that they're usually tied to a specific kernel version and sometimes a specific distro. If you deviate from the path of the most popular distros you soon get into uncharted water.

      They're in a catch-22: I'm sure they'd like to open the source but it's been mentioned before that some portions of the drivers contain licensed/proprietary code that they do not themselves control. In other words they couldn't even if they wanted to. (Plus, they seem to take drivers very seriously and might see it as giving away trade secrets to the likes of ATI, so maybe they don't even want to.)

    2. Re:Good job NVIDIA by ncc74656 · · Score: 4, Informative
      My linux box is back in my dorm room, but I think the nvidia drivers are mostly closed source. They use an opensource wrapper just to comply with the GPL.

      I just had a run-in with a driver that demonstrates why an open-source driver is much preferred. Until now, I've not had reason to tweak driver source to get something working.

      Over the past few days, I've been setting up a MythTV box on a spare machine. This machine is equipped with a Radeon VE clone (built by FIC, IIRC) with S-video/composite output. I grabbed the GATOS driver source, built that, and got the TV-out jack working great...

      ...until I moved the computer from the bedroom to the living room and tried firing it up with just the TV plugged in.

      The X server detected that nothing was plugged into the VGA port and said "no video for you!" Isolating the offending code and fixing it so it'll work with just the TV-out jack in use was just a few minutes' work. (The patch was posted to the gatos-devel mailing list, if anybody's interested.)

      If the driver supplied by nVidia for its cards exhibited the same behavior (since I don't have any of their cards at home, I can't say if they do), what would you do? Lash up some sort of dongle to fool the card into thinking a monitor is plugged in, and hope you don't blow up your card? That doesn't sound like much of a plan.

      --
      20 January 2017: the End of an Error.
    3. Re:Good job NVIDIA by Cyclops · · Score: 4, Insightful
      Not true at all. The closed portion of the nVidia drivers is only the X driver. The kernel module is and has always been open source, and you can compile it for whatever version of the kernel you wish (assuming the kernel module interface hasn't changed drastically, of course).


      This is a completely bogus statement. More than so, it's so false that it reeks of lack of either knowledge or good intentions.

      In order to work around module versioning limitations or to give a chance for people with different kernels than the officially supported, nVidia provides a wrapper source that is what is compiled as a module, all the intelligence being in the binary only driver that is injected by this "open source" code.

      If you are, as I hope, only talking without a clue, then it stands as one more evidence that nVidia succeeds in convincing people that they don't provide binary modules.

      Go ahead and type: /sbin/lsmod

      Do you like that Tainted flag? That's a signal of how "open source" that driver is.

      I just hope you don't ever bother the Linux developers with weird problems on your system, specifically those involving 'oops'es and whatnot. Not only you'll be wasting their time, but also you might get silence, pity, mocking, or other reactions.
  4. Fix by Lord_Dweomer · · Score: 4, Funny
    "People are weighing in with mostly bad news about how well these new drivers work. Some people are finding that Neverwinter Nights doesn't work and they're reverting to the old drivers (4496). "

    Ah, this is a common problem. Renaming the NWN executable to 3Dmark.exe should fix things right up.

    --
    Buy Steampunk Clothing Online!
  5. Whoah slow down by gantrep · · Score: 5, Funny

    New NVidia drivers for linux? I'm still trying to get the old ones to work!!

  6. As I posted in the Bioware forum... by kikensei · · Score: 4, Informative

    I'm working fine with the new drivers and NWN:HoTU as well as all my other games (Savage, ET). I didn't use the -update command, I downloaded the binaries from Nvidia, and it compiled for my system (slack 9.1, Dropline Gnome). No issues at all thus far and I played NWN for 3 hours today. I'm using an FX 5900U on a P4 3Ghz w/ HT disabled.

  7. Re:Gee... by kikensei · · Score: 4, Informative

    Yeah. Good luck. Try finding a SINGLE 9800XT/Linux success story on the Internet right now. I just sold an XT and am using the FX5900U. Flat out best gamig card for linux right now except for the 5950.

  8. ATI and NVIDIA by Bishop,+Martin · · Score: 5, Informative

    All the graphic chip makers need to get their act together and release better drivers for linux. It took some work getting my 9800 pro working with gentoo, and the worst part is that my card is also an All in wonder, and there is currently no support for it, even with GATOS.

    --
    Setec Astronomy
  9. Packages Ready to go by PaulK · · Score: 5, Informative

    There are prepatched 2.6.0 installers here.

    Minion is working fast towards a resolution, but it still looks like the drivers are below existing 4496 performance levels.

  10. Re:Gee... by Anonymous Coward · · Score: 4, Funny

    now you can play those two linux games even faster!

  11. The new drivers... A review of the problems... by 0x1337 · · Score: 5, Informative

    When X11 starts the drivers Oops, and default to ForceSW so no hw-accel.

    Dmesg gives-
    Unable to handle kernel NULL pointer dereference at virtual address 00000010
    printing eip:
    c024b6cf
    *pde = 00000000
    Oops: 0000
    CPU: 0
    EIP: 0010:[<c024b6cf>] Tainted: P
    EFLAGS: 00013046
    eax: 00000087 ebx: 00003246 ecx: 00000048 edx: 00000000
    esi: 00000000 edi: dffe3000 ebp: dad75738 esp: dad75708
    ds: 0018 es: 0018 ss: 0018
    Process X (pid: 246, stackpage=dad75000)
    Stack: dad96400 dad75764 c01105ac dad96000 00003099 e0d9eca6 00000000 00000048
    dad75734 e0dadd1e dbc90800 00000000 dad75748 e0db88cd 00000000 00000048
    dad75774 e0db0ee6 dad96000 00000000 00000048 00000080 d9e60000 dad96400
    Call Trace: [<c01105ac>] [<e0d9eca6>] [<e0dadd1e>] [<e0db88cd>] [<e0db0ee6>]
    [<e0db47b7>] [<e0db6170>] [<e0f51080>] [<e0dbcc1e>] [<e0d9da58>] [<e0f51080>]
    [<e0f38b9d>] [<e0f7a5a0>] [<e0f51080>] [<e0f7a5a0>] [<e0f51080>] [<e0dba65c>]
    [<e0f51080>] [<e0f7a60c>] [<e0f7a630>] [<e0f7a648>] [<e0f51080>] [<e0dbd809>]
    [<e0f51080>] [<e0f51080>] [<e0e489d2>] [<e0f2bd01>] [<e0dd55f7>] [<e0dadd1e>]
    [<e0db8818>] [<e0f28151>] [<e0dba1db>] [<e0f28151>] [<e0f28151>] [<e0dba22c>]
    [<e0f52700>] [<e0e842db>] [<e0dd0ed8>] [<e0dde76d>] [<e0e842db>] [<e0e84ac1>]
    [<e0dae41a>] [<e0d9f95b>] [<e0d9f830>] [<e0dae5a5>] [<e0db9d82>] [<e0f51080>]
    [<e0e4b627>] [<e0e8473f>] [<e0d9f195>] [<e0e842db>] [<e0e84ac1>] [<e0e842db>]
    [<e0e84ac1>] [<e0ecd0d4>] [<e0e7d552>] [<e0e66833>] [<e0db9d82>] [<e0f51080>]
    [<e0e68481>] [<e0e96fc5>] [<e0dbe389>] [<e0e68345>] [<e0dc1102>] [<e0db9d82>]
    [<e0f51080>] [<e0dac53b>] [<e0e68bc4>] [<e0e68abb>] [<e0f51080>] [<e0d9dbc5>]
    [<e0f38c06>] [<e0dbcbf1>] [<e0f51080>] [<e0d9c8a2>] [<e0f51080>] [<c0114854>]
    [<c013c590>] [<c013c7d5>] [<e0d9c61b>] [<c014a0cc>] [<c0108e7f>]

    Code: 8b 46 10 8b 50 30 89 34 24 89 4c 24 04 8b 44 24 20 89 44 24

    Ksymoops gives-
    >>EIP; c02dc0c1 <pci_read_config_dword+41/80> <=====

    >>ebx; c3fbe000 <_end+3c02138/20530198>
    >>ebp; c3fbf760 <_end+3c03898/20530198>
    >>esp; c3fbf72c <_end+3c03864/20530198>

    Trace; c01aedfc <pci_conf1_read_config_dword+4c/50>
    Trace; e08f8739 <[nvidia]os_pci_read_dword+20/27>
    Trace; e090784e <[nvidia]_nv001370rm+2e/cc>
    Trace; e09123fd <[nvidia]_nv001241rm+11/18>
    Trace; e090aa16 <[nvidia]_nv000171rm+22a/268>
    Trace; e0aaab60 <[nvidia]nv_linux_devices+0/580>
    Trace; e090e2e7 <[nvidia]_nv001749rm+167/50c>
    Trace; e0aaab60 <[nvidia]nv_linux_devices+0/580>
    Trace; e0916776 <[nvidia]rm_update_agp_config+e/14>
    Trace; e08f7495 <[nvidia]nv_agp_init+78/fb>
    Trace; e0aaab60 <[nvidia]nv_linux_devices+0/580>
    Trace; e0ad410c <[nvidia].data.end+275/31c9>
    Trace; e0ad4130 <[nvidia].data.end+299/31c9>
    Trace; e0ad4148 <[nvidia].data.end+2b1/31c9>
    Trace; e0ad40a0 <[nvidia].data.end+209/31c9>
    Trace; e0aaab60 <[nvidia]nv_linux_devices+0/580>
    Trace; e0ad40a0 <[nvidia].data.end+209/31c9>
    Trace; e0aaab60 <[nvidia]nv_linux_devices+0/580>
    Trace; e091418c <[nvidia]_nv001274rm+7c/b8>
    Trace; e0aaab60 <[nvidia]nv_linux_devices+0/580>
    Trace; e0ad410c <[nvidia].data.end+275/31c9>
    Trace; e0ad4130 <[nvidia].data.end+299/31c9>
    Trace; e0ad4148 <[nvidia].data.end+2b1/31c9>
    Trace; e0aaab60 <[nvidia]nv_linux_devices+0/580>
    Trace; e0917339 <[nvidia]_nv0008

    1. Re:The new drivers... A review of the problems... by crimsun · · Score: 4, Informative

      From what we've been tracing, it actually looks like a bug in newer VIA chipsets triggerable in both 2.4 and 2.6 kernels. The patches at minion.de have a workaround for now.

  12. Re:Nvidia's Detonators are designed to force upgra by DeathPenguin · · Score: 5, Insightful

    >>Doesn't anyone find it odd that they reccomend the SAME drivers for an 8mb TNT card and a 256mb quadra or FX?

    Not at all--Their unified driver architecture helps to make sure that no matter which card a user has, he only needs to download one driver package.

    Believe it or not, many people don't even know which video card they own, much less could they tell the difference between a GeForce MX 200, GeForce MX 400, GeForce MX 440, GeForce FX 5600, GeForce 5900, GeForce 5950 Ultra, one of many varieties of "Quadro" based products, etc. It's easier and a lot less error prone to tell people just to download the 'latest nVidia graphics driver' than to go into the device manager or lspci or whatever and figure out exactly which piece of hardware they own.

  13. Re:Back to via by mroch · · Score: 5, Informative

    I've got an nForce2 board working (almost) perfectly under Gentoo. It seems to be a timing issue... either your board wants to cooperate at the moment you install, or it doesn't. The only thing you can do is try it. If it doesn't work under whatever distro you're using, try Gentoo. They've built a bunch of nforce stuff into their kernel, so support for mine was out-of-the-box.

    If you have an nforce2 board, you probably have a fast enough processor to compile most software in a relatively reasonable amount of time. If you do decide to install Gentoo, make sure you check out the alternate installation guide so you can play Tux Racer while it's building your system. :)

  14. NWN works by DeathPenguin · · Score: 5, Insightful

    Funny, I can play Neverwinter Nights just fine with my Ti4600 and 5328 drivers. Heck, I'm even using kernel 2.6 with the Minion.de driver patch.

    Yes, I've seen a lot of complaints about the drivers on the nVnews.net forums, but I really wish Slashdot editors would refrain from making blanket statements.

  15. Re:What?!! by LordHunter317 · · Score: 5, Insightful

    Bullshit. Whatever makes you think it is that easy to build drivers for graphics cards that can just pull the source to the old one and recompile? Absolute nonsense. At best, that might be true within a single driver family, and even then, some hacking is required to update PCI IDs, and possibly the list of features the card supports.

    Every different card line however, requries a different underlying layer to handle all the little tweaks and get maximium performance. Its not nearly as simple as you think.

    Have you ever doen any hardware programming before? The fact that nVidia has a single driver serving such a wide line of cards is quite a feat. I've seen drivers that had to have 2 seperate code paths simply because of revisions to firmeware within the same "Version" of the software.

  16. Re:4620 Drivers by Vireo · · Score: 4, Informative

    Grab them here ; these packages include the nvidia-settings GUI tool BTW, which is real nice.

  17. Rambling Post: by big_groo · · Score: 4, Insightful
    From the article, it sounds as if it's a certain card that seems to be having problems - if it doesn't work for you, well, you should have backed up your kernel before trying. I have no sympathy for people who are *going* to say 'I can't even get X to start!'.

    Another poster mentioned that someone has already built 2.6.0 .run files - that's cool, but I have no reason to change my *stable* system. Maybe next week when I'm bored.

    Reading though this thread I've seen people extole the virtues of ATI and slam Nvidia. One particular poster said (s)he loves h(er/is) 9800. The first Google I get on this card shows a price of $299.00 US. I don't know about anyone else, but I think this is a *total* waste of money. I upgraded my last video card from a TNT2 (32MB) when I couldn't install Unreal Tournament 2003. Time to upgrade. Picked up a GeForce4 MX440. $99.00 CAN. I bought this card for one reason: Nvidia had drivers for Linux - and as a recent Linux convert, let me tell you, this is good news. Cudos to Nvidia - they'll get my $$ when it's time to upgrade again, and I'll get a card that's equivalent to the 299US card for 99CAN.

  18. Re:Explanation please. by Chep · · Score: 4, Insightful
    everybody does this. ATI did it, NVDA did it, now XGI is owing many an explanation or two...

    It looks like it's just the way they do business.

    Me, I bought an ATI, specifically because it's supported by the XFree86 and DRI projects. No binary-only NV disaster on my PC, thanks.

  19. what about sleep? by ejaw5 · · Score: 4, Interesting

    Judging from the Drivers page and README, it seems they haven't yet addressed the problem of the computer not able to go into sleep/suspend while the driver is loaded. A bit of a nuicance for notebook users...

    --

    $cat /dev/random > Sig
    1. Re:what about sleep? by mbertini · · Score: 4, Informative

      I've installed the drivers yesterday on my DELL Inspiron 8200 (RH 9). APM suspend works, it's standby that is not supported.

  20. Re:face it nVidia by Fnkmaster · · Score: 4, Insightful
    Um, no. How about the fact that the Windows driver APIs remain constant within any major release of Windows, whereas Linux driver APIs (or really ABIs here) change slightly even between minor releases of Linux kernels? This is of course intentional - it's supposed to be hard to make closed source drivers. If Linux developers wanted to make it easy, there would be a simple, clear, well documented set of driver development and interface ABIs that only changed with major version releases (2.2, 2.4, 2.6, etc.). Then it wouldn't be necessary to do a partial/stub recompile for every version and have dozens of different packagings of binary and partial-source versions of the NVidia drivers, and they would probably end up much more stable and functional.


    So yes, I agree it's quite hard to produce Linux drivers that are stable and functional across a broad range of Linux kernel versions and XFree versions, and I am sure it is in part because there are more users and thus more developers working on the Windows drivers, in large part it's because of the inherent features of the Linux platform. Which of course may be desireable for many people who want to encourage companies to release specs or truly Open Source drivers.

  21. Howto with Fedora Core 1 by ags · · Score: 5, Informative

    I had lots of problems getting NVidia to work with FC1. Things would kind of work, but other things wouldn't. Getting TuxRacer to work is a good litmus test.

    Then I found this page of unofficial FC1 FAQ. Yay...!!

    Here's what to do - it worked for me:

    Use these instructions if there are no RPMs available, or if the available RPMs don't work for you.

    Make sure you have the lastest drivers.

    Now print this out, or write it down. Then:

    1. You must have kernel-source installed for this to work. Check the "Add/Remove Applications" tool in System Settings on the red-hat menu.
    2. Shut down X (as root, do telinit 3 in a terminal).
    3. Log in as root and go to the directory where you downloaded the nVidia drivers.
    4. Type CC="gcc32" sh NVIDIA-Linux-x86-1.0-4496-pkg2.run --add-this-kernel.
    5. There will be some whirring and wailing, and then do CC="gcc32" sh NVIDIA-Linux-x86-1.0-4496-pkg2-custom.run That will do a correct install of your nVidia drivers.
    6. Follow nVidia's instructions to set up the driver. (Read the "EDITING YOUR XF86CONFIG FILE" section.)
    7. You can now restart X by typing telinit 5.

    If none of this works, do rpm -e --nodeps XFree86-Mesa-libGL and then restart your computer. The need to do this should soon be eliminated -- watch this FAQ or the fedora-list. Note that if you update XFree86, this package will be reinstalled and you will need to remove it again. This solves the "DRI" problem.

  22. For what it worth.. by Vilou · · Score: 5, Informative

    We're actually packaging nvidia drivers for Fedora core 1 for the http://rpm.livna.org/ repository.
    See : http://bugzilla.livna.org/show_bug.cgi?id=45

    Feedback from the Clueful Ones is welcome.
    Good day.

  23. Re:This is where Linux is retarded... by fruey · · Score: 4, Insightful
    I can frequently use a driver from Windows 3.1 on my Windows 98 or ME system.

    You might get a printer to work with older drivers, but are you really serious in saying that 16 bit Win3.1 drivers worked satisfactorily for you in Windows? We are talking about high end graphics card drivers here, not keyboard, printer or network card drivers. The only things which most Linux users can't get to work these days fall into two categories:

    • software driven hardware... that is to say, hardware which is basically a simple I/O device and all processing happens in the main CPU. Like some modems, cheap USB scanners, etc.
    • high end specific cards with separate processing units on them (GPUs, low latency audio processors, hardware encoding cards, TV combo cards)

    Correct me if I'm wrong but I don't think you'd get any of those kinds of hardware running in WinME with even a Win98 driver let alone a driver from Win3.1!

    --
    Conversion Rate Optimisation French / English consultant
  24. Re:This is where Linux is retarded... by The+One+KEA · · Score: 5, Insightful

    What you suggest will never happen, because Linus has made it absolutely clear that the Linux kernel will NEVER have a binary-compatible ABI. He absolutely refuses to support closed-source binary modules and will NOT accept patches to the kernel to make it friendly to such modules.

    Why? Because it goes against the spirit of the GPL AND because it's a legal grey area which could result in frivolous lawsuits which could waste the time of the OSS community, like SCO is so successfully doing right now.

    Unless Linus changes his mind (unlikely) or hardware manufacturers GPL their code and/or release full programming specs, then the status quo will undoubtedly remain.

    --
    SCREW THE ADS! http://adblock.mozdev.org/ Proud user of teh Fox of Fire - Registered Linux User #289618
  25. Re:What?!! by RupW · · Score: 4, Insightful

    Every different card line however, requries a different underlying layer to handle all the little tweaks and get maximium performance. Its not nearly as simple as you think.

    OK, but they can lift this out of their Windows drivers.

    I used to work for a network card manufacturer, and we wrote our drivers in three layers: OS-specific hardware interface layer, general card control layer, OS-specific API. So once we'd got the top and bottom layers right, we got all any fixes and improvements in the card control logic across all OSes for free.

    NVidia are big on their "unified driver architecture" and stuff so I'd be very surprised if they didn't do it this way too. So all they need to do is to swap the Linux glue layers into their latest Windows drivers and recompile.

  26. Re:Gee... by SQLz · · Score: 5, Insightful

    Actually, 302.

    See the list!