[PATCH] powerpc/mm/radix: GR field got removed in ISA 3.0B

Aneesh Kumar K.V aneesh.kumar at linux.vnet.ibm.com
Wed Jun 21 15:20:12 AEST 2017


The bit position is now marked reserved. Hence don't set the bit to 1.

Signed-off-by: Aneesh Kumar K.V <aneesh.kumar at linux.vnet.ibm.com>
---
 arch/powerpc/include/asm/book3s/64/mmu.h | 1 -
 arch/powerpc/kvm/book3s_hv.c             | 6 +-----
 arch/powerpc/mm/pgtable-radix.c          | 2 +-
 3 files changed, 2 insertions(+), 7 deletions(-)

diff --git a/arch/powerpc/include/asm/book3s/64/mmu.h b/arch/powerpc/include/asm/book3s/64/mmu.h
index 77529a3e3811..e28ce2793e7d 100644
--- a/arch/powerpc/include/asm/book3s/64/mmu.h
+++ b/arch/powerpc/include/asm/book3s/64/mmu.h
@@ -55,7 +55,6 @@ extern struct patb_entry *partition_tb;
 #define RPDS_MASK	0x1f		/* root page dir. size field */
 
 /* Bits in patb1 field */
-#define PATB_GR		(1UL << 63)	/* guest uses radix; must match HR */
 #define PRTS_MASK	0x1f		/* process table size field */
 #define PRTB_MASK	0x0ffffffffffff000UL
 
diff --git a/arch/powerpc/kvm/book3s_hv.c b/arch/powerpc/kvm/book3s_hv.c
index 42b7a4fd57d9..657729a433f9 100644
--- a/arch/powerpc/kvm/book3s_hv.c
+++ b/arch/powerpc/kvm/book3s_hv.c
@@ -3185,7 +3185,7 @@ static void kvmppc_setup_partition_table(struct kvm *kvm)
 	} else {
 		dw0 = PATB_HR | radix__get_tree_size() |
 			__pa(kvm->arch.pgtable) | RADIX_PGD_INDEX_SIZE;
-		dw1 = PATB_GR | kvm->arch.process_table;
+		dw1 = kvm->arch.process_table;
 	}
 
 	mmu_partition_table_set_entry(kvm->arch.lpid, dw0, dw1);
@@ -3840,10 +3840,6 @@ static int kvmhv_configure_mmu(struct kvm *kvm, struct kvm_ppc_mmuv3_cfg *cfg)
 	if (radix != kvm_is_radix(kvm))
 		return -EINVAL;
 
-	/* GR (guest radix) bit in process_table field must match */
-	if (!!(cfg->process_table & PATB_GR) != radix)
-		return -EINVAL;
-
 	/* Process table size field must be reasonable, i.e. <= 24 */
 	if ((cfg->process_table & PRTS_MASK) > 24)
 		return -EINVAL;
diff --git a/arch/powerpc/mm/pgtable-radix.c b/arch/powerpc/mm/pgtable-radix.c
index 6e3d1518eef3..338d69a726b2 100644
--- a/arch/powerpc/mm/pgtable-radix.c
+++ b/arch/powerpc/mm/pgtable-radix.c
@@ -25,7 +25,7 @@
 static int native_register_process_table(unsigned long base, unsigned long pg_sz,
 					 unsigned long table_size)
 {
-	unsigned long patb1 = base | table_size | PATB_GR;
+	unsigned long patb1 = base | table_size;
 
 	partition_tb->patb1 = cpu_to_be64(patb1);
 	return 0;
-- 
2.7.4



More information about the Linuxppc-dev mailing list