MIPS: mm: Panic if an XPA kernel is run without RIXI
authorPaul Burton <paul.burton@imgtec.com>
Tue, 19 Apr 2016 08:25:11 +0000 (09:25 +0100)
committerRalf Baechle <ralf@linux-mips.org>
Fri, 13 May 2016 13:30:25 +0000 (15:30 +0200)
XPA kernels hardcode for the presence of RIXI - the PTE format & its
handling presume RI & XI bits. Make this dependence explicit by panicing
if we run on a system that violates it.

Signed-off-by: Paul Burton <paul.burton@imgtec.com>
Reviewed-by: James Hogan <james.hogan@imgtec.com>
Cc: Paul Gortmaker <paul.gortmaker@windriver.com>
Cc: linux-mips@linux-mips.org
Cc: linux-kernel@vger.kernel.org
Patchwork: https://patchwork.linux-mips.org/patch/13125/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
arch/mips/mm/tlbex.c

index 0efa6211cc4094c3a7dd56f179ac6236edc7a91a..274da90adf0d682cb00f8811de9c19ba45fc3fa8 100644 (file)
@@ -2508,6 +2508,9 @@ void build_tlb_refill_handler(void)
         */
        static int run_once = 0;
 
+       if (config_enabled(CONFIG_XPA) && !cpu_has_rixi)
+               panic("Kernels supporting XPA currently require CPUs with RIXI");
+
        output_pgtable_bits_defines();
        check_pabits();