Message ID | 20250401005224.461325-2-dmukhin@ford.com (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | xen/domain: updates to hardware emulation flags | expand |
diff --git a/xen/arch/arm/include/asm/domain.h b/xen/arch/arm/include/asm/domain.h index 50b6a4b009..279ff64fe0 100644 --- a/xen/arch/arm/include/asm/domain.h +++ b/xen/arch/arm/include/asm/domain.h @@ -119,6 +119,8 @@ struct arch_domain void *tee; #endif + /* Hardware emulation flags. */ + uint32_t emulation_flags; } __cacheline_aligned; struct arch_vcpu diff --git a/xen/arch/ppc/include/asm/domain.h b/xen/arch/ppc/include/asm/domain.h index 3a447272c6..8aa7b4a6ac 100644 --- a/xen/arch/ppc/include/asm/domain.h +++ b/xen/arch/ppc/include/asm/domain.h @@ -21,6 +21,8 @@ struct arch_vcpu { struct arch_domain { struct hvm_domain hvm; + /* Hardware emulation flags. */ + uint32_t emulation_flags; }; #include <xen/sched.h> diff --git a/xen/arch/riscv/include/asm/domain.h b/xen/arch/riscv/include/asm/domain.h index c3d965a559..b561e6f4f8 100644 --- a/xen/arch/riscv/include/asm/domain.h +++ b/xen/arch/riscv/include/asm/domain.h @@ -18,6 +18,8 @@ struct arch_vcpu { struct arch_domain { struct hvm_domain hvm; + /* Hardware emulation flags. */ + uint32_t emulation_flags; }; #include <xen/sched.h> diff --git a/xen/arch/x86/include/asm/domain.h b/xen/arch/x86/include/asm/domain.h index 5fc1d1e5d0..6b877e33a1 100644 --- a/xen/arch/x86/include/asm/domain.h +++ b/xen/arch/x86/include/asm/domain.h @@ -456,7 +456,7 @@ struct arch_domain /* Don't unconditionally inject #GP for unhandled MSRs. */ bool msr_relaxed; - /* Emulated devices enabled bitmap. */ + /* Hardware emulation flags. */ uint32_t emulation_flags; } __cacheline_aligned; diff --git a/xen/common/keyhandler.c b/xen/common/keyhandler.c index 0bb842ec00..73f5134b68 100644 --- a/xen/common/keyhandler.c +++ b/xen/common/keyhandler.c @@ -306,6 +306,7 @@ static void cf_check dump_domains(unsigned char key) if ( test_bit(i, &d->watchdog_inuse_map) ) printk(" watchdog %d expires in %d seconds\n", i, (u32)((d->watchdog_timer[i].expires - NOW()) >> 30)); + printk(" emulation_flags %#x\n", d->arch.emulation_flags); arch_dump_domain_info(d);