• Russell King's avatar
    ARM: DMA: ensure that old section mappings are flushed from the TLB · 6b076991
    Russell King authored
    When setting up the CMA region, we must ensure that the old section
    mappings are flushed from the TLB before replacing them with page
    tables, otherwise we can suffer from mismatched aliases if the CPU
    speculatively prefetches from these mappings at an inopportune time.
    
    A mismatched alias can occur when the TLB contains a section mapping,
    but a subsequent prefetch causes it to load a page table mapping,
    resulting in the possibility of the TLB containing two matching
    mappings for the same virtual address region.
    Acked-by: default avatarWill Deacon <will.deacon@arm.com>
    Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
    6b076991
dma-mapping.c 54.5 KB