Re: [PATCH] powerpc: Make PPC_64K_PAGES depend on only 44x or PPC_BOOK3S_64
From: Scott Wood <oss@buserror.net>
Date: 2019-02-09 20:00:46
On Fri, 2019-02-08 at 13:01 +0000, Christophe Leroy wrote:
On 02/08/2019 12:34 PM, Michael Ellerman wrote:quoted
In commit 7820856a4fcd ("powerpc/mm/book3e/64: Remove unsupported 64Kpage size from 64bit booke") we dropped the 64K page size support from the 64-bit nohash (Book3E) code. But we didn't update the dependencies of the PPC_64K_PAGES option, meaning a randconfig can still trigger this code and cause a build breakage, eg: arch/powerpc/include/asm/nohash/64/pgtable.h:14:2: error: #error "Page size not supported" arch/powerpc/include/asm/nohash/mmu-book3e.h:275:2: error: #error Unsupported page size So remove PPC_BOOK3E_64 from the dependencies. This also means we don't need to worry about PPC_FSL_BOOK3E, because that was just trying to prevent the PPC_BOOK3E_64=y && PPC_FSL_BOOK3E=y case.Does it means some cleanup could be done, for instance: arch/powerpc/include/asm/nohash/64/pgalloc.h:#ifndef CONFIG_PPC_64K_PAGES arch/powerpc/include/asm/nohash/64/pgalloc.h:#endif /* CONFIG_PPC_64K_PAGES */ arch/powerpc/include/asm/nohash/64/pgtable.h:#ifdef CONFIG_PPC_64K_PAGES arch/powerpc/include/asm/nohash/64/slice.h:#ifdef CONFIG_PPC_64K_PAGES arch/powerpc/include/asm/nohash/64/slice.h:#else /* CONFIG_PPC_64K_PAGES */ arch/powerpc/include/asm/nohash/64/slice.h:#endif /* !CONFIG_PPC_64K_PAGES */ arch/powerpc/include/asm/nohash/pte-book3e.h:#ifdef CONFIG_PPC_64K_PAGES arch/powerpc/mm/tlb_low_64e.S:#ifdef CONFIG_PPC_64K_PAGES arch/powerpc/mm/tlb_low_64e.S:#ifndef CONFIG_PPC_64K_PAGES arch/powerpc/mm/tlb_low_64e.S:#endif /* CONFIG_PPC_64K_PAGES */ arch/powerpc/mm/tlb_low_64e.S:#ifdef CONFIG_PPC_64K_PAGES arch/powerpc/mm/tlb_low_64e.S:#ifdef CONFIG_PPC_64K_PAGES arch/powerpc/mm/tlb_low_64e.S:#ifndef CONFIG_PPC_64K_PAGES arch/powerpc/mm/tlb_low_64e.S:#endif /* CONFIG_PPC_64K_PAGES */ arch/powerpc/mm/tlb_low_64e.S:#ifndef CONFIG_PPC_64K_PAGES arch/powerpc/mm/tlb_low_64e.S:#endif /* CONFIG_PPC_64K_PAGES */ arch/powerpc/mm/tlb_low_64e.S:#ifndef CONFIG_PPC_64K_PAGES arch/powerpc/mm/tlb_low_64e.S:#ifdef CONFIG_PPC_64K_PAGES
More generally, if fsl is the only supported book3e platform and that's not expected to change, everything in tlb_low_64e.S except the bolted and e6500 variants could go away. -Scott