linux/include
Roland McGrath bdf88217b7 x86: user_regset header
The new header <linux/regset.h> defines the types struct user_regset and
struct user_regset_view, with some associated declarations.  This new set
of interfaces will become the standard way for arch code to expose
user-mode machine-specific state.  A single set of entry points into arch
code can do all the low-level work in one place to fill the needs of core
dumps, ptrace, and any other user-mode debugging facilities that might come
along in the future.

For existing arch code to adapt to the user_regset interfaces, each arch
can work from the code it already has to support core files and ptrace.
The formats you want for user_regset are the core file formats.  The only
wrinkle in adapting old ptrace implementation code as user_regset get and
set functions is that these functions can be called on current as well as
on another task_struct that is stopped and switched out as for ptrace.
For some kinds of machine state, you may have to load it directly from CPU
registers or otherwise differently for current than for another thread.
(Your core dump support already handles this in elf_core_copy_regs for
current and elf_core_copy_task_regs for other tasks, so just check there.)
The set function should also be made to work on current in case that
entails some special cases, though this was never required before for
ptrace.  Adding this flexibility covers the arch needs to open the door to
more sophisticated new debugging facilities that don't always need to
context-switch to do every little thing.

The copyin/copyout helper functions (in a later patch) relieve the arch
code of most of the cumbersome details of the flexible get/set interfaces.

Signed-off-by: Roland McGrath <roland@redhat.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2008-01-30 13:31:44 +01:00
..
acpi x86: dummy placeholder for acpi/reboot.h 2008-01-30 13:31:17 +01:00
asm-alpha
asm-arm ext4: Add ext4_find_next_bit() 2008-01-28 23:58:27 -05:00
asm-avr32
asm-blackfin
asm-cris
asm-frv
asm-generic Merge git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild 2008-01-29 22:46:14 +11:00
asm-h8300
asm-ia64
asm-m32r core: remove last users of empty FASTCALL macro 2008-01-30 13:31:17 +01:00
asm-m68k ext4: Add ext4_find_next_bit() 2008-01-28 23:58:27 -05:00
asm-m68knommu ext4: Add ext4_find_next_bit() 2008-01-28 23:58:27 -05:00
asm-mips [MIPS] Malta, Atlas: move an extern function declaration to the header file 2008-01-29 10:15:05 +00:00
asm-parisc
asm-powerpc powerpc: arch_has_single_step 2008-01-30 13:30:51 +01:00
asm-ppc
asm-s390 ext4: Add ext4_find_next_bit() 2008-01-28 23:58:27 -05:00
asm-sh
asm-sparc
asm-sparc64
asm-um uml: add asm-um/asm.h 2008-01-30 13:31:17 +01:00
asm-v850
asm-x86 x86: unify module_{32|64}.h 2008-01-30 13:31:43 +01:00
asm-xtensa
crypto
keys
linux x86: user_regset header 2008-01-30 13:31:44 +01:00
math-emu
media
mtd
net [NET_SCHED]: act_api: use PTR_ERR in tcf_action_init/tcf_action_get 2008-01-28 15:11:17 -08:00
pcmcia
rdma
rxrpc
scsi
sound
video
xen
Kbuild