udev + LVM snapshot でハマった

Xen ホストマシン上で、lvcreate で snapshot を作ろうとしたら以下のメッセージが出て失敗した。

macks@hostname:~$ sudo lvcreate -s -n tmp -L 1G /dev/vg01/home
  LV vg01/tmp in use: not removing
  Couldn't deactivate new snapshot.

調べてみたら、udev が関係することが判明。

俺の環境では Debian Sarge に backports.org の udev をインストールしていた。(lvm2_2.01.04-5 + udev_0.089-0bpo1)
BTS にあるとおり、以下のように udev のルールを変更すれば正しく動作するようになった。

--- /etc/udev/udev.rules~       2005-12-17 02:13:53.000000000 +0100
+++ /etc/udev/udev.rules        2005-12-17 11:08:03.000000000 +0100
@@ -93,6 +93,6 @@
 SUBSYSTEM=="aoe", KERNEL=="interfaces",        NAME="etherd/%k"

 # device mapper creates its own device nodes, so ignore these
-KERNEL=="dm-[0-9]*",           NAME=""
+KERNEL=="dm-[0-9]*",           OPTIONS+="ignore_device"
 KERNEL=="device-mapper",       NAME="mapper/control"
 

バイスの準備が完了する前に udev がデバイスを掴んでしまうのが原因らしいが、udev.rules を見ただけじゃそんなの分からんよ。
微妙すぎる。