VirtualBox suddenly started to refuse launching existing VMs, with this appearing in the log:

00:00:03.946244 HDA: Reset
00:00:03.946359 AssertLogRel /mnt/tinderbox/extpacks-5.0/src/VBox/Devices/USB/DevEHCI.cpp(4955) int ehciR3Construct(PDMDEVINS*, int, CFGMNODE*): PDM_VERSION_ARE_COMPATIBLE((pDevIns)->pHlpR3->u32Version, PDM_DEVHLPR3_VERSION)
00:00:03.946378 DevHlp=0xffe700f1  mine=0xffe700e1
00:00:03.946407 PDM: Failed to construct 'usb-ehci'/0! VERR_PDM_DEVHLPR3_VERSION_MISMATCH (-2871) - The device helper structure version has changed.
00:00:03.946421 If you have upgraded VirtualBox recently, please make sure you have terminated all VMs and upgraded any extension packs. If this error persists, try re-installing VirtualBox.
00:00:04.037170 NAT: zone(nm:mbuf_cluster, used:0)
00:00:04.037303 NAT: zone(nm:mbuf_packet, used:0)
00:00:04.037317 NAT: zone(nm:mbuf, used:0)
00:00:04.037328 NAT: zone(nm:mbuf_jumbo_pagesize, used:0)
00:00:04.037422 NAT: zone(nm:mbuf_jumbo_9k, used:0)
00:00:04.037488 NAT: zone(nm:mbuf_jumbo_16k, used:0)
00:00:04.037530 NAT: zone(nm:mbuf_ext_refcnt, used:0)
00:00:04.039388 VMSetError: /build/virtualbox-JETMa8/virtualbox-5.0.14-dfsg/src/VBox/VMM/VMMR3/VM.cpp(365) int VMR3Create(uint32_t, PCVMM2USERMETHODS, PFNVMATERROR, void*, PFNCFGMCONSTRUCTOR, void*, VM**, UVM**); rc=VERR_PDM_DEVHLPR3_VERSION_MISMATCH
00:00:04.039394 VMSetError: The device helper structure version has changed.
00:00:04.039394 If you have upgraded VirtualBox recently, please make sure you have terminated all VMs and upgraded any extension packs. If this error persists, try re-installing VirtualBox.
00:00:04.039582 ERROR [COM]: aRC=NS_ERROR_FAILURE (0x80004005) aIID={872da645-4a9b-1727-bee2-5585105b9eed} aComponent={ConsoleWrap} aText={The device helper structure version has changed.
00:00:04.039587 If you have upgraded VirtualBox recently, please make sure you have terminated all VMs and upgraded any extension packs. If this error persists, try re-installing VirtualBox. (VERR_PDM_DEVHLPR3_VERSION_MISMATCH)}, preserve=false aResultDetail=0
00:00:04.116659 Console: Machine state changed to 'PoweredOff'
00:00:04.338867 Power up failed (vrc=VERR_PDM_DEVHLPR3_VERSION_MISMATCH, rc=NS_ERROR_FAILURE (0X80004005))
00:00:04.349471 GUI: UIMachineViewNormal::resendSizeHint: Restoring guest size-hint for screen 0 to 2789x1563
00:00:04.349542 ERROR [COM]: aRC=E_ACCESSDENIED (0x80070005) aIID={7303a66d-433b-25a4-f9a8-fcadf87e0c2a} aComponent={DisplayWrap} aText={The console is not powered up}, preserve=false aResultDetail=0

How to fix the problem?

  • Strangely, I got this problem when starting one machine but not the others. Upgrading the extension pack still worked, but I forgot to check the old version. Maybe Windows 10 relies on some feature(s) of the newer extension pack but Linux doesn't? – trysis Jul 23 '17 at 13:40
up vote 19 down vote accepted

This is typical behavior of VirtualBox after it has been upgraded by Ubuntu while it was running.

Solution:

It should now work with any VM that worked previously.

Actually, the log contains this very tip: If you have upgraded VirtualBox recently, please make sure you have terminated all VMs and upgraded any extension packs.

  • 2
    You might not need to restart Ubuntu. After extension install, fire your vm and be going. – Rexford May 23 '16 at 18:17
  • 2
    If you need to get this running and you don't have internet you can remove the extension pack from FIle->Preferences->Extensions and set USB controller to 1.0, that should allow you to boot (without extensions). – rrosa Feb 1 '17 at 4:28
  • @rrosa: Interesting! Could you please post that as a new answer? Thanks! – Nicolas Raoul Feb 9 '17 at 1:12

If you need to get this running and you don't have internet you can remove the extension pack:

FIle->Preferences->Extensions

And set USB controller to 1.1 in machine you want to boot. Select it, then:

Machine->Settings->USB->Set it to 1.1 (or disable it)

That should allow you to boot. You will not have extensions available, but is may get you through until you get internet. When you get online follow Nicolas Raoul' answer

This is how it worked for me after upgrading from Ubuntu 15.10 to Ubuntu 16.04:

  • Uninstall VirtualBox sudo apt-get remove virtualbox
  • Uninstall VirtualBox DKMS sudo apt-get remove virtualbox-dkms
  • Download latest version of Virtualbox at https://www.virtualbox.org/wiki/Linux_Downloads
    (AMD64 for Ubuntu 16.04, if you're on 64bit. Otherwise, choose i386)
  • Install the downloaded package sudo dpkg -i virtualbox-5.0_...

You can now run VirtualBox (find in launcher or run virtualbox) and all virtual machines will be working again!

Your Answer

 

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.