summaryrefslogtreecommitdiffstats
path: root/udev
diff options
context:
space:
mode:
authorZdenek Kabelac <zkabelac@redhat.com>2011-08-11 17:55:29 +0000
committerZdenek Kabelac <zkabelac@redhat.com>2011-08-11 17:55:29 +0000
commit85ee8e10db8229be1c70b5a776f977f3dbd80756 (patch)
tree9e0890581d0718bcf70f3a6916e4a2775cabee0f /udev
parentcf98c05082c71aa134b697894f0a92aa10d7be24 (diff)
downloadlvm2-85ee8e10db8229be1c70b5a776f977f3dbd80756.tar.gz
lvm2-85ee8e10db8229be1c70b5a776f977f3dbd80756.tar.xz
lvm2-85ee8e10db8229be1c70b5a776f977f3dbd80756.zip
Update udev rules to skip DM flags decoding for removed devices
Skip decoding of DM flags when device is removed. We currently need DM flags only for add|change events. So forking dmsetup process for removed devices is a waste of CPU time. Udev is already quite slow, so make it just a tiny bit faster.
Diffstat (limited to 'udev')
-rw-r--r--udev/10-dm.rules.in12
1 files changed, 6 insertions, 6 deletions
diff --git a/udev/10-dm.rules.in b/udev/10-dm.rules.in
index 606a13db..605e0887 100644
--- a/udev/10-dm.rules.in
+++ b/udev/10-dm.rules.in
@@ -24,12 +24,6 @@ ENV{DM_SBIN_PATH}="/sbin"
TEST!="$env{DM_SBIN_PATH}/dmsetup", ENV{DM_SBIN_PATH}="/usr/sbin"
TEST!="$env{DM_SBIN_PATH}/dmsetup", GOTO="dm_end"
-# Decode udev control flags and set environment variables appropriately.
-# These flags are encoded in DM_COOKIE variable that was introduced in
-# kernel version 2.6.31. Therefore, we can use this feature with
-# kernels >= 2.6.31 only.
-ENV{DM_COOKIE}=="?*", IMPORT{program}="$env{DM_SBIN_PATH}/dmsetup udevflags $env{DM_COOKIE}"
-
# Device created, major and minor number assigned - "add" event generated.
# Table loaded - no event generated.
# Device resumed (or renamed) - "change" event generated.
@@ -42,6 +36,12 @@ ENV{DM_COOKIE}=="?*", IMPORT{program}="$env{DM_SBIN_PATH}/dmsetup udevflags $env
# is not recommended.
ACTION!="add|change", GOTO="dm_end"
+# Decode udev control flags and set environment variables appropriately.
+# These flags are encoded in DM_COOKIE variable that was introduced in
+# kernel version 2.6.31. Therefore, we can use this feature with
+# kernels >= 2.6.31 only. Cookie is not decoded for remove event.
+ENV{DM_COOKIE}=="?*", IMPORT{program}="$env{DM_SBIN_PATH}/dmsetup udevflags $env{DM_COOKIE}"
+
# Rule out easy-to-detect inappropriate events first.
ENV{DISK_RO}=="1", GOTO="dm_disable"