Virtualbox-4.3.0 - multiple hard crashes

Discussions related to using VirtualBox on Linux hosts.
klaus
Oracle Corporation
Posts: 1110
Joined: 10. May 2007, 14:57

Re: Virtualbox-4.3.0 - multiple hard crashes

Post by klaus »

MarkKnecht wrote:I'd LOVE to get rid of VMWare Player completely but it has one feature for that VM that I cannot live without. I work at home on my Linux box but use that VMWare VM to watch online media. (Netflix, Hulu, etc.) WIth Player I can tag the VM window to display on all 6 KDE desktops and when I go full screen with Player it does display on all desktops. This means I can scroll through all my desktops looking at different apps I'm running and the media appears to not change. Unfortunately Virtualbox has never done that. If I go full screen with a VB VM then Virtualbox only displays on one desktop which doesn't work for me.
Can you please explain this in a bit more detail? To me this is self-contradicting. Making a full screen VM visible on all desktops would not allow you to see any other app running on the corresponding desktop. What's the exact behavior you're after?
Ramshankar
Oracle Corporation
Posts: 793
Joined: 7. Jan 2008, 16:17

Re: Virtualbox-4.3.0 - multiple hard crashes

Post by Ramshankar »

If you're really running VMWare virtual machines in parallel with VirtualBox VMs on Linux hosts, where VirtualBox defaults to using exclusive hardware-virtualization mode, you would normally run into errors/crashes right away (gurus like VERR_VMX_IN_ROOT_MODE) even though VMWare *might* be sharing the VT-x resource. Unless both the hypervisors share VT-x in a way that is compatible with the other it wouldn't work. Normally VT-x sharing is done by entering/exiting VMX root mode each time the hypervisor schedules a VM. This reduces performance but will ensure that when the VM isn't actually running on a given CPU it doesn't grab VT-x and leaves it to be used by the other hypervisor.

From your Win7 VM log you first posted, it's clear that you're using the default setting, at least for one VM.

Code: Select all

00:00:01.212010 HM: VT-x/AMD-V init method: GLOBAL
I don't know if all of your other VMs are also using this. The "GLOBAL" means VirtualBox expects exclusive access to VT-x and does not have to enter/leave VMX root mode each time it schedules a VM to execute on the CPU. If you wish to share it with other hypervisors you should be using local init. by using:

Code: Select all

VBoxManage setproperty hwvirtexclusive off
This is a global setting (new with VBox 4.3) which will override any per-VM setting. Using this will ensure you're not mixing local and global initialization among VMs which might happen if you export/import VM from other hosts. This setting should be used if you intend to use VirtualBox VM in parallel with other hypervisors which also similarly share VT-x/AMD-V resources.
Oracle Corp.
skoehler
Posts: 117
Joined: 1. Dec 2008, 12:12

Re: Virtualbox-4.3.0 - multiple hard crashes

Post by skoehler »

