chiark / gitweb /
rules: SUSE update
[elogind.git] / etc / udev / suse / 64-device-mapper.rules
index 3837d3f2c7d99b630ba5f2d76d74848697791bd8..9555e9799f2c0efe19daed7b0d6f8f9d877ef9cc 100644 (file)
@@ -1,15 +1,19 @@
-# device mapper links hook into "online" event, when the dm table
-# is available, while some table types must be ignored
+KERNEL=="device-mapper", SYMLINK+="mapper/control"
 
-KERNEL=="dm-*", ACTION=="add|online", GOTO="device_mapper_do"
-GOTO="device_mapper_end"
+KERNEL!="dm-*", GOTO="device_mapper_end"
+ACTION!="add|change", GOTO="device_mapper_end"
 
-LABEL="device_mapper_do"
-PROGRAM!="/sbin/dmsetup status -j %M -m %m", GOTO="device_mapper_end"
-RESULT=="|*snapshot*|*error*", GOTO="device_mapper_end"
+IMPORT{program}="/sbin/dmsetup export -j%M -m%m"
+ENV{DM_NAME}!="?*", GOTO="device_mapper_end"
 
-IMPORT{program}="/sbin/vol_id --export $tempnode"
-ENV{ID_FS_USAGE}=="filesystem|other", ENV{ID_FS_UUID}=="?*", SYMLINK+="disk/by-uuid/$env{ID_FS_UUID}"
-ENV{ID_FS_USAGE}=="filesystem|other", ENV{ID_FS_LABEL_SAFE}=="?*", SYMLINK+="disk/by-label/$env{ID_FS_LABEL_SAFE}"
+SYMLINK+="disk/by-id/dm-name-$env{DM_NAME}"
+ENV{DM_UUID}=="?*", SYMLINK+="disk/by-id/dm-uuid-$env{DM_UUID}"
+
+ENV{DM_STATE}!="ACTIVE", GOTO="device_mapper_end"
+ENV{DM_TARGET_TYPES}=="|*error*", GOTO="device_mapper_end"
+IMPORT{program}="vol_id --export $tempnode"
+OPTIONS="link_priority=-100"
+ENV{ID_FS_USAGE}=="filesystem|other|crypto", ENV{ID_FS_UUID_ENC}=="?*", SYMLINK+="disk/by-uuid/$env{ID_FS_UUID_ENC}"
+ENV{ID_FS_USAGE}=="filesystem|other", ENV{ID_FS_LABEL_ENC}=="?*", SYMLINK+="disk/by-label/$env{ID_FS_LABEL_ENC}"
 
 LABEL="device_mapper_end"