old DVB card with PCI Passthrough
-
My machine:
Server: DELL T3620 with E3-1245v6 and 16 GB ECC RAM
OS: XCP-ng 8.2I could not forward a PCI DVB-C card to a VM.
All needed steps for it were already done (see https://xcp-ng.org/docs/compute.html#pci-passthrough
- I need to forward the SATA Controller (00:17.0) and the DVB-C card (04:02.0)
]# lspci 00:00.0 Host bridge: Intel Corporation Xeon E3-1200 v6/7th Gen Core Processor Host Bridge/DRAM Registers (rev 05) 00:01.0 PCI bridge: Intel Corporation 6th-10th Gen Core Processor PCIe Controller (x16) (rev 05) 00:02.0 VGA compatible controller: Intel Corporation HD Graphics P630 (rev 04) 00:14.0 USB controller: Intel Corporation 100 Series/C230 Series Chipset Family USB 3.0 xHCI Controller (rev 31) 00:14.2 Signal processing controller: Intel Corporation 100 Series/C230 Series Chipset Family Thermal Subsystem (rev 31) 00:16.0 Communication controller: Intel Corporation 100 Series/C230 Series Chipset Family MEI Controller #1 (rev 31) 00:16.3 Serial controller: Intel Corporation 100 Series/C230 Series Chipset Family KT Redirection (rev 31) 00:17.0 SATA controller: Intel Corporation Q170/Q150/B150/H170/H110/Z170/CM236 Chipset SATA Controller [AHCI Mode] (rev 31) 00:1b.0 PCI bridge: Intel Corporation 100 Series/C230 Series Chipset Family PCI Express Root Port #17 (rev f1) 00:1c.0 PCI bridge: Intel Corporation 100 Series/C230 Series Chipset Family PCI Express Root Port #1 (rev f1) 00:1f.0 ISA bridge: Intel Corporation C236 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.4 SMBus: Intel Corporation 100 Series/C230 Series Chipset Family SMBus (rev 31) 00:1f.6 Ethernet controller: Intel Corporation Ethernet Connection (2) I219-LM (rev 31) 02:00.0 Non-Volatile memory controller: Sandisk Corp WD Black SN750 / PC SN730 NVMe SSD 03:00.0 PCI bridge: Texas Instruments XIO2001 PCI Express-to-PCI Bridge 04:02.0 Multimedia controller: Philips Semiconductors SAA7146 (rev 01)- tell XCP-ng not to use this device ID for Dom0
]# /opt/xensource/libexec/xen-cmdline --set-dom0 "xen-pciback.hide=(00:17.0)(04:02.0)" ]# reboot- list assignable devices
]# xl pci-assignable-list 0000:00:17.0 0000:04:02.0- add DVB-C card to my VDR VM
]# xe vm-param-set other-config:pci=0/0000:04:02.0 uuid=799e9021-e4e1-8824-cfaa-7c53c04b216b- starting VM
]# xe vm-start uuid=799e9021-e4e1-8824-cfaa-7c53c04b216b 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: Cannot_add(0000:04:02.0, Xenctrlext.Unix_error(35, "3: No such process"))It is very strange. I don't have problems to forward the SATA controller to my TrueNAS VM. It works fine. But with the DVB-C card it doesn't work :'-(.
For analysing here is the output of lshw:*-pci:2 description: PCI bridge product: 100 Series/C230 Series Chipset Family PCI Express Root Port #1 vendor: Intel Corporation physical id: 1c bus info: pci@0000:00:1c.0 version: f1 width: 32 bits clock: 33MHz capabilities: pci pciexpress msi pm normal_decode bus_master cap_list configuration: driver=pcieport resources: irq:180 memory:ef000000-ef0fffff *-pci description: PCI bridge product: XIO2001 PCI Express-to-PCI Bridge vendor: Texas Instruments physical id: 0 bus info: pci@0000:03:00.0 version: 00 width: 32 bits clock: 33MHz capabilities: pci pm msi pciexpress normal_decode bus_master cap_list resources: memory:ef000000-ef0fffff *-multimedia description: Multimedia controller product: SAA7146 vendor: Philips Semiconductors physical id: 2 bus info: pci@0000:04:02.0 version: 01 width: 32 bits clock: 33MHz configuration: driver=pciback latency=32 maxlatency=38 mingnt=15 resources: irq:18 memory:ef000000-ef0001ffI tried already to forward (00:1c.0)(03:00.0)(04:02.0) without success.
Here are the log entries from /var/log/xensource.log:
Aug 26 14:28:33 xcp-ng xenopsd-xc: [debug||40 ||xenops] QMP command for domid 14: {"execute":"device_add","id":"qmp-000127-14","arguments":{"driver":"xen-pci-passthrough","id":"pci-pt-04_02.0","hostaddr":"0000:04:02.0","permissive":false}} Aug 26 14:28:33 xcp-ng xenopsd-xc: [debug||40 ||xenops] received QMP response qmp-000127-14 (File "xc/device_common.ml", line 502, characters 49-56) Aug 26 14:28:33 xcp-ng xenopsd-xc: [error||40 ||backtrace] Raised Xenctrlext.Unix_error(35, "3: No such process") Aug 26 14:28:33 xcp-ng xenopsd-xc: [error||40 ||backtrace] 1/4 xenopsd-xc Raised at file xc/device.ml, line 1591 Aug 26 14:28:33 xcp-ng xenopsd-xc: [error||40 ||backtrace] 2/4 xenopsd-xc Called from file list.ml, line 110 Aug 26 14:28:33 xcp-ng xenopsd-xc: [error||40 ||backtrace] 3/4 xenopsd-xc Called from file xc/device.ml, line 1601 Aug 26 14:28:33 xcp-ng xenopsd-xc: [error||40 ||backtrace] 4/4 xenopsd-xc Called from file lib/backtrace.ml, line 114 Aug 26 14:28:33 xcp-ng xenopsd-xc: [error||40 ||backtrace] Aug 26 14:28:33 xcp-ng xenopsd-xc: [ info||40 ||xenops_server] Caught Cannot_add(0000:04:02.0, Xenctrlext.Unix_error(35, "3: No such process")) executing ["VM_start",["799e9021-e4e1-8824-cfaa-7c53c04b216b",false]]: triggering cleanup actions Aug 26 14:28:33 xcp-ng xenopsd-xc: [debug||40 |Async.VM.start R:ddd6575a2d3a|xenops_server] Task 5071 reference Async.VM.start R:ddd6575a2d3a: ["VM_check_state","799e9021-e4e1-8824-cfaa-7c53c04b216b"] Aug 26 14:28:33 xcp-ng xenopsd-xc: [debug||40 |Async.VM.start R:ddd6575a2d3a|xenops_server] VM.shutdown 799e9021-e4e1-8824-cfaa-7c53c04b216bWhat can I do else to get it working?
-
Does anyone have any idea why it is not working?
-
Hmm I have no idea, except for a typo somewhere in the PCI addresses

-
@olivierlambert
Thank you for your answer.
If I list PCIs I get the following outpu:... 04:02.0 Multimedia controller: Philips Semiconductors SAA7146 (rev 01) ...Is it right, that I have to use '0000:04:02.0' to attach the device to my VM?
What is the meaning of the first '0000:'?
Have you any idea what the meaning/reason of the error can be?Cannot_add(0000:04:02.0, Xenctrlext.Unix_error(35, "3: No such process")) -
Can anyone help me figure out what the problem is?
Here is the /var/log/daemon.log: daemon.log.txtIf you need other logs just let me know and I'll attach them too.
-
Are you sure about the log? I can't spot the "No such process" issue in there.
-
@olivierlambert thank you for your response.
Here is the /var/log/xensource.log where you can find the error: xensource.log.txt -
@rurich I'm curious if you ever managed to resolve this issue? I just encountered the same thing with an older PCI capture card (pcHDTV HD-5500) and am ready to give up on it.
-
@tompsweeney No, I still have the problem.
-
I'm having exactly the same problem with a "Tiger Jet Network Inc. / ICP DAS Tiger3XX Modem/ISDN interface" card.
logs show this:May 5 16:13:17 xcp-ng xapi: [debug||412529 |Async.VM.start R:f406c721ea1c|xenops] xapi_cache: creating cache for ae56aad1-bab7-e6eb-8599-8eea93291e54 May 5 16:13:17 xcp-ng xapi: [debug||412529 |Async.VM.start R:f406c721ea1c|xenops] xenops_cache: creating empty cache for ae56aad1-bab7-e6eb-8599-8eea93291e54 May 5 16:13:17 xcp-ng xapi: [debug||412529 |Async.VM.start R:f406c721ea1c|xapi_network] register_vif vif=OpaqueRef:8b603d12-373e-4086-a03b-e63e45afb21e network=OpaqueRef:de3a7251-596a-4052-a90a-0caa23d93947 May 5 16:13:17 xcp-ng xapi: [ info||412529 |Async.VM.start R:f406c721ea1c|xenops] xenops: VM.start ae56aad1-bab7-e6eb-8599-8eea93291e54 May 5 16:13:17 xcp-ng xapi: [ info||412529 |Async.VM.start R:f406c721ea1c|xenops] xenops: Queueing VM.unpause ae56aad1-bab7-e6eb-8599-8eea93291e54 May 5 16:13:24 xcp-ng xapi: [ info||412529 |Async.VM.start R:f406c721ea1c|xapi_network] Caught Xenops_interface.Xenopsd_error([S(Internal_error);S(Cannot_add(0000:06:00.0, Xenctrlext.Unix_error(35, "3: No such process")))]): detaching networks May 5 16:13:24 xcp-ng xapi: [error||412529 |Async.VM.start R:f406c721ea1c|xenops] Caught exception starting VM: Xenops_interface.Xenopsd_error([S(Internal_error);S(Cannot_add(0000:06:00.0, Xenctrlext.Unix_error(35, "3: No such process")))]) May 5 16:13:24 xcp-ng xapi: [debug||412529 |Async.VM.start R:f406c721ea1c|xenops] VM ae56aad1-bab7-e6eb-8599-8eea93291e54 set_resident_on May 5 16:13:24 xcp-ng xapi: [debug||412529 |Async.VM.start R:f406c721ea1c|xenops] Signalling xenapi event thread to re-register, and xenopsd events to sync May 5 16:13:24 xcp-ng xapi: [ info||412529 |Async.VM.start R:f406c721ea1c|xenops] xenops: UPDATES.refresh_vm ae56aad1-bab7-e6eb-8599-8eea93291e54 May 5 16:13:24 xcp-ng xapi: [debug||412529 |Async.VM.start R:f406c721ea1c|xenops] Client.UPDATES.inject_barrier 6 May 5 16:13:24 xcp-ng xapi: [debug||412529 |Async.VM.start R:f406c721ea1c|xenops] triggering xapi event thread to re-register via session.logout May 5 16:13:24 xcp-ng xapi: [error||412529 |Async.VM.start R:f406c721ea1c|xenops] Re-raising as INTERNAL_ERROR [ xenopsd internal error: Cannot_add(0000:06:00.0, Xenctrlext.Unix_error(35, "3: No such process")) ] May 5 16:13:24 xcp-ng xapi: [error||412529 ||backtrace] Async.VM.start R:f406c721ea1c failed with exception Server_error(INTERNAL_ERROR, [ xenopsd internal error: Cannot_add(0000:06:00.0, Xenctrlext.Unix_error(35, "3: No such process")) ]) May 5 16:13:24 xcp-ng xapi: [error||412529 ||backtrace] Raised Server_error(INTERNAL_ERROR, [ xenopsd internal error: Cannot_add(0000:06:00.0, Xenctrlext.Unix_error(35, "3: No such process")) ]) May 5 16:13:24 xcp-ng xapi: [error||412529 ||backtrace] 1/1 xapi Raised at file (Thread 412529 has no backtrace table. Was with_backtraces called?, line 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