Skip to contentSkip to conversation

Remove bootsect_helper and A comment fix

PATCH In review Coywolf Qi Hunt 3 participants 6 messages Apr 22, 2004 – Apr 27, 2004 Kernel janitors

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 Remove bootsect_helper and A comment fix

Hello,

Since "Direct booting from floppy is no longer supported", this patch is to remove the bootsect_helper code. And also a comment fix.

Signature · 2 lines
Coywolf Qi Hunt
Admin of http://GreatCN.org and http://LoveCN.org
setup.S renamed from setup.S.orig +1 -83
@@ -133,7 +133,7 @@
 ramdisk_size:	.long	0		# its size in bytes
 
 bootsect_kludge:
-		.word  bootsect_helper, SETUPSEG
+		.long	0		# obsolete
 
 heap_end_ptr:	.word	modelist+1024	# (Header version 0x0201 or later)
 					# space from here (exclusive) down to
@@ -871,88 +871,6 @@
 						# sequence
 	outb	%al, $0x70
 	lret
-
-# This routine only gets called, if we get loaded by the simple
-# bootsect loader _and_ have a bzImage to load.
-# Because there is no place left in the 512 bytes of the boot sector,
-# we must emigrate to code space here.
-bootsect_helper:
-	cmpw	$0, %cs:bootsect_es
-	jnz	bootsect_second
-
-	movb	$0x20, %cs:type_of_loader
-	movw	%es, %ax
-	shrw	$4, %ax
-	movb	%ah, %cs:bootsect_src_base+2
-	movw	%es, %ax
-	movw	%ax, %cs:bootsect_es
-	subw	$SYSSEG, %ax
-	lret					# nothing else to do for now
-
-bootsect_second:
-	pushw	%cx
-	pushw	%si
-	pushw	%bx
-	testw	%bx, %bx			# 64K full?
-	jne	bootsect_ex
-
-	movw	$0x8000, %cx			# full 64K, INT15 moves words
-	pushw	%cs
-	popw	%es
-	movw	$bootsect_gdt, %si
-	movw	$0x8700, %ax
-	int	$0x15
-	jc	bootsect_panic			# this, if INT15 fails
-
-	movw	%cs:bootsect_es, %es		# we reset %es to always point
-	incb	%cs:bootsect_dst_base+2		# to 0x10000
-bootsect_ex:
-	movb	%cs:bootsect_dst_base+2, %ah
-	shlb	$4, %ah				# we now have the number of
-						# moved frames in %ax
-	xorb	%al, %al
-	popw	%bx
-	popw	%si
-	popw	%cx
-	lret
-
-bootsect_gdt:
-	.word	0, 0, 0, 0
-	.word	0, 0, 0, 0
-
-bootsect_src:
-	.word	0xffff
-
-bootsect_src_base:
-	.byte	0x00, 0x00, 0x01		# base = 0x010000
-	.byte	0x93				# typbyte
-	.word	0				# limit16,base24 =0
-
-bootsect_dst:
-	.word	0xffff
-
-bootsect_dst_base:
-	.byte	0x00, 0x00, 0x10		# base = 0x100000
-	.byte	0x93				# typbyte
-	.word	0				# limit16,base24 =0
-	.word	0, 0, 0, 0			# BIOS CS
-	.word	0, 0, 0, 0			# BIOS DS
-
-bootsect_es:
-	.word	0
-
-bootsect_panic:
-	pushw	%cs
-	popw	%ds
-	cld
-	leaw	bootsect_panic_mess, %si
-	call	prtstr
-	
-bootsect_panic_loop:
-	jmp	bootsect_panic_loop
-
-bootsect_panic_mess:
-	.string	"INT15 refuses to access high mem, giving up."
 
 
 #ifndef CONFIG_X86_VOYAGER

_______________________________________________
Kernel-janitors mailing list
[email protected]
http://lists.osdl.org/mailman/listinfo/kernel-janitors

#1 lore raw

Re: [Kernel-janitors] [PATCH] Remove bootsect_helper and A comment

On Thu, 22 Apr 2004, Coywolf Qi Hunt wrote:

[..]

