kernel panic caused by virtualbox(?)
Don Lewis
truckman at FreeBSD.org
Mon Aug 8 20:15:42 UTC 2016
On 8 Aug, John Baldwin wrote:
> On Thursday, August 04, 2016 05:10:29 PM Don Lewis wrote:
>> Reposted to -current to get some more eyes on this ...
>>
>> I just got a kernel panic when I started up a CentOS 7 VM in virtualbox.
>> The host is:
>> FreeBSD 12.0-CURRENT #17 r302500 GENERIC amd64
>> The virtualbox version is:
>> virtualbox-ose-5.0.26
>> virtualbox-ose-kmod-5.0.26_1
>>
>> The panic message is:
>>
>> panic: Unregistered use of FPU in kernel
>> cpuid = 1
>> KDB: stack backtrace:
>> db_trace_self_wrapper() at db_trace_self_wrapper+0x2b/frame 0xfffffe085a55d030
>> vpanic() at vpanic+0x182/frame 0xfffffe085a55d0b0
>> kassert_panic() at kassert_panic+0x126/frame 0xfffffe085a55d120
>> trap() at trap+0x7ae/frame 0xfffffe085a55d330
>> calltrap() at calltrap+0x8/frame 0xfffffe085a55d330
>> --- trap 0x16, rip = 0xffffffff827dd3a9, rsp = 0xfffffe085a55d408, rbp = 0xfffffe085a55d430 ---
>> g_pLogger() at 0xffffffff827dd3a9/frame 0xfffffe085a55d430
>> g_pLogger() at 0xffffffff8274e5c7/frame 0x3
>> KDB: enter: panic
>>
>> Since g_pLogger is a symbol in vboxdrv.ko, it looks like virtualbox is
>> the trigger.
>>
>> There are no symbols for the virtualbox kmods, possibly because I
>> installed them as an upgrade using packages (built with the same source
>> tree version) instead of by using PORTS_MODULES in make.conf, so ports
>> kgdb didn't have anything useful to say about what happened before the
>> trap.
>>
>> This panic is very repeatable. I just got another one when starting the
>> same VM., but this time the two calls before the trap were
>> null_bug_bypass(). Hmn, that symbol is in nullfs ...
>>
>> I don't see this with a Windows 7 VM.
>>
>> All of the virtualbox kmod files are compiled with -mno-mmx -mno-sse
>> -msoft-float -mno-aes -mno-avx
>
> I suspect head packages are quite likely built against the a "wrong" KBI
> and are too fragile to use for kmods vs compiling from ports. :-/ I would
> try a built-from-ports kmod to see if the panics go away.
The poudriere jail that I used to build the package was the same source
version as the host.
I updated the host to r303762 and manually rebuilt and installed the
kmod from ports and still see the panic. What is interesting is that if
I configure the Linux guests to use only one processor, the panic goes
away.
See <https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=211651> for the
latest info.
I just figured out a way to test this on recent 10.3-STABLE without
endangering my desktop machine. I should have some results in a couple
hours after I bring the test machine up to date.
More information about the freebsd-current
mailing list