From 23bb036dcb76c30efa708f09a96184583cc367d1 Mon Sep 17 00:00:00 2001 From: "Ronald G. Minnich" Date: Tue, 17 Jan 2017 23:20:48 -0800 Subject: lb_tables: make lb_mainboard and lb_strings record sizes 64-bit aligned They were sized to 32-bit alignment, this grows them to 64 bit-aligned. Change-Id: I494b942c4866a7912fb48a53f9524db20ac53a8c Signed-off-by: Ronald G. Minnich Reviewed-on: https://review.coreboot.org/18165 Tested-by: build bot (Jenkins) Tested-by: Raptor Engineering Automated Test Stand Reviewed-by: Stefan Reinauer Reviewed-by: Martin Roth --- src/lib/coreboot_table.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'src') diff --git a/src/lib/coreboot_table.c b/src/lib/coreboot_table.c index f8da6580cb..332d1d5010 100644 --- a/src/lib/coreboot_table.c +++ b/src/lib/coreboot_table.c @@ -46,6 +46,7 @@ #if CONFIG_ARCH_X86 #include #endif +#include static struct lb_header *lb_table_init(unsigned long addr) { @@ -348,10 +349,9 @@ static struct lb_mainboard *lb_mainboard(struct lb_header *header) mainboard = (struct lb_mainboard *)rec; mainboard->tag = LB_TAG_MAINBOARD; - mainboard->size = (sizeof(*mainboard) + + mainboard->size = ALIGN_UP(sizeof(*mainboard) + strlen(mainboard_vendor) + 1 + - strlen(mainboard_part_number) + 1 + - 3) & ~3; + strlen(mainboard_part_number) + 1, 8); mainboard->vendor_idx = 0; mainboard->part_number_idx = strlen(mainboard_vendor) + 1; @@ -402,7 +402,7 @@ static void lb_strings(struct lb_header *header) rec = (struct lb_string *)lb_new_record(header); len = strlen(strings[i].string); rec->tag = strings[i].tag; - rec->size = (sizeof(*rec) + len + 1 + 3) & ~3; + rec->size = ALIGN_UP(sizeof(*rec) + len + 1, 8); memcpy(rec->string, strings[i].string, len+1); } -- cgit v1.2.3