i386/boot/setup.S

Quoted 2 lines
i386/boot/setup.S renamed from i386/boot/setup.S.orig +0 -0

kernel-patches are always one level deeper,
take a look at kernel faq ->
http://www.kernel.org/pub/linux/docs/lkml/#s1-10

inlude them in your message body.

a++ maks

_______________________________________________
Kernel-janitors mailing list
[email protected]
http://lists.osdl.org/mailman/listinfo/kernel-janitors

#2 lore raw

Re: [Kernel-janitors] [PATCH] Remove bootsect_helper and A comment

In reply to Coywolf Qi Hunt
Quoted 12 lines · maximilian attems

On Thu, 22 Apr 2004, Coywolf Qi Hunt wrote:

[..]

i386/boot/setup.S

Quoted 2 lines
i386/boot/setup.S renamed from i386/boot/setup.S.orig +0 -0

kernel-patches are always one level deeper,
take a look at kernel faq ->
http://www.kernel.org/pub/linux/docs/lkml/#s1-10

Quoted 5 lines

inlude them in your message body.

a++ maks

This is it:
========================================================================

arch/i386/boot/setup.S renamed from arch/i386/boot/setup.S.orig +2 -84
@@ -133,7 +133,7 @@
 ramdisk_size:	.long	0		# its size in bytes
 
 bootsect_kludge:
-		.word  bootsect_helper, SETUPSEG
+		.long	0		# obsolete
 
 heap_end_ptr:	.word	modelist+1024	# (Header version 0x0201 or later)
 					# space from here (exclusive) down to
@@ -837,7 +837,7 @@
 	subw	$DELTA_INITSEG, %si
 	shll	$4, %esi			# Convert to 32-bit pointer
 
-# jump to startup_32 in arch/i386/kernel/head.S
+# jump to startup_32 in arch/i386/boot/compressed/head.S
 #	
 # NOTE: For high loaded big kernels we need a
 #	jmpi    0x100000,__BOOT_CS
@@ -871,88 +871,6 @@
 						# sequence
 	outb	%al, $0x70
 	lret
-
-# This routine only gets called, if we get loaded by the simple
-# bootsect loader _and_ have a bzImage to load.
-# Because there is no place left in the 512 bytes of the boot sector,
-# we must emigrate to code space here.
-bootsect_helper:
-	cmpw	$0, %cs:bootsect_es
-	jnz	bootsect_second
-
-	movb	$0x20, %cs:type_of_loader
-	movw	%es, %ax
-	shrw	$4, %ax
-	movb	%ah, %cs:bootsect_src_base+2
-	movw	%es, %ax
-	movw	%ax, %cs:bootsect_es
-	subw	$SYSSEG, %ax
-	lret					# nothing else to do for now
-
-bootsect_second:
-	pushw	%cx
-	pushw	%si
-	pushw	%bx
-	testw	%bx, %bx			# 64K full?
-	jne	bootsect_ex
-
-	movw	$0x8000, %cx			# full 64K, INT15 moves words
-	pushw	%cs
-	popw	%es
-	movw	$bootsect_gdt, %si
-	movw	$0x8700, %ax
-	int	$0x15
-	jc	bootsect_panic			# this, if INT15 fails
-
-	movw	%cs:bootsect_es, %es		# we reset %es to always point
-	incb	%cs:bootsect_dst_base+2		# to 0x10000
-bootsect_ex:
-	movb	%cs:bootsect_dst_base+2, %ah
-	shlb	$4, %ah				# we now have the number of
-						# moved frames in %ax
-	xorb	%al, %al
-	popw	%bx
-	popw	%si
-	popw	%cx
-	lret
-
-bootsect_gdt:
-	.word	0, 0, 0, 0
-	.word	0, 0, 0, 0
-
-bootsect_src:
-	.word	0xffff
-
-bootsect_src_base:
-	.byte	0x00, 0x00, 0x01		# base = 0x010000
-	.byte	0x93				# typbyte
-	.word	0				# limit16,base24 =0
-
-bootsect_dst:
-	.word	0xffff
-
-bootsect_dst_base:
-	.byte	0x00, 0x00, 0x10		# base = 0x100000
-	.byte	0x93				# typbyte
-	.word	0				# limit16,base24 =0
-	.word	0, 0, 0, 0			# BIOS CS
-	.word	0, 0, 0, 0			# BIOS DS
-
-bootsect_es:
-	.word	0
-
-bootsect_panic:
-	pushw	%cs
-	popw	%ds
-	cld
-	leaw	bootsect_panic_mess, %si
-	call	prtstr
-	
-bootsect_panic_loop:
-	jmp	bootsect_panic_loop
-
-bootsect_panic_mess:
-	.string	"INT15 refuses to access high mem, giving up."
 
 
 #ifndef CONFIG_X86_VOYAGER
