SOLVED! corrupted video with TBS twin port card on DVB-S or DVB-S2, HD or SD channels

Added by Paul M 5 months ago

This is SOLVED. You need to enable MSI interrupts - see my followup on page 2, or go direct to https://tvheadend.org/boards/5/topics/32496?r=34042#message-34042


About once a day TVH gets into a state where there's corrupted video, either HD or SD channels. It doesn't matter whether I play using the web player or kodi with the TVH add-on. https://imgur.com/a/AWvFDqI

Restarting TVH server doesn't fix it, I have to reboot. Sometimes when I ask nicely for a reboot, it locks up and I have to force a restart, and then TVH database files will be corrupted (e.g. no network, channels, etc) and any recording timers will be lost, and I have to piece together the config from the last backup so as not to orphan recordings.

My TVH server is a dedicated box, running headless. It's running 4.3-1236~g518d57b~xenial on ubuntu 16.04.04-lts-x64, kernel 4.4.0-116-lowlatency, on a core2quad q6600 with 4GB RAM and mirrored 750GB hard drives. I'm using a TBS twin port PCIe card.

When I was on 4.2.latest I used to find the TVH web UI would lock up hard with 100% of a CPU core pegged; that was with the ljalves driver.

After trying many things, I got to where I am now, running 4.3 latest, having installed the low latency kernel and switched to a freshly built new drivers from the tbsdriver git repo. I no longer get the hard UI lockups, but I do get occasional corruption of the configuration/db files.

