All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] AUX_DEVICE_INFO is one byte long, use 'movb'
@ 2006-07-31 23:47 Diego Calleja
  2006-07-31 23:50 ` Andi Kleen
  0 siblings, 1 reply; 2+ messages in thread
From: Diego Calleja @ 2006-07-31 23:47 UTC (permalink / raw)
  To: akpm; +Cc: ak, linux-kernel

Bugzilla #6552 says:

"In arch/i386/boot/setup.S, movw is used instead of movb for PS/2 mouse
information, although it is unsigned char. This does not harm, because
the jmp instruction overwritten by movw is used before executing movw,
and never be used again"

I've no idea if this is a real bug or how it gets fixed, so I'm submitting
it for review instead of letting it die of boredom in bugzilla. Aditionally
to i386, I've changed x86-64, which mirrors the same code.

Credits to Yoshinori K. Okuji, who found the problem and suggested a fix.


Signed-off-by: Diego Calleja <diegocg@gmail.com>


Index: 2.6/arch/i386/boot/setup.S
===================================================================
--- 2.6.orig/arch/i386/boot/setup.S	2006-08-01 01:04:34.000000000 +0200
+++ 2.6/arch/i386/boot/setup.S	2006-08-01 01:04:49.000000000 +0200
@@ -494,12 +494,12 @@
 	movw	%cs, %ax			# aka SETUPSEG
 	subw	$DELTA_INITSEG, %ax		# aka INITSEG
 	movw	%ax, %ds
-	movw	$0, (0x1ff)			# default is no pointing device
+	movb	$0, (0x1ff)			# default is no pointing device
 	int	$0x11				# int 0x11: equipment list
 	testb	$0x04, %al			# check if mouse installed
 	jz	no_psmouse
 
-	movw	$0xAA, (0x1ff)			# device present
+	movb	$0xAA, (0x1ff)			# device present
 no_psmouse:
 
 #if defined(CONFIG_X86_SPEEDSTEP_SMI) || defined(CONFIG_X86_SPEEDSTEP_SMI_MODULE)
Index: 2.6/arch/x86_64/boot/setup.S
===================================================================
--- 2.6.orig/arch/x86_64/boot/setup.S	2006-08-01 01:04:39.000000000 +0200
+++ 2.6/arch/x86_64/boot/setup.S	2006-08-01 01:05:26.000000000 +0200
@@ -526,12 +526,12 @@
 	movw	%cs, %ax			# aka SETUPSEG
 	subw	$DELTA_INITSEG, %ax		# aka INITSEG
 	movw	%ax, %ds
-	movw	$0, (0x1ff)			# default is no pointing device
+	movb	$0, (0x1ff)			# default is no pointing device
 	int	$0x11				# int 0x11: equipment list
 	testb	$0x04, %al			# check if mouse installed
 	jz	no_psmouse
 
-	movw	$0xAA, (0x1ff)			# device present
+	movb	$0xAA, (0x1ff)			# device present
 no_psmouse:
 
 #include "../../i386/boot/edd.S"

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2006-07-31 23:50 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-07-31 23:47 [PATCH] AUX_DEVICE_INFO is one byte long, use 'movb' Diego Calleja
2006-07-31 23:50 ` Andi Kleen

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.