[PATCHv2 07/18] arm64: mm: add code to safely replace TTBR1_EL1

Catalin Marinas catalin.marinas at arm.com
Tue Jan 5 07:22:18 PST 2016


On Mon, Jan 04, 2016 at 05:56:40PM +0000, Mark Rutland wrote:
> +	.pushsection ".idmap.text", "ax"
> +/*
> + * void idmap_cpu_replace_ttbr1(phys_addr_t new_pgd, phys_addr_t reserved_pgd)
> + *
> + * This is the low-level counterpart to cpu_replace_ttbr1, and should not be
> + * called by anything else. It can only be executed from a TTBR0 mapping.
> + */
> +ENTRY(idmap_cpu_replace_ttbr1)
> +	mrs	x2, daif
> +	msr	daifset, #0xf
> +
> +	msr	ttbr1_el1, x1

Would it work to avoid the second argument and only use adrp, now that
empty_zero_page is at a fixed offset relative to this function?

-- 
Catalin



More information about the linux-arm-kernel mailing list