Signature · 2 lines
Coywolf Qi Hunt
Admin of http://GreatCN.org and http://LoveCN.org

_______________________________________________
Kernel-janitors mailing list
[email protected]
http://lists.osdl.org/mailman/listinfo/kernel-janitors

#3 lore raw

Re: [Kernel-janitors] [PATCH] Remove bootsect_helper and A comment

In reply to Coywolf Qi Hunt

On Fri, 23 Apr 2004, Coywolf Qi Hunt wrote:

[..]

arch/i386/boot/setup.S

Quoted 5 lines

This is it:
========================================================================

arch/i386/boot/setup.S renamed from arch/i386/boot/setup.S.orig +0 -0

you didn't read the faq ;)

please try:

cp -a linux-2.6.5 linux-2.6.5-foo
vi linux-2.6.5-foo/arch/i386/boot/setup.S
configure + compile + test.
diff -ruN linux-2.6.5 linux-2.6.5-foo > patch-rm-bootsect_helper if it's ok now send it to the ml.

a++ maks

_______________________________________________
Kernel-janitors mailing list
[email protected]
http://lists.osdl.org/mailman/listinfo/kernel-janitors

#4 lore raw

Re: [Kernel-janitors] [PATCH] Remove bootsect_helper and A comment

In reply to Coywolf Qi Hunt
Quoted 14 lines · maximilian attems

On Fri, 23 Apr 2004, Coywolf Qi Hunt wrote:

[..]

arch/i386/boot/setup.S

Quoted 6 lines

This is it:
========================================================================

arch/i386/boot/setup.S renamed from arch/i386/boot/setup.S.orig +0 -0

you didn't read the faq ;)

Quoted 8 lines

please try:

cp -a linux-2.6.5 linux-2.6.5-foo
vi linux-2.6.5-foo/arch/i386/boot/setup.S
configure + compile + test.
diff -ruN linux-2.6.5 linux-2.6.5-foo > patch-rm-bootsect_helper if it's ok now send it to the ml.

I was misled by Documentation/SubmittingPatches.
Patch: remove the bootsect_helper code and a comment fix also.
=====================================================================

arch/i386/boot/setup.S +0 -0
diff -ruN linux-2.6.5/arch/i386/boot/setup.S linux/arch/i386/boot/setup.S
@@ -133,7 +133,7 @@

ramdisk_size: .long 0 # its size in bytes

bootsect_kludge:
- .word bootsect_helper, SETUPSEG
+ .long 0 # obsolete

heap_end_ptr: .word modelist+1024 # (Header version 0x0201 or later)

					# space from here (exclusive) down to
@@ -837,7 +837,7 @@
	subw	$DELTA_INITSEG, %si
	shll	$4, %esi			# Convert to 32-bit pointer

-# jump to startup_32 in arch/i386/kernel/head.S +# jump to startup_32 in arch/i386/boot/compressed/head.S #
# NOTE: For high loaded big kernels we need a
# jmpi 0x100000,__BOOT_CS
@@ -871,88 +871,6 @@

						# sequence
	outb	%al, $0x70
	lret
