[U-Boot] [PATCH v5 07/20] env: Add support for callbacks to environment vars

Stefan Roese sr at denx.de
Fri Jan 11 09:06:15 CET 2013


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?

Thanks,
Stefan



More information about the U-Boot mailing list