Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 18 Jun 2009 10:20:12 GMT
From:      Adam Kirchhoff <adamk@voicenet.com>
To:        freebsd-gnats-submit@FreeBSD.org
Subject:   ports/135692: kernel panic with VirtualBox on 8.0-CURRENT (Tue Jun 16 13:49:34 EDT 2009)
Message-ID:  <200906181020.n5IAKCLC064279@www.freebsd.org>
Resent-Message-ID: <200906181030.n5IAU10j044080@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         135692
>Category:       ports
>Synopsis:       kernel panic with VirtualBox on 8.0-CURRENT (Tue Jun 16 13:49:34 EDT 2009)
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Thu Jun 18 10:30:01 UTC 2009
>Closed-Date:
>Last-Modified:
>Originator:     Adam Kirchhoff
>Release:        8.0-CURRENT
>Organization:
none
>Environment:
FreeBSD memory.visualtech.com 8.0-CURRENT FreeBSD 8.0-CURRENT #7: Tue Jun 16 13:49:34 EDT 2009     root@memory.visualtech.com:/usr/obj/usr/src/sys/GENERIC  i386
>Description:
I recently updated my workstation at home to -CURRENT, and then noticed (thanks to some discussion on ##freebsd) that VirtualBox had made it into the ports tree.  I installed it via ports, but upon trying to boot a VDI image created under Linux (where it works just fine), I ran into a kernel panic.  When starting the VM, VirtualBox informs me of the key combination to grab/release the mouse and keyboard.  I click "OK" and then the entire machine locks up.
The VM is Windows XP.  256 megs of RAM, 1 processor, VT-x/AMD-V is enabled, with Nesting Paging disabled.  The only option I changed was the memory.  All the others were the defaults.

I reproduced the panic quite easily by rebooting into single user mode, fsck'ing the filesystems manually, booting into X, and then starting up VirtualBox.  Same thing happened when I launched the VM.

The panic:

This GDB was configured as "i386-marcel-freebsd"...                        
Unread portion of the kernel message buffer:
panic: blockable sleep lock (sleep mutex) 32 @ /usr/src/sys/vm/uma_core.c:1990
cpuid = 2                                                                    KDB: enter: panic                                                            Uptime: 1h57m3s                                                              Physical memory: 2029 MB                                                     Dumping 252 MB: 237 221 205 189 173 157 141 125 109 93 77 61 45 29 13       
bReading symbols from /boot/kernel/linux.ko...Reading symbols from /boot/kernel/linux.ko.symbols...done.                                                                                                         
done.                                                                                                                                                                                                            
Loaded symbols for /boot/kernel/linux.ko                                                                                                                                                                         
Reading symbols from /boot/kernel/snd_hda.ko...Reading symbols from /boot/kernel/snd_hda.ko.symbols...tdone.                                                                                                     
done.                                                                                                                                                                                                            
Loaded symbols for /boot/kernel/snd_hda.ko                                                                                                                                                                       
Reading symbols from /boot/kernel/sound.ko...Reading symbols from /boot/kernel/sound.ko.symbols...done.                                                                                                          
done.                                                                                                                                                                                                            
Loaded symbols for /boot/kernel/sound.ko
Reading symbols from /boot/kernel/accf_http.ko...Reading symbols from /boot/kernel/accf_http.ko.symbols...done.
done.
Loaded symbols for /boot/kernel/accf_http.ko
Reading symbols from /boot/kernel/aio.ko...Reading symbols from /boot/kernel/aio.ko.symbols...done.
done.
^R
Loaded symbols for /boot/kernel/aio.ko
Reading symbols from /boot/modules/kqemu.ko...done.
Loaded symbols for /boot/modules/kqemu.ko
Reading symbols from /boot/kernel/linprocfs.ko...Reading symbols from /boot/kernel/linprocfs.ko.symbols...done.
done.
Loaded symbols for /boot/kernel/linprocfs.ko
Reading symbols from /boot/kernel/smbfs.ko...Reading symbols from /boot/kernel/smbfs.ko.symbols...done.
done.
Loaded symbols for /boot/kernel/smbfs.ko
Reading symbols from /boot/kernel/libiconv.ko...Reading symbols from /boot/kernel/libiconv.ko.symbols...done.
done.
Loaded symbols for /boot/kernel/libiconv.ko
Reading symbols from /boot/kernel/libmchain.ko...Reading symbols from /boot/kernel/libmchain.ko.symbols...done.
done.
Loaded symbols for /boot/kernel/libmchain.ko
Reading symbols from /boot/kernel/radeon.ko...Reading symbols from /boot/kernel/radeon.ko.symbols...done.
done.
Loaded symbols for /boot/kernel/radeon.ko
Reading symbols from /boot/kernel/drm.ko...Reading symbols from /boot/kernel/drm.ko.symbols...done.
done.
Loaded symbols for /boot/kernel/drm.ko
Reading symbols from /boot/modules/vboxdrv.ko...done.
Loaded symbols for /boot/modules/vboxdrv.ko
#0  doadump () at pcpu.h:246
246     pcpu.h: No such file or directory.
       in pcpu.h
(kgdb) bt
#0  doadump () at pcpu.h:246
#1  0xc0870a8e in boot (howto=260) at /usr/src/sys/kern/kern_shutdown.c:419
#2  0xc0870d62 in panic (fmt=Variable "fmt" is not available.
) at /usr/src/sys/kern/kern_shutdown.c:575
#3  0xc08b1eb0 in witness_checkorder (lock=0xc1894788, flags=9, file=0xc0c81d4e "/usr/src/sys/vm/uma_core.c", line=1990, interlock=0x0)
   at /usr/src/sys/kern/subr_witness.c:1063
