Can't Start Guest After Removing NVMe Controller from VM

Discussions related to using VirtualBox on Linux hosts.
Post Reply
DFarmerTX
Posts: 8
Joined: 2. Aug 2015, 01:12

Can't Start Guest After Removing NVMe Controller from VM

Post by DFarmerTX »

I have an NVMe drive in my laptop running Ubuntu 17.10. I added a NVMe controller to my Windows 10 guest thinking it would be faster. After researching the issue, I see that it doesn't offer anything over the standard SATA controller interface already on the VM.

However, even though there's no disk/partition attached to the NVMe controller (in the VM), if I remove it from the guest settings, the VM won't start. I get an error about an invalid helper app being called and something mentioning NVMe. If I add the controller back to the VM, it starts normally.

What is the correct process to remove an NVMe controller from a guest machine?

EDIT: Error message: "Untrusted device called trusted helper! 'nvme'/0"
socratis
Site Moderator
Posts: 27330
Joined: 22. Oct 2010, 11:03
Primary OS: Mac OS X other
VBox Version: PUEL
Guest OSses: Win(*>98), Linux*, OSX>10.5
Location: Greece

Re: Can't Start Guest After Removing NVMe Controller from VM

Post by socratis »

DFarmerTX wrote:I added a NVMe controller to my Windows 10 guest thinking it would be faster.
As you found out, that has no major difference in the I/O speed. You'd get the same magnitude performance if you selected SATA, SCSI or IDE (with minor differences, mainly guest OS support).
DFarmerTX wrote: I get an error about an invalid helper app being called and something mentioning NVMe.
DFarmerTX wrote:Error message: "Untrusted device called trusted helper! 'nvme'/0"
I take it that this message is coming from within your guest, not VirtualBox, right? It seems that now that you've "promised" your guest an NVMe controller, it expects an NVMe controller.
DFarmerTX wrote:What is the correct process to remove an NVMe controller from a guest machine?
In VirtualBox? You just remove the controller. But it's not VirtualBox that's complaining, it's your guest OS.

Just because an OS/program that runs in the context of VirtualBox has a problem, it doesn't make it a VirtualBox problem. You're having an issue that has most probably absolutely nothing to do with VirtualBox, so my suggestion would be to treat it as such, as a native problem with the OS or the application of the guest.

In particular search for the error "Untrusted device called trusted helper! 'nvme'/0". Or head to the Ubuntu forums...
Do NOT send me Personal Messages (PMs) for troubleshooting, they are simply deleted.
Do NOT reply with the "QUOTE" button, please use the "POST REPLY", at the bottom of the form.
If you obfuscate any information requested, I will obfuscate my response. These are virtual UUIDs, not real ones.
DFarmerTX
Posts: 8
Joined: 2. Aug 2015, 01:12

Re: Can't Start Guest After Removing NVMe Controller from VM

Post by DFarmerTX »

If I save and resume state, I always get this on resume, and it fails.
"nvme#0: Invalid submission queue ID encountered trying to restore an I/O request from the saved state for namespace 0 [ver=2 pass=final] (VERR_SSM_LOAD_CONFIG_MISMATCH)."

How do I successfully remove the MVMe controller from my VM configuration?
socratis
Site Moderator
Posts: 27330
Joined: 22. Oct 2010, 11:03
Primary OS: Mac OS X other
VBox Version: PUEL
Guest OSses: Win(*>98), Linux*, OSX>10.5
Location: Greece

Re: Can't Start Guest After Removing NVMe Controller from VM

Post by socratis »

DFarmerTX wrote:If I save and resume state, I always get this on resume, and it fails.
DFarmerTX wrote:How do I successfully remove the MVMe controller from my VM configuration?
I think you've answered your own question. If save/resume gives you the error, do NOT do it. Shutdown the VM completely (from within the VM), then remove the NVMe controller. Simple...
Do NOT send me Personal Messages (PMs) for troubleshooting, they are simply deleted.
Do NOT reply with the "QUOTE" button, please use the "POST REPLY", at the bottom of the form.
If you obfuscate any information requested, I will obfuscate my response. These are virtual UUIDs, not real ones.
DFarmerTX
Posts: 8
Joined: 2. Aug 2015, 01:12

Re: Can't Start Guest After Removing NVMe Controller from VM

Post by DFarmerTX »

Hi, thanks for your response.

I don't think you're understanding the problem I'm describing.

I added a NVMe controller to my VM and tested it. It's not faster than the regular controller so I'd like to remove it.

When I remove the NVMe controller from my VM in settings (with the VM off), I can no longer start the VM, I get the error you see above.