I have experiences several hard crashes. I don't use VMWare in parallel with VirtualBox (but the modules are loaded). Still, I never had a problem with 4.2.18 - but the first experience after upgrading to 4.3 were two hard crashes of my Linux host machine. No info about the crashes from /var/log/messages could be recovered. VirtualBox 4.3 does have a problem - and it is a regression IMHO. I haven't experienced such host crashes for years of using VirtualBox. Strangely enough, my host is also Gentoo 64bit. By kernel config is a custom one. Both crashes were with a Windows 7 guest. Yes, the guest had 4 VCPUs even thought I only have 2 cores (but that shouldn't cause crashes but just performance problems). 3D is not enabled. The checkbox for 2D is grayed out and is off according to "VBoxManage showvminfo".
If I think about it, this might be related to an update of the VirtualBox guest tools. This is the first thing I did after the upgrade and shortly before I experienced the first host cash.
Ramshankar
Oracle Corporation
Posts: 793
Joined: 7. Jan 2008, 16:17

Re: Virtualbox-4.3.0 - multiple hard crashes

Post by Ramshankar »

skoehler wrote:I have experiences several hard crashes. I don't use VMWare in parallel with VirtualBox (but the modules are loaded). Still, I never had a problem with 4.2.18 - but the first experience after upgrading to 4.3 were two hard crashes of my Linux host machine. No info about the crashes from /var/log/messages could be recovered. VirtualBox 4.3 does have a problem - and it is a regression IMHO. I haven't experienced such host crashes for years of using VirtualBox. Strangely enough, my host is also Gentoo 64bit. By kernel config is a custom one. Both crashes were with a Windows 7 guest. Yes, the guest had 4 VCPUs even thought I only have 2 cores (but that shouldn't cause crashes but just performance problems). 3D is not enabled. The checkbox for 2D is grayed out and is off according to "VBoxManage showvminfo".
If I think about it, this might be related to an update of the VirtualBox guest tools. This is the first thing I did after the upgrade and shortly before I experienced the first host cash.
Guest additions cannot directly cause host crashes. It's safe to rule them out for now.

Could you please post Gentoo kernel configuration?

Code: Select all

zcat /proc/config.gz > config.txt
uname -a
And attach config.txt to this thread and output of uname -a.
Oracle Corp.
skoehler
Posts: 117
Joined: 1. Dec 2008, 12:12

Re: Virtualbox-4.3.0 - multiple hard crashes

Post by skoehler »

of course, here you go: uname -a
Linux oscar 3.10.16 #11 SMP PREEMPT Fri Oct 18 00:32:13 IDT 2013 x86_64 Intel(R) Core(TM) i5 CPU M 540 @ 2.53GHz GenuineIntel GNU/Linux
Attachments
config.txt
my kernel config
(82.99 KiB) Downloaded 14 times
Ramshankar
Oracle Corporation
Posts: 793
Joined: 7. Jan 2008, 16:17

Re: Virtualbox-4.3.0 - multiple hard crashes

Post by Ramshankar »

Thanks. Quite similar configurations. Does the problem go away for you too if you change the number of guest CPUs in your VM to 1 ?
Oracle Corp.
MarkKnecht
Posts: 54
Joined: 14. Feb 2010, 22:34
Primary OS: Linux other
VBox Version: OSE self-compiled
Guest OSses: Win 7, Win XP, Gentoo 32-bit

Re: Virtualbox-4.3.0 - multiple hard crashes

Post by MarkKnecht »

klaus wrote:
MarkKnecht wrote:I'd LOVE to get rid of VMWare Player completely but it has one feature for that VM that I cannot live without. I work at home on my Linux box but use that VMWare VM to watch online media. (Netflix, Hulu, etc.) WIth Player I can tag the VM window to display on all 6 KDE desktops and when I go full screen with Player it does display on all desktops. This means I can scroll through all my desktops looking at different apps I'm running and the media appears to not change. Unfortunately Virtualbox has never done that. If I go full screen with a VB VM then Virtualbox only displays on one desktop which doesn't work for me.
Can you please explain this in a bit more detail? To me this is self-contradicting. Making a full screen VM visible on all desktops would not allow you to see any other app running on the corresponding desktop. What's the exact behavior you're after?
The System has 3 monitors so each KDE desktop drivers 3 screens @ 1920x1090. I work on two screens and have VMPlayer maximized on the 3rd. As I rotate through desktops I see VMPlay (NetFlix/Hulu) full screen on that monitor and see Linux applications or Virtualbox VMs on the other 2 screens.

Unfortunately with Virtualbox there's no way I've found to go full screen (Host + F) and have the window show up on all desktops.

HTH,
Mark
skoehler
Posts: 117
Joined: 1. Dec 2008, 12:12

Re: Virtualbox-4.3.0 - multiple hard crashes

Post by skoehler »

Ramshankar wrote:Thanks. Quite similar configurations. Does the problem go away for you too if you change the number of guest CPUs in your VM to 1 ?
I will try that.

It just happened for a Windows XP VM (2 CPUs), which was installing windows updates in the background while I was surfing on youtube. It's not easy to reproduce. It happens sporadically. I could very well imagine, that it's some sort of race.
MarkKnecht
Posts: 54
Joined: 14. Feb 2010, 22:34
Primary OS: Linux other
VBox Version: OSE self-compiled
Guest OSses: Win 7, Win XP, Gentoo 32-bit

Re: Virtualbox-4.3.0 - multiple hard crashes

Post by MarkKnecht »

Ramshankar wrote:If you're really running VMWare virtual machines in parallel with VirtualBox VMs on Linux hosts, where VirtualBox defaults to using exclusive hardware-virtualization mode, you would normally run into errors/crashes right away (gurus like VERR_VMX_IN_ROOT_MODE) even though VMWare *might* be sharing the VT-x resource. Unless both the hypervisors share VT-x in a way that is compatible with the other it wouldn't work. Normally VT-x sharing is done by entering/exiting VMX root mode each time the hypervisor schedules a VM. This reduces performance but will ensure that when the VM isn't actually running on a given CPU it doesn't grab VT-x and leaves it to be used by the other hypervisor.

From your Win7 VM log you first posted, it's clear that you're using the default setting, at least for one VM.

Code: Select all

00:00:01.212010 HM: VT-x/AMD-V init method: GLOBAL
I don't know if all of your other VMs are also using this. The "GLOBAL" means VirtualBox expects exclusive access to VT-x and does not have to enter/leave VMX root mode each time it schedules a VM to execute on the CPU. If you wish to share it with other hypervisors you should be using local init. by using:

Code: Select all

VBoxManage setproperty hwvirtexclusive off
This is a global setting (new with VBox 4.3) which will override any per-VM setting. Using this will ensure you're not mixing local and global initialization among VMs which might happen if you export/import VM from other hosts. This setting should be used if you intend to use VirtualBox VM in parallel with other hypervisors which also similarly share VT-x/AMD-V resources.
I really am using VMWare VMs i parallel with Virtualbox. I wouldn't have brought it up if I wasn't.

I'm a simple home user with a specific work flow:

1) A 32-bit VM in VMWare Player running XP for watching videos.
2) 2 or 3 64-bit Win7 VMs running in Virtualbox for my work.