#4  0xc0861b74 in _mtx_lock_flags (m=0xc1894788, opts=0, file=0xc0c81d4e "/usr/src/sys/vm/uma_core.c", line=1990)
   at /usr/src/sys/kern/kern_mutex.c:200
#5  0xc0ab0ae3 in uma_zalloc_arg (zone=0xc188c700, udata=0x0, flags=1) at /usr/src/sys/vm/uma_core.c:1990
#6  0xc085e1e4 in malloc (size=28, mtp=0xc97c09d0, flags=1) at uma.h:305
#7  0xc97b54b6 in rtMemAlloc () from /boot/modules/vboxdrv.ko
#8  0xc97b3519 in RTMemAlloc () from /boot/modules/vboxdrv.ko
#9  0xc97a6e62 in SUPR0ObjAddRefEx () from /boot/modules/vboxdrv.ko
#10 0xc97a6f00 in SUPR0ObjAddRef () from /boot/modules/vboxdrv.ko
#11 0xc97aee2b in RTHandleTableLookupWithCtx () from /boot/modules/vboxdrv.ko
#12 0xc97a6b26 in SUPSemEventWaitNoResume () from /boot/modules/vboxdrv.ko
#13 0xc97a9305 in supdrvIOCtl () from /boot/modules/vboxdrv.ko
#14 0xc97a4e3a in VBoxDrvFreeBSDIOCtl () from /boot/modules/vboxdrv.ko
#15 0xc07f48d8 in devfs_ioctl_f (fp=0xc6dd4738, com=3364738944, data=0xc88dd780, cred=0xc7adbe00, td=0xc99c9480)
   at /usr/src/sys/fs/devfs/devfs_vnops.c:658
#16 0xc08b4a7d in kern_ioctl (td=0xc99c9480, fd=22, com=3223868955, data=0xc88dd780 "birddrib(") at file.h:262
#17 0xc08b4c04 in ioctl (td=0xc99c9480, uap=0xeab19cf8) at /usr/src/sys/kern/sys_generic.c:677
#18 0xc0b8ed93 in syscall (frame=0xeab19d38) at /usr/src/sys/i386/i386/trap.c:1073
#19 0xc0b71fd0 in Xint0x80_syscall () at /usr/src/sys/i386/i386/exception.s:261
#20 0x00000033 in ?? ()
Previous frame inner to this frame (corrupt stack?)
(kgdb)

The host:

FreeBSD 8.0-CURRENT #8: Tue Jun 16 14:10:29 EDT 2009
   root@sorrow.ashke.com:/usr/obj/usr/src/sys/GENERIC
WARNING: WITNESS option enabled, expect reduced performance.
Timecounter "i8254" frequency 1193182 Hz quality 0
CPU: Intel(R) Xeon(TM) CPU 3.20GHz (3191.87-MHz 686-class CPU)
 Origin = "GenuineIntel"  Id = 0xf64  Stepping = 4
 
Features=0xbfebfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CLFLUSH,DTS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE>
 Features2=0xe43d<SSE3,DTES64,MON,DS_CPL,VMX,CNXT-ID,CX16,xTPR,PDCM>
 AMD Features=0x20100000<NX,LM>
 AMD Features2=0x1<LAHF>
 TSC: P-state invariant
real memory  = 2147483648 (2048 MB)
avail memory = 2086457344 (1989 MB)

And I am running virtualbox-2.2.51.r20457_2. 

I have tested this, and experienced the crash, on two systems.  The first is that dualcore xeon (P4 based) with Virtualization enabled in the BIOS.  The second is a core 2 duo, which does not have such an option in the BIOS.  Both are running 8.0-CURRENT as of Tuesday, June 16th, 2009.

>How-To-Repeat:

Install FreeBSD.  Upgrade to 8.0-CURRENT.  Install virtualbox from the ports tree.  Load the vboxdrv kernel module and then try to start a VM.
>Fix:


>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200906181020.n5IAKCLC064279>