From: Martin Knoblauch <knobi@knobisoft.de>
To: "Rafael J. Wysocki" <rjw@sisk.pl>
Cc: linux-kernel@vger.kernel.org, efault@gmx.de,
tigran aivazian <tigran@aivazian.fsnet.co.uk>
Subject: Analyzed/Solved: Booting 2.6.30-rc2-git7 very slow
Date: Fri, 24 Apr 2009 05:45:19 -0700 (PDT) [thread overview]
Message-ID: <409142.83316.qm@web32605.mail.mud.yahoo.com> (raw)
----- Original Message ----
> From: Martin Knoblauch <knobi@knobisoft.de>
> To: Rafael J. Wysocki <rjw@sisk.pl>
> Cc: linux-kernel@vger.kernel.org; efault@gmx.de
> Sent: Wednesday, April 22, 2009 6:55:27 PM
> Subject: Re: Booting 2.6.30-rc2-git7 very slow
>
> ----- Original Message ----
>
> > From: Martin Knoblauch
> > To: Rafael J. Wysocki
> > Cc: linux-kernel@vger.kernel.org; efault@gmx.de
> > Sent: Wednesday, April 22, 2009 1:32:25 PM
> > Subject: Re: Booting 2.6.30-rc2-git7 very slow
> >
> > ----- Original Message ----
> >
> > > From: Martin Knoblauch
> > > To: Rafael J. Wysocki
> > > Cc: linux-kernel@vger.kernel.org
> > > Sent: Wednesday, April 22, 2009 11:56:27 AM
> > > Subject: Re: Booting 2.6.30-rc2-git7 very slow
> > >
> > > > From: Rafael J. Wysocki
> > >
> > > > To: Martin Knoblauch
> > > > Cc: linux-kernel@vger.kernel.org
> > > > Sent: Tuesday, April 21, 2009 9:12:20 PM
> > > > Subject: Re: Booting 2.6.30-rc2-git7 very slow
> > > >
> > > > On Tuesday 21 April 2009, Martin Knoblauch wrote:
> > > > >
> > > > > Hi, [please CC me on replies, as I am not subscribed]
> > > > >
> > > > > booting 2.6.30-rc2-git7 on a HP/DL380G3 (x86_64, RHEL4.3, 64 bit
> > > userspace)
> > > > is much slower that it used to be. It seems I run into timeouts when
> [trying
> >
> > > to]
> > > > load intel and tg3 microcodes:
> > > > >
> > > > > [ 14.478892] platform microcode: firmware: requesting
> > intel-ucode/0f-04-0a
> > > > > [ 74.476741] platform microcode: firmware: requesting
> > intel-ucode/0f-04-0a
> > > > > [ 134.476638] platform microcode: firmware: requesting
> > intel-ucode/0f-04-0a
> > > > > [ 194.476637] platform microcode: firmware: requesting
> > intel-ucode/0f-04-0a
> > > > > [ 254.476493] Microcode Update Driver: v2.00 ,
> > > > Peter Oruba
> > > > > [ 254.718489] Microcode Update Driver: v2.00 removed.
> > > > >
> > > > > So, we see 60 seconds for eaoch of the CPUs
> > > > >
> > > > > [ 255.273426] tg3 0000:03:01.0: PME# disabled
> > > > > [ 257.833769] tg3: eth0: Link is up at 1000 Mbps, full duplex.
> > > > > [ 257.833775] tg3: eth0: Flow control is off for TX and off for RX.
> > > > > [ 269.643973] tg3 0000:03:01.1: firmware: requesting tigon/tg3_tso.bin
> > > > > [ 329.640456] eth1: Failed to load firmware "tigon/tg3_tso.bin"
> > > > > [ 329.640463] eth1: TSO capability disabled.
> > > > > [ 329.640487] tg3 0000:03:01.1: PME# disabled
> > > > > [ 333.081753] tg3: eth1: Link is up at 1000 Mbps, full duplex.
> > > > > [ 333.081759] tg3: eth1: Flow control is off for TX and off for RX.
> > > > >
> > > > > We see 60 seconds for eth1, complaining about a failed firmware load.
> > > > > /lib/firmware/tigon/tg3_tso.bin does exist and is from the current
> > > > > build.
> > > >
> > > > Do I assume correctly that 2.6.29 did not have this problem?
> > > >
> > >
> > > Just checked. 2.6.29 has exactely the same problem. 2.6.28.2 was OK. This is
>
> > > from the 2.6.29 boot:
> > >
> > > [ 14.308340] platform microcode: firmware: requesting intel-ucode/0f-04-0a
> > > [ 74.304612] platform microcode: firmware: requesting intel-ucode/0f-04-0a
> > > [ 134.304651] platform microcode: firmware: requesting intel-ucode/0f-04-0a
> > > [ 194.304638] platform microcode: firmware: requesting intel-ucode/0f-04-0a
> > > [ 254.304597] Microcode Update Driver: v2.00 , Peter Oruba
> > > [ 254.546200] Microcode Update Driver: v2.00 removed.
> >
> > In case of the platform microcode, the delays happen when doing:
> >
> > /sbin/modprobe microcode
> >
> > from the init script. I have a "microcode.dat" File in both /etc/ and
> > /etc/firmware.
> >
> > > [ 255.088405] tg3 0000:03:01.0: PME# disabled
> > > [ 257.669617] tg3: eth0: Link is up at 1000 Mbps, full duplex.
> > > [ 257.669622] tg3: eth0: Flow control is off for TX and off for RX.
> > > [ 269.456132] tg3 0000:03:01.1: firmware: requesting tigon/tg3_tso.bin
> > > [ 329.456495] eth1: Failed to load firmware "tigon/tg3_tso.bin"
> > > [ 329.456500] eth1: TSO capability disabled.
> > > [ 329.456524] tg3 0000:03:01.1: PME# disabled
> > > [ 332.921832] tg3: eth1: Link is up at 1000 Mbps, full duplex.
> > > [ 332.921837] tg3: eth1: Flow control is off for TX and off for RX.
> > >
> > >
> >
>
> OK, I was able to solve the tg3 failure by adding "tigon/tg3_tso.bin" to
> CONFIG_EXTRA_FIRMWARE. I tried the same with the CPU microcode (after copying
> /etc/firmware/microcode.dat to $BUILDDIR/firmware/), but no success.
>
> Searching the archives also found some mentioning that I might need special
> udev-rules to make firmware loading work again transparently. But no explicit
> solution.
>
> I find this new (since 2.6.29) behaviour:
>
> - very unexpected
> - not well documented
> - the EXTRA_FIRMWARE solution very unscalable
>
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
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?
Cheers
Martin
next reply other threads:[~2009-04-24 12:45 UTC|newest]
Thread overview: 39+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-04-24 12:45 Martin Knoblauch [this message]
2009-04-29 1:28 ` Analyzed/Solved: Booting 2.6.30-rc2-git7 very slow Andrew Morton
2009-04-29 3:51 ` Mike Galbraith
2009-04-29 8:17 ` Andrew Morton
2009-04-29 9:36 ` Martin Knoblauch
2009-04-29 9:45 ` Martin Knoblauch
2009-04-29 12:08 ` Al Viro
2009-04-29 14:18 ` Mike Galbraith
2009-04-29 14:34 ` Al Viro
2009-04-29 17:28 ` Martin Knoblauch
2009-04-29 19:11 ` Mike Galbraith
2009-05-05 22:49 ` Andrew Morton
2009-05-06 4:45 ` Mike Galbraith
2009-05-06 7:55 ` Martin Knoblauch
2009-05-06 8:37 ` Mike Galbraith
2009-05-06 10:57 ` Martin Knoblauch
2009-05-20 10:22 ` Analyzed/Solved/Bisected: " Martin Knoblauch
2009-05-27 6:31 ` Andrew Morton
2009-05-27 9:14 ` Martin Knoblauch
2009-05-27 11:21 ` Matthew Wilcox
2009-05-27 11:53 ` Martin Knoblauch
2009-05-27 18:07 ` jim owens
2009-05-27 18:18 ` Miller, Mike (OS Dev)
2009-05-27 20:12 ` jim owens
2009-05-27 21:18 ` Miller, Mike (OS Dev)
2009-05-28 8:59 ` Martin Knoblauch
2009-05-28 19:01 ` Miller, Mike (OS Dev)
2009-05-28 20:48 ` Martin Knoblauch
2009-04-29 17:24 ` Analyzed/Solved: " Martin Knoblauch
2009-04-29 17:35 ` Valdis.Kletnieks
2009-04-29 17:43 ` Al Viro
2009-04-30 13:02 ` Olivier Galibert
2009-04-29 17:45 ` Martin Knoblauch
2009-04-29 17:41 ` Al Viro
2009-04-29 17:51 ` Martin Knoblauch
2009-04-29 18:10 ` Al Viro
2009-04-30 9:12 ` Martin Knoblauch
2009-05-27 6:22 ` Andrew Morton
2009-04-29 9:34 ` Martin Knoblauch
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=409142.83316.qm@web32605.mail.mud.yahoo.com \
--to=knobi@knobisoft.de \
--cc=efault@gmx.de \
--cc=linux-kernel@vger.kernel.org \
--cc=rjw@sisk.pl \
--cc=tigran@aivazian.fsnet.co.uk \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox