On Sun, Nov 04, 2012 at 05:07:59PM +0100, Thomas Bächler wrote:
Am 03.11.2012 02:40, schrieb Eric Bélanger:
If you use both RAID and LVM, make sure that you use the mdadm_udev hook instead of the mdadm one. I had to do this change to make my system boot with the lvm2 package in [testing].
Okay, we figured this out by now:
The 'mdadm' hook does not only disable the auto-assembly, it lacks any udev rules in initramfs - this means that udev will not know about file system type on the RAID contents and LVM auto-assembly fails.
I guess I knew this, as it caused problems in the past when we created mdadm_udev: https://bugs.archlinux.org/task/28067
The solution would be to include the udev rules in the mdadm hook as well, and just disable auto-assembly.
This was always the sticking point -- is there a way to disable auto assembly but keep the rule file as is? I'd rather we didn't duplicate it.
On another note: The mdadm_udev behaviour used to be the default for a while, but we had a lot of whining about it - none of the affected people had any interest in figuring out why auto-assembly failed for them. I'd really like to get rid of the non-udev based mdadm assembly, so if anyone has an idea why there were problems, feel free to share.
While we're at it, I'd like to fix mdadm's udev rule to use BUILTIN+="blkid" instead of manually calling blkid.
This is definitely needed. I think the -o udev output from blkid is going away in u-l 2.23. The blkid builtin is already almost a year old -- would make more sense to just convince upstream to make the change. d