On Fri, Nov 6, 2009 at 9:11 PM, Eric Bélanger <snowmaniscool@gmail.com> wrote:
On Fri, Nov 6, 2009 at 6:54 PM, Thomas Bächler <thomas@archlinux.org> wrote:
This upload brings some changes to all device-mapper based applications and should be the start of fixing some race conditions (also needs a fix to devicekit's udev rules).
For this email, the lvm and udev changes are more important: During the initial udevtrigger, the STARTUP=1 environment variable will be set in all uevents. This is used by the new device-mapper/lvm2 upstream udev rules (which replace our homegrown and outdated rule) which have to distinguish between the initial triggering and later execution of uevents.
The device-mapper rules also set some flags that will tell other rules to ignore a dm device (these flags have to be respected in devicekit to solve some race conditions). The only change in udev is that the I removed a hunk from the arch patch that un-ignored dm-* devices: Peristent names for those are now handles in the device-mapper rules, respecting the ignore flags and thus also avoiding weird races conditions.
If you found this confusing, ask, otherwise please test and sign off. (Tested and working on x86_64 with encryption and lvm2)
FYI: There's a problem with lilo and the new device-mapper when your /boot is on a LVM volume. Basically, lilo fails to load the kernel. Thomas and I are looking into it.
Eric
I've just pushed a fixed lilo-22.8-4 in testing. I only tested the i686 package. BTW, I'm also having problems with my x86_64 system which use raid and lvm2. :( It can't find the root device so I'm dropped in the initramfs fallback shell. I suspect that the problem is related to the initramfs as I can boot with the fallback image.