[LinuxBIOS] [PATCH] v3: add a check for a termination member
rminnich at gmail.com
Sat Jan 5 23:23:21 CET 2008
On Jan 5, 2008 2:13 PM, Stefan Reinauer <stepan at coresystems.de> wrote:
> Carl-Daniel Hailfinger wrote:
> > Check for a terminating LAR member which tells us that no further LAR
> > member except the bootblock will be found after this member.
> > The LAR member has a normal MAGIC, but all other parts of struct
> > lar_header are 0xff. That way, adding a new member in place of the
> > terminating member will not need an erase cycle.
> I don't see a gain in this. Since we know the position and size of the
> lar archive anyways, we know nothing will come after the bootblock.
OK, I'm back. Stefan, we don't really need this for correctness. But
on the alix1c I am observing huge delays at startup while find_file
iterates through 512KB of empty FLASH looking
for entries that are not there. So the goal here is to have a header
which says "I'm the last one" so we can short-circuit scanning all of
flash. This one change will shave quite a few seconds from boot time.
> There should not be any headers that do not belong to real "files" in
> the lar, that would be breaking our model.
The model is fine, it's just slow. This is a performance patch.None of
us anticipated the slowness of walking FLASH looking for LAR headers.
More information about the coreboot