VirtualBox

Ticket #457 (closed defect: fixed)

Opened 7 years ago

Last modified 7 years ago

Segfault on every second VirtualBox run

Reported by: i-nZ Owned by:
Priority: major Component: other
Version: VirtualBox 1.4.0 Keywords:
Cc: Guest type: other
Host type: other

Description

Every other time when starting the VirtualBox main UI, it will max out my cpu for a minute and then will segfault with the backtrace below.

VBox: VirtualBox-1.4.0_21864_openSUSE102-1.i586.rpm.run OS: openSUSE 10.2 QT version: 3.3.7 / 4.2.1

#0  0xb5c503dc in pthread_mutex_lock () from /lib/libpthread.so.0
#1  0xb5e27fe1 in PR_Lock () from /usr/lib/VBoxXPCOM.so
#2  0xb5e28291 in PR_EnterMonitor () from /usr/lib/VBoxXPCOM.so
#3  0xb564ccb0 in QTextEdit::setWrapPolicy () from /opt/VirtualBox-1.4.0/components/VBoxXPCOMIPCC.so
#4  0xb564dcfd in QTextEdit::setWrapPolicy () from /opt/VirtualBox-1.4.0/components/VBoxXPCOMIPCC.so
#5  0xb564e312 in QTextEdit::setWrapPolicy () from /opt/VirtualBox-1.4.0/components/VBoxXPCOMIPCC.so
#6  0xb564e7df in QTextEdit::setWrapPolicy () from /opt/VirtualBox-1.4.0/components/VBoxXPCOMIPCC.so
#7  0xb56520eb in NSGetModule () from /opt/VirtualBox-1.4.0/components/VBoxXPCOMIPCC.so
#8  0xb56528a3 in NSGetModule () from /opt/VirtualBox-1.4.0/components/VBoxXPCOMIPCC.so
#9  0x08121433 in QTextEdit::setWrapPolicy ()
#10 0x0839eaf0 in ?? ()
#11 0x0819112c in typeinfo for QGList ()
#12 0xbf4e9390 in ?? ()
#13 0xbf4e926c in ?? ()
#14 0x00000000 in ?? ()

Attachments

vb140nosmp.log Download (31.1 KB) - added by bszente 7 years ago.
VirtualBox 1.4.0 log without SMP enabled kernel
vb140smp.log Download (31.3 KB) - added by bszente 7 years ago.
VirtualBox 1.4.0 log with SMP enabled kernel

Change History

comment:1 Changed 7 years ago by bszente

I encountered the same behavior on Gentoo Linux 2007.0 host, with x86 gentoo-sources-2.6.20-r8 kernel. I tried also the OSE, binary and SVN versions, but without success, the same segmentation fault persisted.

Finally I managed to get rid of it, by disabling SMP support in the Linux kernel and BIOS. So in my opinion the segmentation fault is caused by the incompatibility of the v1.4.0 vboxdrv kernel module with SMP (hypertheading and multicore enabled kernels). The bug probably was introduced in v1.4.0, because v1.3.8 worked flawlessly.

I hope it will be fixed very soon.

comment:2 follow-ups: ↓ 3 ↓ 4 Changed 7 years ago by frank

You could help to fix the bug by providing more information. At least bszente seems to be able to start a VM. Please attach a log file of a successfully started VM session.

To both of you: When exactly did the GUI crash? Just after starting the GUI or after starting a VM from the GUI?

comment:3 in reply to: ↑ 2 Changed 7 years ago by i-nZ

Replying to frank:

You could help to fix the bug by providing more information. At least bszente seems to be able to start a VM.

I can start a VM without a problem once I get the GUI working, which I do after running VirtualBox executable several times in a row and it eventually loads up.

To both of you: When exactly did the GUI crash? Just after starting the GUI or after starting a VM from the GUI?

Just after starting the GUI.

Changed 7 years ago by bszente

VirtualBox 1.4.0 log without SMP enabled kernel

Changed 7 years ago by bszente

VirtualBox 1.4.0 log with SMP enabled kernel

comment:4 in reply to: ↑ 2 Changed 7 years ago by bszente

Hello frank,

Replying to frank:

Please attach a log file of a successfully started VM session.

I attached two logs:

  • I recompiled my linux kernel without SMP, in this case VirtualBox is running stable, does not give any segmentation fault. The log file of the guest XPSP2 machine: vb140nosmp.log;
  • Than I recompiled my kernel again, but this time with SMP support. In this case virtualbox (GUI) starts randomly, but once it is started it runs stable. The log file of the same VM with successful run on SMP enabled kernel: vb140smp.log.

To both of you: When exactly did the GUI crash? Just after starting the GUI or after starting a VM from the GUI?

VirtualBox crashes before the GUI appears. So actually I don't even reach to start a VM. I observed that it does not make any difference if give

vboxmanage startvm xparena

