lkml.org 
[lkml]   [2022]   [Aug]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.10 337/545] RDMA/hns: Fix incorrect clearing of interrupt status register
    Date
    From: Haoyue Xu <xuhaoyue1@hisilicon.com>

    [ Upstream commit ecb4db5c3590aa956b4b2c352081a5b632d1f9f9 ]

    The driver will clear all the interrupts in the same area
    when the driver handles the interrupt of type AEQ overflow.
    It should only set the interrupt status bit of type AEQ overflow.

    Fixes: a5073d6054f7 ("RDMA/hns: Add eq support of hip08")
    Link: https://lore.kernel.org/r/20220714134353.16700-4-liangwenpeng@huawei.com
    Signed-off-by: Haoyue Xu <xuhaoyue1@hisilicon.com>
    Signed-off-by: Wenpeng Liang <liangwenpeng@huawei.com>
    Signed-off-by: Leon Romanovsky <leon@kernel.org>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    drivers/infiniband/hw/hns/hns_roce_hw_v2.c | 4 ++--
    1 file changed, 2 insertions(+), 2 deletions(-)

    diff --git a/drivers/infiniband/hw/hns/hns_roce_hw_v2.c b/drivers/infiniband/hw/hns/hns_roce_hw_v2.c
    index abe882ec1bae..6dab03b7aca8 100644
    --- a/drivers/infiniband/hw/hns/hns_roce_hw_v2.c
    +++ b/drivers/infiniband/hw/hns/hns_roce_hw_v2.c
    @@ -5642,8 +5642,8 @@ static irqreturn_t hns_roce_v2_msix_interrupt_abn(int irq, void *dev_id)

    dev_err(dev, "AEQ overflow!\n");

    - int_st |= 1 << HNS_ROCE_V2_VF_INT_ST_AEQ_OVERFLOW_S;
    - roce_write(hr_dev, ROCEE_VF_ABN_INT_ST_REG, int_st);
    + roce_write(hr_dev, ROCEE_VF_ABN_INT_ST_REG,
    + 1 << HNS_ROCE_V2_VF_INT_ST_AEQ_OVERFLOW_S);

    /* Set reset level for reset_event() */
    if (ops->set_default_reset_request)
    --
    2.35.1


    \
     
     \ /
      Last update: 2022-08-19 18:27    [W:4.503 / U:0.004 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site