Date: Sat, 10 Mar 2012 18:07:51 -0600 From: Brandon Gooch <jamesbrandongooch@gmail.com> To: Bernhard Froehlich <decke@freebsd.org> Cc: freebsd-emulation@freebsd.org, "Bjoern A. Zeeb" <bz@freebsd.org>, Marko Zec <zec@freebsd.org> Subject: Re: [PATCH] VirtualBox 4.1.8 kmod panic with VIMAGE kernel Message-ID: <CALBk6y%2B6U-b3a8AQP3bKZQuCxXZQpYOXVNR9tBQdNFpwKkFkUA@mail.gmail.com> In-Reply-To: <CALBk6yJB4RrRSPycOzjx_cWdg5-6byyd2tbGt%2BgObcn_VZg9Jw@mail.gmail.com> References: <CALBk6yK7=59ZMZ%2BbEurqP_9tDT2OAu4a653N8s2FKKrUTp8L6Q@mail.gmail.com> <9e02ac1bc0f7a8043f28ced31e319a20@bluelife.at> <CALBk6yJB4RrRSPycOzjx_cWdg5-6byyd2tbGt%2BgObcn_VZg9Jw@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, Mar 10, 2012 at 9:50 AM, Brandon Gooch <jamesbrandongooch@gmail.com> wrote: > On Sat, Mar 10, 2012 at 3:00 AM, Bernhard Froehlich <decke@freebsd.org> w= rote: >> On 10.03.2012 05:42, Brandon Gooch wrote: >>> >>> It's my guess that not many people are running VirtualBox on a >>> VIMAGE-enabled kernel. =A0However, for those of us who do (just me?), >>> the attached patch is required to prevent a panic when running >>> VirtualBox in such an environment. The patch belongs to the >>> emulators/virtualbox-ose-kmod port. >>> >>> --- src/VBox/HostDrivers/VBoxNetAdp/VBoxNetAdp.c.orig =A0 2011-12-19 >>> 07:01:06.000000000 -0600 >>> +++ src/VBox/HostDrivers/VBoxNetAdp/VBoxNetAdp.c =A0 =A0 =A0 =A02011-12= -26 >>> 14:54:27.000000000 -0600 >>> @@ -1189,6 +1189,7 @@ >>> =A0int =A0vboxNetAdpInit(void) >>> =A0{ >>> =A0 =A0 unsigned i; >>> + =A0 =A0PVBOXNETADP pVboxnet0; >>> =A0 =A0 /* >>> =A0 =A0 =A0* Init common members and call OS-specific init. >>> =A0 =A0 =A0*/ >>> @@ -1201,7 +1202,8 @@ >>> =A0 =A0 =A0 =A0 vboxNetAdpOsInit(&g_aAdapters[i]); >>> =A0 =A0 } >>> >>> - =A0 =A0return VINF_SUCCESS; >>> + =A0 =A0/* Create vboxnet0 */ >>> + =A0 =A0return vboxNetAdpCreate(&pVboxnet0, NULL); >>> =A0} >>> >>> =A0/** >>> >>> If there is a more appropriate fix, please help me find it, otherwise, >>> it would be great to have this committed! >> >> >> Sorry, that I haven't committed the patch until now. Do you agree that >> this patch is licensed under MIT License so I can send it upstream? > > Yes, absolutely. Do with it as you please... > > What I found when tracking this down led to this commit: > > https://www.virtualbox.org/changeset/35785/vbox > > https://www.virtualbox.org/browser/vbox/trunk/src/VBox/HostDrivers/VBoxNe= tAdp/VBoxNetAdp.c?rev=3D35785 > > I'm not sure how the initial VBox network adapter is supposed to be > created; maybe it should be deferred to the OS-specific init process > (in VBoxNetAdp-freebsd.c)? Trouble is, not sure how to do that > exactly, but anyway it seems more like a bug that was introduced. > > Attempting to push this upstream will reveal something I imagine :) > >> Current VIMAGE support is only for vboxnetflt and you are touching >> vboxnetadp so that is probably why nobody used it before. Have you >> tested it with a non VIMAGE kernel? > > I tested it with GENERIC, a custom kernel WITHOUT VIMAGE, and a custom > kernel WITH VIMAGE. I tested on 9-STABLE (from this month) and now > 10-CURRENT. > >> -- >> Bernhard Froehlich >> http://www.bluelife.at/ Y'know, I think the real problem is that a VIMAGE-enabled kernel doesn't allow for the creation of new interfaces after boot. At least it was that way back in late 2010 when I was using a USB network device... So this is at BEST an attempt at a work-around, which I suspect will fail in any case more complicated than VirtualBox running in vnet0 with 1 network interface -- but I'm not totally sure I even understand the way the VBoxNetFlt and VBoxNetAdp drivers work! -Brandon
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CALBk6y%2B6U-b3a8AQP3bKZQuCxXZQpYOXVNR9tBQdNFpwKkFkUA>