From owner-svn-src-all@freebsd.org Tue Oct 15 11:11:22 2019 Return-Path: Delivered-To: svn-src-all@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id AC77915B95A; Tue, 15 Oct 2019 11:11:22 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 46st621HXwz43lR; Tue, 15 Oct 2019 11:11:22 +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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 0E4B91DB4F; Tue, 15 Oct 2019 11:11:22 +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 x9FBBLol089156; Tue, 15 Oct 2019 11:11:21 GMT (envelope-from hselasky@FreeBSD.org) Received: (from hselasky@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x9FBBLtk089153; Tue, 15 Oct 2019 11:11:21 GMT (envelope-from hselasky@FreeBSD.org) Message-Id: <201910151111.x9FBBLtk089153@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: hselasky set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky Date: Tue, 15 Oct 2019 11:11:21 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r353546 - head/sys/ofed/drivers/infiniband/ulp/ipoib X-SVN-Group: head X-SVN-Commit-Author: hselasky X-SVN-Commit-Paths: head/sys/ofed/drivers/infiniband/ulp/ipoib X-SVN-Commit-Revision: 353546 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 15 Oct 2019 11:11:22 -0000 Author: hselasky Date: Tue Oct 15 11:11:21 2019 New Revision: 353546 URL: https://svnweb.freebsd.org/changeset/base/353546 Log: Fix missing epochification of the ipoib code after r353292. Sponsored by: Mellanox Technologies Modified: head/sys/ofed/drivers/infiniband/ulp/ipoib/ipoib_cm.c head/sys/ofed/drivers/infiniband/ulp/ipoib/ipoib_main.c head/sys/ofed/drivers/infiniband/ulp/ipoib/ipoib_multicast.c Modified: head/sys/ofed/drivers/infiniband/ulp/ipoib/ipoib_cm.c ============================================================================== --- head/sys/ofed/drivers/infiniband/ulp/ipoib/ipoib_cm.c Tue Oct 15 09:50:02 2019 (r353545) +++ head/sys/ofed/drivers/infiniband/ulp/ipoib/ipoib_cm.c Tue Oct 15 11:11:21 2019 (r353546) @@ -845,6 +845,7 @@ static int ipoib_cm_rep_handler(struct ib_cm_id *cm_id struct ipoib_cm_tx *p = cm_id->context; struct ipoib_dev_priv *priv = p->priv; struct ipoib_cm_data *data = event->private_data; + struct epoch_tracker et; struct ifqueue mbqueue; struct ib_qp_attr qp_attr; int qp_attr_mask, ret; @@ -898,6 +899,7 @@ static int ipoib_cm_rep_handler(struct ib_cm_id *cm_id } spin_unlock_irq(&priv->lock); + NET_EPOCH_ENTER(et); for (;;) { struct ifnet *dev = p->priv->dev; _IF_DEQUEUE(&mbqueue, mb); @@ -908,6 +910,7 @@ static int ipoib_cm_rep_handler(struct ib_cm_id *cm_id ipoib_warn(priv, "dev_queue_xmit failed " "to requeue packet\n"); } + NET_EPOCH_EXIT(et); ret = ib_send_cm_rtu(cm_id, NULL, 0); if (ret) { Modified: head/sys/ofed/drivers/infiniband/ulp/ipoib/ipoib_main.c ============================================================================== --- head/sys/ofed/drivers/infiniband/ulp/ipoib/ipoib_main.c Tue Oct 15 09:50:02 2019 (r353545) +++ head/sys/ofed/drivers/infiniband/ulp/ipoib/ipoib_main.c Tue Oct 15 11:11:21 2019 (r353546) @@ -555,6 +555,7 @@ path_rec_completion(int status, struct ib_sa_path_rec struct ifnet *dev = priv->dev; struct ipoib_ah *ah = NULL; struct ipoib_ah *old_ah = NULL; + struct epoch_tracker et; struct ifqueue mbqueue; struct mbuf *mb; unsigned long flags; @@ -609,6 +610,7 @@ path_rec_completion(int status, struct ib_sa_path_rec if (old_ah) ipoib_put_ah(old_ah); + NET_EPOCH_ENTER(et); for (;;) { _IF_DEQUEUE(&mbqueue, mb); if (mb == NULL) @@ -618,6 +620,7 @@ path_rec_completion(int status, struct ib_sa_path_rec ipoib_warn(priv, "dev_queue_xmit failed " "to requeue packet\n"); } + NET_EPOCH_EXIT(et); } static struct ipoib_path * @@ -1482,6 +1485,8 @@ ipoib_output(struct ifnet *ifp, struct mbuf *m, struct ipoib_header *eh; int error = 0, is_gw = 0; short type; + + NET_EPOCH_ASSERT(); if (ro != NULL) is_gw = (ro->ro_flags & RT_HAS_GW) != 0; Modified: head/sys/ofed/drivers/infiniband/ulp/ipoib/ipoib_multicast.c ============================================================================== --- head/sys/ofed/drivers/infiniband/ulp/ipoib/ipoib_multicast.c Tue Oct 15 09:50:02 2019 (r353545) +++ head/sys/ofed/drivers/infiniband/ulp/ipoib/ipoib_multicast.c Tue Oct 15 11:11:21 2019 (r353546) @@ -157,6 +157,7 @@ static int ipoib_mcast_join_finish(struct ipoib_mcast struct ipoib_dev_priv *priv = mcast->priv; struct ifnet *dev = priv->dev; struct ipoib_ah *ah; + struct epoch_tracker et; int ret; int set_qkey = 0; @@ -227,6 +228,8 @@ static int ipoib_mcast_join_finish(struct ipoib_mcast } } + NET_EPOCH_ENTER(et); + /* actually send any queued packets */ while (mcast->pkt_queue.ifq_len) { struct mbuf *mb; @@ -237,6 +240,7 @@ static int ipoib_mcast_join_finish(struct ipoib_mcast ipoib_warn(priv, "dev_queue_xmit failed to requeue packet\n"); } + NET_EPOCH_EXIT(et); return 0; }