Commit a6432ded299726f123b93d0132fead200551535c

Authored by Wang YanQing
Committed by Rafael J. Wysocki
1 parent a50188dae3

ACPI: Fix wrong parameter passed to memblock_reserve

Commit 53aac44 (ACPI: Store valid ACPI tables passed via early initrd
in reserved memblock areas) introduced acpi_initrd_override() that
passes a wrong value as the second argument to memblock_reserve().

Namely, the second argument of memblock_reserve() is the size of the
region, not the address of the top of it, so make
acpi_initrd_override() pass the size in there as appropriate.

[rjw: Changelog]
Signed-off-by: Wang YanQing <udknight@gmail.com>
Acked-by: Yinghai Lu <yinghai@kernel.org>
Cc: 3.8+ <stable@vger.kernel.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>

Showing 1 changed file with 1 additions and 1 deletions Side-by-side Diff

... ... @@ -641,7 +641,7 @@
641 641 * Both memblock_reserve and e820_add_region (via arch_reserve_mem_area)
642 642 * works fine.
643 643 */
644   - memblock_reserve(acpi_tables_addr, acpi_tables_addr + all_tables_size);
  644 + memblock_reserve(acpi_tables_addr, all_tables_size);
645 645 arch_reserve_mem_area(acpi_tables_addr, all_tables_size);
646 646  
647 647 p = early_ioremap(acpi_tables_addr, all_tables_size);