Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 30 May 2018 21:46:10 +0000 (UTC)
From:      Matt Macy <mmacy@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r334402 - head/sys/net
Message-ID:  <201805302146.w4ULkAaB014519@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: mmacy
Date: Wed May 30 21:46:10 2018
New Revision: 334402
URL: https://svnweb.freebsd.org/changeset/base/334402

Log:
  if_setlladdr: don't call ioctl in epoch context
  
  PR: 228612
  Reported by: markj

Modified:
  head/sys/net/if.c

Modified: head/sys/net/if.c
==============================================================================
--- head/sys/net/if.c	Wed May 30 20:47:20 2018	(r334401)
+++ head/sys/net/if.c	Wed May 30 21:46:10 2018	(r334402)
@@ -3839,6 +3839,7 @@ if_setlladdr(struct ifnet *ifp, const u_char *lladdr, 
 	 * to re-init it in order to reprogram its
 	 * address filter.
 	 */
+	NET_EPOCH_EXIT();
 	if ((ifp->if_flags & IFF_UP) != 0) {
 		if (ifp->if_ioctl) {
 			ifp->if_flags &= ~IFF_UP;
@@ -3852,6 +3853,7 @@ if_setlladdr(struct ifnet *ifp, const u_char *lladdr, 
 		}
 	}
 	EVENTHANDLER_INVOKE(iflladdr_event, ifp);
+	return (0);
  out:
 	NET_EPOCH_EXIT();
 	return (rc);



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