[lkml]   [2004]   [Jun]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectBuggy RSDP search in ACPI boot-time code


I think that the 'high-memory' search range in acpi_find_rsdp() in
arch/i386/kernel/acpi.c (2.4.26) or arch/i386/kernel/acpi/boot.c
(2.6.5) is incorrect.

It is supposed to search 0xE0000-0x100000, but the length field is
incorrectly specified as 0xFFFFF. As in the 'proper' ACPI driver, the
correct length is 0x20000.

The current length means the search grooves on into the kernel itself,
but since the search string "RSD PTR" only appears in the data
section, the search will usually terminate before finding
'itself'. The fact that the search occurs only on 16-byte boundaries
also helps.

Probably best to fix this though. :-) I've already had to for the Xen
VMM (much smaller codebase means that the search string resides within
the too-large search space).

-- Keir Fraser

PS. Please CC me with responses -- I'm not subscribed.
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
More majordomo info at
Please read the FAQ at

 \ /
  Last update: 2005-03-22 14:03    [W:0.029 / U:1.188 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site