Skip to content
  • Harvey Hunt's avatar
    libata: Align ata_device's id on a cacheline · 4ee34ea3
    Harvey Hunt authored
    The id buffer in ata_device is a DMA target, but it isn't explicitly
    cacheline aligned. Due to this, adjacent fields can be overwritten with
    stale data from memory on non coherent architectures. As a result, the
    kernel is sometimes unable to communicate with an ATA device.
    
    Fix this by ensuring that the id buffer is cacheline aligned.
    
    This issue is similar to that fixed by Commit 84bda12a
    
    
    ("libata: align ap->sector_buf").
    
    Signed-off-by: default avatarHarvey Hunt <harvey.hunt@imgtec.com>
    Cc: linux-kernel@vger.kernel.org
    Cc: <stable@vger.kernel.org> # 2.6.18
    Signed-off-by: default avatarTejun Heo <tj@kernel.org>
    4ee34ea3