Commit 56e54b4e authored by Christophe Leroy's avatar Christophe Leroy Committed by Michael Ellerman
Browse files

powerpc/32: Remove 'noltlbs' kernel parameter



Mapping without large TLBs has no added value on the 8xx.

Mapping without large TLBs is still necessary on 40x when
selecting CONFIG_KFENCE or CONFIG_DEBUG_PAGEALLOC or
CONFIG_STRICT_KERNEL_RWX, but this is done automatically
and doesn't require user selection.

Remove 'noltlbs' kernel parameter, the user has no reason
to use it.

Signed-off-by: default avatarChristophe Leroy <christophe.leroy@csgroup.eu>
Signed-off-by: default avatarMichael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/80ca17bd39cf608a8ebd0764d7064a498e131199.1655202721.git.christophe.leroy@csgroup.eu
parent 1ce84497
Loading
Loading
Loading
Loading
+0 −3
Original line number Diff line number Diff line
@@ -3661,9 +3661,6 @@

	nolapic_timer	[X86-32,APIC] Do not use the local APIC timer.

	noltlbs		[PPC] Do not use large page/tlb entries for kernel
			lowmem mapping on PPC40x and PPC8xx

	nomca		[IA-64] Disable machine check abort handling

	nomce		[X86-32] Disable Machine Check Exception
+0 −3
Original line number Diff line number Diff line
@@ -79,9 +79,6 @@ unsigned long __max_low_memory = MAX_LOW_MEM;
 */
static void __init MMU_setup(void)
{
	if (strstr(boot_command_line, "noltlbs")) {
		__map_without_ltlbs = 1;
	}
	if (IS_ENABLED(CONFIG_PPC_8xx))
		return;

+0 −9
Original line number Diff line number Diff line
@@ -14,8 +14,6 @@

#define IMMR_SIZE (FIX_IMMR_SIZE << PAGE_SHIFT)

extern int __map_without_ltlbs;

static unsigned long block_mapped_ram;

/*
@@ -28,8 +26,6 @@ phys_addr_t v_block_mapped(unsigned long va)

	if (va >= VIRT_IMMR_BASE && va < VIRT_IMMR_BASE + IMMR_SIZE)
		return p + va - VIRT_IMMR_BASE;
	if (__map_without_ltlbs)
		return 0;
	if (va >= PAGE_OFFSET && va < PAGE_OFFSET + block_mapped_ram)
		return __pa(va);
	return 0;
@@ -45,8 +41,6 @@ unsigned long p_block_mapped(phys_addr_t pa)

	if (pa >= p && pa < p + IMMR_SIZE)
		return VIRT_IMMR_BASE + pa - p;
	if (__map_without_ltlbs)
		return 0;
	if (pa < block_mapped_ram)
		return (unsigned long)__va(pa);
	return 0;
@@ -153,9 +147,6 @@ unsigned long __init mmu_mapin_ram(unsigned long base, unsigned long top)

	mmu_mapin_immr();

	if (__map_without_ltlbs)
		return 0;

	mmu_mapin_ram_chunk(0, boundary, PAGE_KERNEL_TEXT, true);
	if (debug_pagealloc_enabled_or_kfence()) {
		top = boundary;