=== modified file 'debian/changelog' --- debian/changelog 2013-03-14 15:03:49 +0000 +++ debian/changelog 2013-09-17 17:52:03 +0000 @@ -1,3 +1,10 @@ +lvm2 (2.02.95-6ubuntu4.1) raring-proposed; urgency=low + + * 55-dm.rules, 56-lvm.rules: Backport changes from 2.02.98-6ubuntu1 + which fix races during lvm snapshot delete (LP: #1223576). + + -- Adam Gandelman Tue, 17 Sep 2013 10:47:08 -0700 + lvm2 (2.02.95-6ubuntu4) raring; urgency=low * Actually just update all device-types to latest available. (LP: #1122445) === modified file 'debian/tree/dmsetup/lib/udev/rules.d/55-dm.rules' --- debian/tree/dmsetup/lib/udev/rules.d/55-dm.rules 2012-04-14 02:57:53 +0000 +++ debian/tree/dmsetup/lib/udev/rules.d/55-dm.rules 2013-09-17 17:45:16 +0000 @@ -3,9 +3,6 @@ KERNEL=="device-mapper", NAME="mapper/control" -SUBSYSTEM!="block", GOTO="dm_end" -KERNEL!="dm-[0-9]*", 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 @@ -13,6 +10,9 @@ ENV{DM_COOKIE}=="?*", IMPORT{program}="/sbin/dmsetup udevflags $env{DM_COOKIE}" ENV{DM_COOKIE}=="?*", RUN+="/sbin/dmsetup udevcomplete $env{DM_COOKIE}" +SUBSYSTEM!="block", GOTO="dm_end" +KERNEL!="dm-[0-9]*", GOTO="dm_end" + # Device created, major and minor number assigned - "add" event generated. # Table loaded - no event generated. # Device resumed (or renamed) - "change" event generated. === modified file 'debian/tree/lvm2/lib/udev/rules.d/56-lvm.rules' --- debian/tree/lvm2/lib/udev/rules.d/56-lvm.rules 2012-04-14 02:57:53 +0000 +++ debian/tree/lvm2/lib/udev/rules.d/56-lvm.rules 2013-09-17 17:46:14 +0000 @@ -8,8 +8,16 @@ # Use DM name and split it up into its VG/LV/layer constituents. IMPORT{program}="/sbin/dmsetup splitname --nameprefixes --noheadings --rows $env{DM_NAME}" -ENV{DM_UDEV_DISABLE_SUBSYSTEM_RULES_FLAG}!="1", GOTO="lvm_end" - +ENV{DM_UDEV_DISABLE_SUBSYSTEM_RULES_FLAG}=="1", GOTO="lvm_end" + +# Do not create symlinks for inappropriate subdevices. +ENV{DM_LV_NAME}=="pvmove?*|?*_vorigin", GOTO="lvm_disable" +ENV{DM_LV_LAYER}=="?*", GOTO="lvm_disable" + +# Create symlinks for top-level devices only. +ENV{DM_VG_NAME}=="?*", ENV{DM_LV_NAME}=="?*", SYMLINK+="$env{DM_VG_NAME}/$env{DM_LV_NAME}", GOTO="lvm_end" + +LABEL="lvm_disable" ENV{DM_UDEV_DISABLE_DISK_RULES_FLAG}="1" ENV{DM_UDEV_DISABLE_OTHER_RULES_FLAG}="1" OPTIONS:="nowatch"