• R
    ahci: Fix data abort on multiple scsi resets. · 3f629711
    Roger Quadros 提交于
    Commit 2faf5fb8 introduced a regression that causes a data
    abort when running scsi init followed by scsi reset.
    
    There are 2 problems with the original commit
    1) ALLOC_CACHE_ALIGN_BUFFER() allocates memory on the stack but is
    assigned to ataid[port] and used by other functions.
    2) The function ata_scsiop_inquiry() tries to free memory which was
    never allocated on the heap.
    
    Fix these problems by using tmpid as a temporary cache aligned buffer.
    Allocate memory separately for ataid[port] and re-use it if required.
    
    Fixes: 2faf5fb8 (ahci: Fix cache align error messages)
    Reported-by: NEli Nidam <elini@marvell.com>
    Signed-off-by: NRoger Quadros <rogerq@ti.com>
    3f629711
ahci.c 23.8 KB