/kernel/linux/linux-6.6/tools/testing/selftests/kvm/x86_64/ |
H A D | xcr0_cpuid_test.c | 22 #define ASSERT_XFEATURE_DEPENDENCIES(supported_xcr0, xfeatures, dependencies) \ 24 uint64_t __supported = (supported_xcr0) & ((xfeatures) | (dependencies)); \ 26 __GUEST_ASSERT((__supported & (xfeatures)) != (xfeatures) || \ 27 __supported == ((xfeatures) | (dependencies)), \ 28 "supported = 0x%llx, xfeatures = 0x%llx, dependencies = 0x%llx", \ 29 __supported, (xfeatures), (dependencies)); \ 40 #define ASSERT_ALL_OR_NONE_XFEATURE(supported_xcr0, xfeatures) \ 42 uint64_t __supported = (supported_xcr0) & (xfeatures); \ 44 __GUEST_ASSERT(!__supported || __supported == (xfeatures), \ [all...] |
/kernel/linux/linux-5.10/arch/x86/kernel/fpu/ |
H A D | xstate.c | 131 * bit in the header.xfeatures field, and can skip the writeout of registers 146 u64 xfeatures; in fpstate_sanitize_xstate() local 151 xfeatures = fpu->state.xsave.header.xfeatures; in fpstate_sanitize_xstate() 157 if ((xfeatures & xfeatures_mask_all) == xfeatures_mask_all) in fpstate_sanitize_xstate() 163 if (!(xfeatures & XFEATURE_MASK_FP)) { in fpstate_sanitize_xstate() 176 if (!(xfeatures & XFEATURE_MASK_SSE)) in fpstate_sanitize_xstate() 184 xfeatures = (xfeatures_mask_user() & ~xfeatures) >> 2; in fpstate_sanitize_xstate() 191 while (xfeatures) { in fpstate_sanitize_xstate() 1084 xfeatures_mxcsr_quirk(u64 xfeatures) xfeatures_mxcsr_quirk() argument [all...] |
H A D | signal.c | 90 u32 xfeatures; in save_xstate_epilog() local 104 * Read the xfeatures which we copied (directly from the cpu or in save_xstate_epilog() 107 err |= __get_user(xfeatures, (__u32 __user *)&x->header.xfeatures); in save_xstate_epilog() 114 * xfeatures in the xsave header. in save_xstate_epilog() 116 * xsave aware apps can change the xfeatures in the xsave in save_xstate_epilog() 120 xfeatures |= XFEATURE_MASK_FPSSE; in save_xstate_epilog() 122 err |= __put_user(xfeatures, (__u32 __user *)&x->header.xfeatures); in save_xstate_epilog() 235 header->xfeatures in sanitize_restored_user_xstate() [all...] |
H A D | regset.c | 69 fpu->state.xsave.header.xfeatures |= XFEATURE_MASK_FPSSE; in xfpregs_set() 346 fpu->state.xsave.header.xfeatures |= XFEATURE_MASK_FP; in fpregs_set()
|
H A D | core.c | 89 if (fpu->state.xsave.header.xfeatures & XFEATURE_MASK_AVX512) in copy_fpregs_to_fpstate()
|
/kernel/linux/linux-6.6/arch/x86/kernel/fpu/ |
H A D | xstate.c | 366 xstate_init_xcomp_bv(&init_fpstate.regs.xsave, init_fpstate.xfeatures); in setup_init_fpu_buf() 369 * Init all the features state with header.xfeatures being 0x0 in setup_init_fpu_buf() 406 if (hdr->xfeatures & ~fpstate->user_xfeatures) in validate_user_xstate_header() 559 static unsigned int xstate_calculate_size(u64 xfeatures, bool compacted) in xstate_calculate_size() argument 561 unsigned int topmost = fls64(xfeatures) - 1; in xstate_calculate_size() 568 offset = xfeature_get_offset(xfeatures, topmost); in xstate_calculate_size() 747 u64 xfeatures; in fpu__init_system_xstate() local 821 xfeatures = fpu_kernel_cfg.max_features; in fpu__init_system_xstate() 861 init_fpstate.xfeatures = fpu_kernel_cfg.default_features; in fpu__init_system_xstate() 873 * xfeatures mas in fpu__init_system_xstate() 1062 __copy_xstate_to_uabi_buf(struct membuf to, struct fpstate *fpstate, u64 xfeatures, u32 pkru_val, enum xstate_copy_mode copy_mode) __copy_xstate_to_uabi_buf() argument 1498 fpstate_realloc(u64 xfeatures, unsigned int ksize, unsigned int usize, struct fpu_guest *guest_fpu) fpstate_realloc() argument [all...] |
H A D | core.c | 97 if (fpu->fpstate->regs.xsave.header.xfeatures & AVX512_TRACKING_MASK) in update_avx_timestamp() 166 * in fpstate::regs::xsave::xfeatures. in restore_fpregs_from_fpstate() 175 * So fpstate->xfeatures cannot be used here, because then in restore_fpregs_from_fpstate() 235 gfpu->xfeatures = fpu_user_cfg.default_features; in fpu_alloc_guest_fpstate() 273 * fpu_enable_guest_xfd_features - Check xfeatures against guest perm and enable 275 * @xfeatures: Features requested by guest CPUID 277 * Enable all dynamic xfeatures according to guest perm and requested CPUID. 281 int fpu_enable_guest_xfd_features(struct fpu_guest *guest_fpu, u64 xfeatures) in fpu_enable_guest_xfd_features() argument 286 xfeatures &= ~guest_fpu->xfeatures; in fpu_enable_guest_xfd_features() 371 fpu_copy_guest_fpstate_to_uabi(struct fpu_guest *gfpu, void *buf, unsigned int size, u64 xfeatures, u32 pkru) fpu_copy_guest_fpstate_to_uabi() argument [all...] |
H A D | signal.c | 62 fx_sw->xfeatures = XFEATURE_MASK_FPSSE; in check_xstate_in_sigframe() 110 sw_bytes->xfeatures = fpstate->user_xfeatures; in save_sw_bytes() 122 u32 xfeatures; in save_xstate_epilog() local 136 * Read the xfeatures which we copied (directly from the cpu or in save_xstate_epilog() 139 err |= __get_user(xfeatures, (__u32 __user *)&x->header.xfeatures); in save_xstate_epilog() 146 * xfeatures in the xsave header. in save_xstate_epilog() 148 * xsave aware apps can change the xfeatures in the xsave in save_xstate_epilog() 152 xfeatures |= XFEATURE_MASK_FPSSE; in save_xstate_epilog() 154 err |= __put_user(xfeatures, (__u3 in save_xstate_epilog() [all...] |
H A D | xstate.h | 46 u64 xfeatures, u32 pkru_val, 180 u64 mask = fpstate->xfeatures; in os_xsave() 219 * XSAVE itself always writes all requested xfeatures. Removing features 270 /* Optimize away writing unnecessary xfeatures: */ in xsave_to_user_sigframe()
|
H A D | regset.c | 125 fpu->fpstate->regs.xsave.header.xfeatures |= XFEATURE_MASK_FPSSE; in xfpregs_set() 462 fpu->fpstate->regs.xsave.header.xfeatures |= XFEATURE_MASK_FP; in fpregs_set()
|
/kernel/linux/linux-5.10/arch/x86/include/asm/trace/ |
H A D | fpu.h | 17 __field(u64, xfeatures) 25 __entry->xfeatures = fpu->state.xsave.header.xfeatures; 29 TP_printk("x86/fpu: %p load: %d xfeatures: %llx xcomp_bv: %llx", 32 __entry->xfeatures,
|
/kernel/linux/linux-6.6/arch/x86/include/asm/trace/ |
H A D | fpu.h | 17 __field(u64, xfeatures) 25 __entry->xfeatures = fpu->fpstate->regs.xsave.header.xfeatures; 29 TP_printk("x86/fpu: %p load: %d xfeatures: %llx xcomp_bv: %llx", 32 __entry->xfeatures,
|
/kernel/linux/linux-6.6/arch/x86/include/asm/fpu/ |
H A D | api.h | 106 * Query the presence of one or more xfeatures. Works on any legacy CPU as well. 150 extern int fpu_enable_guest_xfd_features(struct fpu_guest *guest_fpu, u64 xfeatures); 161 unsigned int size, u64 xfeatures, u32 pkru);
|
H A D | types.h | 313 u64 xfeatures; member 363 /* @xfeatures: xfeatures for which the storage is sized */ 364 u64 xfeatures; member 366 /* @user_xfeatures: xfeatures valid in UABI buffers */ 369 /* @xfd: xfeatures disabled to trap userspace use. */ 418 * is allowed to expand it's xfeatures set which requires to 520 * @xfeatures: xfeature bitmap of features which are 523 u64 xfeatures; member
|
/kernel/linux/linux-6.6/tools/testing/selftests/x86/ |
H A D | corrupt_xstate_header.c | 49 uint64_t *xfeatures = (uint64_t *)(fpstate + 512); in sigusr1() local 53 *(xfeatures + 2) = 0xfffffff; in sigusr1()
|
/kernel/linux/linux-5.10/arch/x86/include/asm/ |
H A D | user.h | 19 __u64 xfeatures; member 45 * ptrace interface, they must ensure that the header.xfeatures 48 * header.xfeatures's bit 0 must be set to '1', when SSE is modified to 49 * non-init state, header.xfeatures's bit 1 must to be set to '1', etc.
|
/kernel/linux/linux-6.6/arch/x86/include/asm/ |
H A D | user.h | 19 __u64 xfeatures; member 45 * ptrace interface, they must ensure that the header.xfeatures 48 * header.xfeatures's bit 0 must be set to '1', when SSE is modified to 49 * non-init state, header.xfeatures's bit 1 must to be set to '1', etc.
|
/kernel/linux/linux-5.10/arch/x86/include/uapi/asm/ |
H A D | sigcontext.h | 60 __u64 xfeatures; member 63 * Actual XSAVE state size, based on the xfeatures saved in the layout. 175 __u64 xfeatures; member
|
/kernel/linux/linux-6.6/arch/x86/include/uapi/asm/ |
H A D | sigcontext.h | 60 __u64 xfeatures; member 63 * Actual XSAVE state size, based on the xfeatures saved in the layout. 175 __u64 xfeatures; member
|
/kernel/linux/patches/linux-6.6/prebuilts/usr/include/asm-x86/asm/ |
H A D | sigcontext.h | 29 __u64 xfeatures; member 94 __u64 xfeatures; member
|
/kernel/linux/patches/linux-5.10/prebuilts/usr/include/asm-x86/asm/ |
H A D | sigcontext.h | 29 __u64 xfeatures; member 94 __u64 xfeatures; member
|
/kernel/linux/linux-6.6/arch/x86/kvm/ |
H A D | cpuid.c | 138 u64 xfeatures; in kvm_check_cpuid() local 154 * Exposing dynamic xfeatures to the guest requires additional in kvm_check_cpuid() 161 xfeatures = best->eax | ((u64)best->edx << 32); in kvm_check_cpuid() 162 xfeatures &= XFEATURE_MASK_USER_DYNAMIC; in kvm_check_cpuid() 163 if (!xfeatures) in kvm_check_cpuid() 166 return fpu_enable_guest_xfd_features(&vcpu->arch.guest_fpu, xfeatures); in kvm_check_cpuid()
|
/kernel/linux/linux-5.10/arch/x86/include/asm/fpu/ |
H A D | types.h | 269 u64 xfeatures; member
|
/kernel/linux/linux-5.10/arch/x86/kvm/ |
H A D | x86.c | 4563 u64 xstate_bv = xsave->header.xfeatures; in fill_xsave() 4615 xsave->header.xfeatures = xstate_bv; in load_xsave()
|