[U-Boot] [PATCH v5 07/20] env: Add support for callbacks to environment vars
Joe Hershberger
joe.hershberger at gmail.com
Tue Jan 15 00:23:30 CET 2013
Hi Stefan,
On Fri, Jan 11, 2013 at 2:06 AM, Stefan Roese <sr at denx.de> wrote:
> Hi Joe,
>
> On 12/12/2012 05:16 AM, Joe Hershberger wrote:
>> Add support for per-variable callbacks to the "hashtable" functions.
>
> I just noticed using latest master branch that booting on a NOR
> flash based board (sequoia, PPC440EPx based) a quite big delay
> (1..2 seconds) is added upon env_relocate() (real delay happens
> in himport_r()). Digging a bit deeper results in this patch
> (170ab11 [env: Add support for callbacks to environment vars])
> started this regression:
>
> [ 36.208317] < 0.004802> U-Boot 2013.01-rc1-00385-g170ab11 (Jan 11 2013 - 08:58:59)
> [ 36.209012] < 0.000695>
> [ 36.215956] < 0.006944> CPU: AMCC PowerPC 440EPx Rev. A at 528 MHz (PLB=132 OPB=66 EBC=66 PCI=33 MHz)
> [ 36.218730] < 0.002774> Security/Kasumi support
> [ 36.224290] < 0.005560> Bootstrap Option H - Boot ROM Location I2C (Addr 0x52)
> [ 36.229843] < 0.005553> Internal PCI arbiter enabled, PCI async ext clock used
> [ 36.232704] < 0.002861> 32 kB I-Cache 32 kB D-Cache
> [ 36.240869] < 0.008165> Board: Sequoia - AMCC PPC440EPx Evaluation Board, Rev. F, PCI-Async=33 MHz
> [ 36.242261] < 0.001392> I2C: ready
> [ 36.648652] < 0.406391> DRAM: 256 MiB
> [ 36.811658] < 0.163006> Flash: 64 MiB
> [ 36.813331] < 0.001673> NAND: 32 MiB
>
> himport_r()
>
> [ 37.808800] < 0.995469> PCI: Bus Dev VenId DevId Class Int
> [ 37.816780] < 0.007980> USB: Host(int phy) Device(ext phy)
> [ 37.820094] < 0.003314> Net: ppc_4xx_eth0, ppc_4xx_eth1
>
> Here you see the delay in himport_r() is approx 1 second.
>
> And with patch (2598090 [env: Add environment variable flags]) this
> delay even grows to 2 seconds:
>
> [ 3.096149] < 0.004800> U-Boot 2013.01-rc1-00392-g2598090 (Jan 11 2013 - 08:55:45)
> [ 3.096853] < 0.000704>
> [ 3.103805] < 0.006952> CPU: AMCC PowerPC 440EPx Rev. A at 528 MHz (PLB=132 OPB=66 EBC=66 PCI=33 MHz)
> [ 3.106575] < 0.002770> Security/Kasumi support
> [ 3.112135] < 0.005560> Bootstrap Option H - Boot ROM Location I2C (Addr 0x52)
> [ 3.117683] < 0.005548> Internal PCI arbiter enabled, PCI async ext clock used
> [ 3.120548] < 0.002865> 32 kB I-Cache 32 kB D-Cache
> [ 3.128716] < 0.008168> Board: Sequoia - AMCC PPC440EPx Evaluation Board, Rev. F, PCI-Async=33 MHz
> [ 3.130099] < 0.001383> I2C: ready
> [ 3.536470] < 0.406371> DRAM: 256 MiB
> [ 3.699894] < 0.163424> Flash: 64 MiB
> [ 3.701553] < 0.001659> NAND: 32 MiB
>
> himport_r()
>
> [ 5.690365] < 1.988812> PCI: Bus Dev VenId DevId Class Int
> [ 5.698395] < 0.008030> USB: Host(int phy) Device(ext phy)
> [ 5.701709] < 0.003314> Net: ppc_4xx_eth0, ppc_4xx_eth1
>
>
> Joe, I didn't dig deeper into these functions and patches. Do you
> have an idea why these patches introduce this delay? Can you
> reproduce this on one of your boards? Has anybody else noticed
> such issues?
That is far more than I would expect. Let me have a look at it.
Thanks for bringing this up.
Do you have an extremely large env?
Thanks,
-Joe
More information about the U-Boot
mailing list