Cannot use Isolated GPU for Virtual Machine in TrueNAS Scale. Part 2.

Description

After upgrading to to 25.04-RC.1, I attempted to rebuild the VM and add my Nividia 2080 RTX Ti graphics card. I used the following process:

  1. Created a new storage pool from a full wiped hard disk (298 GiB)

  2. Created a new zvol named “Win10_OS” that is 80% the storage pool capacity (226 GiB)

  3. Created “Network” settings with their (blank) default values.

  4. Uploaded en_windows_10_multiple_editions_x64_dvd_6846432.iso to “Instances” > “Manage Volumes.”

  5. Selected “New Instance”

  6. Named the Instance to “Win10”

  7. Selected “VM”

  8. Selected “Use an ISO image” and selected en_windows_10_multiple_editions_x64_dvd_6846432.iso

  9. Set “CPU Configuration” to “2” (cores) and “Memory Size” to “16 GiB” (24 GiB available in NAS)

  10. Made no selections under “Environment”

  11. Under “Disks”, selected “/dev/zvol/VMPool/Win10_OS” as the zvol (226 GiB), and set the “Root Disk Size” to be “10 GiB”

  12. Made no selection under “Proxies”

  13. Kept “Network” settings at default (checkbox).

  14. Made no selection (checkboxes) of any “USB Devices”

  15. Under “GPU Devices” selected my “NVIDIA Corporation TU102 [GeForce RTX 2080 Ti]” as the GPU

  16. Under “PCI Passthrough” selected “0000:09:00.0 'VGA compatible controller': TU102 [GeForce RTX 2080 Ti] by 'NVIDIA Corporation'“

  17. Under “VNC” selected “Enable VNC” (checkbox)

  18. Made no selections under “Security” (TPM, Secure Boot)

As a result, it appears the GPU was added to a new VM instance. It did not give any errors for adding the GPU. See attached image and check under the section saying “Devices”

However I did receive a new error (see attached text document) saying:

“[EFAULT] Failed to start instance: Failed to start device "en_windows_10_multiple_editions_x64_dvd_6846432.iso": Failed mounting volume: Failed mounting custom storage volume "en_windows_10_multiple_editions_x64_dvd_6846432.iso" on storage pool "default": Failed to run: zfs get -H -p -o value volmode VMPool/.ix-virt/custom/default_en_windows_10_multiple_editions_x64_dvd_6846432.iso.iso: exit status 1 (cannot open 'VMPool/.ix-virt/custom/default_en_windows_10_multiple_editions_x64_dvd_6846432.iso.iso': dataset does not exist).

Error: Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/middlewared/plugins/virt/instance.py", line 531, in start_impl
await incus_call_and_wait(f'1.0/instances/{id}/state', 'put', {'json': {
File "/usr/lib/python3/dist-packages/middlewared/plugins/virt/utils.py", line 98, in incus_call_and_wait
return await incus_wait(result, running_cb, timeout)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3/dist-packages/middlewared/plugins/virt/utils.py", line 83, in incus_wait
await asyncio.wait_for(task, timeout)
File "/usr/lib/python3.11/asyncio/tasks.py", line 489, in wait_for
return fut.result()
^^^^^^^^^^^^
File "/usr/lib/python3/dist-packages/middlewared/plugins/virt/websocket.py", line 108, in wait
raise CallError(data)
middlewared.service_exception.CallError: [EFAULT] Failed to start device "en_windows_10_multiple_editions_x64_dvd_6846432.iso": Failed mounting volume: Failed mounting custom storage volume "en_windows_10_multiple_editions_x64_dvd_6846432.iso" on storage pool "default": Failed to run: zfs get -H -p -o value volmode VMPool/.ix-virt/custom/default_en_windows_10_multiple_editions_x64_dvd_6846432.iso.iso: exit status 1 (cannot open 'VMPool/.ix-virt/custom/default_en_windows_10_multiple_editions_x64_dvd_6846432.iso.iso': dataset does not exist)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/middlewared/job.py", line 515, in run
await self.future
File "/usr/lib/python3/dist-packages/middlewared/job.py", line 560, in __run_body
rv = await self.method(*args)
^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3/dist-packages/middlewared/service/crud_service.py", line 279, in nf
rv = await func(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3/dist-packages/middlewared/api/base/decorator.py", line 88, in wrapped
result = await func(*args)
^^^^^^^^^^^^^^^^^
File "/usr/lib/python3/dist-packages/middlewared/plugins/virt/instance.py", line 442, in do_create
await self.start_impl(job, data['name'])
File "/usr/lib/python3/dist-packages/middlewared/plugins/virt/instance.py", line 549, in start_impl
raise CallError(errmsg)
middlewared.service_exception.CallError: [EFAULT] Failed to start instance: Failed to start device "en_windows_10_multiple_editions_x64_dvd_6846432.iso": Failed mounting volume: Failed mounting custom storage volume "en_windows_10_multiple_editions_x64_dvd_6846432.iso" on storage pool "default": Failed to run: zfs get -H -p -o value volmode VMPool/.ix-virt/custom/default_en_windows_10_multiple_editions_x64_dvd_6846432.iso.iso: exit status 1 (cannot open 'VMPool/.ix-virt/custom/default_en_windows_10_multiple_editions_x64_dvd_6846432.iso.iso': dataset does not exist).”

The VM did not start upon creation. It also does not start when I manually click the start button.

I am glad the GPU issue seems to be fixed, but now I am having issues starting the VM. Could this be an error with the .iso file itself? (It is a Windows 10 install disk)

Or is it the location where it is mounted, or stored? Or did a make an error in the configuration?

Thank you.

Problem/Justification

This is related to my original ticket here, please read original ticket before proceeding. https://ixsystems.atlassian.net/browse/NAS-134676 I have upgraded from SCALE-24.04.2.5 (DragonFish) to 25.04-RC.1 as instructed, and have attempted to replicate the issue.

Impact

None

Attachments

2

Activity

Show:

Bug Clerk yesterday

Thank you for submitting this TrueNAS Bug Report! So that we can quickly investigate your issue, please attach a Debug file and any other information related to this issue through our secure and private upload service below. Debug files can be generated in the UI by navigating to System -> Advanced -> Save Debug.

https://ixsystems.atlassian.net/servicedesk/customer/portal/15/group/37/create/153

Pinned fields
Click on the next to a field label to start pinning.

Details

Assignee

Reporter

Support Ticket

Components

Priority

More fields

Katalon Platform

Created yesterday
Updated 39 minutes ago