Received: by 2002:a25:4158:0:0:0:0:0 with SMTP id o85csp1185095yba; Thu, 9 May 2019 12:09:47 -0700 (PDT) X-Google-Smtp-Source: APXvYqwkQQk+WwCkA+vK27LFvkJA5L6pZdSFnGbQTYKZCZVBHLg7E8t/7Gvl09f7nRmDUKjRxbX6 X-Received: by 2002:aa7:8455:: with SMTP id r21mr7859603pfn.253.1557428987313; Thu, 09 May 2019 12:09:47 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1557428987; cv=none; d=google.com; s=arc-20160816; b=cPtUowogUai4cpF+WgB0G7Uk7z/Ko+a6//x939jSN02s/LpNpVfDucjjlRSIj/vBDA XJszYs5aXx/o3QIySlncsWliD9Zuk8XzXxjWU5XLs1JAQXaZ7U236Hr9aYc5/cyvdXrk n/X/ZjlkjTnXk8p1oH0O/bPjG1Kn8HPc6zMLsjilQkhdghQMGVzhg1BOUpZMgxk/8E6M Qv/IUqK1FFr2ELB94jcSYdACxrYIFq7B/WIGJ258YS7QjZIrUhZkT19tPRFFSLi2K0TG Nxzk8Wq85YXvxPmoAUA4CW+D/Ea49xnWG4JSxTew5p74ar2IbtawiUx+2IwZV46SWwFE fqDg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=tHwYL8o2rPSlX5eYfEY8uPklNHHV2V+z32u89X5P5Mk=; b=AbxzLSSDMBTYGZl+Qkng1nLJ2cQ/0dfYMUV/ZDP6ux1k0dHxr/ffr12Ovf9M/e8IjX y3nEgaFp+AqY6GccAD7rawA0ghcCfli9OpZGc25qXiYsqjTDlYUW1oROboutTT45mbox 7Kj6QpQG1YvhIA5L3PP7Zja5MH+ePuj1at+EPTuGweT6RMbExIzBf42nNI4UfmJ+SGKe vryPsVVQP2y3YnQvENNLg3Y7Y+s/tJ185o5VCbtGF8+/BZP8yu2adkNEQWHCBM7p3v2P iuWOMVERjHTdZqU//GohTuDAukc7CYoITQryeMUWIcxsXA15JzXLTiUjn4rYc5wB/yk6 2roQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=SdTN3SI1; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id h62si4715578pfj.91.2019.05.09.12.09.31; Thu, 09 May 2019 12:09:47 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=SdTN3SI1; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727151AbfEISos (ORCPT + 99 others); Thu, 9 May 2019 14:44:48 -0400 Received: from mail.kernel.org ([198.145.29.99]:36302 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727089AbfEISor (ORCPT ); Thu, 9 May 2019 14:44:47 -0400 Received: from localhost (83-86-89-107.cable.dynamic.v4.ziggo.nl [83.86.89.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 18E82217F5; Thu, 9 May 2019 18:44:45 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1557427486; bh=yYHa21ojdwKudFT6S38d3tz7aLJYodU4kGhvuKiqAHs=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=SdTN3SI1qGn3d89ESSxcU3IJv6eaa8ntY6nreTBaGcNrd5/iqQ9OECNrnqix8qHHK fvUTwbmyRB6hpaOBKrsq/znJjvU6XstldGCWPB+lYywIByBQZGSbWqZZYmt1fmlokT UQL5e0VopjPRmVP/5KlhRaYe/WojPTJ3SMD5YqQs= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Mike Marciniszyn , Kaike Wan , Dennis Dalessandro , Jason Gunthorpe , Sasha Levin Subject: [PATCH 4.9 07/28] IB/hfi1: Eliminate opcode tests on mr deref Date: Thu, 9 May 2019 20:41:59 +0200 Message-Id: <20190509181251.841236459@linuxfoundation.org> X-Mailer: git-send-email 2.21.0 In-Reply-To: <20190509181247.647767531@linuxfoundation.org> References: <20190509181247.647767531@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org [ Upstream commit a8639a79e85c18c16c10089edd589c7948f19bbd ] When an old ack_queue entry is used to store an incoming request, it may need to clean up the old entry if it is still referencing the MR. Originally only RDMA READ request needed to reference MR on the responder side and therefore the opcode was tested when cleaning up the old entry. The introduction of tid rdma specific operations in the ack_queue makes the specific opcode tests wrong. Multiple opcodes (RDMA READ, TID RDMA READ, and TID RDMA WRITE) may need MR ref cleanup. Remove the opcode specific tests associated with the ack_queue. Fixes: f48ad614c100 ("IB/hfi1: Move driver out of staging") Signed-off-by: Mike Marciniszyn Signed-off-by: Kaike Wan Signed-off-by: Dennis Dalessandro Signed-off-by: Jason Gunthorpe Signed-off-by: Sasha Levin --- drivers/infiniband/hw/hfi1/rc.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/infiniband/hw/hfi1/rc.c b/drivers/infiniband/hw/hfi1/rc.c index e8e0fa58cb713..b08786614c1b0 100644 --- a/drivers/infiniband/hw/hfi1/rc.c +++ b/drivers/infiniband/hw/hfi1/rc.c @@ -2394,7 +2394,7 @@ void hfi1_rc_rcv(struct hfi1_packet *packet) update_ack_queue(qp, next); } e = &qp->s_ack_queue[qp->r_head_ack_queue]; - if (e->opcode == OP(RDMA_READ_REQUEST) && e->rdma_sge.mr) { + if (e->rdma_sge.mr) { rvt_put_mr(e->rdma_sge.mr); e->rdma_sge.mr = NULL; } @@ -2469,7 +2469,7 @@ void hfi1_rc_rcv(struct hfi1_packet *packet) update_ack_queue(qp, next); } e = &qp->s_ack_queue[qp->r_head_ack_queue]; - if (e->opcode == OP(RDMA_READ_REQUEST) && e->rdma_sge.mr) { + if (e->rdma_sge.mr) { rvt_put_mr(e->rdma_sge.mr); e->rdma_sge.mr = NULL; } -- 2.20.1