From patchwork Thu Jan 24 03:20:17 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dennis Dalessandro X-Patchwork-Id: 10778249 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 0367D913 for ; Thu, 24 Jan 2019 03:20:21 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id DCFD92D003 for ; Thu, 24 Jan 2019 03:20:20 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id D00522D050; Thu, 24 Jan 2019 03:20:20 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.9 required=2.0 tests=BAYES_00,MAILING_LIST_MULTI, RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 494B42D01A for ; Thu, 24 Jan 2019 03:20:20 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726346AbfAXDUT (ORCPT ); Wed, 23 Jan 2019 22:20:19 -0500 Received: from mga03.intel.com ([134.134.136.65]:52156 "EHLO mga03.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726249AbfAXDUT (ORCPT ); Wed, 23 Jan 2019 22:20:19 -0500 X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by orsmga103.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 23 Jan 2019 19:20:18 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.56,514,1539673200"; d="scan'208";a="128114425" Received: from scymds01.sc.intel.com ([10.82.194.37]) by FMSMGA003.fm.intel.com with ESMTP; 23 Jan 2019 19:20:18 -0800 Received: from scvm10.sc.intel.com (scvm10.sc.intel.com [10.82.195.27]) by scymds01.sc.intel.com with ESMTP id x0O3KIbQ005369; Wed, 23 Jan 2019 19:20:18 -0800 Received: from scvm10.sc.intel.com (localhost [127.0.0.1]) by scvm10.sc.intel.com with ESMTP id x0O3KHIL002117; Wed, 23 Jan 2019 19:20:17 -0800 Subject: [PATCH for-next 0/6] IB/hfi1: Add OPFN From: Dennis Dalessandro To: jgg@ziepe.ca, dledford@redhat.com Cc: Ashutosh Dixit , linux-rdma@vger.kernel.org, Mitko Haralanov , Mike Marciniszyn , Kaike Wan Date: Wed, 23 Jan 2019 19:20:17 -0800 Message-ID: <20190124031041.29585.54467.stgit@scvm10.sc.intel.com> User-Agent: StGit/0.17.1-18-g2e886-dirty MIME-Version: 1.0 Sender: linux-rdma-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-rdma@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP This is the second in a set of patch series to add in TID RDMA. This series is the patches to support OPFN which is the feature negotiation protocol used by TID RDMA. This is totally hidden from users and does not impact any API. It done under the hood at the driver level. At a high level OPFN enables exchanging parameters between two hosts using IB compare and swap requests to a special virtual address. The request uses a reserved IB work request opcode (see patch 3). --- Kaike Wan (5): IB/hfi1: Add OPFN helper functions for TID RDMA feature IB/hfi1: OPFN interface IB/hfi1, IB/rdmavt: Allow for extending of QP's s_ack_queue IB/hfi1: Integrate OPFN into RC transactions IB/hfi1: Add static trace for OPFN Mitko Haralanov (1): IB/hfi1: OPFN support discovery drivers/infiniband/hw/hfi1/Makefile | 1 drivers/infiniband/hw/hfi1/chip.c | 11 + drivers/infiniband/hw/hfi1/chip.h | 3 drivers/infiniband/hw/hfi1/hfi.h | 3 drivers/infiniband/hw/hfi1/init.c | 10 + drivers/infiniband/hw/hfi1/opfn.c | 318 +++++++++++++++++++++++++++++++ drivers/infiniband/hw/hfi1/opfn.h | 85 ++++++++ drivers/infiniband/hw/hfi1/qp.c | 13 + drivers/infiniband/hw/hfi1/rc.c | 87 ++++++-- drivers/infiniband/hw/hfi1/ruc.c | 16 +- drivers/infiniband/hw/hfi1/tid_rdma.c | 217 +++++++++++++++++++++ drivers/infiniband/hw/hfi1/tid_rdma.h | 29 +++ drivers/infiniband/hw/hfi1/trace.h | 1 drivers/infiniband/hw/hfi1/trace_rx.h | 107 ---------- drivers/infiniband/hw/hfi1/trace_tid.h | 332 ++++++++++++++++++++++++++++++++ drivers/infiniband/hw/hfi1/uc.c | 3 drivers/infiniband/hw/hfi1/verbs.c | 2 drivers/infiniband/hw/hfi1/verbs.h | 8 + include/rdma/rdma_vt.h | 10 + 19 files changed, 1115 insertions(+), 141 deletions(-) create mode 100644 drivers/infiniband/hw/hfi1/opfn.c create mode 100644 drivers/infiniband/hw/hfi1/opfn.h create mode 100644 drivers/infiniband/hw/hfi1/trace_tid.h -- -Denny