331.17 BETA drivers feedback thread

Again, no recent kernels compatibility. Sad.

This time updates are truly minor.

I guess the next stable release will also be incompatible with =>3.11 - and speaking frankly I don’t recognize NVIDIA any more.

Anyway, 3.12 compatibility was improved - nv_drm patch doesn’t needed anymore. Only NV_NUM_PHYSPAGES.
Old 325.15 patch still works.
nv-325.15_kernel-3.11.patch.zip (506 Bytes)

It’s not quite so, we still need to patch more files than just one nv-linux.h. However, the 331.17 works well with linux 3.12-rc6 with appropriate patching ;)

Can you be more specific, please? I also on 3.12-rc6 and didn’t notice any problems despite I patched only NV_NUM_PHYSPAGES define.
What do you mean by “appropriate patching”? Can you post patch or link to it?

nvidia 331.17 (didn’t test 331.13) breaks vmware 10 on linux 3.11 x86_64.
It’s odd that windows guests runs ok, while linux guests won’t start, giving error “Cannot find a valid peer process to connect to”.
Downgrading nvidia driver to 325.15 solved issue.


That’s really weird and shouldn’t be happening.

edit: dkms.conf from uvm is named dkms.conf.fragment (i use --extract-only flag)

howto add uvm/dkms.conf.fragment into dkms.conf?


edit2: with little hacky:

cat uvm/dkms.conf.fragment >> dkms.conf

solve my problem

Nvidia has included uvm support in the 331 branch, and I couldn’t compile it without patching.
“Appropriate patching” means one has to apply all patches that are required to compile the driver :) And the most important thing is that such a patching is possible.

Well, I have no any problems with building nvidia-uvm for 3/12-rc6. So, it seems, “appropriate patching” isn’t as necessary as you think. What exact error you got? And what patch you have applied?

331.17 built fine for me on 3.11.0-12 doing a manual get_num_physpages patch.

Seems to work on my GeForce GTX 560 Ti except X still crashes just as IntelliJIDEA starts drawing a fancy progressbar. Here’s the backtrace from the core if anyone cares to have a look and can make sense of it:

#0  0x00007ff1d08bff77 in __GI_raise (sig=sig@entry=6)
    at ../nptl/sysdeps/unix/sysv/linux/raise.c:56
        resultvar = 0
        pid = 2743
        selftid = 2743
#1  0x00007ff1d08c35e8 in __GI_abort () at abort.c:90
        save_stage = 2
        act = {__sigaction_handler = {sa_handler = 0x7ff1d0a0d53d, 
            sa_sigaction = 0x7ff1d0a0d53d}, sa_mask = {__val = {3, 140735124411323, 5, 
              140676564042868, 1, 140676564053896, 3, 140735124411300, 12, 140676564053900, 
              2, 140676564053900, 2, 140735124412112, 9, 140735124413872}}, sa_flags = 85, 
          sa_restorer = 0x7}
        sigs = {__val = {32, 0 <repeats 15 times>}}
#2  0x00007ff1d08fd4fb in __libc_message (do_abort=do_abort@entry=2, 
    fmt=fmt@entry=0x7ff1d0a11240 "*** Error in `%s': %s: 0x%s ***\n")
    at ../sysdeps/unix/sysv/linux/libc_fatal.c:199
        ap = {{gp_offset = 40, fp_offset = 48, overflow_arg_area = 0x7fff73191dc0, 
            reg_save_area = 0x7fff73191cd0}}
        ap_copy = {{gp_offset = 16, fp_offset = 48, overflow_arg_area = 0x7fff73191dc0, 
            reg_save_area = 0x7fff73191cd0}}
        fd = 2
        on_2 = <optimized out>
        list = <optimized out>
        nlist = <optimized out>
        cp = <optimized out>
        written = <optimized out>
#3  0x00007ff1d0909996 in malloc_printerr (ptr=0x7ff1d5b909b0, 
    str=0x7ff1d0a11328 "double free or corruption (!prev)", action=3) at malloc.c:4923
        buf = "00007ff1d5b909b0"
        cp = <optimized out>
