summaryrefslogtreecommitdiffstats
path: root/config/user-libudev.m4
diff options
context:
space:
mode:
authorDon Brady <[email protected]>2016-03-14 10:04:21 -0600
committerBrian Behlendorf <[email protected]>2016-03-31 13:45:53 -0700
commit39fc0cb5577e409f415e25d35a452b46996c08b1 (patch)
tree400e9790da6d1d470ffb65b63758320c37875eb0 /config/user-libudev.m4
parentbebd73f2c3822a86863e7508e7a3e2929d871113 (diff)
Add support for devid and phys_path keys in vdev disk labels
This is foundational work for ZED. Updates a leaf vdev's persistent device strings on Linux platform * only applies for a dedicated leaf vdev (aka whole disk) * updated during pool create|add|attach|import * used for matching device matching during auto-{online,expand,replace} * stored in a leaf disk config label (i.e. alongside 'path' NVP) * can opt-out using env var ZFS_VDEV_DEVID_OPT_OUT=YES Some examples: path: '/dev/sdb1' devid: 'scsi-350000394a8ca4fbc-part1' phys_path: 'pci-0000:04:00.0-sas-0x50000394a8ca4fbf-lun-0' path: '/dev/mapper/mpatha' devid: 'dm-uuid-mpath-35000c5006304de3f' Signed-off-by: Don Brady <[email protected]> Signed-off-by: Brian Behlendorf <[email protected]> Closes #2856 Closes #3978 Closes #4416
Diffstat (limited to 'config/user-libudev.m4')
-rw-r--r--config/user-libudev.m413
1 files changed, 13 insertions, 0 deletions
diff --git a/config/user-libudev.m4 b/config/user-libudev.m4
new file mode 100644
index 000000000..143f77f76
--- /dev/null
+++ b/config/user-libudev.m4
@@ -0,0 +1,13 @@
+dnl #
+dnl # Check for libudev - needed for vdev auto-online and auto-replace
+dnl #
+AC_DEFUN([ZFS_AC_CONFIG_USER_LIBUDEV], [
+ LIBUDEV=
+
+ AC_CHECK_HEADER([libudev.h], [AC_SUBST([LIBUDEV], ["-ludev"])
+ AC_DEFINE([HAVE_LIBUDEV], 1, [Define if you have libudev])], [])
+
+ AC_SEARCH_LIBS(i[udev_device_get_is_initialized], [udev], [
+ AC_DEFINE([HAVE_LIBUDEV_UDEV_DEVICE_GET_IS_INITIALIZED], 1, [
+ Define if udev_device_get_is_initialized is available])], [])
+])