mirror of
https://git.proxmox.com/git/mirror_zfs.git
synced 2026-05-22 02:27:36 +03:00
Linux 5.17 compat: GENHD_FL_EXT_DEVT / GENHD_FL_NO_PART_SCAN
As of the 5.17 kernel the GENHD_FL_EXT_DEVT flag has been removed
and the GENHD_FL_NO_PART_SCAN flag renamed GENHD_FL_NO_PART. Update
zvol_alloc() to set GENHD_FL_NO_PART for the newer kernels which
is sufficient. The behavior for prior kernels remains unchanged.
1ebe2e5f ("block: remove GENHD_FL_EXT_DEVT")
46e7eac6 ("block: rename GENHD_FL_NO_PART_SCAN to GENHD_FL_NO_PART")
Reviewed-by: Tony Hutter <hutter2@llnl.gov>
Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Closes #13294
Closes #13297
This commit is contained in:
@@ -0,0 +1,58 @@
|
||||
dnl #
|
||||
dnl # 5.17 API change,
|
||||
dnl #
|
||||
dnl # GENHD_FL_EXT_DEVT flag removed
|
||||
dnl # GENHD_FL_NO_PART_SCAN renamed GENHD_FL_NO_PART
|
||||
dnl #
|
||||
AC_DEFUN([ZFS_AC_KERNEL_SRC_GENHD_FLAGS], [
|
||||
|
||||
ZFS_LINUX_TEST_SRC([genhd_fl_ext_devt], [
|
||||
#include <linux/blkdev.h>
|
||||
], [
|
||||
int flags __attribute__ ((unused)) = GENHD_FL_EXT_DEVT;
|
||||
])
|
||||
|
||||
ZFS_LINUX_TEST_SRC([genhd_fl_no_part], [
|
||||
#include <linux/blkdev.h>
|
||||
], [
|
||||
int flags __attribute__ ((unused)) = GENHD_FL_NO_PART;
|
||||
])
|
||||
|
||||
ZFS_LINUX_TEST_SRC([genhd_fl_no_part_scan], [
|
||||
#include <linux/blkdev.h>
|
||||
], [
|
||||
int flags __attribute__ ((unused)) = GENHD_FL_NO_PART_SCAN;
|
||||
])
|
||||
])
|
||||
|
||||
AC_DEFUN([ZFS_AC_KERNEL_GENHD_FLAGS], [
|
||||
|
||||
AC_MSG_CHECKING([whether GENHD_FL_EXT_DEVT flag is available])
|
||||
ZFS_LINUX_TEST_RESULT([genhd_fl_ext_devt], [
|
||||
AC_MSG_RESULT(yes)
|
||||
AC_DEFINE(ZFS_GENHD_FL_EXT_DEVT, GENHD_FL_EXT_DEVT,
|
||||
[GENHD_FL_EXT_DEVT flag is available])
|
||||
], [
|
||||
AC_MSG_RESULT(no)
|
||||
AC_DEFINE(ZFS_GENHD_FL_EXT_DEVT, 0,
|
||||
[GENHD_FL_EXT_DEVT flag is not available])
|
||||
])
|
||||
|
||||
AC_MSG_CHECKING([whether GENHD_FL_NO_PART flag is available])
|
||||
ZFS_LINUX_TEST_RESULT([genhd_fl_no_part], [
|
||||
AC_MSG_RESULT(yes)
|
||||
AC_DEFINE(ZFS_GENHD_FL_NO_PART, GENHD_FL_NO_PART,
|
||||
[GENHD_FL_NO_PART flag is available])
|
||||
], [
|
||||
AC_MSG_RESULT(no)
|
||||
|
||||
AC_MSG_CHECKING([whether GENHD_FL_NO_PART_SCAN flag is available])
|
||||
ZFS_LINUX_TEST_RESULT([genhd_fl_no_part_scan], [
|
||||
AC_MSG_RESULT(yes)
|
||||
AC_DEFINE(ZFS_GENHD_FL_NO_PART, GENHD_FL_NO_PART_SCAN,
|
||||
[GENHD_FL_NO_PART_SCAN flag is available])
|
||||
], [
|
||||
ZFS_LINUX_TEST_ERROR([GENHD_FL_NO_PART|GENHD_FL_NO_PART_SCAN])
|
||||
])
|
||||
])
|
||||
])
|
||||
@@ -61,6 +61,7 @@ AC_DEFUN([ZFS_AC_KERNEL_TEST_SRC], [
|
||||
ZFS_AC_KERNEL_SRC_BIO
|
||||
ZFS_AC_KERNEL_SRC_BLKDEV
|
||||
ZFS_AC_KERNEL_SRC_BLK_QUEUE
|
||||
ZFS_AC_KERNEL_SRC_GENHD_FLAGS
|
||||
ZFS_AC_KERNEL_SRC_REVALIDATE_DISK
|
||||
ZFS_AC_KERNEL_SRC_GET_DISK_RO
|
||||
ZFS_AC_KERNEL_SRC_GENERIC_READLINK_GLOBAL
|
||||
@@ -172,6 +173,7 @@ AC_DEFUN([ZFS_AC_KERNEL_TEST_RESULT], [
|
||||
ZFS_AC_KERNEL_BIO
|
||||
ZFS_AC_KERNEL_BLKDEV
|
||||
ZFS_AC_KERNEL_BLK_QUEUE
|
||||
ZFS_AC_KERNEL_GENHD_FLAGS
|
||||
ZFS_AC_KERNEL_REVALIDATE_DISK
|
||||
ZFS_AC_KERNEL_GET_DISK_RO
|
||||
ZFS_AC_KERNEL_GENERIC_READLINK_GLOBAL
|
||||
|
||||
Reference in New Issue
Block a user