1*dac494bfSBenjamin Berg /* SPDX-License-Identifier: GPL-2.0 */ 2*dac494bfSBenjamin Berg #ifndef __ARCH_STUB_DATA_H 3*dac494bfSBenjamin Berg #define __ARCH_STUB_DATA_H 4*dac494bfSBenjamin Berg 5*dac494bfSBenjamin Berg #ifdef __i386__ 6*dac494bfSBenjamin Berg #include <generated/asm-offsets.h> 7*dac494bfSBenjamin Berg #include <asm/ldt.h> 8*dac494bfSBenjamin Berg 9*dac494bfSBenjamin Berg struct stub_data_arch { 10*dac494bfSBenjamin Berg int sync; 11*dac494bfSBenjamin Berg struct user_desc tls[UM_KERN_GDT_ENTRY_TLS_ENTRIES]; 12*dac494bfSBenjamin Berg }; 13*dac494bfSBenjamin Berg #else 14*dac494bfSBenjamin Berg #define STUB_SYNC_FS_BASE (1 << 0) 15*dac494bfSBenjamin Berg #define STUB_SYNC_GS_BASE (1 << 1) 16*dac494bfSBenjamin Berg struct stub_data_arch { 17*dac494bfSBenjamin Berg int sync; 18*dac494bfSBenjamin Berg unsigned long fs_base; 19*dac494bfSBenjamin Berg unsigned long gs_base; 20*dac494bfSBenjamin Berg }; 21*dac494bfSBenjamin Berg #endif 22*dac494bfSBenjamin Berg 23*dac494bfSBenjamin Berg #endif /* __ARCH_STUB_DATA_H */ 24