Skip to content

Commit

Permalink
x86, setup: guard against pre-ACPI 3 e820 code not updating %ecx
Browse files Browse the repository at this point in the history
Impact: BIOS bug safety

For pre-ACPI 3 BIOSes, pre-initialize the end of the e820 buffer just
in case the BIOS returns an unchanged %ecx but without actually
touching the ACPI 3 extended flags field.

Signed-off-by: H. Peter Anvin <[email protected]>
  • Loading branch information
H. Peter Anvin committed Apr 1, 2009
1 parent c549e71 commit cd67059
Showing 1 changed file with 6 additions and 0 deletions.
6 changes: 6 additions & 0 deletions arch/x86/boot/memory.c
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,12 @@ static int detect_memory_e820(void)
struct e820entry *desc = boot_params.e820_map;
static struct e820_ext_entry buf; /* static so it is zeroed */

/*
* Set this here so that if the BIOS doesn't change this field
* but still doesn't change %ecx, we're still okay...
*/
buf.ext_flags = 1;

do {
size = sizeof buf;

Expand Down

0 comments on commit cd67059

Please sign in to comment.