{"id":3293,"date":"2025-02-03T13:10:58","date_gmt":"2025-02-03T21:10:58","guid":{"rendered":"https:\/\/rglinuxtech.com\/?p=3293"},"modified":"2025-02-03T13:10:58","modified_gmt":"2025-02-03T21:10:58","slug":"nvidia-inconsistent-install-problems-with-latest-drivers","status":"publish","type":"post","link":"https:\/\/rglinuxtech.com\/?p=3293","title":{"rendered":"NVIDIA &#8211; Inconsistent Install Problems with Latest Drivers.."},"content":{"rendered":"<p><em>Systems are Intel Dual-Xeon with <strong>Fedora 41<\/strong> and <strong>GCC 14.2.1<\/strong>..\u00a0 Kernel compiled from <strong>kernel.org<\/strong> source..<br \/>\n<\/em><\/p>\n<p>Starting with driver <strong>550.144.03<\/strong>, and now with the latest driver <strong>570.86.16<\/strong> I have been experiencing odd and inconsistent problems with the usual install process..<\/p>\n<p>Running <span style=\"font-family: Courier New, Courier, monospace;\"><strong>.\/NVIDIA-Linux-x86_64-570.86.16.run<\/strong><\/span> fails with <strong><span style=\"font-family: Courier New, Courier, monospace;\">&#8220;ERROR: Unable to load the kernel module &#8216;nvidia-drm.ko&#8217;.&#8221;<\/span><\/strong> and later <strong><span style=\"font-family: Courier New, Courier, monospace;\">&#8220;-&gt; Kernel module load error: No such file or directory<\/span><\/strong><br \/>\n<strong><span style=\"font-family: Courier New, Courier, monospace;\">ERROR: The nvidia-drm kernel module failed to load. This kernel module is required for the proper operation of DRM-KMS.&#8221;<\/span><\/strong><br \/>\nand later:<br \/>\n<strong><span style=\"font-family: Courier New, Courier, monospace;\">&#8220;ERROR: Installation has failed.&#8221;<\/span><\/strong><\/p>\n<p>This installation failure is inconsistent, and the driver will install correctly on one system, but fail on another similar system.\u00a0 After updating the kernel (dot-release) the install may be OK, on a system where it had previously failed&#8230;.<br \/>\nOn a third test system (2023 HP Envy 17 Intel i7) the driver install sometimes &#8211; but not always &#8211; defaults to try to use the <em>kernel-open<\/em> stack, instead of the correct default of <em>kernel<\/em>, and needs the <strong><span style=\"font-family: Courier New, Courier, monospace;\">-m=kernel<\/span><\/strong> parameter adding to the <strong><span style=\"font-family: Courier New, Courier, monospace;\">NV&#8230;run<\/span><\/strong> command to work correctly.<\/p>\n<p>The workaround is to compile and install the driver <span style=\"text-decoration: underline;\">manually<\/span>, and then everything completes successfully:<\/p>\n<p><strong><span style=\"font-family: Courier New, Courier, monospace;\">.\/NVIDIA-Linux-x86_64-570.86.16.run -x<\/span><\/strong><br \/>\n<strong><span style=\"font-family: Courier New, Courier, monospace;\">cd NVIDIA-Linux-x86_64-570.86.16\/kernel<\/span><\/strong><br \/>\n<strong><span style=\"font-family: Courier New, Courier, monospace;\">make<\/span><\/strong><br \/>\n(as root)<br \/>\n<span style=\"font-family: Courier New, Courier, monospace;\"><strong>make modules_install<\/strong><\/span><br \/>\n<span style=\"font-family: Courier New, Courier, monospace;\"><strong>depmod -a<\/strong><\/span><br \/>\n<span style=\"font-family: Courier New, Courier, monospace;\"><strong>modprobe nvidia-drm (to load all the modules..)<\/strong><\/span><br \/>\n<span style=\"font-family: Courier New, Courier, monospace;\"><strong>.\/NVIDIA-Linux-x86_64-570.86.16.run -s &#8211;no-kernel-module<\/strong><\/span> &#8211; to install the userland components (libs etc)<\/p>\n<p>It should be mentioned that the code compilation produces many compiler &#8216;warning&#8217; messages:<br \/>\n<code><strong><span style=\"font-family: Courier New, Courier, monospace;\">$ cat nv570.66.16-fail_log.txt |grep warning<\/span><\/strong><br \/>\n<strong><span style=\"font-family: Courier New, Courier, monospace;\">nvidia\/libspdm_aead.c:41:5: warning: no previous prototype for 'libspdm_aead_prealloc' [-Wmissing-prototypes]<\/span><\/strong><br \/>\n<strong><span style=\"font-family: Courier New, Courier, monospace;\">nvidia\/libspdm_aead.c:178:5: warning: no previous prototype for 'libspdm_aead_prealloced' [-Wmissing-prototypes]<\/span><\/strong><br \/>\n<strong><span style=\"font-family: Courier New, Courier, monospace;\">.\/.\/common\/inc\/nv-linux.h:566:37: warning: suggest braces around empty body in an 'if' statement [-Wempty-body]<\/span><\/strong><br \/>\n<strong><span style=\"font-family: Courier New, Courier, monospace;\">.\/.\/common\/inc\/nv-linux.h:573:37: warning: suggest braces around empty body in an 'if' statement [-Wempty-body]<\/span><\/strong><br \/>\n<strong><span style=\"font-family: Courier New, Courier, monospace;\">.\/.\/common\/inc\/nv-linux.h:566:37: warning: suggest braces around empty body in an 'if' statement [-Wempty-body]<\/span><\/strong><br \/>\n<strong><span style=\"font-family: Courier New, Courier, monospace;\">.\/.\/common\/inc\/nv-linux.h:573:37: warning: suggest braces around empty body in an 'if' statement [-Wempty-body]<\/span><\/strong><br \/>\n<strong><span style=\"font-family: Courier New, Courier, monospace;\">.\/.\/common\/inc\/nv-linux.h:573:37: warning: suggest br$ cat nv570.66.16-fail_log.txt |grep warning<\/span><\/strong><br \/>\n<strong><span style=\"font-family: Courier New, Courier, monospace;\">nvidia\/libspdm_aead.c:41:5: warning: no previous prototype for 'libspdm_aead_prealloc' [-Wmissing-prototypes]<\/span><\/strong><br \/>\n<strong><span style=\"font-family: Courier New, Courier, monospace;\">nvidia\/libspdm_aead.c:178:5: warning: no previous prototype for 'libspdm_aead_prealloced' [-Wmissing-prototypes]<\/span><\/strong><br \/>\n<strong><span style=\"font-family: Courier New, Courier, monospace;\">.\/.\/common\/inc\/nv-linux.h:566:37: warning: suggest braces around empty body in an 'if' statement [-Wempty-body]<\/span><\/strong><br \/>\n<strong><span style=\"font-family: Courier New, Courier, monospace;\">.\/.\/common\/inc\/nv-linux.h:573:37: warning: suggest braces around empty body in an 'if' statement [-Wempty-body]<\/span><\/strong><br \/>\n<strong><span style=\"font-family: Courier New, Courier, monospace;\">.\/.\/common\/inc\/nv-linux.h:566:37: warning: suggest braces around empty body in an 'if' statement [-Wempty-body]<\/span><\/strong><br \/>\n<strong><span style=\"font-family: Courier New, Courier, monospace;\">.\/.\/common\/inc\/nv-linux.h:573:37: warning: suggest braces around empty body in an 'if' statement [-Wempty-body]<\/span><\/strong><br \/>\n<strong><span style=\"font-family: Courier New, Courier, monospace;\">.\/.\/common\/inc\/nv-linux.h:573:37: warning: suggest braces around empty body in an 'if' statement [-Wempty-body]<\/span><\/strong><br \/>\n<strong><span style=\"font-family: Courier New, Courier, monospace;\">nvidia\/nv-mmap.c:321:5: warning: conflicting types for 'nv_encode_caching' due to enum\/integer mismatch; have 'int(pgprot_t *, NvU32, nv_memory_type_t)' {aka 'int(struct pgprot *, unsigned int, nv_memory_type_t)'} [-Wenum-int-mismatch]<\/span><\/strong><br \/>\n<strong><span style=\"font-family: Courier New, Courier, monospace;\">.\/.\/common\/inc\/nv-linux.h:573:37: warning: suggest braces around empty body in an 'if' statement [-Wempty-body]<\/span><\/strong><br \/>\n<strong><span style=\"font-family: Courier New, Courier, monospace;\">.\/.\/common\/inc\/nv-linux.h:566:37: warning: suggest braces around empty body in an 'if' statement [-Wempty-body]<\/span><\/strong><br \/>\n<strong><span style=\"font-family: Courier New, Courier, monospace;\">.\/.\/common\/inc\/nv-linux.h:566:37: warning: suggest braces around empty body in an 'if' statement [-Wempty-body]<\/span><\/strong><br \/>\n<strong><span style=\"font-family: Courier New, Courier, monospace;\">.\/.\/common\/inc\/nv-linux.h:566:37: warning: suggest braces around empty body in an 'if' statement [-Wempty-body]<\/span><\/strong><br \/>\n<strong><span style=\"font-family: Courier New, Courier, monospace;\">.\/.\/common\/inc\/nv-linux.h:566:37: warning: suggest braces around empty body in an 'if' statement [-Wempty-body]<\/span><\/strong><br \/>\n<strong><span style=\"font-family: Courier New, Courier, monospace;\">.\/.\/common\/inc\/nv-linux.h:566:37: warning: suggest braces around empty body in an 'if' statement [-Wempty-body]<\/span><\/strong><br \/>\n<strong><span style=\"font-family: Courier New, Courier, monospace;\">.\/.\/common\/inc\/nv-linux.h:580:37: warning: suggest braces around empty body in an 'if' statement [-Wempty-body]<\/span><\/strong><br \/>\n<strong><span style=\"font-family: Courier New, Courier, monospace;\">.\/.\/common\/inc\/nv-linux.h:595:37: warning: suggest braces around empty body in an 'if' statement [-Wempty-body]<\/span><\/strong><br \/>\n<strong><span style=\"font-family: Courier New, Courier, monospace;\">.\/.\/common\/inc\/nv-linux.h:580:37: warning: suggest braces around empty bodyaces around empty body in an 'if' statement [-Wempty-body]<\/span><\/strong><br \/>\n<strong><span style=\"font-family: Courier New, Courier, monospace;\">nvidia\/nv-mmap.c:321:5: warning: conflicting types for 'nv_encode_caching' due to enum\/integer mismatch; have 'int(pgprot_t *, NvU32, nv_memory_type_t)' {aka 'int(struct pgprot *, unsigned int, nv_memory_type_t)'} [-Wenum-int-mismatch]<\/span><\/strong><br \/>\n<strong><span style=\"font-family: Courier New, Courier, monospace;\">.\/.\/common\/inc\/nv-linux.h:573:37: warning: suggest braces around empty body in an 'if' statement [-Wempty-body]<\/span><\/strong><br \/>\n<strong><span style=\"font-family: Courier New, Courier, monospace;\">.\/.\/common\/inc\/nv-linux.h:566:37: warning: suggest braces around empty body in an 'if' statement [-Wempty-body]<\/span><\/strong><br \/>\n<strong><span style=\"font-family: Courier New, Courier, monospace;\">.\/.\/common\/inc\/nv-linux.h:566:37: warning: suggest braces around empty body in an 'if' statement [-Wempty-body]<\/span><\/strong><br \/>\n<strong><span style=\"font-family: Courier New, Courier, monospace;\">.\/.\/common\/inc\/nv-linux.h:566:37: warning: suggest braces around empty body in an 'if' statement [-Wempty-body]<\/span><\/strong><br \/>\n<strong><span style=\"font-family: Courier New, Courier, monospace;\">.\/.\/common\/inc\/nv-linux.h:566:37: warning: suggest braces around empty body in an 'if' statement [-Wempty-body]<\/span><\/strong><br \/>\n<strong><span style=\"font-family: Courier New, Courier, monospace;\">.\/.\/common\/inc\/nv-linux.h:566:37: warning: suggest braces around empty body in an 'if' statement [-Wempty-body]<\/span><\/strong><br \/>\n<strong><span style=\"font-family: Courier New, Courier, monospace;\">.\/.\/common\/inc\/nv-linux.h:580:37: warning: suggest braces around empty body in an 'if' statement [-Wempty-body]<\/span><\/strong><br \/>\n<strong><span style=\"font-family: Courier New, Courier, monospace;\">.\/.\/common\/inc\/nv-linux.h:595:37: warning: suggest braces around empty body in an 'if' statement [-Wempty-body]<\/span><\/strong><br \/>\n<strong><span style=\"font-family: Courier New, Courier, monospace;\">.\/.\/common\/inc\/nv-linux.h:580:37: warning: suggest braces around empty body in an 'if' statement [-Wempty-body]<\/span><\/strong><br \/>\n<strong><span style=\"font-family: Courier New, Courier, monospace;\">.\/.\/common\/inc\/nv-linux.h:566:37: warning: suggest braces around empty body in an 'if' statement [-Wempty-body]<\/span><\/strong><br \/>\n<strong><span style=\"font-family: Courier New, Courier, monospace;\">.\/.\/common\/inc\/nv-linux.h:573:37: warning: suggest braces around empty body in an 'if' statement [-Wempty-body]<\/span><\/strong><br \/>\n<strong><span style=\"font-family: Courier New, Courier, monospace;\">.\/.\/common\/inc\/nv-linux.h:573:37: warning: suggest braces around empty body in an 'if' statement [-Wempty-body]<\/span><\/strong><br \/>\n<strong><span style=\"font-family: Courier New, Courier, monospace;\">.\/.\/common\/inc\/nv-linux.h:566:37: warning: suggest braces around empty body in an 'if' statement [-Wempty-body]<\/span><\/strong><br \/>\n<strong><span style=\"font-family: Courier New, Courier, monospace;\">.\/.\/common\/inc\/nv-linux.h:566:37: warning: suggest braces around empty body in an 'if' statement [-Wempty-body]<\/span><\/strong><br \/>\n<strong><span style=\"font-family: Courier New, Courier, monospace;\">.\/.\/common\/inc\/nv-linux.h:566:37: warning: suggest braces around empty body in an 'if' statement [-Wempty-body]<\/span><\/strong><br \/>\n<strong><span style=\"font-family: Courier New, Courier, monospace;\">.\/.\/common\/inc\/nv-linux.h:566:37: warning: suggest braces around empty body in an 'if' statement [-Wempty-body]<\/span><\/strong><br \/>\n<strong><span style=\"font-family: Courier New, Courier, monospace;\">.\/.\/common\/inc\/nv-linux.h:580:37: warning: suggest braces around empty body in an 'if' statement [-Wempty-body]<\/span><\/strong><br \/>\n<strong><span style=\"font-family: Courier New, Courier, monospace;\">nvidia-uvm\/uvm_gpu.c:1024:5: warning: ISO C90 forbids variable length array 'uuid_buffer' [-Wvla]<\/span><\/strong><br \/>\n<strong><span style=\"font-family: Courier New, Courier, monospace;\">nvidia-uvm\/uvm_gpu.c:1025:5: warning: ISO C90 forbids variable length array 'gpu_dir_name' [-Wvla]<\/span><\/strong><br \/>\n<strong><span style=\"font-family: Courier New, Courier, monospace;\">nvidia-uvm\/uvm_gpu_access_counters.c:2055:11: warning: no previous prototype for 'uvm_api_clear_all_access_counters' [-Wmissing-prototypes]<\/span><\/strong><\/code><\/p>\n<p>Obviously, these are <em>compiler<\/em> warnings, and the code compiles successfully, but IMHO these should not be present in (hopefully) professionally-produced code, but seem to be accepted as the norm, now..<\/p>\n<p><em><strong>Robert Gadsdon\u00a0\u00a0 February 3rd 2025.<\/strong><\/em><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Systems are Intel Dual-Xeon with Fedora 41 and GCC 14.2.1..\u00a0 Kernel compiled from kernel.org source.. Starting with driver 550.144.03, and now with the latest driver 570.86.16 I have been experiencing odd and inconsistent problems with the usual install process.. Running .\/NVIDIA-Linux-x86_64-570.86.16.run fails with &#8220;ERROR: Unable to load the kernel module &#8216;nvidia-drm.ko&#8217;.&#8221; and later &#8220;-&gt; Kernel module load <span class=\"excerpt-dots\">&hellip;<\/span> <a class=\"more-link\" href=\"https:\/\/rglinuxtech.com\/?p=3293\"><span class=\"more-msg\">Continue reading &rarr;<\/span><\/a><\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[5,11,15,18,19],"tags":[2713,1938,2711,2712,277],"class_list":["post-3293","post","type-post","status-publish","format-standard","hentry","category-compilation","category-hacks","category-linux-2","category-nvidia","category-opinion","tag-code-quality","tag-inconsistent","tag-install-failures","tag-manual-compile-workaround","tag-nvidia-2"],"_links":{"self":[{"href":"https:\/\/rglinuxtech.com\/index.php?rest_route=\/wp\/v2\/posts\/3293","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/rglinuxtech.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/rglinuxtech.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/rglinuxtech.com\/index.php?rest_route=\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/rglinuxtech.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=3293"}],"version-history":[{"count":3,"href":"https:\/\/rglinuxtech.com\/index.php?rest_route=\/wp\/v2\/posts\/3293\/revisions"}],"predecessor-version":[{"id":3296,"href":"https:\/\/rglinuxtech.com\/index.php?rest_route=\/wp\/v2\/posts\/3293\/revisions\/3296"}],"wp:attachment":[{"href":"https:\/\/rglinuxtech.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=3293"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/rglinuxtech.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=3293"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/rglinuxtech.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=3293"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}