[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] [PATCH]acpi: enlarge NUM_FIXMAP_ACPI_PAGES from 4 to 5

  • To: "xen-devel@xxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxx>
  • From: "Zhangbo (Oscar)" <oscar.zhangbo@xxxxxxxxxx>
  • Date: Thu, 4 May 2017 02:59:10 +0000
  • Accept-language: zh-CN, en-US
  • Delivery-date: Thu, 04 May 2017 02:59:40 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xen.org>
  • Thread-index: AdLEgk4v/0Klkhg9TPax4OWLlRXTKg==
  • Thread-topic: [PATCH]acpi: enlarge NUM_FIXMAP_ACPI_PAGES from 4 to 5

    In __acpi_map_table(), it suppose all ACPI tables may not exceed 4 pages.
    but nowadays ACPI tables, such as SRAT table, are large enough, On my
    BIOS board, the SRAT table achieves the size of 14428B, although it's
    above 3 pages and within 4pages, but in __acpi_map_table(), it maps pages
    to get the table. suppose the start address is near the end of the first 

              1000B    4096B         4096B          4096B     1140B

    although the total page is within 4pages , but it may be in fact across 5
    pages, thus the NUM_FIXMAP_ACPI_PAGES should be at least 5 nowadays. If
    not, xen would wrongly thinks no NUMA configuation could be found as that it
    could not get SRAT table.

diff --git a/xen/include/xen/acpi.h b/xen/include/xen/acpi.h
index 30ec0ee..bd616a1 100644
--- a/xen/include/xen/acpi.h
+++ b/xen/include/xen/acpi.h
@@ -43,7 +43,7 @@
  * Fixmap pages to reserve for ACPI boot-time tables (see asm-x86/fixmap.h or
  * asm-arm/config.h)

 #define BAD_MADT_ENTRY(entry, end) (                                        \
                 (!(entry)) || (unsigned long)(entry) + sizeof(*(entry)) > 
(end) ||  \

Xen-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.