JimBE Posted December 1, 2015 Share Posted December 1, 2015 Hello unRAID community, First of all, thanks everyone for such a great forum. I have managed to find all answers I was looking for, except one :-) I hope you will be able to provide me with some more information about VM passthrough. I read lots of threads in the forum but there seems to be deprecated methods (go script, etc.), besides none worked anyway. As both the TVHeadend plugin and docker caused troubles with "continuity counter" error messages, I'm trying to achieve an alternate method using a VM (and different drivers/tvheadend version). I'm not wanting to go into details here about this specific tvheadend issue (cards are working fine in another computer) as this thread is about VM and passthrough. Here is what I'm trying to achieve : - motherboard : SuperMicro X8SIA-F - PCI-e to PCI bridge in a PCI-e 1x slot - Technotrend 1501 DVB-C PCI card into this PCI-e -> PCI adapter The goal is to be able to use this DVB card (passthrough) to an unraid 6.1.3 VM. Here are the two lines from lspci that seem to match the bridge + DVB card : 09:00.0 PCI bridge: ASMedia Technology Inc. ASM1083/1085 PCIe to PCI Bridge (rev 04) 0a:00.0 Multimedia controller: Philips Semiconductors SAA7146 (rev 01) then lspci -n : 09:00.0 0604: 1b21:1080 (rev 04) 0a:00.0 0480: 1131:7146 (rev 01) The two devices seem to be within the same IOMMU group : /sys/kernel/iommu_groups/19/devices/0000:08:00.0 /sys/kernel/iommu_groups/20/devices/0000:09:00.0 /sys/kernel/iommu_groups/20/devices/0000:0a:00.0 /sys/kernel/iommu_groups/21/devices/0000:ff:00.0 - I tried with both PCIe ACS Override on or off with no luck - I tried "pci-stub.ids=1131:7146,1b21:1080" in syslinux.cfg with no luck - I tried adding "intel_iommu=on vfio_iommu_type1.allow_unsafe_interrupts=1 pcie_acs_override=downstream" in syslinux.cfg with no luck - I tried i440fx and Q35 vm type with no luck ... and experienced different error messages (Failed to setup INTx fd: Device or resource busy, ...) but the current situation is as follow: I'm using the following in the VM config : <hostdev mode='subsystem' type='pci' managed='no'> <source> <address domain='0x0000' bus='0x0a' slot='0x00' function='0x0'/> </source> <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x0'/> </hostdev> Error message when starting VM : Path '/dev/vfio/20' is not accessible: No such file or directory When looking in the unraid /dev/vfio directory : /dev/vfio# ls -la drwxr-xr-x 2 root root 60 Dec 1 18:04 ./ drwxr-xr-x 15 root root 4520 Dec 1 18:05 ../ crw-rw-rw- 1 root root 10, 196 Dec 1 18:04 vfio Any idea or hint that could help me in my passthrough quest ? (Dockers are very easy to use, but VM documentation is lacking some clear guidance IMHO.) Thanks a lot for your help ! Jim Quote Link to comment
johnodon Posted December 1, 2015 Share Posted December 1, 2015 I believe this is what you want: http://lime-technology.com/forum/index.php?topic=40705.0 John Quote Link to comment
JimBE Posted December 1, 2015 Author Share Posted December 1, 2015 Thanks for the pointer John. But I actually read that topic many times. The thing is I already tried the Media Build (openelec one) with the tvheadend docker (and the tvheadend plugin too), but both implementations gave me tvheadend continuity counter error messages. So my idea was to use a VM with a passthrough of the DVB cards in order to easily try different DVB drivers and TVheadend versions (I could clone my working tvheadend rig and use it in a VM as well). But for that, I need to be able to pass through the cards. Do I need the media build for unraid even if I just want to pass through the DVB cards ? I was wondering I only needed to pass the raw bus, then use the VM (ubuntu) with an appropriate driver. Any guidance ? Thanks again. Quote Link to comment
saarg Posted December 1, 2015 Share Posted December 1, 2015 I think your bridge might be the problem. I think jonp mentioned some time that passing through bridges is not supported yet. But I think we have to wait and see if he answers to be sure. Quote Link to comment
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.