kern/183835: commit references a PR
dfilter service
dfilter at FreeBSD.ORG
Tue Feb 18 01:30:01 UTC 2014
The following reply was made to PR kern/183835; it has been noted by GNATS.
From: dfilter at FreeBSD.ORG (dfilter service)
To: bug-followup at FreeBSD.org
Cc:
Subject: Re: kern/183835: commit references a PR
Date: Tue, 18 Feb 2014 01:20:34 +0000 (UTC)
Author: rodrigc
Date: Tue Feb 18 01:20:26 2014
New Revision: 262142
URL: http://svnweb.freebsd.org/changeset/base/262142
Log:
In ue_attach_post_task(), initialize curvnet to vnet0 before calling if_attach().
Before this patch, curvnet was NULL.
When the VIMAGE kernel option is enabled, this eliminates
kernel panics when USB ethernet devices are plugged in.
PR: 183835
Submitted by: Hiroo Oono <hiroo.ono at gmail dot com>
Modified:
head/sys/dev/usb/net/usb_ethernet.c
Modified: head/sys/dev/usb/net/usb_ethernet.c
==============================================================================
--- head/sys/dev/usb/net/usb_ethernet.c Tue Feb 18 01:15:32 2014 (r262141)
+++ head/sys/dev/usb/net/usb_ethernet.c Tue Feb 18 01:20:26 2014 (r262142)
@@ -208,6 +208,7 @@ ue_attach_post_task(struct usb_proc_msg
sysctl_ctx_init(&ue->ue_sysctl_ctx);
error = 0;
+ CURVNET_SET_QUIET(vnet0);
ifp = if_alloc(IFT_ETHER);
if (ifp == NULL) {
device_printf(ue->ue_dev, "could not allocate ifnet\n");
@@ -254,6 +255,8 @@ ue_attach_post_task(struct usb_proc_msg
if (ifp->if_capabilities & IFCAP_VLAN_MTU)
ifp->if_hdrlen = sizeof(struct ether_vlan_header);
+ CURVNET_RESTORE();
+
snprintf(num, sizeof(num), "%u", ue->ue_unit);
ue->ue_sysctl_oid = SYSCTL_ADD_NODE(&ue->ue_sysctl_ctx,
&SYSCTL_NODE_CHILDREN(_net, ue),
@@ -267,6 +270,7 @@ ue_attach_post_task(struct usb_proc_msg
return;
fail:
+ CURVNET_RESTORE();
free_unr(ueunit, ue->ue_unit);
if (ue->ue_ifp != NULL) {
if_free(ue->ue_ifp);
_______________________________________________
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-virtualization
mailing list