Date: Fri, 28 Feb 2014 01:40:01 GMT From: dfilter@FreeBSD.ORG (dfilter service) To: freebsd-virtualization@FreeBSD.org Subject: Re: kern/183835: commit references a PR Message-ID: <201402280140.s1S1e1Ua013704@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
The following reply was made to PR kern/183835; it has been noted by GNATS. From: dfilter@FreeBSD.ORG (dfilter service) To: bug-followup@FreeBSD.org Cc: Subject: Re: kern/183835: commit references a PR Date: Fri, 28 Feb 2014 01:35:31 +0000 (UTC) Author: rodrigc Date: Fri Feb 28 01:35:24 2014 New Revision: 262594 URL: http://svnweb.freebsd.org/changeset/base/262594 Log: MFC r262142: 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: stable/9/sys/dev/usb/net/usb_ethernet.c Directory Properties: stable/9/ (props changed) Modified: stable/9/sys/dev/usb/net/usb_ethernet.c ============================================================================== --- stable/9/sys/dev/usb/net/usb_ethernet.c Fri Feb 28 01:33:03 2014 (r262593) +++ stable/9/sys/dev/usb/net/usb_ethernet.c Fri Feb 28 01:35:24 2014 (r262594) @@ -207,6 +207,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@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscribe@freebsd.org"
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201402280140.s1S1e1Ua013704>