If I add the controller back to the VM, I can start the VM again, however, there's a non-used NVMe controller in the VM. What is the correct way to remove it?

Also, with the NVMe controller in the VM configuration, I can't savestate. Every time I do, it restores to about 99% but fails at the end with a message about NVMe.
socratis
Site Moderator
Posts: 27330
Joined: 22. Oct 2010, 11:03
Primary OS: Mac OS X other
VBox Version: PUEL
Guest OSses: Win(*>98), Linux*, OSX>10.5
Location: Greece

Re: Can't Start Guest After Removing NVMe Controller from VM

Post by socratis »

DFarmerTX wrote:I don't think you're understanding the problem I'm describing.
I understand perfectly the problem you're describing. It's you that fails to understand that this is not a VirtualBox problem, because it's not VirtualBox that's complaining, it's your guest. I don't know how many times do I have to repeat that...
Do NOT send me Personal Messages (PMs) for troubleshooting, they are simply deleted.
Do NOT reply with the "QUOTE" button, please use the "POST REPLY", at the bottom of the form.
If you obfuscate any information requested, I will obfuscate my response. These are virtual UUIDs, not real ones.
DFarmerTX
Posts: 8
Joined: 2. Aug 2015, 01:12

Re: Can't Start Guest After Removing NVMe Controller from VM

Post by DFarmerTX »

OK, explain to me again how it's not a problem with VirtualBox.

1. The Windows 10 guest was working correctly.
2. I added a NVMe controller in the virtual guest settings and turned it on.
3. I removed the MVMe controller from the VM (guest).
4. The VM guest won't boot.

So, it was working before I added the controller. It no longer is boo-table without an NVMe preset in the VM (Guest). I didn't change the configuration of the host system. Something about adding the NVMe controller to my guest must have changed something on my host. How to I now boot the WIndows 10 VM without the NVMe controller in its settings?

If I add the NVMe controller to the VM, it boots fine. It's present in the guest OS just not used. Did I turn on support for NVMe and not remember it or something? Is there something else to configure on my host OS I'm not aware of to enable this guest to boot?
andyp73
Volunteer
Posts: 1631
Joined: 25. May 2010, 23:48
Primary OS: Mac OS X other
VBox Version: PUEL
Guest OSses: Assorted Linux, Windows Server 2012, DOS, Windows 10, BIOS/UEFI emulation

Re: Can't Start Guest After Removing NVMe Controller from VM

Post by andyp73 »

DFarmerTX wrote:I didn't change the configuration of the host system. Something about adding the NVMe controller to my guest must have changed something on my host
This makes absolutely zero sense. As far as your host is concerned, VirtualBox is an application and the guest definition is a configuration file - it is XML with a .vbox extension.

More likely, what has happened is you have added a NVMe controller to the guest configuration and on booting the Windows 10 guest has gone "ooh look, new hardware let me install some drivers for it". Depending what else you may have changed it may also have gone "let me reconfigure things to make it the source of the drive with the Windows OS".

By then removing the NVMe controller from the guest configuration you have pulled the rug out from underneath Windows. As socratis said, this is a guest issue. You probably need to insert the Windows 10 install ISO into the guests virtual CD drive, boot from it and choose the repair option. Alternatively, because you made a backup of the VM before you started deviating from the standard template you could just restore it!

-Andy.
My crystal ball is currently broken. If you want assistance you are going to have to give me all of the necessary information.
Please don't ask me to do your homework for you, I have more than enough of my own things to do.
Pakillo
Posts: 1
Joined: 10. Aug 2020, 13:30

Re: Can't Start Guest After Removing NVMe Controller from VM

Post by Pakillo »

Exactly same problem here, and I think it's not a guest OS issue.
When NVE controller is removed, VM can't even boot from ISO as suggested to repair boot/system.
fth0
Volunteer
Posts: 5668
Joined: 14. Feb 2019, 03:06
Primary OS: Mac OS X other
VBox Version: PUEL
Guest OSses: Linux, Windows 10, ...
Location: Germany

Re: Can't Start Guest After Removing NVMe Controller from VM

Post by fth0 »

Note that some ISOs with OS installers automatically detect the presence of a HD with the same OS already installed, and automatically boot from the HD then. One example are Windows installers that boot multiple times during installation, without having to ask the user to remove the CD in between. When starting your VM, watch the status indicators in the bottom right of the VirtualBox VM window to see which device is used when. What do you see?

What was maybe missing in the previous discussion in this thread, is an explicit tip on how to proceed: I'd suggest to remove the device from the Device Manager inside the Windows guest, shut down the Windows guest, and only then remove the device from the VM configuration.

If you still have the problem, provide a zipped VBox.log file from a complete run of the VM.
Post Reply