diff options
author | Joel Kitching <kitching@google.com> | 2020-02-08 10:58:48 +0800 |
---|---|---|
committer | Julius Werner <jwerner@chromium.org> | 2020-02-10 21:25:14 +0000 |
commit | 8a3bc3be922766b6b9a34499dc2124f038b3f467 (patch) | |
tree | cd46becc4c0dd652830def79d0dbb130813a108a /src/security/vboot/bootmode.c | |
parent | 9f78faedabba30d491e7a5b923bd57b27e986c1d (diff) | |
download | coreboot-8a3bc3be922766b6b9a34499dc2124f038b3f467.tar.xz |
vboot: correct workbuf size when VBOOT_STARTS_IN_ROMSTAGE
Part of the design of vboot persistent context is that the workbuf gets
placed in CBMEM and stays there for depthcharge to use in kernel
verification. As such, the space allocated in CBMEM needs to be at least
VB2_KERNEL_WORKBUF_RECOMMENDED_SIZE.
In the VBOOT_STARTS_IN_ROMSTAGE case, prior to this CL, vboot_get_context()
would get invoked for the first time after CBMEM comes up, and it would
only allocate VB2_FIRMWARE_WORKBUF_RECOMMENDED_SIZE.
Initialize the workbuf directly in vboot_setup_cbmem() instead with the
correct VB2_KERNEL_WORKBUF_RECOMMENDED_SIZE.
BUG=b:124141368, chromium:994060
TEST=make clean && make test-abuild
TEST=boot on GOOGLE_EVE with VBOOT_STARTS_IN_ROMSTAGE set
BRANCH=none
Change-Id: Ie09c39f960b3f14f3a64c648eee6ca3f23214d9a
Signed-off-by: Joel Kitching <kitching@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/38778
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-by: Raul Rangel <rrangel@chromium.org>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Diffstat (limited to 'src/security/vboot/bootmode.c')
0 files changed, 0 insertions, 0 deletions