#4  _int_free (av=<optimized out>, p=0x7ff1d5b909a0, have_lock=0) at malloc.c:3779
        size = <optimized out>
        fb = <optimized out>
        nextchunk = <optimized out>
        nextsize = <optimized out>
        nextinuse = <optimized out>
        prevsize = <optimized out>
        bck = <optimized out>
        fwd = <optimized out>
        errstr = <optimized out>
        locked = <optimized out>
        __func__ = "_int_free"
#5  0x00007ff1d2bc4964 in doListFontsWithInfo ()
No symbol table info available.
#6  0x00007ff1d2bc8521 in ProcessWorkQueue ()
No symbol table info available.
#7  0x00007ff1d2d0e4c9 in WaitForSomething ()
No symbol table info available.
#8  0x00007ff1d2bc3d61 in ?? ()
No symbol table info available.
#9  0x00007ff1d2bb356a in ?? ()
No symbol table info available.
#10 0x00007ff1d08aade5 in __libc_start_main (main=0x7ff1d2bb31a0, argc=9, 
    ubp_av=0x7fff73192408, init=<optimized out>, fini=<optimized out>, 
    rtld_fini=<optimized out>, stack_end=0x7fff731923f8) at libc-start.c:260
        result = <optimized out>
        unwind_buf = {cancel_jmp_buf = {{jmp_buf = {0, -1565336356066467123, 
                140676599330950, 140735124415488, 0, 0, 1565045756824871629, 
                1559775948132147917}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 
              0x7ff1d2d202f0 <__libc_csu_init>, 0x7fff73192408}, data = {prev = 0x0, 
              cleanup = 0x0, canceltype = -757988624}}}
        not_first_call = <optimized out>
#11 0x00007ff1d2bb38af in _start ()
No symbol table info available.

nvidia 331.17 modules also can be built for 3.12-rc7 without errors after single NV_NUM_PHYSPAGES patch.

Yes, but what and where?
The one define I see is:-

#if !defined(NV_VMWARE)
#define NV_NUM_PHYSPAGES num_physpages
#define NV_GET_CURRENT_PROCESS() current->tgid

Change “num_physpages” to “get_num_physpages” and it should build. Discussions elsewhere suggest that while it builds, it is not entirely correct.

Thanks, that worked.
To get the kernel module to build “./nvidia-installer --no-unified-memory”.

Not really 331-specific, but it looks like NVIDIA decided to block out browsing of the release tree for some reason? I remember specifically that we could browse for new releases and see links to documentation with each release via this site:


Anyone know why that was changed and how we can get equivalent access? As part of my profession, I switch between nvidia driver releases quite often and I’ve had to refer to this site a lot in the past.


i’ve a trouble with 331.17 drivers, the GPU is a GT620M (10de:1140) integrated in Asus Zenbook UX32, that is supported by drivers, but after installation, when i try to insert nvidia module, i got this error:

[ 2789.101918] NVRM: The NVIDIA GPU 0000:01:00.0 (PCI ID: 10de:1140)
[ 2789.101918] NVRM: installed in this system is not supported by the 331.17
[ 2789.101918] NVRM: NVIDIA Linux driver release. Please see ‘Appendix
[ 2789.101918] NVRM: A - Supported NVIDIA GPU Products’ in this release’s
[ 2789.101918] NVRM: README, available on the Linux driver download page
[ 2789.101918] NVRM: at www.nvidia.com.
[ 2789.101930] nvidia: probe of 0000:01:00.0 failed with error -1
[ 2789.102086] NVRM: The NVIDIA probe routine failed for 1 device(s).
[ 2789.102087] NVRM: None of the NVIDIA graphics adapters were initialized!
[ 2789.102088] [drm] Module unloaded
[ 2789.102147] NVRM: NVIDIA init module failed!

the kernel is debian 3.10.3 SMP x64
any ideas?


This looks like a bug with drivers - let’s hope Aaron will visit this topic and see your message.

found 331.17 in xorg-edgers ppa and installed them on kernel 3.11.6… it does compile without error but it runs very badly. multiple kwin instances with zombie opengl_tes processes… DE hangs up after some seconds… back to 325 that works fine with 3.11 kernel (unpatched from xorg-edgers)

What about changing it to “totalram_pages”?