summaryrefslogtreecommitdiff
path: root/data/95-devkit-disks.rules
diff options
context:
space:
mode:
Diffstat (limited to 'data/95-devkit-disks.rules')
-rw-r--r--data/95-devkit-disks.rules6
1 files changed, 5 insertions, 1 deletions
diff --git a/data/95-devkit-disks.rules b/data/95-devkit-disks.rules
index e383e6c..f49eba9 100644
--- a/data/95-devkit-disks.rules
+++ b/data/95-devkit-disks.rules
@@ -3,12 +3,16 @@
# we only care about block devices
ACTION!="add|change", GOTO="devkit_disks_end"
SUBSYSTEM!="block", GOTO="devkit_disks_end"
KERNEL=="loop*|ram*", GOTO="devkit_disks_end"
+# we only care about change events on device-mapper
+# devices - never touch the device on add events
+KERNEL=="dm-*", ACTION!="change", GOTO="devkit_disks_end"
+
##############################################################################################################
# Probe for partition tables; this really should be part of udev
#
# skip rules for inappropriate block devices
@@ -30,13 +34,13 @@ LABEL="probe_parttable_end"
##############################################################################################################
# pick up device-mapper data; this REALLY should be done by rules installed
# by the device-mapper package
#
KERNEL!="dm-*", GOTO="device_mapper_end"
-ACTION!="add|change", GOTO="device_mapper_end"
+ACTION!="change", GOTO="device_mapper_end"
IMPORT{program}="devkit-disks-dm-export %M %m"
ENV{DKD_DM_NAME}!="?*", GOTO="device_mapper_end"
ENV{DKD_DM_STATE}=="SUSPENDED", GOTO="device_mapper_end"
ENV{DKD_DM_TARGET_TYPES}=="|*error*", GOTO="device_mapper_end"