lkml.org 
[lkml]   [2005]   [Mar]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    SubjectRe: current linus bk, error mounting root
    Date
    On Mar 21, 2005, at 19:19, Andrew Morton wrote:
    > Jon Smirl <jonsmirl@gmail.com> wrote:
    >> Jens is right that this is a user space issue, but how many people are
    >> going to find this out the hard way when their root drives stop
    >> mounting. Since no one is complaining I have to assume that most
    >> kernel developers have their root device drivers built into the
    >> kernel. I was loading mine as a module since for a long time Redhat
    >> was not shipping kernels with SATA built in.
    >
    > I don't agree that this is a userspace issue. It's just not sane for a
    > driver to be in an unusable state for an arbitrary length of time after
    > modprobe returns.

    What about if I'm booting from a USB drive? In that case, because of
    the
    asynchrony of USB probing, it may take 1 or 2 seconds for my attached
    hub
    to power on, wake up, boot its embedded microprocessor, etc before it
    will
    respond to signals. In such a case, as far as the root hub can tell,
    there are _no_ external devices for a couple seconds, and that's
    ignoring
    that my external USB bootdrive may _also_ need time to "boot" before it
    will be accessible, and that's only once its parent hub has become
    available.

    I think that the kernel needs some kind of wait-for-device API that is
    accessible from kernel-space for the simple boot sequence, perhaps just
    waiting for a specific kobject to be detected and complete
    initialization.

    For an initrd/initramfs in userspace, dnotify on sysfs (For the static
    /dev case), or dnotify on /dev (For the udev case) should allow it to
    detect when the device is available.

    Cheers,
    Kyle Moffett

    -----BEGIN GEEK CODE BLOCK-----
    Version: 3.12
    GCM/CS/IT/U d- s++: a18 C++++>$ UB/L/X/*++++(+)>$ P+++(++++)>$
    L++++(+++) E W++(+) N+++(++) o? K? w--- O? M++ V? PS+() PE+(-) Y+
    PGP+++ t+(+++) 5 X R? tv-(--) b++++(++) DI+ D+ G e->++++$ h!*()>++$ r
    !y?(-)
    ------END GEEK CODE BLOCK------


    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2005-03-22 14:11    [W:4.027 / U:0.040 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site