> > diff --git a/target/i386/cpu.c b/target/i386/cpu.c > > index 85ef7452c0..339131a39a 100644 > > --- a/target/i386/cpu.c > > +++ b/target/i386/cpu.c > > @@ -7093,6 +7093,7 @@ static void x86_cpu_reset_hold(Object *obj, ResetType type) > > env->a20_mask = ~0x0; > > env->smbase = 0x30000; > > env->msr_smi_count = 0; > > + env->hwcr = 0; > > > Why we need to clear it here? This needs to be explained in the commit > message. I misunderstood, there’s no need to clear here. > > > > +#define MSR_K7_HWCR 0xc0010015 > > + > > #define MSR_VM_HSAVE_PA 0xc0010117 > > > > #define MSR_IA32_XFD 0x000001c4 > > @@ -1859,6 +1861,9 @@ typedef struct CPUArchState { > > uint64_t msr_lbr_depth; > > LBREntry lbr_records[ARCH_LBR_NR_ENTRIES]; > > > > + /* Hardware Configuration MSR */ > > > We can keep the same comment as msr_hwcr in KVM to emphasize this is an > AMD-specific MSR, i.e., > > > /* AMD MSRC001_0015 Hardware Configuration */ > > > > + uint64_t hwcr; > > > Add the msr_ prefix to indicate that this value is only intended to > store the MSR. Currently, for similar members, some have the msr_ prefix > and some do not, but it is better to have it for clarity. > Thanks, I will modify it.