From 6f16321da13f6a7cbd9c424ddba2e727e434fa25 Mon Sep 17 00:00:00 2001 From: Milan Broz Date: Tue, 13 Jul 2010 14:07:32 +0000 Subject: HAL: Ignore internal DM devices with new DM udev rules With new device-mapper udev rules are /dev/mapper/* symlinks to basic device name /dev/dm-X. (Change requested by udev upstream.) This change breaks temporary-cryptsetup workaround inside hal. With new dm-udev rules (uncluded since device-mapper 1.02.39) there is DM_UDEV_DISABLE_OTHER_RULES_FLAG variable which controls that scan should be ignored for this device (it is set for all internal devices, including temporary cryptsetup, internal parts of lvm devices etc.) Ignore device if this flag is set. See bugs https://bugzilla.redhat.com/show_bug.cgi?id=613909 http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=586286 Signed-off-by: Milan Broz --- diff --git a/hald/linux/osspec.c b/hald/linux/osspec.c index a8233fd..6d616bc 100644 --- a/hald/linux/osspec.c +++ b/hald/linux/osspec.c @@ -215,6 +215,11 @@ hald_udev_data (GIOChannel *source, GIOCondition condition, gpointer user_data) g_free (str); } g_free (dstr); + } else if (strncmp(key, "DM_UDEV_DISABLE_OTHER_RULES_FLAG=", 33) == 0) { + if (strtoul(&key[33], NULL, 10) == 1) { + HAL_INFO (("ignoring device requested by DM udev rules")); + goto invalid; + } } } -- cgit v0.8.3-6-g21f6