From 2957f38d78d376431ab18d2f576099d682d7a711 Mon Sep 17 00:00:00 2001
From: Ned Bass <bass6@llnl.gov>
Date: Thu, 29 Nov 2012 11:08:37 -0800
Subject: vdev_id support for device link aliases

Add a vdev_id feature to map device names based on already defined
udev device links.  To increase the odds that vdev_id will run after
the rules it depends on, increase the vdev.rules rule number from 60
to 69.  With this change, vdev_id now provides functionality analogous
to zpool_id and zpool_layout, paving the way to retire those tools.

A defined alias takes precedence over a topology-derived name, but the
two naming methods can otherwise coexist. For example, one might name
drives in a JBOD with the sas_direct topology while naming an internal
L2ARC device with an alias.

For example, the following lines in vdev_id.conf will result in the
creation of links /dev/disk/by-vdev/{d1,d2}, each pointing to the same
target as the device link specified in the third field.

  #     by-vdev
  #     name     fully qualified or base name of device link
  alias d1       /dev/disk/by-id/wwn-0x5000c5002de3b9ca
  alias d2       wwn-0x5000c5002def789e

Also perform some minor vdev_id cleanup, such as removal of the unused
-s command line option.

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Closes #981
---
 etc/zfs/Makefile.am                | 1 +
 etc/zfs/vdev_id.conf.alias.example | 4 ++++
 2 files changed, 5 insertions(+)
 create mode 100644 etc/zfs/vdev_id.conf.alias.example

(limited to 'etc/zfs')

diff --git a/etc/zfs/Makefile.am b/etc/zfs/Makefile.am
index b1a1cf43c..dd864f4a2 100644
--- a/etc/zfs/Makefile.am
+++ b/etc/zfs/Makefile.am
@@ -1,6 +1,7 @@
 pkgsysconfdir = $(sysconfdir)/zfs
 
 pkgsysconf_DATA = \
+	vdev_id.conf.alias.example \
 	vdev_id.conf.sas_direct.example \
 	vdev_id.conf.sas_switch.example \
 	vdev_id.conf.multipath.example \
diff --git a/etc/zfs/vdev_id.conf.alias.example b/etc/zfs/vdev_id.conf.alias.example
new file mode 100644
index 000000000..33735b05b
--- /dev/null
+++ b/etc/zfs/vdev_id.conf.alias.example
@@ -0,0 +1,4 @@
+#     by-vdev
+#     name     fully qualified or base name of device link
+alias d1       /dev/disk/by-id/wwn-0x5000c5002de3b9ca
+alias d2       wwn-0x5000c5002def789e
-- 
cgit v1.2.3