• Mikulas Patocka's avatar
    parisc: fix a possible DMA corruption · 7ae04ba3
    Mikulas Patocka authored
    ARCH_DMA_MINALIGN was defined as 16 - this is too small - it may be
    possible that two unrelated 16-byte allocations share a cache line. If
    one of these allocations is written using DMA and the other is written
    using cached write, the value that was written with DMA may be
    corrupted.
    
    This commit changes ARCH_DMA_MINALIGN to be 128 on PA20 and 32 on PA1.1 -
    that's the largest possible cache line size.
    
    As different parisc microarchitectures have different cache line size, we
    define arch_slab_minalign(), cache_line_size() and
    dma_get_cache_alignment() so that the kernel may tune slab cache
    parameters dynamically, based on the detected cache line size.
    Signed-off-by: default avatarMikulas Patocka <mpatocka@redhat.com>
    Cc: stable@vger.kernel.org
    Signed-off-by: default avatarHelge Deller <deller@gmx.de>
    7ae04ba3
Kconfig 9.77 KB