I do not understand your comment about 'local init'. I don't find a /etc/init.d/virtualbox file to modify. However if I understand you then I could disable VT-x in my 3 VMs and accomplish the same thing, correct?

I'm not sure that there really is a VMWare conflict here as it's a 32-bit VM.

Also, since disabling 2D acceleration I've not had a crash. I think that similar to the report from skoehler. However like skoehler this is not a crash that happens immediately every time so it will take a while to get comfortable that it's OK. However at this time I'd suggest looking for problems in the 2D area.

Thanks
MarkKnecht
Posts: 54
Joined: 14. Feb 2010, 22:34
Primary OS: Linux other
VBox Version: OSE self-compiled
Guest OSses: Win 7, Win XP, Gentoo 32-bit

Re: Virtualbox-4.3.0 - multiple hard crashes

Post by MarkKnecht »

OK, forget the 2D stuff. I just had another hard crash with 2D disabled. The VMWare machine was playing something from Hulu Plus.

At this point the only ideas I've got are:

1) The VT-x, nested paging stuff with VMWare running in parallel.

2) Something about my 3.10.16 configuration.

Unless 3.10.16 has a regression I doubt it's that. I've been running the 3.10 series as long as it's been out without any problems.

As a test, I'll leave the VMWare machine turned off for a couple of days. I can watch enough stuff on the Kindle or Roku if I set it up so that will give us some more info.
Ramshankar
Oracle Corporation
Posts: 793
Joined: 7. Jan 2008, 16:17

Re: Virtualbox-4.3.0 - multiple hard crashes

Post by Ramshankar »

MarkKnecht wrote:
Ramshankar wrote:If you're really running VMWare virtual machines in parallel with VirtualBox VMs on Linux hosts, where VirtualBox defaults to using exclusive hardware-virtualization mode, you would normally run into errors/crashes right away (gurus like VERR_VMX_IN_ROOT_MODE) even though VMWare *might* be sharing the VT-x resource. Unless both the hypervisors share VT-x in a way that is compatible with the other it wouldn't work. Normally VT-x sharing is done by entering/exiting VMX root mode each time the hypervisor schedules a VM. This reduces performance but will ensure that when the VM isn't actually running on a given CPU it doesn't grab VT-x and leaves it to be used by the other hypervisor.

From your Win7 VM log you first posted, it's clear that you're using the default setting, at least for one VM.

Code: Select all

00:00:01.212010 HM: VT-x/AMD-V init method: GLOBAL
I don't know if all of your other VMs are also using this. The "GLOBAL" means VirtualBox expects exclusive access to VT-x and does not have to enter/leave VMX root mode each time it schedules a VM to execute on the CPU. If you wish to share it with other hypervisors you should be using local init. by using:

Code: Select all

VBoxManage setproperty hwvirtexclusive off
This is a global setting (new with VBox 4.3) which will override any per-VM setting. Using this will ensure you're not mixing local and global initialization among VMs which might happen if you export/import VM from other hosts. This setting should be used if you intend to use VirtualBox VM in parallel with other hypervisors which also similarly share VT-x/AMD-V resources.
I really am using VMWare VMs i parallel with Virtualbox. I wouldn't have brought it up if I wasn't.

I'm a simple home user with a specific work flow:

1) A 32-bit VM in VMWare Player running XP for watching videos.
2) 2 or 3 64-bit Win7 VMs running in Virtualbox for my work.

I do not understand your comment about 'local init'. I don't find a /etc/init.d/virtualbox file to modify. However if I understand you then I could disable VT-x in my 3 VMs and accomplish the same thing, correct?

I'm not sure that there really is a VMWare conflict here as it's a 32-bit VM.

