Advertisement
Guest User

kernel-5.8.patch

a guest
Aug 9th, 2020
424
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Diff 3.31 KB | None | 0 0
  1. diff --git a/kernel/common/inc/nv-linux.h b/kernel/common/inc/nv-linux.h
  2. index ac5bb95..3d2f0b7 100644
  3. --- a/kernel/common/inc/nv-linux.h
  4. +++ b/kernel/common/inc/nv-linux.h
  5. @@ -531,7 +531,11 @@ extern int nv_pat_mode;
  6.  
  7.  static inline void *nv_vmalloc(unsigned long size)
  8.  {
  9. +#if defined(NV_VMALLOC_HAS_PGPROT_T_ARG)
  10.      void *ptr = __vmalloc(size, GFP_KERNEL, PAGE_KERNEL);
  11. +#else
  12. +    void *ptr = __vmalloc(size, GFP_KERNEL);
  13. +#endif
  14.      if (ptr)
  15.          NV_MEMDBG_ADD(ptr, size);
  16.      return ptr;
  17. diff --git a/kernel/common/inc/nv-mm.h b/kernel/common/inc/nv-mm.h
  18. index 1270bf3..d2d7657 100644
  19. --- a/kernel/common/inc/nv-mm.h
  20. +++ b/kernel/common/inc/nv-mm.h
  21. @@ -29,6 +29,10 @@
  22.  typedef int vm_fault_t;
  23.  #endif
  24.  
  25. +#if defined(NV_MM_HAS_MMAP_LOCK)
  26. +#define mmap_sem mmap_lock
  27. +#endif
  28. +
  29.  /* get_user_pages
  30.   *
  31.   * The 8-argument version of get_user_pages was deprecated by commit
  32. diff --git a/kernel/conftest.sh b/kernel/conftest.sh
  33. index 7da7505..7793dd6 100755
  34. --- a/kernel/conftest.sh
  35. +++ b/kernel/conftest.sh
  36. @@ -4067,6 +4067,44 @@ compile_test() {
  37.              compile_check_conftest "$CODE" "NV_KTIME_GET_REAL_TS64_PRESENT" "" "functions"
  38.          ;;
  39.  
  40. +        vmalloc_has_pgprot_t_arg)
  41. +            #
  42. +            # Determine if __vmalloc has the 'pgprot' argument.
  43. +            #
  44. +            # The third argument to __vmalloc, page protection
  45. +            # 'pgprot_t prot', was removed by commit 88dca4ca5a93
  46. +            # (mm: remove the pgprot argument to __vmalloc)
  47. +            # in v5.8-rc1 (2020-06-01).
  48. +        CODE="
  49. +        #include <linux/vmalloc.h>
  50. +
  51. +        void conftest_vmalloc_has_pgprot_t_arg(void) {
  52. +            pgprot_t prot;
  53. +            (void)__vmalloc(0, 0, prot);
  54. +        }"
  55. +
  56. +            compile_check_conftest "$CODE" "NV_VMALLOC_HAS_PGPROT_T_ARG" "" "types"
  57. +
  58. +        ;;
  59. +
  60. +        mm_has_mmap_lock)
  61. +            #
  62. +            # Determine if the 'mm_struct' structure has a 'mmap_lock' field.
  63. +            #
  64. +            # Kernel commit da1c55f1b272 ("mmap locking API: rename mmap_sem
  65. +            # to mmap_lock") replaced the field 'mmap_sem' by 'mmap_lock'
  66. +            # in v5.8-rc1 (2020-06-08).
  67. +            CODE="
  68. +            #include <linux/mm_types.h>
  69. +
  70. +            int conftest_mm_has_mmap_lock(void) {
  71. +                return offsetof(struct mm_struct, mmap_lock);
  72. +            }"
  73. +
  74. +            compile_check_conftest "$CODE" "NV_MM_HAS_MMAP_LOCK" "" "types"
  75. +
  76. +        ;;
  77. +
  78.          pci_dev_has_skip_bus_pm)
  79.              #
  80.              # Determine if skip_bus_pm flag is present in struct pci_dev.
  81. diff --git a/kernel/nvidia/nvidia.Kbuild b/kernel/nvidia/nvidia.Kbuild
  82. index 63e369f..656db7b 100644
  83. --- a/kernel/nvidia/nvidia.Kbuild
  84. +++ b/kernel/nvidia/nvidia.Kbuild
  85. @@ -192,7 +192,9 @@ NV_CONFTEST_TYPE_COMPILE_TESTS += iterate_dir
  86.  NV_CONFTEST_TYPE_COMPILE_TESTS += kstrtoull
  87.  NV_CONFTEST_TYPE_COMPILE_TESTS += backlight_properties_type
  88.  NV_CONFTEST_TYPE_COMPILE_TESTS += proc_ops
  89. +NV_CONFTEST_TYPE_COMPILE_TESTS += vmalloc_has_pgprot_t_arg
  90.  NV_CONFTEST_TYPE_COMPILE_TESTS += timeval
  91. +NV_CONFTEST_TYPE_COMPILE_TESTS += mm_has_mmap_lock
  92.  NV_CONFTEST_TYPE_COMPILE_TESTS += kmem_cache_has_kobj_remove_work
  93.  NV_CONFTEST_TYPE_COMPILE_TESTS += sysfs_slab_unlink
  94.  NV_CONFTEST_TYPE_COMPILE_TESTS += pci_dev_has_skip_bus_pm
  95. --
  96. 2.25.1
  97.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement