patch-2.1.125 linux/arch/i386/boot/setup.S

Next file: linux/arch/i386/defconfig
Previous file: linux/arch/arm/kernel/signal.c
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.1.124/linux/arch/i386/boot/setup.S linux/arch/i386/boot/setup.S
@@ -145,7 +145,7 @@
 	jne	bad_sig
 	jmp	good_sig1
 
-! Routine to print ASCII string at DS:SI
+! Routine to print ASCIIz string at DS:SI
 
 prtstr:	lodsb
 	and	al,al
@@ -345,7 +345,7 @@
 	mov ds,ax
 	mov ds,ax
 	xor ax,ax
-	mov [0x220], ax		! set table length to 0
+	mov [0xa0], ax		! set table length to 0
 	mov ah, #0xc0
 	stc
 	int 0x15		! puts feature table at es:bx
@@ -357,9 +357,13 @@
 	sub ax, #DELTA_INITSEG	! aka #INITSEG
 	mov es,ax
 	mov si,bx
-	mov di,#0x220
+	mov di,#0xa0
 	mov cx,(si)
 	add cx,#2		! table length is a short
+	cmp cx,#0x10
+	jc sysdesc_ok
+	mov cx,#0x10		! we keep only first 16 bytes
+sysdesc_ok:
 	rep
 	movsb
 	pop ds

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen, slshen@lbl.gov