Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 9 Oct 2019 16:21:50 +0000 (UTC)
From:      Gleb Smirnoff <glebius@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r353350 - head/sys/net
Message-ID:  <201910091621.x99GLo5i063855@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: glebius
Date: Wed Oct  9 16:21:50 2019
New Revision: 353350
URL: https://svnweb.freebsd.org/changeset/base/353350

Log:
  ifnet_byindex_ref() requires network epoch.

Modified:
  head/sys/net/if_mib.c

Modified: head/sys/net/if_mib.c
==============================================================================
--- head/sys/net/if_mib.c	Wed Oct  9 16:21:05 2019	(r353349)
+++ head/sys/net/if_mib.c	Wed Oct  9 16:21:50 2019	(r353350)
@@ -80,6 +80,7 @@ sysctl_ifdata(SYSCTL_HANDLER_ARGS) /* XXX bad syntax! 
 	u_int namelen = arg2;
 	struct ifnet *ifp;
 	struct ifmibdata ifmd;
+	struct epoch_tracker et;
 	size_t dlen;
 	char *dbuf;
 
@@ -87,7 +88,9 @@ sysctl_ifdata(SYSCTL_HANDLER_ARGS) /* XXX bad syntax! 
 		return EINVAL;
 	if (name[0] <= 0)
 		return (ENOENT);
+	NET_EPOCH_ENTER(et);
 	ifp = ifnet_byindex_ref(name[0]);
+	NET_EPOCH_EXIT(et);
 	if (ifp == NULL)
 		return (ENOENT);
 



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