[SOLVED] After Update, USB TV Tuner Passthrough locks system

Thanks, I didn't fully understand.

Steps to fix my issue:
1. nano /etc/modprobe.d/pve-blacklist.conf
2. Added this line: blacklist em28xx
3. Saved and rebooted.
4. re-added the USB to VM through GUI
Please run update-initramfs -u just before rebooting for any changes to files in the directory /etc/modprobe.d/ to have any effect. I think you also need to run proxmox-boot-tool refresh when using systemd-boot. Or did it already fix it for you?
 
  • Like
Reactions: isaacblum
Please run update-initramfs -u just before rebooting for any changes to files in the directory /etc/modprobe.d/ to have any effect. I think you also need to run proxmox-boot-tool refresh when using systemd-boot. Or did it already fix it for you?
It already worked. Currently scanning channels in my plex/ubuntu VM. Everything would lock up as soon as I tried starting the VM before.
 
yep it seems like a bug in the driver code (but another one that was introduced here [0]) [1] [2]

we might cherry-pick it, or wait for it to be included in an upstream release.

in the meantime you can try booting an older kernel version (like the one from your working box)

[0]: https://github.com/torvalds/linux/commit/2c98b8a3458df03abdc6945bbef67ef91d181938
[1]: https://lore.kernel.org/lkml/20220120193730.28155-1-paskripkin@gmail.com/
[2]: https://lore.kernel.org/lkml/12d7f37f-340f-f316-f876-b62a1bd20c52@elbmurf.de/
Blacklisting the driver won't work for containers. Any idea when the fix will reach Proxmox (5.15)?
 
Hey everyone, I think I have the same issue.

https://bin.socialspill.com/puvecisetu.yaml

I'll try the blacklisting workaround and report back.

For future reference i'm on 5.13.19-6-pve

EDIT : It works like a charm ! But now in the Debian VM underneath proxmox crash when disconnecting the tuner.
Not sure if disabling em28xx in the VM will make the tuner unusable (?). I'll try.

EDIT 2 : Ofc, it makes the tuner unusable, I have to find a fix for the crash when disconnecting now.
 
Last edited:
Hey, I have similar problem. I use a WinTV-NOVA-S2 with my proxmox host. I tried passing the stick to a LXC container, a Linux KVM-VM and a Windows KVM-VM. I couldn't archive any results. With Windows the stick does get detected but cannot find any channels. Linux + tvheadend causes the stick to crash. Only a reboot of the proxmox hosts enables it again. Blacklisting em28xx doesn't solve the issue. The stick works fine on an old laptop. Has anyone seen this strange error code?

Code:
Jun 01 13:07:46 hades kernel: em28xx 1-1.2:1.0: writing to i2c device at 0xd4 failed (error=-19)
Jun 01 13:07:46 hades kernel: m88ds3103 4-006a: i2c wr failed=-19

Code:
proxmox-ve: 7.2-1 (running kernel: 5.15.39-3-pve)
pve-manager: 7.2-7 (running version: 7.2-7/d0dd0e85)
pve-kernel-5.15: 7.2-8
pve-kernel-helper: 7.2-8
pve-kernel-5.15.39-3-pve: 5.15.39-3
pve-kernel-5.15.35-2-pve: 5.15.35-5
pve-kernel-5.15.35-1-pve: 5.15.35-3
pve-kernel-5.15.30-2-pve: 5.15.30-3
ceph-fuse: 15.2.16-pve1
corosync: 3.1.5-pve2
criu: 3.15-1+pve-1
glusterfs-client: 9.2-1
ifupdown2: 3.1.0-1+pmx3
ksm-control-daemon: 1.4-1
libjs-extjs: 7.0.0-1
libknet1: 1.24-pve1
libproxmox-acme-perl: 1.4.2
libproxmox-backup-qemu0: 1.3.1-1
libpve-access-control: 7.2-4
libpve-apiclient-perl: 3.2-1
libpve-common-perl: 7.2-2
libpve-guest-common-perl: 4.1-2
libpve-http-server-perl: 4.1-3
libpve-storage-perl: 7.2-7
libspice-server1: 0.14.3-2.1
lvm2: 2.03.11-2.1
lxc-pve: 5.0.0-3
lxcfs: 4.0.12-pve1
novnc-pve: 1.3.0-3
proxmox-backup-client: 2.2.5-1
proxmox-backup-file-restore: 2.2.5-1
proxmox-mini-journalreader: 1.3-1
proxmox-widget-toolkit: 3.5.1
pve-cluster: 7.2-2
pve-container: 4.2-2
pve-docs: 7.2-2
pve-edk2-firmware: 3.20210831-2
pve-firewall: 4.2-5
pve-firmware: 3.5-1
pve-ha-manager: 3.4.0
pve-i18n: 2.7-2
pve-qemu-kvm: 6.2.0-11
pve-xtermjs: 4.16.0-1
qemu-server: 7.2-3
smartmontools: 7.2-pve3
spiceterm: 3.2-2
swtpm: 0.7.1~bpo11+1
vncterm: 1.7-1
zfsutils-linux: 2.1.5-pve1
 