When TVH is working for me, it's great, but sadly it's far too unreliable to replace my ageing Humax DVR which has a flakey HDMI port but is otherwise reliable :-(

thanks for any ideas.


Replies (43)

RE: corrupted video with TBS twin port card on DVB-S or DVB-S2, HD or SD channels - Added by Joe User 22 days ago

Paul M wrote:

I then tried googling for IRQ problems with the card and found this:

https://www.tbsdtv.com/forum/viewtopic.php?f=52&t=7631

Looks promising. Did you try it?

Also, it is quite possible that the lowlatency kernel is making things worse instead of better...

I am using the tbs drivers with my TBS6522 on Debian Stretch (standard 4.9 kernel) without any problems. I updated the driver about two weeks ago.

RE: corrupted video with TBS twin port card on DVB-S or DVB-S2, HD or SD channels - Added by saen acro 22 days ago

Is this helping
/etc/modprobe.d/tbs.conf

options saa716x_tbs-dvb int_type=1

MODULE_PARM_DESC(int_type, "force Interrupt Handler type: 0=INT-A,1=MSI, 2=MSI-X. default INT-A mode")

https://en.wikipedia.org/wiki/Message_Signaled_Interrupts

@Joe User
different brand, different bios, different mobo realisation
not all equal
PCI controller can be controlled by CPU itself or by chip-set or by dedicated chip.

RE: corrupted video with TBS twin port card on DVB-S or DVB-S2, HD or SD channels - Added by Paul M 21 days ago

I got this response from TBS support to try a different driver set...

sudo rm -rf /lib/modules/`uname -r`/kernel/drivers/media/
wget http://www.tbsiptv.com/download/common/tbs-linux-drivers_v170330.zip
unzip tbs-linux-drivers_v170330.zip
tar jxvf linux-tbs-drivers.tar.bz2
cd linux-tbs-drivers 
./v4l/tbs-x86_64.sh 
make -j4 
make install 
reboot

and they also said

and set your system like this :
create text file "/etc/modprobe.d/tbs.conf" with line:
options tbs_pcie-dvb tbs_int_type=1
options saa716x_tbs-dvb int_type=1
after reboot, check with "cat /proc/interrupts" that it reports MSI for TBS PCIE.

RE: corrupted video with TBS twin port card on DVB-S or DVB-S2, HD or SD channels - Added by Paul M 21 days ago

success! I purged all kernels, everything, so /lib/modules was empty, and installed 4.8.0-58-lowlatency kernel, thus giving me this:

ii  linux-headers-4.8.0-58                 4.8.0-58.63~16.04.1                        all          Header files related to Linux kernel version 4.8.0
ii  linux-headers-4.8.0-58-lowlatency      4.8.0-58.63~16.04.1                        amd64        Linux kernel headers for version 4.8.0 on 64 bit x86 SMP
ii  linux-hwe-tools-4.8.0-58               4.8.0-58.63~16.04.1                        amd64        Linux kernel version specific tools for version 4.8.0-58
ii  linux-image-4.8.0-58-lowlatency        4.8.0-58.63~16.04.1                        amd64        Linux kernel image for version 4.8.0 on 64 bit x86 SMP
ii  linux-signed-image-4.8.0-58-lowlatency 4.8.0-58.63~16.04.1                        amd64        Signed kernel image lowlatency
ii  linux-tools-4.8.0-58-lowlatency        4.8.0-58.63~16.04.1                        amd64        Linux kernel version specific tools for version 4.8.0-58

then I used a variant on TBS's instructions thus:

#!/bin/bash

#VER="180822" 
#ZIPFILE="tbs-open-linux-drivers_v$VER.zip" 
#TARFILE=media_build-2018-0822.tar.bz2

VER="170330" 
ZIPFILE="tbs-linux-drivers_v170330.zip" 
TARFILE=linux-tbs-drivers.tar.bz2

DIR=/home/build
mkdir -p "$DIR" 
cd "$DIR" 

if [ ! -f "$ZIPFILE" ] ; then
       wget "https://www.tbsiptv.com/download/common/$ZIPFILE" 
fi

mkdir -p "$DIR/tbs_$VER" 
cd "$DIR/tbs_$VER" 

pwd
ls -la "../$ZIPFILE" 
unzip "../$ZIPFILE" 

tar jxvf "$TARFILE" 
cd linux-tbs-drivers  
./v4l/tbs-x86_64.sh  
make -j4  
make install

and set the driver to use MSI Interrupts by creating a file called "/etc/modprobe.d/tbs.conf" containing these lines:

options tbs_pcie-dvb tbs_int_type=1
options saa716x_tbs-dvb int_type=1

after a reboot, check "lsmod | grep -i saa" to see it loaded the module, and check that the interrupts are MSI:

# egrep -i "saa|dvb" /proc/interrupts  
31:      29757          0          0          0   PCI-MSI 1572864-edge      SAA716x Core

and it now streams. hopefully, it will continue without going wrong. I'll let you know.

update: yes, still working after two days.

RE: corrupted video with TBS twin port card on DVB-S or DVB-S2, HD or SD channels - Added by Mark Clarkstone 21 days ago

Glad to here you finally got it working, Paul. Let's hope it stays that way.
Once you've confirmed the new drivers from TBS are working I'll make this a sticky so others can find it easier.

RE: corrupted video with TBS twin port card on DVB-S or DVB-S2, HD or SD channels - Added by Paul M 21 days ago

I'd rather it got written up into the wiki as "known good combination of kernel and drivers" or something.

I'll report back in due course when I'm more sure the system is stable.

I've always intended to build a dedicated power efficient server for this, and was going to fit it with a pair of these cards and a dvb-t2 card so as to have a full set of channels available.

RE: corrupted video with TBS twin port card on DVB-S or DVB-S2, HD or SD channels - Added by saen acro 21 days ago

@Mark Clarkstone better to be created section for hardware in this forum
aka practical area for https://www.linuxtv.org/wiki/index.php/Hardware_device_information

RE: corrupted video with TBS twin port card on DVB-S or DVB-S2, HD or SD channels - Added by Paul M 21 days ago

fortunately for me this is a dedicated server, so I have the luxury of being able to render it unbootable and install random kernels and drivers and software.. I think it would be much harder if this happened to be my desktop computer because it was all I could afford or had space for!

RE: corrupted video with TBS twin port card on DVB-S or DVB-S2, HD or SD channels - Added by Jack Bamford 21 days ago

@saen acro. Ive ran into issues with using the Media Code from LinuxTV themselves. I believe that the V4L Drivers from LinuxTV.org doesnt have the Drivers for these TBS Card. The Compiled and Build version i have got from here doesn't anyway. https://www.linuxtv.org/wiki/index.php/How_to_Obtain,_Build_and_Install_V4L-DVB_Device_Drivers

RE: corrupted video with TBS twin port card on DVB-S or DVB-S2, HD or SD channels - Added by saen acro 21 days ago

Open new topic

Jack Bamford wrote:

@saen acro. Ive ran into issues with using the Media Code from LinuxTV themselves. I believe that the V4L Drivers from LinuxTV.org doesnt have the Drivers for these TBS Card. The Compiled and Build version i have got from here doesn't anyway. https://www.linuxtv.org/wiki/index.php/How_to_Obtain,_Build_and_Install_V4L-DVB_Device_Drivers

maby outdated that's why

RE: corrupted video with TBS twin port card on DVB-S or DVB-S2, HD or SD channels - Added by Jack Bamford 21 days ago

Most likely, Wouldn't surprise me that the issue with lock up with CPU usage at 100% is caused by SystemD. Ive had a ton of issues with SystemD in different ways.

RE: corrupted video with TBS twin port card on DVB-S or DVB-S2, HD or SD channels - Added by Paul M 20 days ago

it's still working after 24 hours-ish.

  • ubuntu 16.04.5-lTS
  • kernel 4.8.0-58-lowlatency
  • driver built from source tbs-linux-drivers_v170330.zip
  • tvheadend 4.3-1292~g9b9ee68~xenial

here's what I have installed

# dpkg -l | egrep "4.8.0|linux-" 
ii  linux-base                             4.5ubuntu1~16.04.1                         all          Linux image base package
ii  linux-firmware                         1.157.20                                   all          Firmware for Linux kernel drivers
ii  linux-headers-4.8.0-58                 4.8.0-58.63~16.04.1                        all          Header files related to Linux kernel version 4.8.0
ii  linux-headers-4.8.0-58-lowlatency      4.8.0-58.63~16.04.1                        amd64        Linux kernel headers for version 4.8.0 on 64 bit x86 SMP
ii  linux-hwe-tools-4.8.0-58               4.8.0-58.63~16.04.1                        amd64        Linux kernel version specific tools for version 4.8.0-58
ii  linux-image-4.8.0-58-lowlatency        4.8.0-58.63~16.04.1                        amd64        Linux kernel image for version 4.8.0 on 64 bit x86 SMP
ii  linux-libc-dev:amd64                   4.4.0-134.160                              amd64        Linux Kernel Headers for development
ii  linux-signed-image-4.8.0-58-lowlatency 4.8.0-58.63~16.04.1                        amd64        Signed kernel image lowlatency
ii  linux-tools-4.8.0-58-lowlatency        4.8.0-58.63~16.04.1                        amd64        Linux kernel version specific tools for version 4.8.0-58
ii  linux-tools-common                     4.4.0-134.160                              all          Linux kernel version specific tools for version 4.4.0

RE: corrupted video with TBS twin port card on DVB-S or DVB-S2, HD or SD channels - Added by Paul M 19 days ago

my TVH server is still working fine, so this is a massive leap forward from having to reboot once or twice a day.

I'm happy to contribute to a wiki page about known good combinations of hardware and drivers. I'm sure I asked about getting write access to the wiki and nothing came of it.

Follow the information in this post:
https://tvheadend.org/boards/5/topics/32496?r=34042#message-34042

I amended the thread title and put a reference in the first post to point people at the right post.

RE: corrupted video with TBS twin port card on DVB-S or DVB-S2, HD or SD channels - Added by Mark Clarkstone 19 days ago

Paul M wrote:

my TVH server is still working fine, so this is a massive leap forward from having to reboot once or twice a day.

I'm happy to contribute to a wiki page about known good combinations of hardware and drivers. I'm sure I asked about getting write access to the wiki and nothing came of it.

Follow the information in this post:
https://tvheadend.org/boards/5/topics/32496?r=34042#message-34042

I amended the thread title and put a reference in the first post to point people at the right post.

I added you as a wiki editor a while back, as your user page shows.

RE: corrupted video with TBS twin port card on DVB-S or DVB-S2, HD or SD channels - Added by Paul M 19 days ago

Mark Clarkstone wrote:

I added you as a wiki editor a while back, as your user page shows.

oh, so I do. sorry!

RE: SOLVED! corrupted video with TBS twin port card on DVB-S or DVB-S2, HD or SD channels - Added by Jack Bamford 18 days ago

Is there anyway i can edit for the DVBSky S952?

Thanks.

RE: SOLVED! corrupted video with TBS twin port card on DVB-S or DVB-S2, HD or SD channels - Added by Paul M 17 days ago

I discovered some "hidden" pages which mentioned TBS, at https://tvheadend.org/projects/tvheadend/wiki/DVBCards , so I added a link to there from the new page I created.

1 2 (26-43/43)