[Bug 211651] emulators/virtualbox-ose-kmod 5.0.26_1 with Linux guest crashes 12.0-CURRENT host when # of processors > 1
bugzilla-noreply at freebsd.org
bugzilla-noreply at freebsd.org
Mon Aug 8 00:13:06 UTC 2016
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=211651
Bug ID: 211651
Summary: emulators/virtualbox-ose-kmod 5.0.26_1 with Linux
guest crashes 12.0-CURRENT host when # of processors >
1
Product: Ports & Packages
Version: Latest
Hardware: Any
OS: Any
Status: New
Severity: Affects Only Me
Priority: ---
Component: Individual Port(s)
Assignee: vbox at FreeBSD.org
Reporter: truckman at FreeBSD.org
Flags: maintainer-feedback?(vbox at FreeBSD.org)
Assignee: vbox at FreeBSD.org
If I attempt to start a Linux guest on a FreeBSD 12.0-CURRENT host I get a
kernel panic similar to:
panic: Unregistered use of FPU in kernel
cpuid = 3
KDB: stack backtrace:
db_trace_self_wrapper() at db_trace_self_wrapper+0x2b/frame 0xfffffe085a31c030
vpanic() at vpanic+0x182/frame 0xfffffe085a31c0b0
kassert_panic() at kassert_panic+0x126/frame 0xfffffe085a31c120
trap() at trap+0x7ae/frame 0xfffffe085a31c330
calltrap() at calltrap+0x8/frame 0xfffffe085a31c330
--- trap 0x16, rip = 0xffffffff827273a9, rsp = 0xfffffe085a31c408, rbp =
0xfffff
e085a31c430 ---
null_bug_bypass() at 0xffffffff827273a9/frame 0xfffffe085a31c430
null_bug_bypass() at 0xffffffff826985c7/frame 0x3
KDB: enter: panic
if the VM is configured with more than one processor. I've seen this with both
CentOS 7 and Ubuntu 12 guests. The panic appears to occur near the start of
the guest kernel boot after grub has run. It appears to happen shortly after
the kernel message about TSC calibration is printed. The symbols printed by
DDB leading up to the trap appear to be somewhat arbitrary. The location of
the trap seems to be aboe the topmost BSS section symbol in one of the (last?)
loaded .kmod.
The code at the location that triggers the trap is:
0xffffffff8272739d: nop
0xffffffff8272739e: nop
0xffffffff8272739f: nop
0xffffffff827273a0: mov %rsi,%rdx
0xffffffff827273a3: shr $0x20,%rdx
0xffffffff827273a7: mov %esi,%eax
=> 0xffffffff827273a9: xrstor (%rdi)
0xffffffff827273ac: retq
0xffffffff827273ad: int3
0xffffffff827273ae: int3
0xffffffff827273af: int3
0xffffffff827273b0: int3
It is called from here:
0xffffffff82667489: test %eax,%eax
0xffffffff8266748b: jne 0xffffffff826674a1
0xffffffff8266748d: movq $0x3,0x5238(%r15)
0xffffffff82667498: mov %rbx,%rsi
0xffffffff8266749b: and $0xfffffffffffffffc,%rsi
0xffffffff8266749f: je 0xffffffff826674ad
0xffffffff826674a1: mov 0x5240(%r15),%rdi
0xffffffff826674a8: callq 0xffffffff827273a0
=> 0xffffffff826674ad: or %rbx,0x5238(%r15)
0xffffffff826674b4: mov %r14d,%eax
0xffffffff826674b7: add $0x8,%rsp
kgdb (from ports) doesn't believe that either of these to any function.
The VMs where I first saw the problem were initially created with Virtualbox 4
and the paravirtualization setting is "Legacy", but I can reproduce this panic
after creating a new VM which uses the "Default" setting, increasing the number
of processors to 4, and booting the CentOS 7 install .iso.
The CPU info is:
CPU: AMD FX-8320E Eight-Core Processor (3210.84-MHz K8-class CPU)
Origin="AuthenticAMD" Id=0x600f20 Family=0x15 Model=0x2 Stepping=0
Features=0x178bfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,C
MOV,PAT,PSE36,CLFLUSH,MMX,FXSR,SSE,SSE2,HTT>
Features2=0x3e98320b<SSE3,PCLMULQDQ,MON,SSSE3,FMA,CX16,SSE4.1,SSE4.2,POPCNT,AE
SNI,XSAVE,OSXSAVE,AVX,F16C>
AMD Features=0x2e500800<SYSCALL,NX,MMX+,FFXSR,Page1GB,RDTSCP,LM>
AMD
Features2=0x1ebbfff<LAHF,CMP,SVM,ExtAPIC,CR8,ABM,SSE4A,MAS,Prefetch,OSVW,I
BS,XOP,SKINIT,WDT,LWP,FMA4,TCE,NodeId,TBM,Topology,PCXC,PNXC>
Structured Extended Features=0x8<BMI1>
SVM: NP,NRIP,VClean,AFlush,DAssist,NAsids=65536
TSC: P-state invariant, performance statistics
Whether or not this problem occurs with Intel CPUs is unknown.
This problem did not occur before the upgrade from Virtualbox 4 to Virtualbox
5.
--
You are receiving this mail because:
You are the assignee for the bug.
More information about the freebsd-emulation
mailing list