Commit ae000eec authored by Linus Torvalds's avatar Linus Torvalds

Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/hpa/linux-2.6-x86setup

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/hpa/linux-2.6-x86setup:
  [x86 setup] Correct the SMAP check for INT 0x15, AX=0xe820
parents cdfef17d 4ee5b10a
...@@ -28,11 +28,14 @@ static int detect_memory_e820(void) ...@@ -28,11 +28,14 @@ static int detect_memory_e820(void)
do { do {
size = sizeof(struct e820entry); size = sizeof(struct e820entry);
id = SMAP;
/* Important: %edx is clobbered by some BIOSes,
so it must be either used for the error output
or explicitly marked clobbered. */
asm("int $0x15; setc %0" asm("int $0x15; setc %0"
: "=am" (err), "+b" (next), "+d" (id), "+c" (size), : "=d" (err), "+b" (next), "=a" (id), "+c" (size),
"=m" (*desc) "=m" (*desc)
: "D" (desc), "a" (0xe820)); : "D" (desc), "d" (SMAP), "a" (0xe820));
/* Some BIOSes stop returning SMAP in the middle of /* Some BIOSes stop returning SMAP in the middle of
the search loop. We don't know exactly how the BIOS the search loop. We don't know exactly how the BIOS
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment