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

    [SOLVED] Xenctrl.Error("22: Invalid argument") after trying to passthrough a PCI

    Scheduled Pinned Locked Moved Compute
    4 Posts 2 Posters 2.3k Views 2 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.
    • M Offline
      moussa854
      last edited by moussa854

      I do not see mt WIFI card in my VM
      windows_10__Running_.png

      I am thinking I need to pass the WIFI card PCI to my VM. So, I have ASUS H110T motherboard and I am trying to get M.2 wifi card be recognized by the VM. I followed the instruction here https://xcp-ng.org/docs/compute.html. I enabled the Virtualization in BIOS. SSH to xcp-ng.

      # lspci
      00:00.0 Host bridge: Intel Corporation Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor Host Bridge/DRAM Registers (rev 07)
      00:02.0 VGA compatible controller: Intel Corporation HD Graphics 510 (rev 06)
      00:14.0 USB controller: Intel Corporation 100 Series/C230 Series Chipset Family USB 3.0 xHCI Controller (rev 31)
      00:16.0 Communication controller: Intel Corporation 100 Series/C230 Series Chipset Family MEI Controller #1 (rev 31)
      00:17.0 SATA controller: Intel Corporation Q170/Q150/B150/H170/H110/Z170/CM236 Chipset SATA Controller [AHCI Mode] (rev 31)
      00:1c.0 PCI bridge: Intel Corporation 100 Series/C230 Series Chipset Family PCI Express Root Port #5 (rev f1)
      00:1d.0 PCI bridge: Intel Corporation 100 Series/C230 Series Chipset Family PCI Express Root Port #9 (rev f1)
      00:1d.1 PCI bridge: Intel Corporation 100 Series/C230 Series Chipset Family PCI Express Root Port #10 (rev f1)
      00:1f.0 ISA bridge: Intel Corporation H110 Chipset LPC/eSPI Controller (rev 31)
      00:1f.2 Memory controller: Intel Corporation 100 Series/C230 Series Chipset Family Power Management Controller (rev 31)
      00:1f.3 Audio device: Intel Corporation 100 Series/C230 Series Chipset Family HD Audio Controller (rev 31)
      00:1f.4 SMBus: Intel Corporation 100 Series/C230 Series Chipset Family SMBus (rev 31)
      00:1f.6 Ethernet controller: Intel Corporation Ethernet Connection (2) I219-V (rev 31)
      02:00.0 Network controller: Qualcomm Atheros QCA6174 802.11ac Wireless Network Adapter (rev 32)
      03:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 15)
      

      I am interested in passing-through the 02:00.0 Network controller: Qualcomm Atheros QCA6174 802.11ac Wireless Network Adapter (rev 32) I followed the instruction.

      # /opt/xensource/libexec/xen-cmdline --set-dom0 "xen-pciback.hide=(0000:02:00.0)"
      # reboot
      

      The WIFI card was excluded.

      # xl pci-assignable-list
      0000:02:00.0
      

      then I added the PCI to the VM but I am getting an error. This is the third time I am doing this the first time there was no error but I could not see the WIFI card in the VM either. Any suggestion on how to solve this error ?

      # xe vm-param-set other-config:pci=0/0000:02:00.0 uuid=b29a6204-c911-93cc-32bb-89a7f80ba06e
      # xe vm-start uuid=b29a6204-c911-93cc-32bb-89a7f80ba06e
      The server failed to handle your request, due to an internal error. The given message may give details useful for debugging the problem.
      message: xenopsd internal error: Xenctrl.Error("22: Invalid argument")
      
      1 Reply Last reply Reply Quote 0
      • X Offline
        xTITUS MAXIMUSx
        last edited by

        I have the exact same issue. I have a fresh install of xcp-ng and followed the documentation to a "T"! Install version is xcp-ng-8.1.0-2. I really hope to get an answer soon about this.

        1 Reply Last reply Reply Quote 0
        • X Offline
          xTITUS MAXIMUSx
          last edited by

          @moussa854 ok bruh....soooo.... you might want to check your bios settings and make sure VT-d is enabled or if you are on a AMD rig IOMMU or AMD-Vi is enabled. I feel so dumb and overlooked this and after enabling VT-d on my rig everything worked as expected.

          M 1 Reply Last reply Reply Quote 3
          • M Offline
            moussa854 @xTITUS MAXIMUSx
            last edited by moussa854

            @xTITUS-MAXIMUSx

            Thanks for the tip. I went to the bios and enabled the Intel Virtualization Technology and I thought I was done. After further research I recognized there are two steps to Enable the Intel Virtualization Technology. https://us.informatiweb.net/tutorials/it/bios/enable-iommu-or-vt-d-in-your-bios.html

            • Advanced >> CPU configuration >> Intel Virtualization Technology >> Enable
            • Advanced >> System Agent Configuration >> VT-d >> Enable
            1 Reply Last reply Reply Quote 0

            Hello! It looks like you're interested in this conversation, but you don't have an account yet.

            Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

            With your input, this post could be even better 💗

            Register Login
            • First post
              Last post