diff options
Diffstat (limited to 'src/libk')
-rw-r--r-- | src/libk/include/camellia/types.h | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/src/libk/include/camellia/types.h b/src/libk/include/camellia/types.h index 3117877..9cbd386 100644 --- a/src/libk/include/camellia/types.h +++ b/src/libk/include/camellia/types.h @@ -33,8 +33,17 @@ struct ufs_request { }; struct intr_data { - void __user *ip; - void __user *sp; /* last for pop %rsp */ + /* same order as CpuRegs. + * notable omissions: + * - SSE registers (usually there's no need to save them, userland can do + * that itself if it wants) + * - FLAGS (so the kernel doesn't need to care about sanitizing it) */ + uint64_t r15, r14, r13, r12, r11, r10, r9, r8; + uint64_t rdi, rsi; + userptr_t rbp, rsp; + uint64_t rbx, rdx, rcx, rax, rip; + + char msg[]; /* variable size, NUL terminated */ }; struct sys_wait2 { |