or if I try to start the GUI. The segmentation fault happens in both case.

I investigated a little bit further the problem, by eliminating the wrapper script. I started the VBoxSVC separately in a terminal, and after it I started VirtualBox in another. The resulted logs:

/opt/VirtualBox $ LD_LIBRARY_PATH=/opt/VirtualBox/:$LD_LIBRARY_PATH gdb ./VBoxSVC
GNU gdb 6.6
Copyright (C) 2006 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "i686-pc-linux-gnu"...
(no debugging symbols found)
Using host libthread_db library "/lib/libthread_db.so.1".
(gdb) run
Starting program: /opt/VirtualBox/VBoxSVC 
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
[Thread debugging using libthread_db enabled]
[New Thread -1220802896 (LWP 9048)]
[New Thread -1221047408 (LWP 9052)]
[Thread -1221047408 (LWP 9052) exited]
[New Thread -1221293168 (LWP 9055)]
[New Thread -1229685872 (LWP 9059)]
[New Thread -1238078576 (LWP 9060)]
[New Thread -1246471280 (LWP 9061)]
*********************************************
innotek VirtualBox XPCOM Server Version 1.4.0
(C) 2004-2007 innotek GmbH
All rights reserved.

Starting event loop....
[press Ctrl-C to quit]
[New Thread -1246999664 (LWP 9077)]
[New Thread -1247528048 (LWP 9078)]
Informational: VirtualBox object created (rc=00000000).

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread -1220802896 (LWP 9048)]
0xb7ef2d87 in PL_DHashTableEnumerate () from /opt/VirtualBox/VBoxXPCOM.so
(gdb) bt
#0  0xb7ef2d87 in PL_DHashTableEnumerate () from /opt/VirtualBox/VBoxXPCOM.so
#1  0xb7358015 in ?? () from /opt/VirtualBox/components/VBoxXPCOMIPCC.so
#2  0xb7353559 in ?? () from /opt/VirtualBox/components/VBoxXPCOMIPCC.so
#3  0xb7f20477 in PL_HandleEvent () from /opt/VirtualBox/VBoxXPCOM.so
#4  0xb7f1e578 in ?? () from /opt/VirtualBox/VBoxXPCOM.so
#5  0x080fb840 in ?? ()
#6  0xb7c45824 in __libc_start_main () from /lib/libc.so.6
#7  0x0804cfc1 in ?? ()

and

/opt/VirtualBox $ LD_LIBRARY_PATH=/opt/VirtualBox/:$LD_LIBRARY_PATH gdb ./VirtualBox
GNU gdb 6.6
Copyright (C) 2006 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "i686-pc-linux-gnu"...
(no debugging symbols found)
Using host libthread_db library "/lib/libthread_db.so.1".
(gdb) run
Starting program: /opt/VirtualBox/VirtualBox 
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
[Thread debugging using libthread_db enabled]
[New Thread -1250945360 (LWP 9069)]
[New Thread -1251189872 (LWP 9072)]
[Thread -1251189872 (LWP 9072) exited]
[New Thread -1252902000 (LWP 9075)]
[New Thread -1261294704 (LWP 9076)]

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread -1250945360 (LWP 9069)]
0xb5e36856 in PR_Lock () from /opt/VirtualBox/VBoxXPCOM.so
(gdb) bt
#0  0xb5e36856 in PR_Lock () from /opt/VirtualBox/VBoxXPCOM.so
#1  0xb5e36b17 in PR_EnterMonitor () from /opt/VirtualBox/VBoxXPCOM.so
#2  0xb5e1a051 in ?? () from /opt/VirtualBox/VBoxXPCOM.so
#3  0x08182778 in nsGetServiceByContractID::operator() ()
#4  0x081829ed in nsCOMPtr_base::assign_from_helper ()
#5  0xb55357cd in ?? () from /opt/VirtualBox/components/VBoxXPCOMIPCC.so
#6  0xb5e30739 in ?? () from /opt/VirtualBox/VBoxXPCOM.so
#7  0x081212f7 in ?? ()
#8  0x083f6398 in ?? ()
#9  0xbf176478 in ?? ()
#10 0xbf176430 in ?? ()
#11 0xbf17630c in ?? ()
#12 0x00000000 in ?? ()

comment:5 follow-up: ↓ 6 Changed 7 years ago by frank

We believe that this problem is fixed in the current svn.

comment:6 in reply to: ↑ 5 Changed 7 years ago by bszente

Hello frank,

I tested the SVN version, and it works fine. I did not get segmentation fault anymore. Many thanks for the VirtualBox team.

Replying to frank:

We believe that this problem is fixed in the current svn.

comment:7 Changed 7 years ago by sandervl73

  • Status changed from new to closed
  • Resolution set to fixed

Fixed in 1.5.0. Closing.

Note: See TracTickets for help on using tickets.

www.oracle.com
ContactPrivacy policyTerms of Use