arch/x86/um/shared/sysdep/ptrace_user.h

Source file repositories/reference/linux-study-clean/arch/x86/um/shared/sysdep/ptrace_user.h

File Facts

System
Linux kernel
Corpus path
arch/x86/um/shared/sysdep/ptrace_user.h
Extension
.h
Size
553 bytes
Lines
21
Domain
Architecture Layer
Bucket
arch/x86
Inferred role
Architecture Layer: implementation source
Status
source implementation candidate

Why This File Exists

CPU and platform-specific kernel glue: boot entry, traps, syscall entry, interrupts, page tables, context switch, and low-level barriers.

Dependency Surface

Detected Declarations

Annotated Snippet

#include <generated/user_constants.h>

#define PT_OFFSET(r) ((r) * sizeof(long))

#define PT_SYSCALL_NR(regs) ((regs)[HOST_ORIG_AX])
#define PT_SYSCALL_NR_OFFSET PT_OFFSET(HOST_ORIG_AX)

#define PT_SYSCALL_RET_OFFSET PT_OFFSET(HOST_AX)

#define REGS_IP_INDEX HOST_IP
#define REGS_SP_INDEX HOST_SP

/*
 * glibc before 2.27 does not include PTRACE_SYSEMU_SINGLESTEP in its enum,
 * ensure we have a definition by (re-)defining it here.
 */
#ifndef PTRACE_SYSEMU_SINGLESTEP
#define PTRACE_SYSEMU_SINGLESTEP 32
#endif

Annotation

Implementation Notes