Description
Are you using XOA or XO from the sources?
XO from the sources
Which release channel?
None
Provide your commit number
fd9c9
Describe the bug
Raising bug report, as per Oliviers request in thread https://xcp-ng.org/forum/topic/10232/feature-request-disable-smart-reboot-if-guests-have-pci-passthru
I have two GPUs. However, this leads to Smart Reboot not being able to complete. Which leads to it aborting the operation, and reverts the suspending of VMs. Instead I'm met with the error message, as described below.
GPU0: AMD RX6400 (attached through GUI)
GPU1: Nvidia GTX1060 (attached through CLI as per compute-docs)
Error message
host.restart
{
"force": false,
"suspendResidentVms": true,
"bypassBlockedSuspend": false,
"bypassCurrentVmCheck": false,
"id": "3c08401c-446b-445d-9ea2-24393beae8e4"
}
{
"errors": [
{
"code": "VM_HAS_PCI_ATTACHED",
"params": [
"OpaqueRef:ad56d720-83ff-4a57-dc26-51841905fcb9"
],
"task": {
"uuid": "fbb8b196-88e9-bc18-0d1f-06143897380e",
"name_label": "Async.VM.suspend",
"name_description": "",
"allowed_operations": [],
"current_operations": {},
"created": "20250108T16:55:30Z",
"finished": "20250108T16:55:30Z",
"status": "failure",
"resident_on": "OpaqueRef:8b1095b3-beee-1d7f-93f2-bf5a88896299",
"progress": 1,
"type": "<none/>",
"result": "",
"error_info": [
"VM_HAS_PCI_ATTACHED",
"OpaqueRef:ad56d720-83ff-4a57-dc26-51841905fcb9"
],
"other_config": {},
"subtask_of": "OpaqueRef:NULL",
"subtasks": [],
"backtrace": "(((process xapi)(filename ocaml/xapi/xapi_vm_lifecycle.ml)(line 742))((process xapi)(filename ocaml/xapi/xapi_vm_helpers.ml)(line 1653))((process xapi)(filename ocaml/libs/xapi-stdext/lib/xapi-stdext-pervasives/pervasiveext.ml)(line 24))((process xapi)(filename ocaml/libs/xapi-stdext/lib/xapi-stdext-pervasives/pervasiveext.ml)(line 39))((process xapi)(filename ocaml/xapi/helpers.ml)(line 1662))((process xapi)(filename ocaml/xapi/xapi_vm_helpers.ml)(line 1652))((process xapi)(filename ocaml/xapi/message_forwarding.ml)(line 2241))((process xapi)(filename ocaml/xapi/rbac.ml)(line 191))((process xapi)(filename ocaml/xapi/rbac.ml)(line 200))((process xapi)(filename ocaml/xapi/server_helpers.ml)(line 75)))"
}
},
{
"code": "VM_HAS_PCI_ATTACHED",
"params": [
"OpaqueRef:ef20a143-4ca5-b293-c111-a6905c49394c"
],
"task": {
"uuid": "d75716e1-ec5f-40af-0e05-d496c0379e96",
"name_label": "Async.VM.suspend",
"name_description": "",
"allowed_operations": [],
"current_operations": {},
"created": "20250108T16:55:30Z",
"finished": "20250108T16:55:30Z",
"status": "failure",
"resident_on": "OpaqueRef:8b1095b3-beee-1d7f-93f2-bf5a88896299",
"progress": 1,
"type": "<none/>",
"result": "",
"error_info": [
"VM_HAS_PCI_ATTACHED",
"OpaqueRef:ef20a143-4ca5-b293-c111-a6905c49394c"
],
"other_config": {},
"subtask_of": "OpaqueRef:NULL",
"subtasks": [],
"backtrace": "(((process xapi)(filename ocaml/xapi/xapi_vm_lifecycle.ml)(line 742))((process xapi)(filename ocaml/xapi/xapi_vm_helpers.ml)(line 1653))((process xapi)(filename ocaml/libs/xapi-stdext/lib/xapi-stdext-pervasives/pervasiveext.ml)(line 24))((process xapi)(filename ocaml/libs/xapi-stdext/lib/xapi-stdext-pervasives/pervasiveext.ml)(line 39))((process xapi)(filename ocaml/xapi/helpers.ml)(line 1662))((process xapi)(filename ocaml/xapi/xapi_vm_helpers.ml)(line 1652))((process xapi)(filename ocaml/xapi/message_forwarding.ml)(line 2241))((process xapi)(filename ocaml/xapi/rbac.ml)(line 191))((process xapi)(filename ocaml/xapi/rbac.ml)(line 200))((process xapi)(filename ocaml/xapi/server_helpers.ml)(line 75)))"
}
}
],
"message": "",
"name": "Error",
"stack": "Error:
at next (/opt/xen-orchestra/@vates/async-each/index.js:83:24)
at onFulfilled (/opt/xen-orchestra/@vates/async-each/index.js:56:7)
at onFulfilledWrapper (/opt/xen-orchestra/@vates/async-each/index.js:58:41)"
}
To reproduce
Have GPUs attached through PCI-passthrough (I have two)
Issue a smart reboot from Host/Advanced.
Expected behavior
If it isn't possible to issue and do a Smart Reboot due to PCI devices being attached. Then this should disable the Smart Reboot button altogether. Preferably with a note that makes it clear why the button is disabled.
Screenshots
No response
Node
20.18.1
Hypervisor
XCP-NG 8.3
Additional context
No response
Activity