On 11/27/23 22:56, Marc Zyngier wrote: > Since the kernel will never run on a system with the VPIPT i-cache > policy, drop the detection code altogether. > > Signed-off-by: Marc Zyngier <maz@xxxxxxxxxx> Reviewed-by: Anshuman Khandual <anshuman.khandual@xxxxxxx> > --- > arch/arm64/include/asm/cache.h | 6 ------ > arch/arm64/kernel/cpuinfo.c | 5 ----- > 2 files changed, 11 deletions(-) > > diff --git a/arch/arm64/include/asm/cache.h b/arch/arm64/include/asm/cache.h > index ceb368d33bf4..06a4670bdb0b 100644 > --- a/arch/arm64/include/asm/cache.h > +++ b/arch/arm64/include/asm/cache.h > @@ -58,7 +58,6 @@ static inline unsigned int arch_slab_minalign(void) > #define CTR_L1IP(ctr) SYS_FIELD_GET(CTR_EL0, L1Ip, ctr) > > #define ICACHEF_ALIASING 0 > -#define ICACHEF_VPIPT 1 > extern unsigned long __icache_flags; > > /* > @@ -70,11 +69,6 @@ static inline int icache_is_aliasing(void) > return test_bit(ICACHEF_ALIASING, &__icache_flags); > } > > -static __always_inline int icache_is_vpipt(void) > -{ > - return test_bit(ICACHEF_VPIPT, &__icache_flags); > -} > - > static inline u32 cache_type_cwg(void) > { > return SYS_FIELD_GET(CTR_EL0, CWG, read_cpuid_cachetype()); > diff --git a/arch/arm64/kernel/cpuinfo.c b/arch/arm64/kernel/cpuinfo.c > index a257da7b56fe..47043c0d95ec 100644 > --- a/arch/arm64/kernel/cpuinfo.c > +++ b/arch/arm64/kernel/cpuinfo.c > @@ -36,8 +36,6 @@ static struct cpuinfo_arm64 boot_cpu_data; > static inline const char *icache_policy_str(int l1ip) > { > switch (l1ip) { > - case CTR_EL0_L1Ip_VPIPT: > - return "VPIPT"; > case CTR_EL0_L1Ip_VIPT: > return "VIPT"; > case CTR_EL0_L1Ip_PIPT: > @@ -388,9 +386,6 @@ static void cpuinfo_detect_icache_policy(struct cpuinfo_arm64 *info) > switch (l1ip) { > case CTR_EL0_L1Ip_PIPT: > break; > - case CTR_EL0_L1Ip_VPIPT: > - set_bit(ICACHEF_VPIPT, &__icache_flags); > - break; > case CTR_EL0_L1Ip_VIPT: > default: > /* Assume aliasing */