From owner-svn-src-projects@freebsd.org Fri Nov 24 09:52:57 2017 Return-Path: Delivered-To: svn-src-projects@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 512EEDDE791 for ; Fri, 24 Nov 2017 09:52:57 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 286446D46E; Fri, 24 Nov 2017 09:52:57 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id vAO9quY4034589; Fri, 24 Nov 2017 09:52:56 GMT (envelope-from hselasky@FreeBSD.org) Received: (from hselasky@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id vAO9qujV034588; Fri, 24 Nov 2017 09:52:56 GMT (envelope-from hselasky@FreeBSD.org) Message-Id: <201711240952.vAO9qujV034588@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: hselasky set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky Date: Fri, 24 Nov 2017 09:52:56 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r326148 - projects/bsd_rdma_4_9/sys/ofed/drivers/infiniband/ulp/ipoib X-SVN-Group: projects X-SVN-Commit-Author: hselasky X-SVN-Commit-Paths: projects/bsd_rdma_4_9/sys/ofed/drivers/infiniband/ulp/ipoib X-SVN-Commit-Revision: 326148 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.25 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 24 Nov 2017 09:52:57 -0000 Author: hselasky Date: Fri Nov 24 09:52:56 2017 New Revision: 326148 URL: https://svnweb.freebsd.org/changeset/base/326148 Log: Build fix for ipoib when CONFIG_INFINIBAND_IPOIB_CM is defined. Sponsored by: Mellanox Technologies Modified: projects/bsd_rdma_4_9/sys/ofed/drivers/infiniband/ulp/ipoib/ipoib_cm.c Modified: projects/bsd_rdma_4_9/sys/ofed/drivers/infiniband/ulp/ipoib/ipoib_cm.c ============================================================================== --- projects/bsd_rdma_4_9/sys/ofed/drivers/infiniband/ulp/ipoib/ipoib_cm.c Fri Nov 24 09:12:13 2017 (r326147) +++ projects/bsd_rdma_4_9/sys/ofed/drivers/infiniband/ulp/ipoib/ipoib_cm.c Fri Nov 24 09:52:56 2017 (r326148) @@ -287,7 +287,7 @@ static void ipoib_cm_init_rx_wr(struct ipoib_dev_priv int i; for (i = 0; i < IPOIB_CM_RX_SG; i++) - sge[i].lkey = priv->mr->lkey; + sge[i].lkey = priv->pd->local_dma_lkey; wr->next = NULL; wr->sg_list = sge; @@ -601,11 +601,11 @@ static inline int post_send(struct ipoib_dev_priv *pri priv->tx_sge[i].addr = mapping[i]; priv->tx_sge[i].length = m->m_len; } - priv->tx_wr.num_sge = i; - priv->tx_wr.wr_id = wr_id | IPOIB_OP_CM; - priv->tx_wr.opcode = IB_WR_SEND; + priv->tx_wr.wr.num_sge = i; + priv->tx_wr.wr.wr_id = wr_id | IPOIB_OP_CM; + priv->tx_wr.wr.opcode = IB_WR_SEND; - return ib_post_send(tx->qp, &priv->tx_wr, &bad_wr); + return ib_post_send(tx->qp, &priv->tx_wr.wr, &bad_wr); } void ipoib_cm_send(struct ipoib_dev_priv *priv, struct mbuf *mb, struct ipoib_cm_tx *tx) @@ -736,8 +736,7 @@ int ipoib_cm_dev_open(struct ipoib_dev_priv *priv) goto err_cm; } - ret = ib_cm_listen(priv->cm.id, cpu_to_be64(IPOIB_CM_IETF_ID | priv->qp->qp_num), - 0, NULL); + ret = ib_cm_listen(priv->cm.id, cpu_to_be64(IPOIB_CM_IETF_ID | priv->qp->qp_num), 0); if (ret) { printk(KERN_WARNING "%s: failed to listen on ID 0x%llx\n", priv->ca->name, IPOIB_CM_IETF_ID | priv->qp->qp_num); @@ -1367,8 +1366,8 @@ static void ipoib_cm_create_srq(struct ipoib_dev_priv int ipoib_cm_dev_init(struct ipoib_dev_priv *priv) { struct ifnet *dev = priv->dev; - int i, ret; - struct ib_device_attr attr; + int i; + int max_srq_sge; INIT_LIST_HEAD(&priv->cm.passive_ids); INIT_LIST_HEAD(&priv->cm.reap_list); @@ -1387,19 +1386,15 @@ int ipoib_cm_dev_init(struct ipoib_dev_priv *priv) mtx_init(&priv->cm.mb_queue.ifq_mtx, dev->if_xname, "if send queue", MTX_DEF); - ret = ib_query_device(priv->ca, &attr); - if (ret) { - printk(KERN_WARNING "ib_query_device() failed with %d\n", ret); - return ret; - } + max_srq_sge = priv->ca->attrs.max_srq_sge; - ipoib_dbg(priv, "max_srq_sge=%d\n", attr.max_srq_sge); + ipoib_dbg(priv, "max_srq_sge=%d\n", max_srq_sge); - attr.max_srq_sge = min_t(int, IPOIB_CM_RX_SG, attr.max_srq_sge); - ipoib_cm_create_srq(priv, attr.max_srq_sge); + max_srq_sge = min_t(int, IPOIB_CM_RX_SG, max_srq_sge); + ipoib_cm_create_srq(priv, max_srq_sge); if (ipoib_cm_has_srq(priv)) { - priv->cm.max_cm_mtu = attr.max_srq_sge * MJUMPAGESIZE; - priv->cm.num_frags = attr.max_srq_sge; + priv->cm.max_cm_mtu = max_srq_sge * MJUMPAGESIZE; + priv->cm.num_frags = max_srq_sge; ipoib_dbg(priv, "max_cm_mtu = 0x%x, num_frags=%d\n", priv->cm.max_cm_mtu, priv->cm.num_frags); } else {