Truenas Scales VM failed to start
-
I have an truesnas Scales VM installed on xcn-ng host. When I try to start the vm, I'm getting this error below.
xenopsd internal error: Cannot_add(0000:03:00.0, Xenctrlext.Unix_error(4, "16: Device or resource busy"
Can anyone help me resolve this issue.
Thanks
-
@jag5cof Hi !
Do you have a PCI passthrough configured on this VM ?
-
hello,
yes, I have the passthough on others VM's and they start as usual.
-
@jag5cof The "Device or resource busy" let me think that the device you're using in the TrueNas's VM is already used in an other VM.
Can you double-check your configuration ?
-
@AtaxyaNetwork The documentation said I could use the passthough with multiple vm's.
-
@jag5cof Do you know how I can remove the passthough for Truenas?
-
@AtaxyaNetwork Do you know how I can remove the passthough for Truenas?
-
@jag5cof I never use PCI passthrough myself, but you can see the docs here: https://docs.xcp-ng.org/compute/#pci-passthrough
-
@AtaxyaNetwork the reference said "If you attempt to perform PCI passthrough on a system which does not have VT-d/IOMMU enabled, you may encounter the following error when you start the target virtual machine:
Internal error: xenopsd internal error: Device.PCI.Cannot_add(_, _)
On, my host servver, I have VT-d/IOMMU enabled
-
@jag5cof As I said, "The "Device or resource busy" let me think that the device you're using in the TrueNas's VM is already used in an other VM."
You can't use the same PCI device on multiple VMs
-
@AtaxyaNetwork what do you think my next step to resolve this issue. None of the other vm's are giving me this problem. VM's Windows 10, 3 Ubuntu and one debian.
-
It means the PCI device you are trying to pass to this VM is already used, either by another VM, or by the Dom0 itself.
-
@olivierlambert what is the fix action and how
-
I can't guess the device you are trying to passthrough and how/if it's used by another VM or the dom0.
The fix is to be sure no other VM is using this device (including the dom0). If you added a passthrough device, you know which one you added, and nobody else can guess it
-
@olivierlambert I know the other vm which are using the passthough. So do you know I can remove the passthough from the others vms
-
@jag5cof I imagine it's something like:
- List the param of your VM with
xe vm-param-list uuid=<uuid>
- Find the line like
other-config:pci=0/0000:04:01.0
- Then you can remove with
xe vm-param-remove other-config:pci=0/0000:04:01.0 uuid=<uuid>
- List the param of your VM with
-
@AtaxyaNetwork ok and thanks
-
@AtaxyaNetwork I'm gettin this error when I run this command
Required parameter not found: param-name
xe vm-param-remove other-config:pci=0/0000:03:00.0 uuid=vm#I add the correct pci id and vm uuid
-
@jag5cof Maybe
xe vm-param-remove param-name=other-config param-key=pci=0/0000:03:00.0 uuid=<uuid>
? -
@AtaxyaNetwork I got this error when I ran your cmd - Key pci=0/0000:03:00.0 is not in map
I aslo ran xl pci-assignable-list
0000:03:00.0