lkml.org 
[lkml]   [2016]   [Sep]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 4.7 059/184] IB/hfi1: Reset QSFP on every run through channel tuning
    Date
    4.7-stable review patch.  If anyone has any objections, please let me know.

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

    From: Easwar Hariharan <easwar.hariharan@intel.com>

    commit b5e710195492f682d93097cddac13e594d39a946 upstream.

    Active QSFP cables were reset only every alternate iteration of the
    channel tuning algorithm instead of every iteration due to incorrect
    reset of the flag that controlled QSFP reset, resulting in using stale
    QSFP status in the channel tuning algorithm.

    Fixes: 8ebd4cf1852a ("Add active and optical cable support")
    Reviewed-by: Dean Luick <dean.luick@intel.com>
    Signed-off-by: Easwar Hariharan <easwar.hariharan@intel.com>
    Signed-off-by: Dennis Dalessandro <dennis.dalessandro@intel.com>
    Signed-off-by: Doug Ledford <dledford@redhat.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

    ---
    drivers/infiniband/hw/hfi1/platform.c | 6 +++++-
    1 file changed, 5 insertions(+), 1 deletion(-)

    --- a/drivers/infiniband/hw/hfi1/platform.c
    +++ b/drivers/infiniband/hw/hfi1/platform.c
    @@ -638,9 +638,13 @@ static int tune_active_qsfp(struct hfi1_
    if (ret)
    return ret;

    + /*
    + * We'll change the QSFP memory contents from here on out, thus we set a
    + * flag here to remind ourselves to reset the QSFP module. This prevents
    + * reuse of stale settings established in our previous pass through.
    + */
    if (ppd->qsfp_info.reset_needed) {
    reset_qsfp(ppd);
    - ppd->qsfp_info.reset_needed = 0;
    refresh_qsfp_cache(ppd, &ppd->qsfp_info);
    } else {
    ppd->qsfp_info.reset_needed = 1;

    \
     
     \ /
      Last update: 2016-09-23 00:04    [W:4.162 / U:0.020 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site