summaryrefslogtreecommitdiffstats
path: root/arch/riscv/include/asm/mmu_context.h
diff options
context:
space:
mode:
Diffstat (limited to 'arch/riscv/include/asm/mmu_context.h')
-rw-r--r--arch/riscv/include/asm/mmu_context.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/arch/riscv/include/asm/mmu_context.h b/arch/riscv/include/asm/mmu_context.h
index 082ef8652ac7..d30f0c54b8b2 100644
--- a/arch/riscv/include/asm/mmu_context.h
+++ b/arch/riscv/include/asm/mmu_context.h
@@ -41,7 +41,12 @@ static inline void destroy_context(struct mm_struct *mm)
static inline void set_pgdir(pgd_t *pgd)
{
- csr_write(sptbr, virt_to_pfn(pgd) | SPTBR_MODE);
+ /*
+ * Use the old spbtr name instead of using the current satp
+ * name to support binutils 2.29 which doesn't know about the
+ * privileged ISA 1.10 yet.
+ */
+ csr_write(sptbr, virt_to_pfn(next->pgd) | SATP_MODE);
}
/*