lkml.org 
[lkml]   [2015]   [Jul]   [31]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 4.1 164/267] libata: Fix regression when the NCQ Send and Receive log page is absent
    Date
    4.1-stable review patch.  If anyone has any objections, please let me know.

    ------------------

    From: "Martin K. Petersen" <martin.petersen@oracle.com>

    commit eab6ee1ce3c4678224d70338134f7a02005768cb upstream.

    Commit 5d3abf8ff67f ("libata: Fall back to unqueued READ LOG EXT if
    the DMA variant fails") allowed us to fall back to the unqueued READ
    LOG variant if the queued version failed. However, if the device did
    not support the page at all we would end up looping due to a merge
    snafu.

    Ensure we only take the fallback path once.

    Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
    Reported-by: Sergey Senozhatsky <sergey.senozhatsky@gmail.com>
    Tested-by: Sergey Senozhatsky <sergey.senozhatsky@gmail.com>
    Signed-off-by: Tejun Heo <tj@kernel.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

    ---
    drivers/ata/libata-eh.c | 1 +
    1 file changed, 1 insertion(+)

    --- a/drivers/ata/libata-eh.c
    +++ b/drivers/ata/libata-eh.c
    @@ -1521,6 +1521,7 @@ retry:
    } else {
    tf.command = ATA_CMD_READ_LOG_EXT;
    tf.protocol = ATA_PROT_PIO;
    + dma = false;
    }
    tf.lbal = log;
    tf.lbam = page;



    \
     
     \ /
      Last update: 2015-07-31 22:21    [W:4.604 / U:0.188 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site