Files
ubports_kernel_google_msm/arch/x86/kernel
Prarit Bhargava d6be118a97 x86: fix memmap=exactmap boot argument
When using kdump modifying the e820 map is yielding strange results.

For example starting with

 BIOS-provided physical RAM map:
 BIOS-e820: 0000000000000100 - 0000000000093400 (usable)
 BIOS-e820: 0000000000093400 - 00000000000a0000 (reserved)
 BIOS-e820: 0000000000100000 - 000000003fee0000 (usable)
 BIOS-e820: 000000003fee0000 - 000000003fef3000 (ACPI data)
 BIOS-e820: 000000003fef3000 - 000000003ff80000 (ACPI NVS)
 BIOS-e820: 000000003ff80000 - 0000000040000000 (reserved)
 BIOS-e820: 00000000e0000000 - 00000000f0000000 (reserved)
 BIOS-e820: 00000000fec00000 - 00000000fec10000 (reserved)
 BIOS-e820: 00000000fee00000 - 00000000fee01000 (reserved)
 BIOS-e820: 00000000ff000000 - 0000000100000000 (reserved)

and booting with args

memmap=exactmap memmap=640K@0K memmap=5228K@16384K memmap=125188K@22252K memmap=76K#1047424K memmap=564K#1047500K

resulted in:

 user-defined physical RAM map:
 user: 0000000000000000 - 0000000000093400 (usable)
 user: 0000000000093400 - 00000000000a0000 (reserved)
 user: 0000000000100000 - 000000003fee0000 (usable)
 user: 000000003fee0000 - 000000003fef3000 (ACPI data)
 user: 000000003fef3000 - 000000003ff80000 (ACPI NVS)
 user: 000000003ff80000 - 0000000040000000 (reserved)
 user: 00000000e0000000 - 00000000f0000000 (reserved)
 user: 00000000fec00000 - 00000000fec10000 (reserved)
 user: 00000000fee00000 - 00000000fee01000 (reserved)
 user: 00000000ff000000 - 0000000100000000 (reserved)

But should have resulted in:

 user-defined physical RAM map:
 user: 0000000000000000 - 00000000000a0000 (usable)
 user: 0000000001000000 - 000000000151b000 (usable)
 user: 00000000015bb000 - 0000000008ffc000 (usable)
 user: 000000003fee0000 - 000000003ff80000 (ACPI data)

This is happening because of an improper usage of strcmp() in the
e820 parsing code.  The strcmp() always returns !0 and never resets the
value for e820.nr_map and returns an incorrect user-defined map.

This patch fixes the problem.

Signed-off-by: Prarit Bhargava <prarit@redhat.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
2008-09-09 11:54:53 -07:00
..
2008-07-24 10:47:22 -07:00
2008-07-16 10:58:55 +02:00
2008-07-18 14:35:14 +02:00
2008-09-09 11:54:53 -07:00
2008-07-23 18:00:30 -07:00
2008-07-23 17:55:22 -07:00
2008-07-27 21:43:11 +02:00
2008-07-08 13:16:14 +02:00
2008-08-14 13:23:45 +02:00
2008-07-01 11:03:31 +02:00
2008-06-02 11:55:52 +02:00
2008-07-16 10:54:39 +02:00
2008-08-15 08:35:43 -07:00
2008-07-26 12:00:04 -07:00
2008-08-21 12:42:23 +02:00
2008-07-16 12:15:17 -07:00
2008-06-12 18:05:42 -07:00
2008-08-22 08:01:54 +02:00
2008-07-06 14:01:50 +02:00
2008-07-16 12:15:17 -07:00
2008-07-18 18:51:57 +02:00
2008-08-21 10:01:52 +02:00
2008-08-08 15:22:02 -07:00
2008-05-25 08:58:24 +02:00