[coreboot-gerrit] New patch to review for coreboot: drivers/elog: put back 4KiB limit
Aaron Durbin (adurbin@chromium.org)
gerrit at coreboot.org
Mon Jul 25 15:48:15 CEST 2016
Aaron Durbin (adurbin at chromium.org) just uploaded a new patch set to gerrit, which you can find at https://review.coreboot.org/15835
-gerrit
commit 553aa5ac45a449945689de7dd69171c4a3b5f3a2
Author: Aaron Durbin <adurbin at chromium.org>
Date: Mon Jul 25 08:44:57 2016 -0500
drivers/elog: put back 4KiB limit
The removal of ELOG_FLASH_BASE and ELOG_FLASH_SIZE resulted
in the FMAP region for the eventlog to be honored. However,
certain systems seem to have a large eventlog region that
wasn't being used in practice. Because of the malloc() in the
eventlog init sequence a large allocation was now being requested
that can exhaust the heap. Put back the 4KiB capacity until
the resource usage is fixed.
BUG=chrome-os-partner:55593
Change-Id: Ib54b396b48e5be80f737fc3feb0d58348c0d2844
Signed-off-by: Aaron Durbin <adurbin at chromium.org>
---
src/drivers/elog/elog.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/src/drivers/elog/elog.c b/src/drivers/elog/elog.c
index 9566078..0bb4d16 100644
--- a/src/drivers/elog/elog.c
+++ b/src/drivers/elog/elog.c
@@ -499,7 +499,8 @@ static void elog_find_flash(void)
flash_base = total_size = 0;
} else {
flash_base = region_offset(&r);
- total_size = region_sz(&r);
+ /* Keep 4KiB max size until large malloc()s have been fixed. */
+ total_size = MIN(4*KiB, region_sz(&r));
}
log_size = total_size - sizeof(struct elog_header);
More information about the coreboot-gerrit
mailing list