Am 12.04.2010 13:57, schrieb Dieter Plaetinck:
On Mon, 12 Apr 2010 13:50:21 +0200 Thomas Bächler <thomas@archlinux.org> wrote:
Am 11.04.2010 00:21, schrieb Chris Brannon:
The stat following cryptsetup is different than the stat at the start of process_filesystem. In the first stat, you'll see that /dev/mapper/cryptoroot is a block device. It is at inode 7872. The second stat shows that /dev/mapper/cryptoroot is a symlink, and it is at inode 7949.
/dev/mapper/ devices should NEVER be block devices. They should ONLY be created by udev and should ALWAYS be symbolic links to /dev/dm-* block devices. This is true for all type of device-mapper devices, be it cryptsetup, lvm or dmraid:
that's true, but test -b should exit(0) on them. aif has a [ -b /dev/mapper/.. ] check which fails, causing aif to abort. and we don't know why. we only see that the file looks fine after aif has crashed (okay. a bit later, see my previous mail), and when we put debugging into aif the error does not happen.
Would be great if you could help us out because we're both clueless :)
There were a number of races w.r.t. device creating and linking in the past. You could try udevadm settle (maybe with a --subsystem= option) after cryptsetup as a workaround and see if the bug disappears. Other than that, I wouldn't know how to solve it. Also, please make sure that all files (especially udev rules) from device-mapper are installed into /lib/udev/rules.d/ (they should be, as archiso uses pacman, but it never hurts to be absolutely sure).