* [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
* Re: [PATCH] AUX_DEVICE_INFO is one byte long, use 'movb'
2006-07-31 23:47 [PATCH] AUX_DEVICE_INFO is one byte long, use 'movb' Diego Calleja
@ 2006-07-31 23:50 ` Andi Kleen
0 siblings, 0 replies; 2+ messages in thread
From: Andi Kleen @ 2006-07-31 23:50 UTC (permalink / raw)
To: Diego Calleja; +Cc: akpm, linux-kernel
On Tuesday 01 August 2006 01:47, Diego Calleja wrote:
> 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.
Queued thanks.
-Andi
^ 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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox