Message ID | 1588500367-1056-2-git-send-email-chenhc@lemote.com (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | KVM: MIPS: Add Loongson-3 support (Host Side) | expand |
нед, 3. мај 2020. у 12:06 Huacai Chen <chenhc@lemote.com> је написао/ла: > > From: Xing Li <lixing@loongson.cn> > > The code in decode_config4() of arch/mips/kernel/cpu-probe.c > > asid_mask = MIPS_ENTRYHI_ASID; > if (config4 & MIPS_CONF4_AE) > asid_mask |= MIPS_ENTRYHI_ASIDX; > set_cpu_asid_mask(c, asid_mask); > > set asid_mask to cpuinfo->asid_mask. > > So in order to support variable ASID_MASK, KVM_ENTRYHI_ASID should also > be changed to cpu_asid_mask(&boot_cpu_data). > > Cc: stable@vger.kernel.org > Signed-off-by: Xing Li <lixing@loongson.cn> > [Huacai: Change current_cpu_data to boot_cpu_data for optimization] > Signed-off-by: Huacai Chen <chenhc@lemote.com> > --- > arch/mips/include/asm/kvm_host.h | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > For what is worth: Reviewed-by: Aleksandar Markovic <aleksandar.qemu.devel@gmail.com> > diff --git a/arch/mips/include/asm/kvm_host.h b/arch/mips/include/asm/kvm_host.h > index 2c343c3..a01cee9 100644 > --- a/arch/mips/include/asm/kvm_host.h > +++ b/arch/mips/include/asm/kvm_host.h > @@ -275,7 +275,7 @@ enum emulation_result { > #define MIPS3_PG_FRAME 0x3fffffc0 > > #define VPN2_MASK 0xffffe000 > -#define KVM_ENTRYHI_ASID MIPS_ENTRYHI_ASID > +#define KVM_ENTRYHI_ASID cpu_asid_mask(&boot_cpu_data) > #define TLB_IS_GLOBAL(x) ((x).tlb_lo[0] & (x).tlb_lo[1] & ENTRYLO_G) > #define TLB_VPN2(x) ((x).tlb_hi & VPN2_MASK) > #define TLB_ASID(x) ((x).tlb_hi & KVM_ENTRYHI_ASID) > -- > 2.7.0 >
diff --git a/arch/mips/include/asm/kvm_host.h b/arch/mips/include/asm/kvm_host.h index 2c343c3..a01cee9 100644 --- a/arch/mips/include/asm/kvm_host.h +++ b/arch/mips/include/asm/kvm_host.h @@ -275,7 +275,7 @@ enum emulation_result { #define MIPS3_PG_FRAME 0x3fffffc0 #define VPN2_MASK 0xffffe000 -#define KVM_ENTRYHI_ASID MIPS_ENTRYHI_ASID +#define KVM_ENTRYHI_ASID cpu_asid_mask(&boot_cpu_data) #define TLB_IS_GLOBAL(x) ((x).tlb_lo[0] & (x).tlb_lo[1] & ENTRYLO_G) #define TLB_VPN2(x) ((x).tlb_hi & VPN2_MASK) #define TLB_ASID(x) ((x).tlb_hi & KVM_ENTRYHI_ASID)