[Bug 1148500] New: lvm2 2.02.180-327: vgs hangs with "device XXX not intialized in udev data base"
http://bugzilla.opensuse.org/show_bug.cgi?id=1148500 Bug ID: 1148500 Summary: lvm2 2.02.180-327: vgs hangs with "device XXX not intialized in udev data base" Classification: openSUSE Product: openSUSE Tumbleweed Version: Current Hardware: Other OS: Other Status: NEW Severity: Normal Priority: P5 - None Component: Installation Assignee: yast2-maintainers@suse.de Reporter: martin.wilck@suse.com QA Contact: jsrain@suse.com Found By: --- Blocker: --- Created attachment 815982 --> http://bugzilla.opensuse.org/attachment.cgi?id=815982&action=edit log of "vgs -vvvv" OpenQA problem https://openqa.opensuse.org/tests/1018187, installation with openSUSE-Staging:G-Tumbleweed-DVD-x86_64-Build277.1-Media.iso, installing on encrypted LVM. Blocking LVM2 release (https://build.opensuse.org/request/show/725506) ps aux shows system hanging in "vgs", called by dracut:
root 18034 0.0 0.3 4100 3228 tty1 S+ 03:06 0:00 \_ /bin/bash --norc /sbin/mkinitrd root 18047 0.0 0.4 5520 4644 tty1 S+ 03:06 0:00 \_ /bin/bash -p /usr/bin/dracut --logfile /var/log/YaST2/mkinitrd.log --force /boot/initrd-5.2.9-5-default 5.2.9-5-default root 19895 0.0 0.3 5520 3036 tty1 S+ 03:23 0:00 \_ /bin/bash -p /usr/bin/dracut --logfile /var/log/YaST2/mkinitrd.log --force /boot/initrd-5.2.9-5-default 5.2.9-5-default root 19896 0.1 0.7 10732 7580 tty1 S+ 03:23 0:00 \_ lvm vgs --noheadings -o pv_name system
I reproduced this locally. vgs emits hundreds of messages like this:
#device/dev-type.c:1042 Device /dev/loop0 not initialized in udev database (89/100, 8800000 microseconds).
strace shows that vgs is trying to access the udev db under /run/udev/data directly by opening files under that directory. This fails because /run is not mounted in the chroot (system being installed). As soon as a bind-mount is created for /run into the chroot, vgs and then the installation proceeds and completes: mount --bind /run /mnt/run I've assigned this to the "installer" component because it can be fixed in a simple way by bind-mounting /run. I don't know how this problem is related to the lvm2 update from sr#725506. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1148500
http://bugzilla.opensuse.org/show_bug.cgi?id=1148500#c1
Martin Wilck
http://bugzilla.opensuse.org/show_bug.cgi?id=1148500
http://bugzilla.opensuse.org/show_bug.cgi?id=1148500#c2
--- Comment #2 from Martin Wilck
12453 openat(AT_FDCWD, "/run/udev/data/b7:0", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) 12453 openat(AT_FDCWD, "/run/udev/data/b7:0", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
dracut seems to re-run vgs in this situation, so that the problem occurs repeatedly:
12453 execve("/sbin/lvm", ["lvm", "vgs", "--noheadings", "-o", "pv_name", "system"], 0x555dec58c490 /* 101 vars */) = 0 12575 execve("/sbin/lvm", ["lvm", "vgs", "--noheadings", "-o", "pv_name", "system"], 0x555dec58c490 /* 101 vars */) = 0 12671 execve("/sbin/lvm", ["lvm", "vgs", "--noheadings", "-o", "pv_name", "system"], 0x555dec58c490 /* 101 vars */) = 0 ...
At a certain point, I created the bind mount as mentioned in comment 0. From that point on, dracut made progress.
12817 execve("/sbin/lvm", ["lvm", "vgs", "--noheadings", "-o", "pv_name", "system"], 0x555dec58c490 /* 101 vars */) = 0 12817 openat(AT_FDCWD, "/run/udev/data/b7:1", O_RDONLY|O_CLOEXEC) = 5 12817 openat(AT_FDCWD, "/run/udev/data/b7:29", O_RDONLY|O_CLOEXEC) = 5 ...
-- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1148500
http://bugzilla.opensuse.org/show_bug.cgi?id=1148500#c4
--- Comment #4 from Gang He
http://bugzilla.opensuse.org/show_bug.cgi?id=1148500
http://bugzilla.opensuse.org/show_bug.cgi?id=1148500#c5
--- Comment #5 from Martin Wilck
http://bugzilla.opensuse.org/show_bug.cgi?id=1148500
Gang He
http://bugzilla.opensuse.org/show_bug.cgi?id=1148500
http://bugzilla.opensuse.org/show_bug.cgi?id=1148500#c6
--- Comment #6 from Gang He
http://bugzilla.opensuse.org/show_bug.cgi?id=1148500
http://bugzilla.opensuse.org/show_bug.cgi?id=1148500#c7
--- Comment #7 from Gang He
http://bugzilla.opensuse.org/show_bug.cgi?id=1148500
http://bugzilla.opensuse.org/show_bug.cgi?id=1148500#c9
--- Comment #9 from Martin Wilck
http://bugzilla.opensuse.org/show_bug.cgi?id=1148500
http://bugzilla.opensuse.org/show_bug.cgi?id=1148500#c10
--- Comment #10 from Martin Wilck
In this staging project (or perhaps generally, in staging projects), "cryptlvm" was the only test involving LVM. That explains why this test failed why others passed. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1148500
http://bugzilla.opensuse.org/show_bug.cgi?id=1148500#c11
Martin Wilck
http://bugzilla.opensuse.org/show_bug.cgi?id=1148500
http://bugzilla.opensuse.org/show_bug.cgi?id=1148500#c13
--- Comment #13 from Gang He
In this staging project (or perhaps generally, in staging projects), "cryptlvm" was the only test involving LVM. That explains why this test failed why others passed.
Hello Martin and All, I just tried LVM as system disk, but without encrytion, the bug still happened. I can confirm the bug is not related to LVM encryption, is related to udev related files access. Thanks Gang -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1148500
Gang He
http://bugzilla.opensuse.org/show_bug.cgi?id=1148500
Gang He
participants (1)
-
bugzilla_noreply@novell.com