Paul Menzel (paulepanter@users.sourceforge.net) just uploaded a new patch set to gerrit, which you can find at https://review.coreboot.org/13732
-gerrit
commit d35d7b325f7de0ac1938654fcef564db18e222a2 Author: Aaron Durbin adurbin@chromium.org Date: Thu Feb 18 15:39:16 2016 +0100
lib/cbfs: Use ulzman to fix boot time regression
Change-Id: Iaa0e18a73ca1c291f1349754d705617f1324edba Signed-off-by: Paul Menzel paulepanter@users.sourceforge.net --- src/lib/cbfs.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/src/lib/cbfs.c b/src/lib/cbfs.c index 55a8536..b277676 100644 --- a/src/lib/cbfs.c +++ b/src/lib/cbfs.c @@ -68,13 +68,14 @@ void *cbfs_boot_map_with_leak(const char *name, uint32_t type, size_t *size) return rdev_mmap(&fh.data, 0, fsize); }
-static size_t inflate(void *src, void *dst) +static size_t inflate(void *src, size_t src_sz, void *dst, size_t dst_sz) { if (ENV_BOOTBLOCK || ENV_VERSTAGE) return 0; if (ENV_ROMSTAGE && !IS_ENABLED(CONFIG_COMPRESS_RAMSTAGE)) return 0; - return ulzma(src, dst); + + return ulzman(src, src_sz, dst, dst_sz); }
static inline int tohex4(unsigned int c) @@ -161,7 +162,7 @@ int cbfs_prog_stage_load(struct prog *pstage) if (map == NULL) return -1;
- fsize = inflate(map, load); + fsize = inflate(map, fsize, load, stage.memlen);
rdev_munmap(fh, map);