Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 27 Jul 2020 01:38:15 +0000 (UTC)
From:      Matt Macy <mmacy@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org
Subject:   svn commit: r363592 - stable/12/sys/net
Message-ID:  <202007270138.06R1cFwL001413@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: mmacy
Date: Mon Jul 27 01:38:14 2020
New Revision: 363592
URL: https://svnweb.freebsd.org/changeset/base/363592

Log:
  Fix panics when using iflib pseudo device support
  
  Reviewed by:	gallatin@, hselasky@
  Sponsored by:	Netgate, Inc.
  Differential Revision:	https://reviews.freebsd.org/D23710

Modified:
  stable/12/sys/net/iflib.c
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/sys/net/iflib.c
==============================================================================
--- stable/12/sys/net/iflib.c	Mon Jul 27 01:20:49 2020	(r363591)
+++ stable/12/sys/net/iflib.c	Mon Jul 27 01:38:14 2020	(r363592)
@@ -4874,6 +4874,7 @@ iflib_pseudo_register(device_t dev, if_shared_ctx_t sc
 		if_setgetcounterfn(ctx->ifc_ifp, iflib_if_get_counter);
 		iflib_add_device_sysctl_post(ctx);
 		ctx->ifc_flags |= IFC_INIT_DONE;
+		CTX_UNLOCK(ctx);
 		return (0);
 	}
 	_iflib_pre_assert(scctx);
@@ -5325,7 +5326,8 @@ iflib_register(if_ctx_t ctx)
 	device_t dev = ctx->ifc_dev;
 	if_t ifp;
 
-	_iflib_assert(sctx);
+	if ((sctx->isc_flags & IFLIB_PSEUDO) == 0)
+		_iflib_assert(sctx);
 
 	CTX_LOCK_INIT(ctx);
 	STATE_LOCK_INIT(ctx, device_get_nameunit(ctx->ifc_dev));



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202007270138.06R1cFwL001413>