Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- diff --git a/kernel/common/inc/nv-linux.h b/kernel/common/inc/nv-linux.h
- index ac5bb95..3d2f0b7 100644
- --- a/kernel/common/inc/nv-linux.h
- +++ b/kernel/common/inc/nv-linux.h
- @@ -531,7 +531,11 @@ extern int nv_pat_mode;
- static inline void *nv_vmalloc(unsigned long size)
- {
- +#if defined(NV_VMALLOC_HAS_PGPROT_T_ARG)
- void *ptr = __vmalloc(size, GFP_KERNEL, PAGE_KERNEL);
- +#else
- + void *ptr = __vmalloc(size, GFP_KERNEL);
- +#endif
- if (ptr)
- NV_MEMDBG_ADD(ptr, size);
- return ptr;
- diff --git a/kernel/common/inc/nv-mm.h b/kernel/common/inc/nv-mm.h
- index 1270bf3..d2d7657 100644
- --- a/kernel/common/inc/nv-mm.h
- +++ b/kernel/common/inc/nv-mm.h
- @@ -29,6 +29,10 @@
- typedef int vm_fault_t;
- #endif
- +#if defined(NV_MM_HAS_MMAP_LOCK)
- +#define mmap_sem mmap_lock
- +#endif
- +
- /* get_user_pages
- *
- * The 8-argument version of get_user_pages was deprecated by commit
- diff --git a/kernel/conftest.sh b/kernel/conftest.sh
- index 7da7505..7793dd6 100755
- --- a/kernel/conftest.sh
- +++ b/kernel/conftest.sh
- @@ -4067,6 +4067,44 @@ compile_test() {
- compile_check_conftest "$CODE" "NV_KTIME_GET_REAL_TS64_PRESENT" "" "functions"
- ;;
- + vmalloc_has_pgprot_t_arg)
- + #
- + # Determine if __vmalloc has the 'pgprot' argument.
- + #
- + # The third argument to __vmalloc, page protection
- + # 'pgprot_t prot', was removed by commit 88dca4ca5a93
- + # (mm: remove the pgprot argument to __vmalloc)
- + # in v5.8-rc1 (2020-06-01).
- + CODE="
- + #include <linux/vmalloc.h>
- +
- + void conftest_vmalloc_has_pgprot_t_arg(void) {
- + pgprot_t prot;
- + (void)__vmalloc(0, 0, prot);
- + }"
- +
- + compile_check_conftest "$CODE" "NV_VMALLOC_HAS_PGPROT_T_ARG" "" "types"
- +
- + ;;
- +
- + mm_has_mmap_lock)
- + #
- + # Determine if the 'mm_struct' structure has a 'mmap_lock' field.
- + #
- + # Kernel commit da1c55f1b272 ("mmap locking API: rename mmap_sem
- + # to mmap_lock") replaced the field 'mmap_sem' by 'mmap_lock'
- + # in v5.8-rc1 (2020-06-08).
- + CODE="
- + #include <linux/mm_types.h>
- +
- + int conftest_mm_has_mmap_lock(void) {
- + return offsetof(struct mm_struct, mmap_lock);
- + }"
- +
- + compile_check_conftest "$CODE" "NV_MM_HAS_MMAP_LOCK" "" "types"
- +
- + ;;
- +
- pci_dev_has_skip_bus_pm)
- #
- # Determine if skip_bus_pm flag is present in struct pci_dev.
- diff --git a/kernel/nvidia/nvidia.Kbuild b/kernel/nvidia/nvidia.Kbuild
- index 63e369f..656db7b 100644
- --- a/kernel/nvidia/nvidia.Kbuild
- +++ b/kernel/nvidia/nvidia.Kbuild
- @@ -192,7 +192,9 @@ NV_CONFTEST_TYPE_COMPILE_TESTS += iterate_dir
- NV_CONFTEST_TYPE_COMPILE_TESTS += kstrtoull
- NV_CONFTEST_TYPE_COMPILE_TESTS += backlight_properties_type
- NV_CONFTEST_TYPE_COMPILE_TESTS += proc_ops
- +NV_CONFTEST_TYPE_COMPILE_TESTS += vmalloc_has_pgprot_t_arg
- NV_CONFTEST_TYPE_COMPILE_TESTS += timeval
- +NV_CONFTEST_TYPE_COMPILE_TESTS += mm_has_mmap_lock
- NV_CONFTEST_TYPE_COMPILE_TESTS += kmem_cache_has_kobj_remove_work
- NV_CONFTEST_TYPE_COMPILE_TESTS += sysfs_slab_unlink
- NV_CONFTEST_TYPE_COMPILE_TESTS += pci_dev_has_skip_bus_pm
- --
- 2.25.1
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement