Commit 60923df3 authored by Chuck Ebbert's avatar Chuck Ebbert Committed by Linus Torvalds

[PATCH] x86_64: allow setting RF in EFLAGS

Setting RF (resume flag) allows a debugger to resume execution after a code
breakpoint without tripping the breakpoint again.  It is reset by the CPU
after executing one instruction.
Signed-off-by: default avatarChuck Ebbert <76306.1226@compuserve.com>
Signed-off-by: default avatarAndi Kleen <ak@suse.de>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent 100c0e36
...@@ -28,9 +28,12 @@ ...@@ -28,9 +28,12 @@
#include <asm/i387.h> #include <asm/i387.h>
#include <asm/fpu32.h> #include <asm/fpu32.h>
/* determines which flags the user has access to. */ /*
/* 1 = access 0 = no access */ * Determines which flags the user has access to [1 = access, 0 = no access].
#define FLAG_MASK 0x44dd5UL * Prohibits changing ID(21), VIP(20), VIF(19), VM(17), IOPL(12-13), IF(9).
* Also masks reserved bits (31-22, 15, 5, 3, 1).
*/
#define FLAG_MASK 0x54dd5UL
#define R32(l,q) \ #define R32(l,q) \
case offsetof(struct user32, regs.l): stack[offsetof(struct pt_regs, q)/8] = val; break case offsetof(struct user32, regs.l): stack[offsetof(struct pt_regs, q)/8] = val; break
......
...@@ -36,9 +36,12 @@ ...@@ -36,9 +36,12 @@
* in exit.c or in signal.c. * in exit.c or in signal.c.
*/ */
/* determines which flags the user has access to. */ /*
/* 1 = access 0 = no access */ * Determines which flags the user has access to [1 = access, 0 = no access].
#define FLAG_MASK 0x44dd5UL * Prohibits changing ID(21), VIP(20), VIF(19), VM(17), IOPL(12-13), IF(9).
* Also masks reserved bits (63-22, 15, 5, 3, 1).
*/
#define FLAG_MASK 0x54dd5UL
/* set's the trap flag. */ /* set's the trap flag. */
#define TRAP_FLAG 0x100UL #define TRAP_FLAG 0x100UL
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment