+ i386-boot-add-an-elf-header-to-bzimage-fix-fix-fix.patch added to -mm tree

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

 



The patch titled

     i386-boot-add-an-elf-header-to-bzimage fix 3

has been added to the -mm tree.  Its filename is

     i386-boot-add-an-elf-header-to-bzimage-fix-fix-fix.patch

See http://www.zip.com.au/~akpm/linux/patches/stuff/added-to-mm.txt to find
out what to do about this

------------------------------------------------------
Subject: i386-boot-add-an-elf-header-to-bzimage fix 3
From: Vivek Goyal <vgoyal@xxxxxxxxxx>


I have added cld in the regenerated patch below.

Also one more minor nit. stosb relies on being %es set properly. By the
time control reaches loader_ok, i could not find %es being set explicitly
hence I am assuming we are relying on bootloader to set it up for us.

Maybe we can be little more paranoid and setup the %es before stosb. I
have done this change too in the attached patch. Pleaese have a look.
I know little about assembly code.

In the lazy programmer school of fixes.

I haven't really tested this in any configuration.
But reading video.S it does use variable in the bootsector.
It does seem to initialize the variables before use.
But obviously something is missed.

By zeroing the uninteresting parts of the bootsector just after we
have determined we are loaded ok.  We should ensure we are
always in a known state the entire time.

Andrew if I am right about the cause of your video not working
when you set an enhanced video mode this should fix your boot
problem.

Signed-off-by: Vivek Goyal <vgoyal@xxxxxxxxxx>
Cc: "Eric W. Biederman" <ebiederm@xxxxxxxxxxxx>
Cc: "H. Peter Anvin" <hpa@xxxxxxxxx>
Signed-off-by: Andrew Morton <akpm@xxxxxxxx>
---

 arch/i386/boot/setup.S |    4 ++++
 1 file changed, 4 insertions(+)

diff -puN arch/i386/boot/setup.S~i386-boot-add-an-elf-header-to-bzimage-fix-fix-fix arch/i386/boot/setup.S
--- a/arch/i386/boot/setup.S~i386-boot-add-an-elf-header-to-bzimage-fix-fix-fix
+++ a/arch/i386/boot/setup.S
@@ -288,9 +288,13 @@ loader_panic_mess: .string "Wrong loader
 
 loader_ok:
 # Zero initialize the variables we keep in the bootsector
+	movw	%cs, %ax			# aka SETUPSEG
+	subw	$DELTA_INITSEG, %ax		# aka INITSEG
+	movw	%ax, %es
 	xorw	%di, %di
 	xorb	%al, %al
 	movw	$497, %cx
+	cld
 	rep
 	stosb
 
_

Patches currently in -mm which might be from vgoyal@xxxxxxxxxx are

i386-distinguish-absolute-symbols.patch
i386-align-data-section-to-4k-boundary.patch
i386-define-__pa_symbol-2.patch
i386-setupc-reserve-kernel-memory-starting-from-_text.patch
i386-config_physical_start-cleanup.patch
make-linux-elfh-safe-to-be-included-in-assembly-files.patch
elf-add-elfosabi_standalone-to-elfh.patch
kallsyms-generate-relocatable-symbols.patch
i386-relocatable-kernel-support.patch
i386-implement-config_physical_align.patch
i386-boot-add-an-elf-header-to-bzimage.patch
i386-boot-add-an-elf-header-to-bzimage-fix.patch
i386-boot-add-an-elf-header-to-bzimage-update-2.patch
i386-boot-add-an-elf-header-to-bzimage-fix-fix-fix.patch

-
To unsubscribe from this list: send the line "unsubscribe mm-commits" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Kernel Newbies FAQ]     [Kernel Archive]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [Bugtraq]     [Photo]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]

  Powered by Linux