The linux Kernel 6.18.0 has been released on DEC. 01. 2025.
This is a "nvidia-580.105.08-fix-linux-6.18.patch" that I'm using against NVIDIA-Linux-x86_64-580.105.08.
nvidia-580.105.08-fix-linux-6.18.patch
[code]
| diff -Nru a/kernel-open/conftest.sh b/kernel-open/conftest.sh --- a/kernel-open/conftest.sh 2025-11-05 13:25:07.569025538 +0900 +++ b/kernel-open/conftest.sh 2025-11-05 13:17:18.791538775 +0900 @@ -4871,6 +4871,24 @@ compile_check_conftest "$CODE" "NV_MEMORY_DEVICE_COHERENT_PRESENT" "" "types" ;; + get_dev_pagemap_single_arg) + # + # Determine if get_dev_pagemap() takes single argument. + # + # The get_dev_pagemap() function was updated to take only pfn argument + # and the lock parameter was removed in kernel v6.18. + # + CODE=" + #include <linux/mm.h> + #include <linux/memremap.h> + void conftest_get_dev_pagemap(void) { + struct dev_pagemap *pgmap; + unsigned long pfn = 0; + pgmap = get_dev_pagemap(pfn); + }" + + compile_check_conftest "$CODE" "NV_GET_DEV_PAGEMAP_SINGLE_ARG" "" "types" + ;; # When adding a new conftest entry, please use the correct format for # specifying the relevant upstream Linux kernel commit. Please diff -Nru a/kernel-open/nvidia-uvm/nvidia-uvm.Kbuild b/kernel-open/nvidia-uvm/nvidia-uvm.Kbuild --- a/kernel-open/nvidia-uvm/nvidia-uvm.Kbuild 2025-11-05 13:25:58.745054536 +0900 +++ b/kernel-open/nvidia-uvm/nvidia-uvm.Kbuild 2025-11-05 13:20:37.365674825 +0900 @@ -61,6 +61,7 @@ NV_CONFTEST_TYPE_COMPILE_TESTS += migrate_vma_added_flags NV_CONFTEST_TYPE_COMPILE_TESTS += migrate_device_range NV_CONFTEST_TYPE_COMPILE_TESTS += handle_mm_fault_has_pt_regs_arg +NV_CONFTEST_TYPE_COMPILE_TESTS += get_dev_pagemap_single_arg NV_CONFTEST_TYPE_COMPILE_TESTS += mempolicy_has_unified_nodes NV_CONFTEST_TYPE_COMPILE_TESTS += mempolicy_has_home_node NV_CONFTEST_TYPE_COMPILE_TESTS += mpol_preferred_many_present diff -Nru a/kernel-open/nvidia-uvm/uvm_va_range_device_p2p.c b/kernel-open/nvidia-uvm/uvm_va_range_device_p2p.c --- a/kernel-open/nvidia-uvm/uvm_va_range_device_p2p.c 2025-11-05 13:27:03.729310408 +0900 +++ b/kernel-open/nvidia-uvm/uvm_va_range_device_p2p.c 2025-11-05 13:22:20.445586865 +0900 @@ -360,7 +360,11 @@ // a reference to them, so take one now if using DEVICE_COHERENT pages. if (gpu->parent->cdmm_enabled) { get_page(page); +#if defined(NV_GET_DEV_PAGEMAP_SINGLE_ARG) + get_dev_pagemap(page_to_pfn(page)); +#else get_dev_pagemap(page_to_pfn(page), NULL); +#endif } #else // CDMM P2PDMA will never be enabled for this case |
===
[NEW] 2025/12/01
![deepl-clip.sh で簡単翻訳 [更新:2025-04-29]](https://resize.blogsys.jp/fc265bdb808435596af7a249f59820084c144620/crop1/120x120_ffffff/https://livedoor.blogimg.jp/jw_slackware/imgs/0/d/0d2fff59-s.png)






