Lines Matching +full:0 +full:x8000000a

210 	[GDT_ENTRY_KERNEL32_CS]		= GDT_ENTRY_INIT(DESC_CODE32, 0, 0xfffff),
211 [GDT_ENTRY_KERNEL_CS] = GDT_ENTRY_INIT(DESC_CODE64, 0, 0xfffff),
212 [GDT_ENTRY_KERNEL_DS] = GDT_ENTRY_INIT(DESC_DATA64, 0, 0xfffff),
213 [GDT_ENTRY_DEFAULT_USER32_CS] = GDT_ENTRY_INIT(DESC_CODE32 | DESC_USER, 0, 0xfffff),
214 [GDT_ENTRY_DEFAULT_USER_DS] = GDT_ENTRY_INIT(DESC_DATA64 | DESC_USER, 0, 0xfffff),
215 [GDT_ENTRY_DEFAULT_USER_CS] = GDT_ENTRY_INIT(DESC_CODE64 | DESC_USER, 0, 0xfffff),
217 [GDT_ENTRY_KERNEL_CS] = GDT_ENTRY_INIT(DESC_CODE32, 0, 0xfffff),
218 [GDT_ENTRY_KERNEL_DS] = GDT_ENTRY_INIT(DESC_DATA32, 0, 0xfffff),
219 [GDT_ENTRY_DEFAULT_USER_CS] = GDT_ENTRY_INIT(DESC_CODE32 | DESC_USER, 0, 0xfffff),
220 [GDT_ENTRY_DEFAULT_USER_DS] = GDT_ENTRY_INIT(DESC_DATA32 | DESC_USER, 0, 0xfffff),
226 [GDT_ENTRY_PNPBIOS_CS32] = GDT_ENTRY_INIT(DESC_CODE32_BIOS, 0, 0xffff),
227 [GDT_ENTRY_PNPBIOS_CS16] = GDT_ENTRY_INIT(DESC_CODE16, 0, 0xffff),
228 [GDT_ENTRY_PNPBIOS_DS] = GDT_ENTRY_INIT(DESC_DATA16, 0, 0xffff),
229 [GDT_ENTRY_PNPBIOS_TS1] = GDT_ENTRY_INIT(DESC_DATA16, 0, 0),
230 [GDT_ENTRY_PNPBIOS_TS2] = GDT_ENTRY_INIT(DESC_DATA16, 0, 0),
235 [GDT_ENTRY_APMBIOS_BASE] = GDT_ENTRY_INIT(DESC_CODE32_BIOS, 0, 0xffff),
236 [GDT_ENTRY_APMBIOS_BASE+1] = GDT_ENTRY_INIT(DESC_CODE16, 0, 0xffff),
237 [GDT_ENTRY_APMBIOS_BASE+2] = GDT_ENTRY_INIT(DESC_DATA32_BIOS, 0, 0xffff),
239 [GDT_ENTRY_ESPFIX_SS] = GDT_ENTRY_INIT(DESC_DATA32, 0, 0xfffff),
240 [GDT_ENTRY_PERCPU] = GDT_ENTRY_INIT(DESC_DATA32, 0, 0xfffff),
254 return 0; in x86_nopcid_setup()
258 return 0; in x86_nopcid_setup()
271 return 0; in x86_noinvpcid_setup()
275 return 0; in x86_noinvpcid_setup()
296 "popl %0 \n\t" in flag_is_changeable_p()
297 "movl %0, %1 \n\t" in flag_is_changeable_p()
298 "xorl %2, %0 \n\t" in flag_is_changeable_p()
299 "pushl %0 \n\t" in flag_is_changeable_p()
302 "popl %0 \n\t" in flag_is_changeable_p()
338 lo |= 0x200000; in squash_the_stupid_serial_number()
345 c->cpuid_level = cpuid_eax(0); in squash_the_stupid_serial_number()
350 disable_x86_serial_nr = 0; in x86_serial_nr_setup()
409 unsigned long bits_missing = 0; in native_write_cr0()
412 asm volatile("mov %0,%%cr0": "+r" (val) : : "memory"); in native_write_cr0()
428 unsigned long bits_changed = 0; in native_write_cr4()
431 asm volatile("mov %0,%%cr4": "+r" (val) : : "memory"); in native_write_cr4()
440 WARN_ONCE(bits_changed, "pinned CR4 bits changed: 0x%lx!?\n", in native_write_cr4()
499 return 0; in x86_nofsgsbase_setup()
561 u64 msr = 0; in ibt_save()
606 wrmsrl(MSR_IA32_S_CET, 0); in setup_cet()
612 wrmsrl(MSR_IA32_S_CET, 0); in setup_cet()
623 wrmsrl(MSR_IA32_S_CET, 0); in cet_disable()
624 wrmsrl(MSR_IA32_U_CET, 0); in cet_disable()
639 { X86_FEATURE_MWAIT, 0x00000005 },
640 { X86_FEATURE_DCA, 0x00000009 },
641 { X86_FEATURE_XSAVE, 0x0000000d },
642 { 0, 0 }
655 * extended_extended_level is set to 0 if unavailable in filter_cpuid_features()
660 if (!((s32)df->level < 0 ? in filter_cpuid_features()
669 pr_warn("CPU: CPU feature " X86_CAP_FMT " disabled, no CPUID level 0x%x\n", in filter_cpuid_features()
677 * in particular, if CPUID levels 0x80000002..4 are supported, this
761 * per CPU stack canary is 0 in both per CPU areas. in switch_gdt_and_percpu_base()
783 if (c->extended_cpuid_level < 0x80000004) in get_model_name()
787 cpuid(0x80000002, &v[0], &v[1], &v[2], &v[3]); in get_model_name()
788 cpuid(0x80000003, &v[4], &v[5], &v[6], &v[7]); in get_model_name()
789 cpuid(0x80000004, &v[8], &v[9], &v[10], &v[11]); in get_model_name()
790 c->x86_model_id[48] = 0; in get_model_name()
793 p = q = s = &c->x86_model_id[0]; in get_model_name()
806 *(s + 1) = '\0'; in get_model_name()
815 if (n >= 0x80000005) { in cpu_detect_cache_sizes()
816 cpuid(0x80000005, &dummy, &ebx, &ecx, &edx); in cpu_detect_cache_sizes()
820 c->x86_tlbsize = 0; in cpu_detect_cache_sizes()
824 if (n < 0x80000006) /* Some chips just has a large L1. */ in cpu_detect_cache_sizes()
827 cpuid(0x80000006, &dummy, &ebx, &ecx, &edx); in cpu_detect_cache_sizes()
831 c->x86_tlbsize += ((ebx >> 16) & 0xfff) + (ebx & 0xfff); in cpu_detect_cache_sizes()
841 if (l2size == 0) in cpu_detect_cache_sizes()
875 for (i = 0; i < X86_VENDOR_NUM; i++) { in get_cpu_vendor()
879 if (!strcmp(v, cpu_devs[i]->c_ident[0]) || in get_cpu_vendor()
899 cpuid(0x00000000, (unsigned int *)&c->cpuid_level, in cpu_detect()
900 (unsigned int *)&c->x86_vendor_id[0], in cpu_detect()
905 /* Intel-defined flags: level 0x00000001 */ in cpu_detect()
906 if (c->cpuid_level >= 0x00000001) { in cpu_detect()
909 cpuid(0x00000001, &tfms, &misc, &junk, &cap0); in cpu_detect()
915 c->x86_clflush_size = ((misc >> 8) & 0xff) * 8; in cpu_detect()
925 for (i = 0; i < NCAPINTS + NBUGINTS; i++) { in apply_forced_caps()
976 /* Intel-defined flags: level 0x00000001 */ in get_cpu_cap()
977 if (c->cpuid_level >= 0x00000001) { in get_cpu_cap()
978 cpuid(0x00000001, &eax, &ebx, &ecx, &edx); in get_cpu_cap()
984 /* Thermal and Power Management Leaf: level 0x00000006 (eax) */ in get_cpu_cap()
985 if (c->cpuid_level >= 0x00000006) in get_cpu_cap()
986 c->x86_capability[CPUID_6_EAX] = cpuid_eax(0x00000006); in get_cpu_cap()
988 /* Additional Intel-defined flags: level 0x00000007 */ in get_cpu_cap()
989 if (c->cpuid_level >= 0x00000007) { in get_cpu_cap()
990 cpuid_count(0x00000007, 0, &eax, &ebx, &ecx, &edx); in get_cpu_cap()
997 cpuid_count(0x00000007, 1, &eax, &ebx, &ecx, &edx); in get_cpu_cap()
1002 /* Extended state features: level 0x0000000d */ in get_cpu_cap()
1003 if (c->cpuid_level >= 0x0000000d) { in get_cpu_cap()
1004 cpuid_count(0x0000000d, 1, &eax, &ebx, &ecx, &edx); in get_cpu_cap()
1009 /* AMD-defined flags: level 0x80000001 */ in get_cpu_cap()
1010 eax = cpuid_eax(0x80000000); in get_cpu_cap()
1013 if ((eax & 0xffff0000) == 0x80000000) { in get_cpu_cap()
1014 if (eax >= 0x80000001) { in get_cpu_cap()
1015 cpuid(0x80000001, &eax, &ebx, &ecx, &edx); in get_cpu_cap()
1022 if (c->extended_cpuid_level >= 0x80000007) { in get_cpu_cap()
1023 cpuid(0x80000007, &eax, &ebx, &ecx, &edx); in get_cpu_cap()
1029 if (c->extended_cpuid_level >= 0x80000008) { in get_cpu_cap()
1030 cpuid(0x80000008, &eax, &ebx, &ecx, &edx); in get_cpu_cap()
1034 if (c->extended_cpuid_level >= 0x8000000a) in get_cpu_cap()
1035 c->x86_capability[CPUID_8000_000A_EDX] = cpuid_edx(0x8000000a); in get_cpu_cap()
1037 if (c->extended_cpuid_level >= 0x8000001f) in get_cpu_cap()
1038 c->x86_capability[CPUID_8000_001F_EAX] = cpuid_eax(0x8000001f); in get_cpu_cap()
1040 if (c->extended_cpuid_level >= 0x80000021) in get_cpu_cap()
1041 c->x86_capability[CPUID_8000_0021_EAX] = cpuid_eax(0x80000021); in get_cpu_cap()
1059 (c->extended_cpuid_level < 0x80000008)) { in get_cpu_address_sizes()
1074 cpuid(0x80000008, &eax, &ebx, &ecx, &edx); in get_cpu_address_sizes()
1076 c->x86_virt_bits = (eax >> 8) & 0xff; in get_cpu_address_sizes()
1077 c->x86_phys_bits = eax & 0xff; in get_cpu_address_sizes()
1101 for (i = 0; i < X86_VENDOR_NUM; i++) in identify_cpu_without_cpuid()
1103 c->x86_vendor_id[0] = 0; in identify_cpu_without_cpuid()
1105 if (c->x86_vendor_id[0]) { in identify_cpu_without_cpuid()
1112 #define NO_SPECULATION BIT(0)
1185 /* AMD Family 0xf - 0x12 */
1186 …VULNWL_AMD(0x0f, NO_MELTDOWN | NO_SSB | NO_L1TF | NO_MDS | NO_SWAPGS | NO_ITLB_MULTIHIT | NO_MMIO …
1187 …VULNWL_AMD(0x10, NO_MELTDOWN | NO_SSB | NO_L1TF | NO_MDS | NO_SWAPGS | NO_ITLB_MULTIHIT | NO_MMIO …
1188 …VULNWL_AMD(0x11, NO_MELTDOWN | NO_SSB | NO_L1TF | NO_MDS | NO_SWAPGS | NO_ITLB_MULTIHIT | NO_MMIO …
1189 …VULNWL_AMD(0x12, NO_MELTDOWN | NO_SSB | NO_L1TF | NO_MDS | NO_SWAPGS | NO_ITLB_MULTIHIT | NO_MMIO …
1191 /* FAMILY_ANY must be last, otherwise 0x0f - 0x12 matches won't work */
1213 #define SRBDS BIT(0)
1249 VULNBL_INTEL_STEPPINGS(INTEL_COMETLAKE_L, X86_STEPPINGS(0x0, 0x0), MMIO | RETBLEED),
1268 VULNBL_AMD(0x15, RETBLEED),
1269 VULNBL_AMD(0x16, RETBLEED),
1270 VULNBL_AMD(0x17, RETBLEED | SMT_RSB | SRSO),
1271 VULNBL_HYGON(0x18, RETBLEED | SMT_RSB | SRSO),
1272 VULNBL_AMD(0x19, SRSO),
1285 u64 x86_arch_cap_msr = 0; in x86_read_arch_cap_msr()
1367 * When the CPU is not mitigated for TAA (TAA_NO=0) set TAA bug when: in cpu_set_bug_bits()
1488 int arglen, taint = 0; in cpu_parse_early_param()
1520 if (arglen <= 0) in cpu_parse_early_param()
1554 for (bit = 0; bit < 32 * NCAPINTS; bit++) { in cpu_parse_early_param()
1588 memset(&c->x86_capability, 0, sizeof(c->x86_capability)); in early_identify_cpu()
1589 c->extended_cpuid_level = 0; in early_identify_cpu()
1609 c->cpu_index = 0; in early_identify_cpu()
1655 int count = 0; in init_cpu_devs()
1678 for (i = 0; i < X86_VENDOR_NUM && cpu_devs[i]; i++) { in early_cpu_init()
1679 for (j = 0; j < 2; j++) { in early_cpu_init()
1711 loadsegment(fs, 0); in detect_null_seg_behavior()
1714 return tmp == 0; in detect_null_seg_behavior()
1740 * 0x18 is the respective family for Hygon. in check_null_seg_clears_base()
1742 if ((c->x86 == 0x17 || c->x86 == 0x18) && in check_null_seg_clears_base()
1752 c->extended_cpuid_level = 0; in generic_identify()
1773 * systems that run Linux at CPL > 0 may or may not have the in generic_identify()
1797 c->x86_cache_size = 0; in identify_cpu()
1799 c->x86_model = c->x86_stepping = 0; /* So far unknown... */ in identify_cpu()
1800 c->x86_vendor_id[0] = '\0'; /* Unset */ in identify_cpu()
1801 c->x86_model_id[0] = '\0'; /* Unset */ in identify_cpu()
1813 memset(&c->x86_capability, 0, sizeof(c->x86_capability)); in identify_cpu()
1815 memset(&c->vmx_capability, 0, sizeof(c->vmx_capability)); in identify_cpu()
1872 if (!c->x86_model_id[0]) { in identify_cpu()
1901 for (i = 0; i < NCAPINTS; i++) in identify_cpu()
1939 wrmsr(MSR_IA32_SYSENTER_CS, tss->x86_tss.ss1, 0); in enable_sep_cpu()
1940 wrmsr(MSR_IA32_SYSENTER_ESP, (unsigned long)(cpu_entry_stack(cpu) + 1), 0); in enable_sep_cpu()
1941 wrmsr(MSR_IA32_SYSENTER_EIP, (unsigned long)entry_SYSENTER_32, 0); in enable_sep_cpu()
1985 if (c->cpuid_level >= 0) in print_cpu_info()
1992 if (c->x86_model_id[0]) in print_cpu_info()
1997 pr_cont(" (family: 0x%x, model: 0x%x", c->x86, c->x86_model); in print_cpu_info()
1999 if (c->x86_stepping || c->cpuid_level >= 0) in print_cpu_info()
2000 pr_cont(", stepping: 0x%x)\n", c->x86_stepping); in print_cpu_info()
2058 wrmsrl_safe(MSR_IA32_SYSENTER_ESP, 0ULL); in idt_syscall_init()
2059 wrmsrl_safe(MSR_IA32_SYSENTER_EIP, 0ULL); in idt_syscall_init()
2078 wrmsr(MSR_STAR, 0, (__USER32_CS << 16) | __KERNEL_CS); in syscall_init()
2109 for (i = 0; i < 8; i++) { in clear_all_debug_regs()
2114 set_debugreg(0, i); in clear_all_debug_regs()
2138 wrmsr(MSR_TSC_AUX, cpudata, 0); in setup_getcpu()
2173 tss->io_bitmap.prev_max = 0; in tss_setup_io_bitmap()
2174 tss->io_bitmap.prev_sequence = 0; in tss_setup_io_bitmap()
2175 memset(tss->io_bitmap.bitmap, 0xff, sizeof(tss->io_bitmap.bitmap)); in tss_setup_io_bitmap()
2180 tss->io_bitmap.mapall[IO_BITMAP_LONGS] = ~0UL; in tss_setup_io_bitmap()
2238 if (this_cpu_read(numa_node) == 0 && in cpu_init()
2249 loadsegment(fs, 0); in cpu_init()
2250 memset(cur->thread.tls_array, 0, GDT_ENTRY_TLS_ENTRIES * 8); in cpu_init()
2253 wrmsrl(MSR_FS_BASE, 0); in cpu_init()
2254 wrmsrl(MSR_KERNEL_GS_BASE, 0); in cpu_init()
2297 curr_info->cpuid_level = cpuid_eax(0); in store_cpu_caps()
2378 '0' + (boot_cpu_data.x86 > 6 ? 6 : boot_cpu_data.x86); in arch_cpu_finalize_init()
2416 set_memory_4k((unsigned long)__va(0), 1); in arch_cpu_finalize_init()