XCP-ng
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Register
    • Login

    PCI passthrough + USB passthrough does not work together

    Scheduled Pinned Locked Moved Compute
    8 Posts 4 Posters 2.5k Views 3 Watching
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • K Offline
      kevstone122
      last edited by

      Hello community!

      I am a complete beginner at Xen/XCP-NG, so please be gentle to me 🙂 If you need me to provide logs, etc please give me the code to bring those up. Thank you to everyone in advance!

      What do i have:

      • XCP Version 8.1 2020-03-30
      • Motherboard gigabyte MZ32-ar0
      • Processor AMD Epyc 4702p - 24 cores
      • 1x AMD R7 240
      • 1x AMD Radeon Pro WX3200
      • RAM 32 GB

      I need this PC for my smart home house because i have 5 displays installed in the house to be able to control the smart home server + camera system via touch displays! There is one more big System called "Screen-wall" which are 4 monitors in 2x2 matrix. So in total i need 5 small graphic cards and one big graphic card for the 4 monitor Screen-wall!
      The idea was 5 displays (5 graphic cards, at the moment only one is installed for the test scenario --> AMD R7 240) and one AMD Radeon Pro WX3200 for the screen-wall. Each one has one Touch screen via USB driver!
      The 5 displays should run each with Debian and the Screen-wall with one windows 10!

      What is the Problem:
      The XCP tool is very easy to use it. I am able to add the graphic cards to the VM and start the machine, doesn't matter if it is Windows or Debian!
      I am also able to start the machine only with the USB passthrough and the device is available.

      But if i use both together in one VM, the VM crashes during startup. PCI + USB together does not work!

      Windows 10:

      • R7 Added or WX3200 added
      • USB Touch screen added
      • VM Start
      • Virtual BIOS complete successfully (also tested with virtual UEFI)
      • Windows starting screen with the loading circle a very short time, about 3 sec.
      • Crashes with failure:
      "Failed","Starting VM 'InfoScreen_Template'
      Internal error: xenopsd internal error: Call to usb reset failed: Forkhelpers.Spawn_internal_error("usage: usb_reset.py attach [-h] -d DOMID -p PID [-r RESET_ONLY] device\nusb_reset.py attach: error: argument -r: expected one argument\n", "", _)
      Time: 00:00:03","localhost.localdomain","Sep 21, 2020 9:38 PM"
      

      Debian 10:

      • R7 Added or WX3200 added
      • USB Touch screen added
      • VM Start
      • Virtual BIOS complete successfully
      • Bootloader is displayed and linux is starting
      • last which is printed "Loading initial ram disk"
      • Crashes with same failure:
      "Failed","Starting VM 'InfoScreen_Template'
      Internal error: xenopsd internal error: Call to usb reset failed: Forkhelpers.Spawn_internal_error("usage: usb_reset.py attach [-h] -d DOMID -p PID [-r RESET_ONLY] device\nusb_reset.py attach: error: argument -r: expected one argument\n", "", _)
      Time: 00:00:03","localhost.localdomain","Sep 21, 2020 9:38 PM"
      

      I have no idea why this functions are not working together!

      Please help me!
      Tell me wich log files i should provide!

      Best regards
      Kevin

      1 Reply Last reply Reply Quote 0
      • T Offline
        tony
        last edited by

        kevstone122 If you don't have anything else plugged into the USB controller, you can try to passthrough the whole USB controller via PCI passthrough.

        1 Reply Last reply Reply Quote 0
        • K Offline
          kevstone122
          last edited by

          tony: Thank you for your answer. I don't have an USB PCI card because i need all the PCI slots for the graphic cards. So for the test i just have the USB Touch screen cable directly to the USB Slots on the motherboard connected!

          1 Reply Last reply Reply Quote 0
          • T Offline
            tony
            last edited by

            kevstone122 some on-board USB controller use PCIe as the interconnect so you can still use PCI passthrough with on-board controller, depends on the motherboard. If your USB controller is listed when doing lspci then you have a good chance.

            1 Reply Last reply Reply Quote 0
            • K Offline
              kevstone122
              last edited by

              sorry for my late reply!
              Thanks for your good tips, but the onboard USB i need for the mouse and keyboard for the XCP and there are only 3 USB slots.
              Together for all touch screens i need minimum 6 USB Ports...
              We still try to find the problem!

              1 Reply Last reply Reply Quote 0
              • ChuckNorrisonC Offline
                ChuckNorrison
                last edited by ChuckNorrison

                Hi, this issue got a workaround here:
                https://github.com/xcp-ng/xcp/issues/108

                And another discussion on this:
                https://xcp-ng.org/forum/topic/266/usb-passthrough-test-reports-in-7-5rc1

                Good luck

                AdrianFretwell created this issue in xcp-ng/xcp

                closed Starting a VM with USB passthrough results in Internal Server Error #108

                1 Reply Last reply Reply Quote 0
                • stormiS Offline
                  stormi Vates 🪐 XCP-ng Team
                  last edited by

                  Updated packages addressing this issue are available for testing on XCP-ng 8.2: https://xcp-ng.org/forum/post/41480

                  1 Reply Last reply Reply Quote 0
                  • stormiS Offline
                    stormi Vates 🪐 XCP-ng Team
                    last edited by

                    This issue is now fixed for every 8.2 user through the latest train of updates: https://xcp-ng.org/blog/2021/12/08/december-2021-xcp-ng-updates/

                    1 Reply Last reply Reply Quote 0
                    • First post
                      Last post