-
-# This routine only gets called, if we get loaded by the simple
-# bootsect loader _and_ have a bzImage to load.
-# Because there is no place left in the 512 bytes of the boot sector,
-# we must emigrate to code space here.
-bootsect_helper:
-	cmpw	$0, %cs:bootsect_es
-	jnz	bootsect_second
-
-	movb	$0x20, %cs:type_of_loader
-	movw	%es, %ax
-	shrw	$4, %ax
-	movb	%ah, %cs:bootsect_src_base+2
-	movw	%es, %ax
-	movw	%ax, %cs:bootsect_es
-	subw	$SYSSEG, %ax
-	lret					# nothing else to do for now
-
-bootsect_second:
-	pushw	%cx
-	pushw	%si
-	pushw	%bx
-	testw	%bx, %bx			# 64K full?
-	jne	bootsect_ex
-
-	movw	$0x8000, %cx			# full 64K, INT15 moves words
-	pushw	%cs
-	popw	%es
-	movw	$bootsect_gdt, %si
-	movw	$0x8700, %ax
-	int	$0x15
-	jc	bootsect_panic			# this, if INT15 fails
-
-	movw	%cs:bootsect_es, %es		# we reset %es to always point
-	incb	%cs:bootsect_dst_base+2		# to 0x10000
-bootsect_ex:
-	movb	%cs:bootsect_dst_base+2, %ah
-	shlb	$4, %ah				# we now have the number of
-						# moved frames in %ax
-	xorb	%al, %al
-	popw	%bx
-	popw	%si
-	popw	%cx
-	lret
-
-bootsect_gdt:
-	.word	0, 0, 0, 0
-	.word	0, 0, 0, 0
-
-bootsect_src:
-	.word	0xffff
-
-bootsect_src_base:
-	.byte	0x00, 0x00, 0x01		# base = 0x010000
-	.byte	0x93				# typbyte
-	.word	0				# limit16,base24 =0
-
-bootsect_dst:
-	.word	0xffff
-
-bootsect_dst_base:
-	.byte	0x00, 0x00, 0x10		# base = 0x100000
-	.byte	0x93				# typbyte
-	.word	0				# limit16,base24 =0
-	.word	0, 0, 0, 0			# BIOS CS
-	.word	0, 0, 0, 0			# BIOS DS
-
-bootsect_es:
-	.word	0
-
-bootsect_panic:
-	pushw	%cs
-	popw	%ds
-	cld
-	leaw	bootsect_panic_mess, %si
-	call	prtstr
-	
-bootsect_panic_loop:
-	jmp	bootsect_panic_loop
-
-bootsect_panic_mess:
-	.string	"INT15 refuses to access high mem, giving up."

#ifndef CONFIG_X86_VOYAGER

Signature · 2 lines
Coywolf Qi Hunt
Admin of http://GreatCN.org and http://LoveCN.org

_______________________________________________
Kernel-janitors mailing list
[email protected]
http://lists.osdl.org/mailman/listinfo/kernel-janitors

#5 lore raw

Re: [Kernel-janitors] [PATCH] Remove bootsect_helper and A comment

In reply to Coywolf Qi Hunt

On Mon, 26 Apr 2004 11:28:47 +0200 maximilian attems wrote:

| On Fri, 23 Apr 2004, Coywolf Qi Hunt wrote:
| 
| [..]
| > 
| > This is it:
| > ========================================================================
| > --- linux-2.6.5/arch/i386/boot/setup.S.orig	Sat Mar  6 23:49:33 2004
| > +++ linux-2.6.5/arch/i386/boot/setup.S	Sun Mar  7 07:23:10 2004
| 
| you didn't read the faq ;)
| 
| please try:
| 
| cp -a linux-2.6.5 linux-2.6.5-foo
| vi linux-2.6.5-foo/arch/i386/boot/setup.S
| configure + compile + test.
| diff -ruN linux-2.6.5 linux-2.6.5-foo > patch-rm-bootsect_helper
| if it's ok now send it to the ml.

Oh darn, I need to read the FAQ.

I confess, I don't always make a copy of the entire linux/ tree to patch 1 file (or even a small number of files).
I think using .orig, as Coywolf did here, is fine.

configure + compile + test is still needed, yes.

--
~Randy
http://www.madrone.org/quotes/2003.0226.akpm.txt

_______________________________________________
Kernel-janitors mailing list
[email protected]
http://lists.osdl.org/mailman/listinfo/kernel-janitors