projects
/
openwrt
/
staging
/
blogic.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
8578bdf
)
[PATCH] fix is_at_popf() for compat tasks
author
Chuck Ebbert
<76306.1226@compuserve.com>
Tue, 26 Sep 2006 08:52:32 +0000
(10:52 +0200)
committer
Andi Kleen
<andi@basil.nowhere.org>
Tue, 26 Sep 2006 08:52:32 +0000
(10:52 +0200)
When testing for the REX instruction prefix, first check
for 32-bit mode because in compat mode the REX prefix is an
increment instruction.
Signed-off-by: Chuck Ebbert <76306.1226@compuserve.com>
Signed-off-by: Andi Kleen <ak@suse.de>
arch/x86_64/kernel/ptrace.c
patch
|
blob
|
history
diff --git
a/arch/x86_64/kernel/ptrace.c
b/arch/x86_64/kernel/ptrace.c
index d35ec1bc696a51fd52f3fd2c0650c6dac51ab2c7..3a52c7bcfd12b79ef594a5c9f4f732f3e6af0be6 100644
(file)
--- a/
arch/x86_64/kernel/ptrace.c
+++ b/
arch/x86_64/kernel/ptrace.c
@@
-141,8
+141,11
@@
static int is_at_popf(struct task_struct *child, struct pt_regs *regs)
case 0xf0: case 0xf2: case 0xf3:
continue;
- /* REX prefixes */
case 0x40 ... 0x4f:
+ if (regs->cs != __USER_CS)
+ /* 32-bit mode: register increment */
+ return 0;
+ /* 64-bit mode: REX prefix */
continue;
/* CHECKME: f0, f2, f3 */