X86_FEATURE_RTM
if (!boot_cpu_has(X86_FEATURE_RTM) && !boot_cpu_has(X86_FEATURE_HLE))
return boot_cpu_has(X86_FEATURE_RTM) ? attr->mode : 0;
return (cpu >= 0) && is_attr_for_this_pmu(kobj, attr) && cpu_has(&cpu_data(cpu), X86_FEATURE_RTM) ? attr->mode : 0;
extra_attr = boot_cpu_has(X86_FEATURE_RTM) ?
extra_attr = boot_cpu_has(X86_FEATURE_RTM) ?
extra_attr = boot_cpu_has(X86_FEATURE_RTM) ?
extra_attr = boot_cpu_has(X86_FEATURE_RTM) ?
extra_attr = boot_cpu_has(X86_FEATURE_RTM) ?
extra_attr = boot_cpu_has(X86_FEATURE_RTM) ?
extra_attr = boot_cpu_has(X86_FEATURE_RTM) ?
extra_attr = boot_cpu_has(X86_FEATURE_RTM) ?
extra_attr = boot_cpu_has(X86_FEATURE_RTM) ?
extra_attr = boot_cpu_has(X86_FEATURE_RTM) ?
boot_cpu_has(X86_FEATURE_RTM);
return boot_cpu_has_bug(X86_BUG_TAA) && boot_cpu_has(X86_FEATURE_RTM);
if (!boot_cpu_has(X86_FEATURE_RTM)) {
if ((x86_arch_cap_msr & ARCH_CAP_MDS_NO) && !boot_cpu_has(X86_FEATURE_RTM) &&
(cpu_has(c, X86_FEATURE_RTM) ||
setup_clear_cpu_cap(X86_FEATURE_RTM);
setup_clear_cpu_cap(X86_FEATURE_RTM);
setup_force_cpu_cap(X86_FEATURE_RTM);
(boot_cpu_has(X86_FEATURE_RTM) || boot_cpu_has(X86_FEATURE_HLE))) {
(boot_cpu_has(X86_FEATURE_HLE) || boot_cpu_has(X86_FEATURE_RTM)) &&
(entry->ebx & (X86_FEATURE_HLE|X86_FEATURE_RTM))) {
#define TDX_FEATURE_TSX (__feature_bit(X86_FEATURE_HLE) | __feature_bit(X86_FEATURE_RTM))
vmx_setup_uret_msr(vmx, MSR_IA32_TSX_CTRL, boot_cpu_has(X86_FEATURE_RTM));
if (boot_cpu_has(X86_FEATURE_RTM) &&
(host_initiated || guest_cpu_cap_has(vcpu, X86_FEATURE_RTM)))
if (boot_cpu_has(X86_FEATURE_RTM)) {
if (boot_cpu_has(X86_FEATURE_RTM)) {
bool enabled = guest_cpu_cap_has(vcpu, X86_FEATURE_RTM);
if (!guest_cpu_cap_has(vcpu, X86_FEATURE_RTM))
if (!boot_cpu_has(X86_FEATURE_RTM)) {