Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 72746

Summary: udev and lvm2 dont work if I dont use RC_DEVICE_TARBALL
Product: Gentoo Linux Reporter: Bharath Ramesh <krosswindz>
Component: [OLD] UnspecifiedAssignee: Gentoo's Team for Core System packages <base-system>
Status: RESOLVED REMIND    
Severity: major CC: betelgeuse, gregkh, hoffbrinkle, jakub, kamensky.fb, m.debruijne, rockoo, ulmer
Priority: High    
Version: unspecified   
Hardware: x86   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Bug Depends on:    
Bug Blocks: 126089    
Attachments: Sleep loop for udev and loading lvm as a module

Description Bharath Ramesh 2004-11-28 10:30:17 UTC
I just installed a gentoo on my laptop. I am using udev and lvm. I dont use RC_DEVICE_TARBALL option. On every bootup I get the following error:

/dev/mapper/control: open failed: no such file or directory
Is device mapper missing from the kernel.

in the shell I go and run ls /dev/mapper/control, the file exists. If I then run vgchance -ay it detects my lvm partitions and I then manually run fsck on my lvm volumes and then everything works fine.

I have dm-mod compiled as a module and I load it using /etc/modules.autoload.d/kernel-2.6

I am using udev-045 and lvm2-2.00.08

Reproducible: Always
Steps to Reproduce:
1.
2.
3.

Actual Results:  
/dev/lvm nodes arent created

Expected Results:  
/dev/lvm nodes should be created

Portage 2.0.51-r3 (default-linux/x86/2004.3, gcc-3.4.1, glibc-2.3.4.20040808-r1,
 2.6.9-gentoo-r6 i686)
=================================================================
System uname: 2.6.9-gentoo-r6 i686 Intel(R) Pentium(R) M processor 2.00GHz
Gentoo Base System version 1.4.16
ccache version 2.3 [enabled]
Autoconf: sys-devel/autoconf-2.59-r5
Automake: sys-devel/automake-1.8.5-r1
Binutils: sys-devel/binutils-2.15.90.0.1.1-r3
Headers:  sys-kernel/linux26-headers-2.6.8.1
Libtools: sys-devel/libtool-1.5.2-r7
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CFLAGS="-O2 -mtune=pentium-m -fomit-frame-pointer -mfpmath=sse -mmmx -msse -msse
2"
CHOST="i686-pc-linux-gnu"
COMPILER=""
CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3/s
hare/config /usr/share/config /usr/share/texmf/dvipdfm/config/ /usr/share/texmf/
dvips/config/ /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/c
onfig/ /usr/share/texmf/xdvi/ /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-O2 -mtune=pentium-m -fomit-frame-pointer -mfpmath=sse -mmmx -msse -ms
se2"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoaddcvs autoconfig candy ccache distlocks sandbox sfperms strict us
erpriv usersandbox"
GENTOO_MIRRORS="http://mirror.datapipe.net/gentoo"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY=""
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="x86"
Comment 1 SpanKY gentoo-dev 2004-12-01 18:34:48 UTC
use baselayout-1.11.6+
Comment 2 Bharath Ramesh 2004-12-01 19:30:25 UTC
Just upgraded baselayout to baselayout-1.11.6-r1, sysvinit to sysvint-2.85-r1 and bash to bash-3.0-r7

I still have the same problem.
Comment 3 Bharath Ramesh 2004-12-11 09:08:13 UTC
Changing RC_DEVICE_TARBALL="yes" from no doesnt help. Everytime at boot I need to run vgchange -a y manually and then restart checkfs.
Comment 4 Michael Hordijk 2004-12-14 14:12:19 UTC
Are you loading dm-mod as module?  I do, and I found that checkfs had problems.  It was associated with the amount of delay between when dm-mod gets loaded and when udev makes /dev/mapper available.  In order to fix this I put a little sleep loop into /etc/init.d/checkfs.  See the attached patch.  It'll wait up to 10 seconds, which so far has been long enough on every system I've used it on (5 or 6 now).
Comment 5 Michael Hordijk 2004-12-14 14:14:30 UTC
Created attachment 45993 [details, diff]
Sleep loop for udev and loading lvm as a module

Just an idea, and how I solved my problem.  I'm sure others have experienced
this same issue.
Comment 6 Bharath Ramesh 2004-12-14 14:15:23 UTC
Yes I have dm-mod compiled as a module. Probably should either use the sleep or just compile it into the kernel.
Comment 7 SpanKY gentoo-dev 2004-12-14 17:22:58 UTC
busy/sleep loops wont be added to baselayout
Comment 8 Bharath Ramesh 2004-12-15 08:31:47 UTC
Seems like the only way to reslove this without using busy/sleep loops is probably to to add a comment in /etc/conf.d/rc would be to mention that dm-mod should be compiled into the kernel for you to use

RC_DEVICE_TARBALL="no"

It will be interesting to see if other distributions have the same problem. I know that debian doesnt use device tarball at all.
Comment 9 Edward Middleton 2004-12-27 01:38:39 UTC
I have compiled dm-mod into the kernel and it made not difference.  Adding sleep looping was the only way I could get it to work.
Comment 10 Bharath Ramesh 2005-01-30 22:24:36 UTC
Compiling dm-mod into the kernel fixed my problems. No need for sleep loop.
Comment 11 Petteri Räty (RETIRED) gentoo-dev 2005-03-23 13:39:47 UTC
I can verify that for me on a P4 2,4 GHz, baselayout-1.11.10-r2 and udev-045 with no RC_DEVICE_TARBALL you need to have dm-mod compiled into the kernel or it will not work. I think that a comment in /etc/conf.d/rc would be nice. 
Comment 12 Jakub Moc (RETIRED) gentoo-dev 2005-03-24 15:27:52 UTC
It works with multipath-tools emerged (see Bug 71703); well, except for a little bug caused by dynamic linking of /sbin/multipath to sysfsutils library placed in /usr/lib (see http://bugs.gentoo.org/show_bug.cgi?id=71703#c19)

I have successfully tested with the following package versions:

sys-fs/lvm2-2.00.33-r2
sys-fs/multipath-tools-0.4.2
sys-fs/device-mapper-1.00.19-r2
sys-fs/sysfsutils-0.4.0 (sys-fs/sysfsutils-1.2.0 works too)
sys-fs/udev-056 (sys-fs/udev-054 works as well)

gentoo-dev-sources-2.6.11-r4, dm-mod is compiled as a module. 
Comment 13 SpanKY gentoo-dev 2005-04-26 20:37:53 UTC
*** Bug 90567 has been marked as a duplicate of this bug. ***
Comment 14 Eric Edgar (RETIRED) gentoo-dev 2006-04-19 20:30:08 UTC
reopen this bug if its still an issue but this should have been resolved by now