diff options
author | Tomohiro Kusumi <[email protected]> | 2019-05-05 08:40:48 +0900 |
---|---|---|
committer | Brian Behlendorf <[email protected]> | 2019-05-04 16:40:48 -0700 |
commit | de3e0b914b28deaf9034656d8f6e0bdf9ccd7c7f (patch) | |
tree | 6b41b5e17cd7a41680de5212982a55546c06b8cf /config | |
parent | 1eacf2b3b0a1d3bccaab83dece44d671ba30292d (diff) |
Linux 5.0 compat: Use totalhigh_pages()
Linux kernel commit ca79b0c211af63fa3276f0e3fd7dd9ada2439839
"mm: convert totalram_pages and totalhigh_pages variables to atomic"
replaced `totalhigh_pages` with an inline function `totalhigh_pages()`.
This broke compilation on IA32, etc, as ZoL uses `totalhigh_pages`
on archs with highmem. Confirmed on Fedora 30 (5.0.9-301.fc30.i686).
Reviewed-by: Brian Behlendorf <[email protected]>
Signed-off-by: Tomohiro Kusumi <[email protected]>
Closes #8677
Closes #8701
Diffstat (limited to 'config')
-rw-r--r-- | config/kernel-totalhigh_pages.m4 | 19 | ||||
-rw-r--r-- | config/kernel.m4 | 1 |
2 files changed, 20 insertions, 0 deletions
diff --git a/config/kernel-totalhigh_pages.m4 b/config/kernel-totalhigh_pages.m4 new file mode 100644 index 000000000..b22e86d4d --- /dev/null +++ b/config/kernel-totalhigh_pages.m4 @@ -0,0 +1,19 @@ +dnl # +dnl # 5.0 API change +dnl # +dnl # ca79b0c211af mm: convert totalram_pages and totalhigh_pages variables to atomic +dnl # +AC_DEFUN([ZFS_AC_KERNEL_TOTALHIGH_PAGES], [ + AC_MSG_CHECKING([whether totalhigh_pages() exists]) + ZFS_LINUX_TRY_COMPILE([ + #include <linux/highmem.h> + ],[ + unsigned long pages __attribute__ ((unused)); + pages = totalhigh_pages(); + ],[ + AC_MSG_RESULT(yes) + AC_DEFINE(HAVE_TOTALHIGH_PAGES, 1, [totalhigh_pages() exists]) + ],[ + AC_MSG_RESULT(no) + ]) +]) diff --git a/config/kernel.m4 b/config/kernel.m4 index f7d657e0c..026a5258f 100644 --- a/config/kernel.m4 +++ b/config/kernel.m4 @@ -164,6 +164,7 @@ AC_DEFUN([ZFS_AC_CONFIG_KERNEL], [ ZFS_AC_KERNEL_IN_COMPAT_SYSCALL ZFS_AC_KERNEL_KTIME_GET_COARSE_REAL_TS64 ZFS_AC_KERNEL_TOTALRAM_PAGES_FUNC + ZFS_AC_KERNEL_TOTALHIGH_PAGES ZFS_AC_KERNEL_BLK_QUEUE_DISCARD ZFS_AC_KERNEL_BLK_QUEUE_SECURE_ERASE |