21static inline unsigned long cpu_regs_sp(
const struct cpu_regs *regs)
28 if ( (regs->cs & 3) > (cs & 3) )
31 return _u(regs) +
offsetof(
struct cpu_regs, _sp);
35static inline unsigned int cpu_regs_ss(
const struct cpu_regs *regs)
42 if ( (regs->cs & 3) > (cs & 3) )
static unsigned int read_cs(void)
static unsigned int read_ss(void)
unsigned long exec_user_ss
uint8_t user_stack[PAGE_SIZE]
void arch_init_traps(void)
unsigned long exec_user_cs
unsigned long exec_user_efl_and_mask
static unsigned long cpu_regs_sp(const struct cpu_regs *regs)
xen_pvh_start_info_t * pvh_start_info
xen_pv_start_info_t * pv_start_info
unsigned long exec_user_efl_or_mask
uint8_t boot_stack[3 *PAGE_SIZE]
static unsigned int cpu_regs_ss(const struct cpu_regs *regs)
#define _u(v)
Express an arbitrary value v as unsigned long.