thread_struct
Regular
4.4
: ✅struct thread_struct {
struct desc_struct tls_array[3];
long unsigned int sp0;
long unsigned int sp;
short unsigned int es;
short unsigned int ds;
short unsigned int fsindex;
short unsigned int gsindex;
long unsigned int fs;
long unsigned int gs;
struct perf_event * ptrace_bps[4];
long unsigned int debugreg6;
long unsigned int ptrace_dr7;
long unsigned int cr2;
long unsigned int trap_nr;
long unsigned int error_code;
long unsigned int *io_bitmap_ptr;
long unsigned int iopl;
unsigned int io_bitmap_max;
struct fpu fpu;
};
4.8
: ✅struct thread_struct {
struct desc_struct tls_array[3];
long unsigned int sp0;
long unsigned int sp;
short unsigned int es;
short unsigned int ds;
short unsigned int fsindex;
short unsigned int gsindex;
long unsigned int fsbase;
long unsigned int gsbase;
struct perf_event * ptrace_bps[4];
long unsigned int debugreg6;
long unsigned int ptrace_dr7;
long unsigned int cr2;
long unsigned int trap_nr;
long unsigned int error_code;
long unsigned int *io_bitmap_ptr;
long unsigned int iopl;
unsigned int io_bitmap_max;
mm_segment_t addr_limit;
unsigned int sig_on_uaccess_err;
unsigned int uaccess_err;
struct fpu fpu;
};
4.10
: ✅struct thread_struct {
struct desc_struct tls_array[3];
long unsigned int sp0;
long unsigned int sp;
short unsigned int es;
short unsigned int ds;
short unsigned int fsindex;
short unsigned int gsindex;
u32 status;
long unsigned int fsbase;
long unsigned int gsbase;
struct perf_event * ptrace_bps[4];
long unsigned int debugreg6;
long unsigned int ptrace_dr7;
long unsigned int cr2;
long unsigned int trap_nr;
long unsigned int error_code;
long unsigned int *io_bitmap_ptr;
long unsigned int iopl;
unsigned int io_bitmap_max;
mm_segment_t addr_limit;
unsigned int sig_on_uaccess_err;
unsigned int uaccess_err;
struct fpu fpu;
};
4.13
: ✅struct thread_struct {
struct desc_struct tls_array[3];
long unsigned int sp0;
long unsigned int sp;
short unsigned int es;
short unsigned int ds;
short unsigned int fsindex;
short unsigned int gsindex;
u32 status;
long unsigned int fsbase;
long unsigned int gsbase;
struct perf_event * ptrace_bps[4];
long unsigned int debugreg6;
long unsigned int ptrace_dr7;
long unsigned int cr2;
long unsigned int trap_nr;
long unsigned int error_code;
long unsigned int *io_bitmap_ptr;
long unsigned int iopl;
unsigned int io_bitmap_max;
mm_segment_t addr_limit;
unsigned int sig_on_uaccess_err;
unsigned int uaccess_err;
struct fpu fpu;
};
4.15
: ✅struct thread_struct {
struct desc_struct tls_array[3];
long unsigned int sp;
short unsigned int es;
short unsigned int ds;
short unsigned int fsindex;
short unsigned int gsindex;
long unsigned int fsbase;
long unsigned int gsbase;
struct perf_event * ptrace_bps[4];
long unsigned int debugreg6;
long unsigned int ptrace_dr7;
long unsigned int cr2;
long unsigned int trap_nr;
long unsigned int error_code;
long unsigned int *io_bitmap_ptr;
long unsigned int iopl;
unsigned int io_bitmap_max;
mm_segment_t addr_limit;
unsigned int sig_on_uaccess_err;
unsigned int uaccess_err;
struct fpu fpu;
};
4.18
: ✅struct thread_struct {
struct desc_struct tls_array[3];
long unsigned int sp;
short unsigned int es;
short unsigned int ds;
short unsigned int fsindex;
short unsigned int gsindex;
long unsigned int fsbase;
long unsigned int gsbase;
struct perf_event * ptrace_bps[4];
long unsigned int debugreg6;
long unsigned int ptrace_dr7;
long unsigned int cr2;
long unsigned int trap_nr;
long unsigned int error_code;
long unsigned int *io_bitmap_ptr;
long unsigned int iopl;
unsigned int io_bitmap_max;
mm_segment_t addr_limit;
unsigned int sig_on_uaccess_err;
unsigned int uaccess_err;
struct fpu fpu;
};
5.0
: ✅struct thread_struct {
struct desc_struct tls_array[3];
long unsigned int sp;
short unsigned int es;
short unsigned int ds;
short unsigned int fsindex;
short unsigned int gsindex;
long unsigned int fsbase;
long unsigned int gsbase;
struct perf_event * ptrace_bps[4];
long unsigned int debugreg6;
long unsigned int ptrace_dr7;
long unsigned int cr2;
long unsigned int trap_nr;
long unsigned int error_code;
long unsigned int *io_bitmap_ptr;
long unsigned int iopl;
unsigned int io_bitmap_max;
mm_segment_t addr_limit;
unsigned int sig_on_uaccess_err;
unsigned int uaccess_err;
struct fpu fpu;
};
5.3
: ✅struct thread_struct {
struct desc_struct tls_array[3];
long unsigned int sp;
short unsigned int es;
short unsigned int ds;
short unsigned int fsindex;
short unsigned int gsindex;
long unsigned int fsbase;
long unsigned int gsbase;
struct perf_event * ptrace_bps[4];
long unsigned int debugreg6;
long unsigned int ptrace_dr7;
long unsigned int cr2;
long unsigned int trap_nr;
long unsigned int error_code;
long unsigned int *io_bitmap_ptr;
long unsigned int iopl;
unsigned int io_bitmap_max;
mm_segment_t addr_limit;
unsigned int sig_on_uaccess_err;
unsigned int uaccess_err;
struct fpu fpu;
};
5.4
: ✅struct thread_struct {
struct desc_struct tls_array[3];
long unsigned int sp;
short unsigned int es;
short unsigned int ds;
short unsigned int fsindex;
short unsigned int gsindex;
long unsigned int fsbase;
long unsigned int gsbase;
struct perf_event * ptrace_bps[4];
long unsigned int debugreg6;
long unsigned int ptrace_dr7;
long unsigned int cr2;
long unsigned int trap_nr;
long unsigned int error_code;
long unsigned int *io_bitmap_ptr;
long unsigned int iopl;
unsigned int io_bitmap_max;
mm_segment_t addr_limit;
unsigned int sig_on_uaccess_err;
unsigned int uaccess_err;
struct fpu fpu;
};
5.8
: ✅struct thread_struct {
struct desc_struct tls_array[3];
long unsigned int sp;
short unsigned int es;
short unsigned int ds;
short unsigned int fsindex;
short unsigned int gsindex;
long unsigned int fsbase;
long unsigned int gsbase;
struct perf_event * ptrace_bps[4];
long unsigned int debugreg6;
long unsigned int ptrace_dr7;
long unsigned int cr2;
long unsigned int trap_nr;
long unsigned int error_code;
struct io_bitmap *io_bitmap;
long unsigned int iopl_emul;
mm_segment_t addr_limit;
unsigned int sig_on_uaccess_err;
struct fpu fpu;
};
5.11
: ✅struct thread_struct {
struct desc_struct tls_array[3];
long unsigned int sp;
short unsigned int es;
short unsigned int ds;
short unsigned int fsindex;
short unsigned int gsindex;
long unsigned int fsbase;
long unsigned int gsbase;
struct perf_event * ptrace_bps[4];
long unsigned int virtual_dr6;
long unsigned int ptrace_dr7;
long unsigned int cr2;
long unsigned int trap_nr;
long unsigned int error_code;
struct io_bitmap *io_bitmap;
long unsigned int iopl_emul;
unsigned int sig_on_uaccess_err;
struct fpu fpu;
};
5.13
: ✅struct thread_struct {
struct desc_struct tls_array[3];
long unsigned int sp;
short unsigned int es;
short unsigned int ds;
short unsigned int fsindex;
short unsigned int gsindex;
long unsigned int fsbase;
long unsigned int gsbase;
struct perf_event * ptrace_bps[4];
long unsigned int virtual_dr6;
long unsigned int ptrace_dr7;
long unsigned int cr2;
long unsigned int trap_nr;
long unsigned int error_code;
struct io_bitmap *io_bitmap;
long unsigned int iopl_emul;
unsigned int sig_on_uaccess_err;
struct fpu fpu;
};
5.15
: ✅struct thread_struct {
struct desc_struct tls_array[3];
long unsigned int sp;
short unsigned int es;
short unsigned int ds;
short unsigned int fsindex;
short unsigned int gsindex;
long unsigned int fsbase;
long unsigned int gsbase;
struct perf_event * ptrace_bps[4];
long unsigned int virtual_dr6;
long unsigned int ptrace_dr7;
long unsigned int cr2;
long unsigned int trap_nr;
long unsigned int error_code;
struct io_bitmap *io_bitmap;
long unsigned int iopl_emul;
unsigned int iopl_warn;
unsigned int sig_on_uaccess_err;
u32 pkru;
struct fpu fpu;
};
5.19
: ✅struct thread_struct {
struct desc_struct tls_array[3];
long unsigned int sp;
short unsigned int es;
short unsigned int ds;
short unsigned int fsindex;
short unsigned int gsindex;
long unsigned int fsbase;
long unsigned int gsbase;
struct perf_event * ptrace_bps[4];
long unsigned int virtual_dr6;
long unsigned int ptrace_dr7;
long unsigned int cr2;
long unsigned int trap_nr;
long unsigned int error_code;
struct io_bitmap *io_bitmap;
long unsigned int iopl_emul;
unsigned int iopl_warn;
unsigned int sig_on_uaccess_err;
u32 pkru;
struct fpu fpu;
};
6.2
: ✅struct thread_struct {
struct desc_struct tls_array[3];
long unsigned int sp;
short unsigned int es;
short unsigned int ds;
short unsigned int fsindex;
short unsigned int gsindex;
long unsigned int fsbase;
long unsigned int gsbase;
struct perf_event * ptrace_bps[4];
long unsigned int virtual_dr6;
long unsigned int ptrace_dr7;
long unsigned int cr2;
long unsigned int trap_nr;
long unsigned int error_code;
struct io_bitmap *io_bitmap;
long unsigned int iopl_emul;
unsigned int iopl_warn;
unsigned int sig_on_uaccess_err;
u32 pkru;
struct fpu fpu;
};
6.5
: ✅struct thread_struct {
struct desc_struct tls_array[3];
long unsigned int sp;
short unsigned int es;
short unsigned int ds;
short unsigned int fsindex;
short unsigned int gsindex;
long unsigned int fsbase;
long unsigned int gsbase;
struct perf_event * ptrace_bps[4];
long unsigned int virtual_dr6;
long unsigned int ptrace_dr7;
long unsigned int cr2;
long unsigned int trap_nr;
long unsigned int error_code;
struct io_bitmap *io_bitmap;
long unsigned int iopl_emul;
unsigned int iopl_warn;
unsigned int sig_on_uaccess_err;
u32 pkru;
struct fpu fpu;
};
6.8
: ✅struct thread_struct {
struct desc_struct tls_array[3];
long unsigned int sp;
short unsigned int es;
short unsigned int ds;
short unsigned int fsindex;
short unsigned int gsindex;
long unsigned int fsbase;
long unsigned int gsbase;
struct perf_event * ptrace_bps[4];
long unsigned int virtual_dr6;
long unsigned int ptrace_dr7;
long unsigned int cr2;
long unsigned int trap_nr;
long unsigned int error_code;
struct io_bitmap *io_bitmap;
long unsigned int iopl_emul;
unsigned int iopl_warn;
unsigned int sig_on_uaccess_err;
u32 pkru;
long unsigned int features;
long unsigned int features_locked;
struct thread_shstk shstk;
struct fpu fpu;
};
arm64
: ✅struct thread_struct {
struct cpu_context cpu_context;
struct (anon) uw;
unsigned int fpsimd_cpu;
void *sve_state;
unsigned int sve_vl;
unsigned int sve_vl_onexec;
long unsigned int fault_address;
long unsigned int fault_code;
struct debug_info debug;
struct ptrauth_keys keys_user;
};
armhf
: ✅struct thread_struct {
long unsigned int address;
long unsigned int trap_no;
long unsigned int error_code;
struct debug_info debug;
};
ppc64el
: ✅struct thread_struct {
long unsigned int ksp;
long unsigned int ksp_vsid;
struct pt_regs *regs;
mm_segment_t addr_limit;
struct debug_reg debug;
struct thread_fp_state fp_state;
struct thread_fp_state *fp_save_area;
int fpexc_mode;
unsigned int align_ctl;
struct perf_event * ptrace_bps[1];
struct perf_event *last_hit_ubp;
struct arch_hw_breakpoint hw_brk;
long unsigned int trap_nr;
u8 load_slb;
u8 load_fp;
u8 load_vec;
struct thread_vr_state vr_state;
struct thread_vr_state *vr_save_area;
long unsigned int vrsave;
int used_vr;
int used_vsr;
u8 load_tm;
u64 tm_tfhar;
u64 tm_texasr;
u64 tm_tfiar;
struct pt_regs ckpt_regs;
long unsigned int tm_tar;
long unsigned int tm_ppr;
long unsigned int tm_dscr;
struct thread_fp_state ckfp_state;
struct thread_vr_state ckvr_state;
long unsigned int ckvrsave;
long unsigned int dscr;
long unsigned int fscr;
int dscr_inherit;
long unsigned int tidr;
long unsigned int tar;
long unsigned int ebbrr;
long unsigned int ebbhr;
long unsigned int bescr;
long unsigned int siar;
long unsigned int sdar;
long unsigned int sier;
long unsigned int mmcr2;
unsigned int mmcr0;
unsigned int used_ebb;
unsigned int used_vas;
};
riscv64
: ✅struct thread_struct {
long unsigned int ra;
long unsigned int sp;
long unsigned int s[12];
struct __riscv_d_ext_state fstate;
};
aws
: ✅struct thread_struct {
struct desc_struct tls_array[3];
long unsigned int sp;
short unsigned int es;
short unsigned int ds;
short unsigned int fsindex;
short unsigned int gsindex;
long unsigned int fsbase;
long unsigned int gsbase;
struct perf_event * ptrace_bps[4];
long unsigned int debugreg6;
long unsigned int ptrace_dr7;
long unsigned int cr2;
long unsigned int trap_nr;
long unsigned int error_code;
long unsigned int *io_bitmap_ptr;
long unsigned int iopl;
unsigned int io_bitmap_max;
mm_segment_t addr_limit;
unsigned int sig_on_uaccess_err;
unsigned int uaccess_err;
struct fpu fpu;
};
azure
: ✅struct thread_struct {
struct desc_struct tls_array[3];
long unsigned int sp;
short unsigned int es;
short unsigned int ds;
short unsigned int fsindex;
short unsigned int gsindex;
long unsigned int fsbase;
long unsigned int gsbase;
struct perf_event * ptrace_bps[4];
long unsigned int debugreg6;
long unsigned int ptrace_dr7;
long unsigned int cr2;
long unsigned int trap_nr;
long unsigned int error_code;
long unsigned int *io_bitmap_ptr;
long unsigned int iopl;
unsigned int io_bitmap_max;
mm_segment_t addr_limit;
unsigned int sig_on_uaccess_err;
unsigned int uaccess_err;
struct fpu fpu;
};
gcp
: ✅struct thread_struct {
struct desc_struct tls_array[3];
long unsigned int sp;
short unsigned int es;
short unsigned int ds;
short unsigned int fsindex;
short unsigned int gsindex;
long unsigned int fsbase;
long unsigned int gsbase;
struct perf_event * ptrace_bps[4];
long unsigned int debugreg6;
long unsigned int ptrace_dr7;
long unsigned int cr2;
long unsigned int trap_nr;
long unsigned int error_code;
long unsigned int *io_bitmap_ptr;
long unsigned int iopl;
unsigned int io_bitmap_max;
mm_segment_t addr_limit;
unsigned int sig_on_uaccess_err;
unsigned int uaccess_err;
struct fpu fpu;
};
lowlatency
: ✅struct thread_struct {
struct desc_struct tls_array[3];
long unsigned int sp;
short unsigned int es;
short unsigned int ds;
short unsigned int fsindex;
short unsigned int gsindex;
long unsigned int fsbase;
long unsigned int gsbase;
struct perf_event * ptrace_bps[4];
long unsigned int debugreg6;
long unsigned int ptrace_dr7;
long unsigned int cr2;
long unsigned int trap_nr;
long unsigned int error_code;
long unsigned int *io_bitmap_ptr;
long unsigned int iopl;
unsigned int io_bitmap_max;
mm_segment_t addr_limit;
unsigned int sig_on_uaccess_err;
unsigned int uaccess_err;
struct fpu fpu;
};
Regular
4.4
and 4.8
⚠️long unsigned int fsbase
long unsigned int gsbase
mm_segment_t addr_limit
unsigned int sig_on_uaccess_err
unsigned int uaccess_err
long unsigned int fs
long unsigned int gs
4.8
and 4.10
⚠️u32 status
4.10
and 4.13
✅
4.13
and 4.15
⚠️long unsigned int sp0
u32 status
4.15
and 4.18
✅
4.18
and 5.0
✅
5.0
and 5.3
✅
5.3
and 5.4
✅
5.4
and 5.8
⚠️struct io_bitmap *io_bitmap
long unsigned int iopl_emul
long unsigned int *io_bitmap_ptr
long unsigned int iopl
unsigned int io_bitmap_max
unsigned int uaccess_err
5.8
and 5.11
⚠️long unsigned int virtual_dr6
long unsigned int debugreg6
mm_segment_t addr_limit
5.11
and 5.13
✅
5.13
and 5.15
⚠️unsigned int iopl_warn
u32 pkru
5.15
and 5.19
✅
5.19
and 6.2
✅
6.2
and 6.5
✅
6.5
and 6.8
⚠️long unsigned int features
long unsigned int features_locked
struct thread_shstk shstk
amd64
and arm64
⚠️struct cpu_context cpu_context
struct (anon) uw
unsigned int fpsimd_cpu
void *sve_state
unsigned int sve_vl
unsigned int sve_vl_onexec
long unsigned int fault_address
long unsigned int fault_code
struct debug_info debug
struct ptrauth_keys keys_user
struct desc_struct tls_array[3]
long unsigned int sp
short unsigned int es
short unsigned int ds
short unsigned int fsindex
short unsigned int gsindex
long unsigned int fsbase
long unsigned int gsbase
struct perf_event * ptrace_bps[4]
long unsigned int debugreg6
long unsigned int ptrace_dr7
long unsigned int cr2
long unsigned int trap_nr
long unsigned int error_code
long unsigned int *io_bitmap_ptr
long unsigned int iopl
unsigned int io_bitmap_max
mm_segment_t addr_limit
unsigned int sig_on_uaccess_err
unsigned int uaccess_err
struct fpu fpu
amd64
and armhf
⚠️long unsigned int address
long unsigned int trap_no
struct debug_info debug
struct desc_struct tls_array[3]
long unsigned int sp
short unsigned int es
short unsigned int ds
short unsigned int fsindex
short unsigned int gsindex
long unsigned int fsbase
long unsigned int gsbase
struct perf_event * ptrace_bps[4]
long unsigned int debugreg6
long unsigned int ptrace_dr7
long unsigned int cr2
long unsigned int trap_nr
long unsigned int *io_bitmap_ptr
long unsigned int iopl
unsigned int io_bitmap_max
mm_segment_t addr_limit
unsigned int sig_on_uaccess_err
unsigned int uaccess_err
struct fpu fpu
amd64
and ppc64el
⚠️long unsigned int ksp
long unsigned int ksp_vsid
struct pt_regs *regs
struct debug_reg debug
struct thread_fp_state fp_state
struct thread_fp_state *fp_save_area
int fpexc_mode
unsigned int align_ctl
struct perf_event *last_hit_ubp
struct arch_hw_breakpoint hw_brk
u8 load_slb
u8 load_fp
u8 load_vec
struct thread_vr_state vr_state
struct thread_vr_state *vr_save_area
long unsigned int vrsave
int used_vr
int used_vsr
u8 load_tm
u64 tm_tfhar
u64 tm_texasr
u64 tm_tfiar
struct pt_regs ckpt_regs
long unsigned int tm_tar
long unsigned int tm_ppr
long unsigned int tm_dscr
struct thread_fp_state ckfp_state
struct thread_vr_state ckvr_state
long unsigned int ckvrsave
long unsigned int dscr
long unsigned int fscr
int dscr_inherit
long unsigned int tidr
long unsigned int tar
long unsigned int ebbrr
long unsigned int ebbhr
long unsigned int bescr
long unsigned int siar
long unsigned int sdar
long unsigned int sier
long unsigned int mmcr2
unsigned int mmcr0
unsigned int used_ebb
unsigned int used_vas
struct desc_struct tls_array[3]
long unsigned int sp
short unsigned int es
short unsigned int ds
short unsigned int fsindex
short unsigned int gsindex
long unsigned int fsbase
long unsigned int gsbase
long unsigned int debugreg6
long unsigned int ptrace_dr7
long unsigned int cr2
long unsigned int error_code
long unsigned int *io_bitmap_ptr
long unsigned int iopl
unsigned int io_bitmap_max
unsigned int sig_on_uaccess_err
unsigned int uaccess_err
struct fpu fpu
struct perf_event * ptrace_bps[4]
➡️ struct perf_event * ptrace_bps[1]
amd64
and riscv64
⚠️long unsigned int ra
long unsigned int s[12]
struct __riscv_d_ext_state fstate
struct desc_struct tls_array[3]
short unsigned int es
short unsigned int ds
short unsigned int fsindex
short unsigned int gsindex
long unsigned int fsbase
long unsigned int gsbase
struct perf_event * ptrace_bps[4]
long unsigned int debugreg6
long unsigned int ptrace_dr7
long unsigned int cr2
long unsigned int trap_nr
long unsigned int error_code
long unsigned int *io_bitmap_ptr
long unsigned int iopl
unsigned int io_bitmap_max
mm_segment_t addr_limit
unsigned int sig_on_uaccess_err
unsigned int uaccess_err
struct fpu fpu
generic
and aws
✅
generic
and azure
✅
generic
and gcp
✅
generic
and lowlatency
✅