On Fri, Jun 9, 2023 at 9:35 PM Andrew Jones <ajones@xxxxxxxxxxxxxxxx> wrote: > > On Fri, Jun 09, 2023 at 10:12:18AM +0800, Haibo Xu wrote: > > +static struct vcpu_reg_list aia_config = { > > + .sublists = { > > + BASE_SUBLIST, > > + AIA_REGS_SUBLIST, > > + {0}, > > + }, > > +}; > > + > > +static struct vcpu_reg_list fp_f_d_config = { > > + .sublists = { > > + BASE_SUBLIST, > > + FP_F_REGS_SUBLIST, > > + FP_D_REGS_SUBLIST, > > + {0}, > > + }, > > +}; > > + > > +struct vcpu_reg_list *vcpu_configs[] = { > > + &zicbo_config, > > + &aia_config, > > + &fp_f_d_config, > > +}; > > +int vcpu_configs_n = ARRAY_SIZE(vcpu_configs); > > -- > > 2.34.1 > > > > I see we have a bit of a problem with the configs for riscv. Since we > don't disable anything we're not testing, then for any test that is > missing, for example, the f and d registers, we'll get output like > "There are 66 new registers. Consider adding them to the blessed reg > list with the following lines:" and then a dump of all the f and d > registers. The test doesn't fail, but it's messy and confusing. Ideally > we'd disable all registers of all sublists not in the config, probably > by starting by disabling everything and then only reenabling the ones > in the config. > > Anything that can't be disabled is either a KVM bug, i.e. we should > be able to disable it, because we can't expect every host to have it, > or it needs to be in the base register sublist (meaning every host > will always have it). > HI Andrew, I found several multi-letters ISA EXT(AIA/SSTC etc) were not allowed to be disabled. Is it a bug? shall we fix it? Thanks, Haibo static bool kvm_riscv_vcpu_isa_disable_allowed(unsigned long ext) { switch (ext) { case KVM_RISCV_ISA_EXT_A: case KVM_RISCV_ISA_EXT_C: case KVM_RISCV_ISA_EXT_I: case KVM_RISCV_ISA_EXT_M: case KVM_RISCV_ISA_EXT_SSAIA: case KVM_RISCV_ISA_EXT_SSTC: case KVM_RISCV_ISA_EXT_SVINVAL: case KVM_RISCV_ISA_EXT_ZIHINTPAUSE: case KVM_RISCV_ISA_EXT_ZBB: return false; default: break; } return true; } > Thanks, > drew