lkml.org 
[lkml]   [2009]   [Apr]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: Analyzed/Solved: Booting 2.6.30-rc2-git7 very slow

    ----- Original Message ----
    > From: Andrew Morton <akpm@linux-foundation.org>
    > To: Mike Galbraith <efault@gmx.de>
    > Cc: Martin Knoblauch <knobi@knobisoft.de>; Rafael J. Wysocki <rjw@sisk.pl>; linux-kernel@vger.kernel.org; tigran aivazian <tigran@aivazian.fsnet.co.uk>; Al Viro <viro@zeniv.linux.org.uk>
    > Sent: Wednesday, April 29, 2009 10:17:55 AM
    > Subject: Re: Analyzed/Solved: Booting 2.6.30-rc2-git7 very slow
    >
    > On Wed, 29 Apr 2009 05:51:36 +0200 Mike Galbraith wrote:
    >
    > > On Tue, 2009-04-28 at 18:28 -0700, Andrew Morton wrote:
    > > > On Fri, 24 Apr 2009 05:45:19 -0700 (PDT) Martin Knoblauch
    > wrote:
    > > >
    > > > >
    > > > >
    > > > > OK, I just found the reason for both intel-ucode and tg3 failures.
    > Apparently between 2.6.28 and 2.6.29 the mount of sysfs has subtely changed
    > from:
    > > > >
    > > > > /sys /sys sysfs rw 0 0
    > > > >
    > > > > to:
    > > > >
    > > > > none /sys sysfs rw,relatime 0 0
    > > >
    > > > I assume that you're referring to the contents of /proc/mounts?
    > > >
    > > > > The "none" breaks the RHEL-4 provided hotplug script "firmware.agent"
    > when it tries to parse the mount point for "/sys". As a result, the firmware
    > loading is never properly finished and the driver(s) just timeout on the value
    > in /sys/class/firmware/timeout. Bingo. Simple fix in user-pace possible - cool
    > down Martin :-)
    > > > >
    > > > > Questions remains: was this intentional? It breaks existing userspace and
    > should therefore be considered a regression - right? On the other hand, it will
    > never be a problem for RHEL-4/5 kernels, unless the change in 2.6.29 gets
    > backported. Any ideas?
    > > >
    > > > afaik that was unintentional and was probably a mistake.
    > > >
    > > > I wonder how we did that.
    > >
    > >
    > > > [hotplug]# grep sysfs /proc/mounts
    > > > none /sys sysfs rw,relatime 0 0
    > > > /sys /sys sysfs rw,relatime 0 0
    > >
    > > ___(I wonder how the heck that is accomplished)
    > >
    >
    > Beats me. I'm not seeing likely changes in fs/proc/base.c or around
    > show_mountinfo(). Maybe sysfs broke in an ingenious way. (hopefully
    > cc's viro).
    >
    > Displaying relatime seems a bit pointless too.

    Hmm. I actually believe the "none" line comes out of /etc/fstab, but was never before displayed in /proc/mount.

    This is from 2.6.19:

    [root@lpsdm60 ~]# grep sysfs /etc/fstab
    none /sys sysfs defaults 0 0
    [root@lpsdm60 ~]# mount | grep sysfs
    none on /sys type sysfs (rw)
    [root@lpsdm60 ~]# grep sysfs /proc/mounts
    /sys /sys sysfs rw 0 0

    And this is from 2.6.30:

    [root@lpsdm52 linux-2.6.30-rc3-git2]# grep sysfs /etc/fstab
    none /sys sysfs defaults 0 0
    [root@lpsdm52 linux-2.6.30-rc3-git2]# mount | grep sysfs
    none on /sys type sysfs (rw)
    [root@lpsdm52 linux-2.6.30-rc3-git2]# grep sysfs /proc/mounts
    none /sys sysfs rw,relatime 0 0
    /sys /sys sysfs rw,relatime 0 0

    Any changes to mount-handling in 2.6.29?

    Cheers
    Martin



    \
     
     \ /
      Last update: 2009-04-29 11:47    [from the cache]
    ©2003-2014 Jasper Spaans. Advertise on this site