Bug #1525
Crashes if insufficient DVB adapters
0%
Description
Selecting a channel to play when there are no free DVB adapters crashes TVHeadend. This happens if TVHeadend finds a disabled adapter. I don't know if it happens at other times. Syslog shows:
Jan 12 14:13:51 revo tvheadend[3598]: dvr: "Scrubs" on "E4+1" starting at 2013-01-12 13:58:00, scheduled for recording by "anonymous" Jan 12 14:13:51 revo tvheadend[3598]: dvr: "Scrubs" on "E4+1" recorder starting Jan 12 14:13:51 revo tvheadend[3598]: dvb: Adapter "DiBcom 7000PC" cannot be started - it's disabled Jan 12 14:13:51 revo tvheadend[3598]: dvb: "/dev/dvb/adapter3" tuning to "East Anglia: 785,800 kHz" -- Front configuration failed -- Bad file descriptor, frequency: 785800000 Jan 12 14:13:51 revo tvheadend[3598]: webui: Stop streaming /stream/channelid/60?ticket=CA8DF9559A0128BF94B530C29C83AD1932A5A4C6&mux=matroska&transcode=1&resolution=384&acodec=AAC&vcodec=H264&scodec=NONE, Subscription overridden Jan 12 14:13:51 revo tvheadend[3598]: CRASH: Signal: 11 in PRG: tvheadend (3.3.341~ga1461fb-dirty) [86119b2b7c3ea91a2b257b8c1df46a4842dab965] CWD: / Jan 12 14:13:51 revo tvheadend[3598]: CRASH: Fault address (nil) (Address not mapped) Jan 12 14:13:51 revo tvheadend[3598]: CRASH: Loaded libraries: /lib/i386-linux-gnu/libcrypto.so.1.0.0 /lib/i386-linux-gnu/libz.so.1 /usr/lib/i386-linux-gnu/libavahi-common.so.3 /usr/lib/i386-linux-gnu/libavahi-client.so.3 /usr/lib/i386-linux-gnu/libcurl-gnutls.so.4 /lib/i386-linux-gnu/librt.so.1 /lib/i386-linux-gnu/libdl.so.2 /lib/i386-linux-gnu/libpthread.so.0 /lib/i386-linux-gnu/libm.so.6 /lib/i386-linux-gnu/libc.so.6 /lib/i386-linux-gnu/libdbus-1.so.3 /usr/lib/i386-linux-gnu/libidn.so.11 /usr/lib/i386-linux-gnu/liblber-2.4.so.2 /usr/lib/i386-linux-gnu/libldap_r-2.4.so.2 /usr/lib/i386-linux-gnu/libgssapi_krb5.so.2 /usr/lib/i386-linux-gnu/libgnutls.so.26 /lib/i386-linux-gnu/libgcrypt.so.11 /usr/lib/i386-linux-gnu/librtmp.so.0 /lib/ld-linux.so.2 /lib/i386-linux-gnu/libresolv.so.2 /usr/lib/i386-linux-gnu/libsasl2.so.2 /usr/lib/i386-linux-gnu/libgssapi.so.3 /usr/lib/i386-linux-gnu/libkrb5.so.3 /usr/lib/i386-linux-gnu/libk5crypto.so.3 /lib/i386-linux-gnu/libcom_err.so.2 /usr/lib/i386-linux-gnu/libkrb5support.so.0 /usr/lib/i386-linux-gnu/libtasn1.so.3 /usr/lib/i386-linux-gn Jan 12 14:13:51 revo tvheadend[3598]: CRASH: Register dump [19]: 00000033 c1570000 ffff007b 0000007b 095ef4e0 000002c1 095759e8 bfa6ed4c bfa6ed78 00000000 00000000 00000000 0000000e 00000004 00000000 00000073 00010286 bfa6ed4c 0000007b Jan 12 14:13:51 revo tvheadend[3598]: CRASH: STACKTRACE Jan 12 14:13:51 revo tvheadend[3598]: CRASH: ??:0 0x80708e2 Jan 12 14:13:51 revo tvheadend[3598]: CRASH: __kernel_rt_sigreturn+0x0 () Jan 12 14:13:51 revo kernel: [843696.430615] tvheadend[3598]: segfault at 0 ip (null) sp bfa6ed4c error 4 in libz.so.1.2.3.4[110000+14000] Jan 12 14:13:51 revo kernel: [843696.452642] init: tvheadend main process (3598) killed by SEGV signal
History
Updated by Dimitris Kazakos almost 12 years ago
This must be the same issue I mentioned a few hours ago in issue #1493.
Might be related, but it surely is related with timeshift, since this never happened before it was merged.
Updated by Adam Sutton almost 12 years ago
- Status changed from New to Need feedback
If this is repeatable do you think you could get a gdb stack trace (bt full), just to help pinpoint what's going on and save me some searching.
Ta
Adam
Updated by Adam Sutton almost 12 years ago
Also its possible that this is not related to timeshift, other changes have been made recently which "might" impact this. So it might be worth disabling (or better building without) timeshift to see what happens.
But the stacktrace would still be very helpful.
Adam
Updated by Dimitris Kazakos almost 12 years ago
Actually, I cannot reproduce this today; no crash when adapter is in use, BUT there IS a crash in the following scenario:
I start recording a DVB stream, try to start a subscription on another channel, "adapter in use" message appears, I press stop, crash.
I also submitted another issue (1539), which I think might be related, or even the same bug.
As for the backtrace, I tried running gdb, but I cannot seem to start tvheadend as hts:video; if I do, there are no permissions for the dvb adapters. If I run gdb as root (even with the correct parameters), the configuration of user hts is not loaded.
Any hints?
Updated by Adam Sutton almost 12 years ago
Dimitris,
the way I run TVH for test/dev is that I keep a copy of my config in my local build directory and just run TVH as myself. The only other thing you need to do is make sure you're part of the video group (to access the DVB devices). It's much simpler than messing about with running as root or using your primary config that you might accidentally trash etc...
Use something like:
sudo usermod -G video -a
sudo cp ~hts/.hts/tvheadend tvh-conf
sudo chown -R YOUR_USERNAME tvh-conf
./build.linux/tvheadend -c tvh-conf
Adam
Updated by Adam Sutton almost 12 years ago
- Category changed from DVB to Timeshift
- Target version set to 3.4
Updated by Adam Sutton almost 12 years ago
Can you check if this is still an issue. My guess is this may be fixed by stuff committed for #1542.
Adam
Updated by Adam Sutton almost 12 years ago
- Status changed from Need feedback to Fixed
- Target version set to 3.4
I believe this is fixed as per previous message. Closing.