mirror of
https://github.com/torvalds/linux.git
synced 2024-11-24 13:11:40 +00:00
[PATCH] i386: PTRACE_POKEUSR: allow changing RF bit in EFLAGS register.
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 execution of one instruction. Requested by Stephane Eranian: "I am trying to the user HW debug registers on i386 and I am running into a problem with ptrace() not allowing access to EFLAGS_RF for POKEUSER (see FLAG_MASK). [ ... ] It avoids the need to remove the breakpoint, single step, and reinstall. The equivalent functionality exists on IA-64 and is allowed by ptrace()" Cc: Stephane Eranian <eranian@hpl.hp.com> Signed-off-by: Chuck Ebbert <76306.1226@compuserve.com> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
parent
29552b1462
commit
9f155b9802
@ -32,9 +32,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 0x00044dd5
|
* 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 0x00054dd5
|
||||||
|
|
||||||
/* set's the trap flag. */
|
/* set's the trap flag. */
|
||||||
#define TRAP_FLAG 0x100
|
#define TRAP_FLAG 0x100
|
||||||
|
Loading…
Reference in New Issue
Block a user