67
67
DECLARE_WAIT_QUEUE_HEAD (wait_for_exit);
69
69
/* Macro the names of the registers that are used on each architecture */
70
#if defined(CONFIG_X86_64)
71
# define REG_FRAME_PTR rbp
72
# define REG_INS_PTR rip
73
# define REG_STACK_PTR rsp
74
# define REG_STACK_PTR0 rsp0
75
#elif defined(CONFIG_X86)
76
# if LINUX_VERSION_CODE >= KERNEL_VERSION (2,6,25)
77
# define REG_FRAME_PTR bp
78
# define REG_INS_PTR ip
79
# define REG_STACK_PTR sp
80
# define REG_STACK_PTR0 sp0
70
#if !defined(CONFIG_X86_64) && !defined(CONFIG_X86)
71
# error Sysprof only supports the i386 and x86-64 architectures
74
#if LINUX_VERSION_CODE >= KERNEL_VERSION (2,6,25)
75
# define REG_FRAME_PTR bp
76
# define REG_INS_PTR ip
77
# define REG_STACK_PTR sp
78
# define REG_STACK_PTR0 sp0
80
# if defined(CONFIG_X86_64)
81
# define REG_FRAME_PTR rbp
82
# define REG_INS_PTR rip
83
# define REG_STACK_PTR rsp
84
# define REG_STACK_PTR0 rsp0
82
86
# define REG_FRAME_PTR ebp
83
87
# define REG_INS_PTR eip
84
88
# define REG_STACK_PTR esp
85
89
# define REG_STACK_PTR0 esp0
88
# error Sysprof only supports the i386 and x86-64 architectures
91
93
typedef struct userspace_reader userspace_reader;