[PATCH] arm64: Enforce BBM for huge IO/VMAP mappings

Catalin Marinas catalin.marinas at arm.com
Wed Feb 21 09:44:24 PST 2018


On Wed, Feb 21, 2018 at 12:59:27PM +0000, Will Deacon wrote:
> ioremap_page_range doesn't honour break-before-make and attempts to put
> down huge mappings (using p*d_set_huge) over the top of pre-existing
> table entries. This leads to us leaking page table memory and also gives
> rise to TLB conflicts and spurious aborts, which have been seen in
> practice on Cortex-A75.
> 
> Until this has been resolved, refuse to put block mappings when the
> existing entry is found to be present.
> 
> Cc: Ard Biesheuvel <ard.biesheuvel at linaro.org>
> Reported-by: Hanjun Guo <hanjun.guo at linaro.org>
> Reported-by: Lei Li <lious.lilei at hisilicon.com>
> Signed-off-by: Will Deacon <will.deacon at arm.com>

Queued for 4.16. Shall we put a cc stable?

-- 
Catalin



More information about the linux-arm-kernel mailing list