Hey, I have similar problem.
It seems to me that you have two problems.
I use a WinTV-NOVA-S2 with my proxmox host. I tried passing the stick to a LXC container, a Linux KVM-VM and a Windows KVM-VM. I couldn't archive any results. With Windows the stick does get detected but cannot find any channels.
The stick works fine on an old laptop.
Sound like you have a problem getting it to work at all.
What operating system and TV-tuner software do you use on the old laptop? Do you know of people on the internet that got it working with Linux?
USB passthrough (to a VM) struggles with the bandwidth of TV-tuners, PCIe passthrough of a USB controller (to a VM) might help. Or a container, except for the driver issue and only if you can get the TV-tuner to work on Linux.
Maybe start a new forum thread about it (and make sure to always reboot Linux when trying things out until the other issue is fixed in the em28xx driver).
Linux + tvheadend causes the stick to crash. Only a reboot of the proxmox hosts enables it again. Blacklisting em28xx doesn't solve the issue.
This is the issue of this forum thread. Probably the "inux" inside a VM has the same em28xx driver issue. Containers use the same Proxmox kernel, which the same issue.
Has anyone seen this strange error code?
Code:
Jun 01 13:07:46 hades kernel: em28xx 1-1.2:1.0: writing to i2c device at 0xd4 failed (error=-19)
Jun 01 13:07:46 hades kernel: m88ds3103 4-006a: i2c wr failed=-19
-19 probably means no such device, which is not unexpected for the issue of this forum thread.

EDIT: I run MythTV in a container but I don't see the em28xx crash issue any more with the latest kernel (but I also added em28xx{,_rc,_dvb} to /etc/modules, so maybe it does not unload and not trigger the issue).
 
Last edited:
It seems to me that you have two problems.


Sound like you have a problem getting it to work at all.
What operating system and TV-tuner software do you use on the old laptop? Do you know of people on the internet that got it working with Linux?
USB passthrough (to a VM) struggles with the bandwidth of TV-tuners, PCIe passthrough of a USB controller (to a VM) might help. Or a container, except for the driver issue and only if you can get the TV-tuner to work on Linux.
Maybe start a new forum thread about it (and make sure to always reboot Linux when trying things out until the other issue is fixed in the em28xx driver).

This is the issue of this forum thread. Probably the "inux" inside a VM has the same em28xx driver issue. Containers use the same Proxmox kernel, which the same issue.

-19 probably means no such device, which is not unexpected for the issue of this forum thread.

EDIT: I run MythTV in a container but I don't see the em28xx crash issue any more with the latest kernel (but I also added em28xx{,_rc,_dvb} to /etc/modules, so maybe it does not unload and not trigger the issue).
Hey, thank you so much for your quick answer. The laptop uses the same setup I replicated with the VM (Ubuntu/Debian (tried both) Linux with tvheadend). It works well with tvheadend and I can stream flawlessly. I tried the USB-Passthrough on my Synology NAS with a VM and it worked but I had a lot of continuity errors which caused it to be unusable (bandwidth?). The stick is changed to bulk mode btw. I thought about passing the whole controller but I would prefer to use the stick in a LXC container so hardware encoding is available. I will try this next.

Thank you!
 
Hey, thank you so much for your quick answer. The laptop uses the same setup I replicated with the VM (Ubuntu/Debian (tried both) Linux with tvheadend). It works well with tvheadend and I can stream flawlessly. I tried the USB-Passthrough on my Synology NAS with a VM and it worked but I had a lot of continuity errors which caused it to be unusable (bandwidth?). The stick is changed to bulk mode btw. I thought about passing the whole controller but I would prefer to use the stick in a LXC container so hardware encoding is available. I will try this next.
Since the TV-tuner works with Linux, I would suggest a Ubuntu unprivileged container and add the firmware to the host, bind mount /dev/dvb and map the video group inside the container. I have MythTV working with a WinTV DualHD this way with next to zero overhead. If you run into issues, create a new topic about the errors you get.
 
Since the TV-tuner works with Linux, I would suggest a Ubuntu unprivileged container and add the firmware to the host, bind mount /dev/dvb and map the video group inside the container. I have MythTV working with a WinTV DualHD this way with next to zero overhead. If you run into issues, create a new topic about the errors you get.
I don't know why, but this doesn't seem to work. If the device is connected to the proxmox host in anyway it seems to die. I tried Arch, Debian and Ubuntu as operating system in the LXC container but since the kernel stays the same, I don't think it changes anything. This isn't possible if the device is blacklisted via /etc/modprobe.d/pve-blacklist.conf, right? Since it seems to work now with the pci passthrough, I will revisit it once the bug in the kernel is published. If you think it's possible you could maybe share a resource on how you did it or what you configured in your LXC container.
 
Thanks, I didn't fully understand.

Steps to fix my issue:
1. nano /etc/modprobe.d/pve-blacklist.conf
2. Added this line: blacklist em28xx
3. Saved and rebooted.
4. re-added the USB to VM through GUI
I just wanted to thank you all for this thread, and for these summary instructions. Because here we are over a year later, and this problem is still happening on my approximately 3 week old install (Linux 5.15.74-1-pve #1 SMP PVE 5.15.74-1). I was about to pull my hair out because I couldn't get my TV tuner to work in time to watch today's Purdue basketball game :D
 
  • Like
Reactions: isaacblum

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!