From 59acc08fd95aefb5430458a08a82b15a4174ed74 Mon Sep 17 00:00:00 2001 From: "Antonino A. Daplas" Date: Thu, 2 Aug 2007 18:16:46 +0800 Subject: [x86 setup] video setup: Fix VBE DDC reading Add memory operand constraint and write-only modifier to the inline assembly to effect the writing of the EDID block to boot_params.edid_info. Without this, gcc would think the EDID query was dead code and would eliminate it. Signed-off-by: Antonino Daplas Signed-off-by: H. Peter Anvin --- arch/i386/boot/video-vesa.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/i386/boot/video-vesa.c b/arch/i386/boot/video-vesa.c index e6aa9eb8d93..f1bc71e948c 100644 --- a/arch/i386/boot/video-vesa.c +++ b/arch/i386/boot/video-vesa.c @@ -268,7 +268,7 @@ void vesa_store_edid(void) dx = 0; /* EDID block number */ di =(size_t) &boot_params.edid_info; /* (ES:)Pointer to block */ asm(INT10 - : "+a" (ax), "+b" (bx), "+d" (dx) + : "+a" (ax), "+b" (bx), "+d" (dx), "=m" (boot_params.edid_info) : "c" (cx), "D" (di) : "esi"); #endif /* CONFIG_FIRMWARE_EDID */ -- cgit v1.2.3-70-g09d2 From 463c9a9f7d1f746c251761cef3af5c808394b7e1 Mon Sep 17 00:00:00 2001 From: "H. Peter Anvin" Date: Thu, 2 Aug 2007 13:45:49 -0400 Subject: [x86 setup] EDD: add missing =m constraint Add a missing =m constraint to the EDD-probing code, that could have caused improper dead-code elimination. Signed-off-by: H. Peter Anvin --- arch/i386/boot/edd.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/i386/boot/edd.c b/arch/i386/boot/edd.c index 77d92daf792..658834d9f92 100644 --- a/arch/i386/boot/edd.c +++ b/arch/i386/boot/edd.c @@ -127,7 +127,7 @@ static int get_edd_info(u8 devno, struct edd_info *ei) ax = 0x4800; dx = devno; asm("pushfl; int $0x13; popfl" - : "+a" (ax), "+d" (dx) + : "+a" (ax), "+d" (dx), "=m" (ei->params) : "S" (&ei->params) : "ebx", "ecx", "edi"); -- cgit v1.2.3-70-g09d2 From c3887cd7253299cac2a6dc5ea792613a5ba5bf6a Mon Sep 17 00:00:00 2001 From: "H. Peter Anvin" Date: Thu, 2 Aug 2007 13:50:43 -0400 Subject: [x86 setup] Document grub < 0.93 as broken Grub older than 0.93 are broken when the kernel setup is bigger than 8K. This was fixed in 2002, and 0.93 was the first grub version which fixed this bug. Signed-off-by: H. Peter Anvin --- Documentation/Changes | 1 + 1 file changed, 1 insertion(+) diff --git a/Documentation/Changes b/Documentation/Changes index 73a8617f186..cb2b141b1c3 100644 --- a/Documentation/Changes +++ b/Documentation/Changes @@ -45,6 +45,7 @@ o nfs-utils 1.0.5 # showmount --version o procps 3.2.0 # ps --version o oprofile 0.9 # oprofiled --version o udev 081 # udevinfo -V +o grub 0.93 # grub --version Kernel compilation ================== -- cgit v1.2.3-70-g09d2