Also, since disabling 2D acceleration I've not had a crash. I think that similar to the report from skoehler. However like skoehler this is not a crash that happens immediately every time so it will take a while to get comfortable that it's OK. However at this time I'd suggest looking for problems in the 2D area.

Thanks
The local init. is a VirtualBox terminology (well in the code, so sorry about confusing you with that). It refers to "non-exclusive" or "shared" VT-x/AMD-V mode.

Instead of turning off VT-x in all your VMs, you should try the VBoxManage command I suggested. That's the proper way of sharing VMs with other hypervisors that would be co-operating the same way. It has nothing to do with if the VM is 32-bit or 64-bit, what matters is if both the hypervisors are using VT-x at the same time. Even though you configure VMs with VT-x, I suspect VMWare might be doing some tricks and in the end not using VT-x when you run the VM which might be why it works for you.

Like I said, if you want share VirtualBox with other hypervisors in parallel, you should try using the VBoxManage hwvirtexclusive command above.
Oracle Corp.
MarkKnecht
Posts: 54
Joined: 14. Feb 2010, 22:34
Primary OS: Linux other
VBox Version: OSE self-compiled
Guest OSses: Win 7, Win XP, Gentoo 32-bit

Re: Virtualbox-4.3.0 - multiple hard crashes

Post by MarkKnecht »

hi Ramshankar,
My problem wasn't so much understanding what you are asking me to do but more where to do it. What file does stuff like this go into? nominally on Gentoo there is often a file in /etc/conf.d that is run when the system executes an init script. However the Virtualbox ebuild doesn't supply any of that.

Anyway, I'll go see if I can find it in the documentation.

Thanks,
Mark
Ramshankar
Oracle Corporation
Posts: 793
Joined: 7. Jan 2008, 16:17

Re: Virtualbox-4.3.0 - multiple hard crashes

Post by Ramshankar »

VBoxManage is a command. You execute it on the terminal/command-line. You don't need to add that line to a file, you just need to execute it once and the actual change, I believe, will end up in the VirtualBox global XML configuration file (~/.VirtualBox/VirtualBox.xml) when you execute that command. Don't edit that file manually.

http://www.virtualbox.org/manual/ch08.html#idp51923632
Oracle Corp.
Ramshankar
Oracle Corporation
Posts: 793
Joined: 7. Jan 2008, 16:17

Re: Virtualbox-4.3.0 - multiple hard crashes

Post by Ramshankar »

MarkKnecht wrote:OK, forget the 2D stuff. I just had another hard crash with 2D disabled. The VMWare machine was playing something from Hulu Plus.
And this was with a single-VCPU VM?
Oracle Corp.
MarkKnecht
Posts: 54
Joined: 14. Feb 2010, 22:34
Primary OS: Linux other
VBox Version: OSE self-compiled
Guest OSses: Win 7, Win XP, Gentoo 32-bit

Re: Virtualbox-4.3.0 - multiple hard crashes

Post by MarkKnecht »

Ramshankar wrote:VBoxManage is a command. You execute it on the terminal/command-line. You don't need to add that line to a file, you just need to execute it once and the actual change, I believe, will end up in the VirtualBox global XML configuration file (~/.VirtualBox/VirtualBox.xml) when you execute that command. Don't edit that file manually.

http://www.virtualbox.org/manual/ch08.html#idp51923632
Oh! OK, quite easy. So in my user account I executed the command. Now in the log file I see this:

00:00:00.383575 HM: Nested paging enabled!
00:00:00.383576 HM: EPT flush type = VMX_FLUSH_EPT_SINGLE_CONTEXT
00:00:00.383577 HM: Unrestricted guest execution enabled!
00:00:00.383577 HM: VPID enabled!
00:00:00.383577 HM: VPID flush type = VMX_FLUSH_VPID_SINGLE_CONTEXT
00:00:00.383579 HM: VMX-preemption timer enabled (cPreemptTimerShift=7).
00:00:00.383580 HM: VT-x/AMD-V init method: LOCAL
00:00:00.383581 VMM: fUsePeriodicPreemptionTimers=false
00:00:00.384090 Logical host processors: 12 present, 12 max, 12 online, online mask: 0000000000000fff
00:00:00.384169 Physical host cores: 6

so there is a change. I'm not sure if LOCAL is what you're looking for but we can try it for now.

For clarity, you are investigating whether VB and VMWare are in conflict with each other WRT the VT-x feature, correct? If it's that sort of problem then I have to run the VMWare VM to trigger the problem. I'll run just VB for the next hour or so, make sure there's no problem, and then fire up VMWare and see what happens.
Locked