kern/176471: commit references a PR
dfilter service
dfilter at FreeBSD.ORG
Wed May 22 17:20:01 UTC 2013
The following reply was made to PR kern/176471; it has been noted by GNATS.
From: dfilter at FreeBSD.ORG (dfilter service)
To: bug-followup at FreeBSD.org
Cc:
Subject: Re: kern/176471: commit references a PR
Date: Wed, 22 May 2013 17:13:21 +0000 (UTC)
Author: gibbs
Date: Wed May 22 17:13:03 2013
New Revision: 250913
URL: http://svnweb.freebsd.org/changeset/base/250913
Log:
Correct panic on detach of Xen PV network interfaces.
dev/xen/netfront:
In netif_free(), properly stop the interface and drain any pending
timers prior to disconnecting from the backend device.
Remove all media and detach our interface object from the system
prior to deleting it.
PR: kern/176471
Submitted by: Roger Pau Monne <roger.pau at citrix.com>
Reviewed by: gibbs
MFC after: 1 week
Modified:
head/sys/dev/xen/netfront/netfront.c
Modified: head/sys/dev/xen/netfront/netfront.c
==============================================================================
--- head/sys/dev/xen/netfront/netfront.c Wed May 22 16:33:28 2013 (r250912)
+++ head/sys/dev/xen/netfront/netfront.c Wed May 22 17:13:03 2013 (r250913)
@@ -2171,10 +2171,14 @@ netfront_detach(device_t dev)
static void
netif_free(struct netfront_info *info)
{
+ XN_LOCK(info);
+ xn_stop(info);
+ XN_UNLOCK(info);
+ callout_drain(&info->xn_stat_ch);
netif_disconnect_backend(info);
-#if 0
- close_netdev(info);
-#endif
+ ifmedia_removeall(&info->sc_media);
+ ether_ifdetach(info->xn_ifp);
+ if_free(info->xn_ifp);
}
static void
_______________________________________________
svn-src-all at freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscribe at freebsd.org"
More information about the freebsd-xen
mailing list