Skip to main content

kernel/arch/x86_64/syscall/
frame.rs

1// SPDX-License-Identifier: GPL-3.0-only
2//! Syscall Stack Frame
3//!
4//! Authors: MarioS271
5
6/// A snapshot of all CPU registers when transitioning into the kernel on syscalls
7#[repr(C)]
8pub struct UserFrame {
9    pub r15: u64,
10    pub r14: u64,
11    pub r13: u64,
12    pub r12: u64,
13    pub rbp: u64,
14    pub rbx: u64,
15    pub r10: u64,
16    pub r9: u64,
17    pub r8: u64,
18    pub rdx: u64,
19    pub rsi: u64,
20    pub rdi: u64,
21    pub rax: u64,
22    pub orig_rax: u64,
23    pub rip: u64,
24    pub cs: u64,
25    pub rflags: u64,
26    pub rsp: u64,
27    pub ss: u64,
28    _padding: u64
29}