Bug #1030
segfault on libc-2.15.so
100%
Description
Hi all,
I'm trying to setup a dvb server using ubuntu server 12.04 and tvheadend, I've added tvheadend repository as stated here: https://www.lonelycoder.com/tvheadend/download and installed the package, using web interface I added all the muxes for italy, then, during scanning, I see this warning in the interface: "*There seems to be a problem with the live update feed from Tvheadend. Trying to reconnect...*".
Running the dmesg command I can read as the last line:
[ 3186.652420] tvheadend[3114]: segfault at 0 ip b7518e41 sp b52fba7c error 4 in libc-2.15.so[b749d000+19f000]
If I try to restart tvheadend via init.d, it restarts, but after a while it crashes again with the same error.
$ uname -a Linux hibox 3.2.0-24-generic-pae #39-Ubuntu SMP Mon May 21 18:54:21 UTC 2012 i686 i686 i386 GNU/Linux
thanks for the help.
History
Updated by Hein Rigolo over 12 years ago
- Category changed from DVB to General
please update to a version that is compiled from the latest git source to check is this still happens
Updated by Gabriele Tassoni over 12 years ago
I tried version 2.99.34 and it still gives me:
tvheadend[2103]: segfault at 0 ip b7456e41 sp b51fca9c error 4 in libc-2.15.so[b73db000+19f000]
Is there some sort of nightly build ubuntu repository? Thus I can keep updating in an easier way?
Thanks.
Updated by Gabriele Tassoni over 12 years ago
Tried new build HTS Tvheadend 2.99.37.1332f9f, still seeing the same error:
[14052.741712] tvheadend[7305]: segfault at 0 ip b74a2e41 sp b51fca9c error 4 in libc-2.15.so[b7427000+19f000]
Updated by Gabriele Tassoni over 12 years ago
Tried the HTS Tvheadend 0.90.0.5265.ga257d version, it still has the problem, it finds 164 services starting from 56 muxes, whe it arrives at mux 27 it disconnects then reconnects starting the tuning again from mux 56 down to mux 27 where it crashes again.
Here is the message in the web interface:
There seems to be a problem with the live update feed from Tvheadend. Trying to reconnect... Reconnected to Tvheadend Jun 29 09:43:19 AVAHI: Service 'Tvheadend' successfully established.
And here is the error log:
Jun 29 09:57:27 openelec daemon.debug tvheadend[1832]: dvb: Add service "_dev_dvb_adapter0_Siano_Mobile_Digital_MDTV_Receiver586000000_006d" on "GTV: 586,000 kHz" Jun 29 09:57:27 openelec daemon.info tvheadend[1832]: dvr: Creating new configuration '' Jun 29 09:57:27 openelec daemon.info tvheadend[1832]: CSA: Using SSE2 128bit parallel descrambling Jun 29 09:57:27 openelec daemon.notice tvheadend[1832]: START: HTS Tvheadend version 0.90.0.5265.ga257d started, running as PID:1832 UID:0 GID:0, settings located in '/storage/.xbmc/userdata/addon_data/service.multimedia.hts-tvheadend', dataroot: <Embedded file system> Jun 29 09:57:27 openelec daemon.debug tvheadend[1832]: AVAHI: Adding service 'Tvheadend' Jun 29 09:57:27 openelec daemon.err tvheadend[1832]: xmltv: No output from "/storage/.xbmc/addons/service.multimedia.hts-tvheadend/bin/tv_grab_file" Jun 29 09:57:27 openelec daemon.info tvheadend[1832]: AVAHI: Service 'Tvheadend' successfully established. Jun 29 09:57:46 openelec daemon.debug tvheadend[1832]: dvb: "/dev/dvb/adapter0" tuning to "802,000 kHz" (Initial autoscan)
Updated by Gabriele Tassoni over 12 years ago
Still trying to help, here is the same crash (but chattier), from HTS Tvheadend 2.99.53.4502158:
This time is a vanilla Ubuntu server 12.04, just installed linux-firmware-nonfree to support my siano DVB thumb and tvheadend from pulse eight repositories.
Jul 24 17:43:13 hiserver tvheadend[2075]: dvb: New mux "11,565 kHz" created by automatic mux discovery Jul 24 17:43:13 hiserver tvheadend[2075]: CRASH: Signal: 11 in PRG: /usr/bin/tvheadend (2.99.53.4502158) [3812b2d5518e04aba56462736f103ed888d6a4cf] CWD: / Jul 24 17:43:13 hiserver tvheadend[2075]: CRASH: Fault address (nil) (Address not mapped) Jul 24 17:43:13 hiserver tvheadend[2075]: CRASH: Loaded libraries: /lib/i386-linux-gnu/librt.so.1 /lib/i386-linux-gnu/libdl.so.2 /usr/lib/i386-linux-gnu/libavahi-common.so.3 /usr/lib/i386-linux-gnu/libavahi-client.so.3 /lib/i386-linux-gnu/libcrypto.so.1.0.0 /lib/i386-linux-gnu/libpthread.so.0 /lib/i386-linux-gnu/libc.so.6 /lib/ld-linux.so.2 /lib/i386-linux-gnu/libdbus-1.so.3 /lib/i386-linux-gnu/libz.so.1 /lib/i386-linux-gnu/libnss_compat.so.2 /lib/i386-linux-gnu/libnsl.so.1 /lib/i386-linux-gnu/libnss_nis.so.2 /lib/i386-linux-gnu/libnss_files.so.2 Jul 24 17:43:13 hiserver tvheadend[2075]: CRASH: Register dump [19]: 00000033 00000000 c15a007b ffff007b b1a0bbd0 00000000 b1a6fce8 b51fba9c b7585ff4 00000000 00000000 00000000 0000000e 00000004 b7460e41 00000073 00210246 b51fba9c 0000007b Jul 24 17:43:13 hiserver tvheadend[2075]: CRASH: STACKTRACE Jul 24 17:43:13 hiserver tvheadend[2075]: CRASH: ??:0 0x8067ab2 Jul 24 17:43:13 hiserver tvheadend[2075]: CRASH: __kernel_rt_sigreturn+0x0 () Jul 24 17:43:13 hiserver tvheadend[2075]: CRASH: ??:0 0xb7460e41 Jul 24 17:43:13 hiserver tvheadend[2075]: CRASH: __strdup+0x26 (/lib/i386-linux-gnu/libc.so.6) Jul 24 17:43:13 hiserver tvheadend[2075]: CRASH: ??:0 0x8063d46 Jul 24 17:43:13 hiserver tvheadend[2075]: CRASH: ??:0 0x8087052 Jul 24 17:43:13 hiserver tvheadend[2075]: CRASH: ??:0 0x8088469 Jul 24 17:43:13 hiserver tvheadend[2075]: CRASH: ??:0 0x8083454 Jul 24 17:43:13 hiserver tvheadend[2075]: CRASH: ??:0 0x8083c5a Jul 24 17:43:13 hiserver tvheadend[2075]: CRASH: ??:0 0xb7590d4c Jul 24 17:43:13 hiserver tvheadend[2075]: CRASH: clone+0x5e (/lib/i386-linux-gnu/libc.so.6) Jul 24 17:43:13 hiserver kernel: [ 3404.099333] tvheadend[2082]: segfault at 0 ip b7460e41 sp b51fba9c error 4 in libc-2.15.so[b73e5000+19f000]
Updated by Adam Sutton over 12 years ago
Can you try building from andoma's latest git source, and run it under gdb to get a proper trace?
If your unsure about how to do that might be easiest to pop along to IRC (#hts).
Updated by Gabriele Tassoni over 12 years ago
Hi, thank you for the reply, I cloned the git repository you mentioned, configured, the source, issued make and sudo make install, added my user to the video group, log out, then back in, issued gdb tvheadend -d -C, added dvb network by location (Italy), tvheadend started to find services, at about service number 320 it crashed with the following debug log (I hope it's more useful using gdb):
$ gdb tvheadend -d -C GNU gdb (Ubuntu/Linaro 7.4-2012.04-0ubuntu2) 7.4-2012.04 Copyright (C) 2012 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "i686-linux-gnu". For bug reporting instructions, please see: <http://bugs.launchpad.net/gdb-linaro/>... Warning: /home/hiserver/-C: File o directory non esistente. Reading symbols from /usr/local/bin/tvheadend...done. (gdb) run Starting program: /usr/local/bin/tvheadend [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/i386-linux-gnu/libthread_db.so.1". [New Thread 0xb7b9db40 (LWP 2547)] [New Thread 0xb739cb40 (LWP 2548)] [New Thread 0xb69ffb40 (LWP 2549)] [INFO]:dvb: Found adapter /dev/dvb/adapter0 (Siano Mobile Digital MDTV Receiver) via USB (480 Mbit/s) [New Thread 0xb61feb40 (LWP 2551)] tcp_server: epoll_wait: Interrupted system call [New Thread 0xb59fdb40 (LWP 2552)] tcp_server: epoll_wait: Interrupted system call [New Thread 0xb51fcb40 (LWP 2553)] tcp_server: epoll_wait: Interrupted system call [INFO]:dvr: Creating new configuration '' [WARNING]:dvr: Output directory for video recording is not yet configured for DVR configuration "". Defaulting to to "/home/hiserver". This can be changed from the web user interface. [INFO]:CSA: Using SSE2 128bit parallel descrambling [New Thread 0xb49fbb40 (LWP 2554)] tcp_server: epoll_wait: Interrupted system call [NOTICE]:START: HTS Tvheadend version 2.99.46.g0c835 started, running as PID:2544 UID:1000 GID:1000, settings located in '/home/hiserver/.hts/tvheadend', dataroot: /usr/local/share/tvheadend [New Thread 0xb3dffb40 (LWP 2555)] [New Thread 0xb35feb40 (LWP 2556)] [New Thread 0xb2dfdb40 (LWP 2557)] [New Thread 0xb23ffb40 (LWP 2558)] [New Thread 0xb17ffb40 (LWP 2559)] [New Thread 0xb0ffeb40 (LWP 2560)] tcp_server: epoll_wait: Interrupted system call [Thread 0xb35feb40 (LWP 2556) exited] tcp_server: epoll_wait: Interrupted system call [Thread 0xb3dffb40 (LWP 2555) exited] tcp_server: epoll_wait: Interrupted system call [Thread 0xb17ffb40 (LWP 2559) exited] tcp_server: epoll_wait: Interrupted system call [Thread 0xb0ffeb40 (LWP 2560) exited] tcp_server: epoll_wait: Interrupted system call [Thread 0xb23ffb40 (LWP 2558) exited] [New Thread 0xb23ffb40 (LWP 2561)] [NOTICE]:dvb: New mux "11,565 kHz" created by automatic mux discovery Program received signal SIGSEGV, Segmentation fault. [Switching to Thread 0xb59fdb40 (LWP 2552)] 0xb7cb7e41 in ?? () from /lib/i386-linux-gnu/libc.so.6
Updated by Gabriele Tassoni over 12 years ago
I noted from the debug log I pasted earlier that I made a mistake invoking tvheadend, instead of "gdb tvheadend -d -C" it would have been better to call "gdb tvheadend", then issue "run -d -C" in the gdb console, sorry for the inconvenience, here is the right debug log near the segfault:
[DEBUG]:dvb: Add service "_dev_dvb_adapter0_Siano_Mobile_Digital_MDTV_Receiver474000000_00c3" on "Mux RETE 8 NORD: 474,000 kHz" [DEBUG]:dvb: Add service "_dev_dvb_adapter0_Siano_Mobile_Digital_MDTV_Receiver474000000_0260" on "Mux RETE 8 NORD: 474,000 kHz" [New Thread 0xb51fcb40 (LWP 1504)] tcp_server: epoll_wait: Interrupted system call [INFO]:dvr: Creating new configuration '' [WARNING]:dvr: Output directory for video recording is not yet configured for DVR configuration "". Defaulting to to "/home/hiserver". This can be changed from the web user interface. [INFO]:CSA: Using SSE2 128bit parallel descrambling [New Thread 0xb49fbb40 (LWP 1505)] tcp_server: epoll_wait: Interrupted system call [NOTICE]:START: HTS Tvheadend version 2.99.46.g0c835 started, running as PID:1495 UID:1000 GID:1000, settings located in '/home/hiserver/.hts/tvheadend', dataroot: /usr/local/share/tvheadend [DEBUG]:dvb: "/dev/dvb/adapter0" tuning to "canale9: 490,000 kHz" (Initial autoscan) [DEBUG]:dvb: "/dev/dvb/adapter0" initial scan completed for "canale9: 490,000 kHz" [DEBUG]:dvb: "/dev/dvb/adapter0" tuning to "Rai: 546,000 kHz" (Initial autoscan) [DEBUG]:dvb: "/dev/dvb/adapter0" initial scan completed for "Rai: 546,000 kHz" [DEBUG]:dvb: "/dev/dvb/adapter0" tuning to "gtv: 802,000 kHz" (Initial autoscan) [DEBUG]:dvb: "/dev/dvb/adapter0" initial scan completed for "gtv: 802,000 kHz" [DEBUG]:dvb: "/dev/dvb/adapter0" tuning to "TIMB3: 690,000 kHz" (Initial autoscan) [DEBUG]:dvb: "/dev/dvb/adapter0" tuning to "Mediaset1: 722,000 kHz" (Initial autoscan) [DEBUG]:PSI: Service "Siano Mobile Digital MDTV Receiver/Mediaset1: 722,000 kHz/Premium Calcio 7" PMT (version 0) updated, PCR PID changed, New elementary stream [DEBUG]:dvb: "/dev/dvb/adapter0" tuning to "Tivuitalia: 522,000 kHz" (Initial autoscan) [DEBUG]:dvb: "Tivuitalia: 522,000 kHz" on adapter "Siano Mobile Digital MDTV Receiver", status changed to OK [DEBUG]:dvb: "/dev/dvb/adapter0" initial scan completed for "Tivuitalia: 522,000 kHz" [DEBUG]:dvb: "/dev/dvb/adapter0" tuning to "DVBH: 610,000 kHz" (Initial autoscan) [DEBUG]:dvb: "/dev/dvb/adapter0" initial scan completed for "DVBH: 610,000 kHz" [DEBUG]:dvb: "/dev/dvb/adapter0" tuning to "Mediaset5: 754,000 kHz" (Initial autoscan) [DEBUG]:dvb: "/dev/dvb/adapter0" initial scan completed for "Mediaset5: 754,000 kHz" [DEBUG]:dvb: "/dev/dvb/adapter0" tuning to "850,000 kHz" (Initial autoscan) [DEBUG]:dvb: "/dev/dvb/adapter0" tuning to "TELEROMAGNA: 674,000 kHz" (Initial autoscan) [DEBUG]:dvb: "/dev/dvb/adapter0" initial scan completed for "TELEROMAGNA: 674,000 kHz" [DEBUG]:dvb: "/dev/dvb/adapter0" tuning to "602,000 kHz" (Initial autoscan) [DEBUG]:dvb: "/dev/dvb/adapter0" tuning to "714,000 kHz" (Initial autoscan) [DEBUG]:dvb: "/dev/dvb/adapter0" tuning to "Mediaset2: 594,000 kHz" (Initial autoscan) [DEBUG]:dvb: "/dev/dvb/adapter0" initial scan completed for "Mediaset2: 594,000 kHz" [DEBUG]:dvb: "/dev/dvb/adapter0" tuning to "Rete A2: 570,000 kHz" (Initial autoscan) [DEBUG]:dvb: "/dev/dvb/adapter0" initial scan completed for "Rete A2: 570,000 kHz" [DEBUG]:dvb: "/dev/dvb/adapter0" tuning to "506,000 kHz" (Initial autoscan) [DEBUG]:dvb: "/dev/dvb/adapter0" tuning to "219,500 kHz" (Initial autoscan) [DEBUG]:dvb: "/dev/dvb/adapter0" tuning to "778,000 kHz" (Initial autoscan) [DEBUG]:dvb: "/dev/dvb/adapter0" tuning to "Teleravenna: 826,000 kHz" (Initial autoscan) [DEBUG]:dvb: "Teleravenna: 826,000 kHz" on adapter "Siano Mobile Digital MDTV Receiver", status changed to OK [DEBUG]:dvb: "/dev/dvb/adapter0" initial scan completed for "Teleravenna: 826,000 kHz" [DEBUG]:dvb: "/dev/dvb/adapter0" tuning to "Telepace: 618,000 kHz" (Initial autoscan) [DEBUG]:dvb: "/dev/dvb/adapter0" initial scan completed for "Telepace: 618,000 kHz" [DEBUG]:dvb: "/dev/dvb/adapter0" tuning to "LA 9: 530,000 kHz" (Initial autoscan) [DEBUG]:dvb: "/dev/dvb/adapter0" initial scan completed for "LA 9: 530,000 kHz" [DEBUG]:dvb: "/dev/dvb/adapter0" tuning to "194,500 kHz" (Initial autoscan) [DEBUG]:dvb: "/dev/dvb/adapter0" tuning to "842,000 kHz" (Initial autoscan) [DEBUG]:dvb: "/dev/dvb/adapter0" tuning to "212,500 kHz" (Initial autoscan) [DEBUG]:dvb: "/dev/dvb/adapter0" tuning to "GTV: 586,000 kHz" (Initial autoscan) [DEBUG]:dvb: "/dev/dvb/adapter0" initial scan completed for "GTV: 586,000 kHz" [DEBUG]:dvb: "/dev/dvb/adapter0" tuning to "TRC: 578,000 kHz" (Initial autoscan) [DEBUG]:dvb: "/dev/dvb/adapter0" initial scan completed for "TRC: 578,000 kHz" [DEBUG]:dvb: "/dev/dvb/adapter0" tuning to "BS: 762,000 kHz" (Initial autoscan) [DEBUG]:dvb: Add service "_dev_dvb_adapter0_Siano_Mobile_Digital_MDTV_Receiver762000000_0008" on "BS: 762,000 kHz" [DEBUG]:dvb: Add service "_dev_dvb_adapter0_Siano_Mobile_Digital_MDTV_Receiver762000000_0005" on "BS: 762,000 kHz" [DEBUG]:dvb: Add service "_dev_dvb_adapter0_Siano_Mobile_Digital_MDTV_Receiver762000000_0006" on "BS: 762,000 kHz" [DEBUG]:dvb: Add service "_dev_dvb_adapter0_Siano_Mobile_Digital_MDTV_Receiver762000000_0001" on "BS: 762,000 kHz" [DEBUG]:dvb: Add service "_dev_dvb_adapter0_Siano_Mobile_Digital_MDTV_Receiver762000000_0002" on "BS: 762,000 kHz" [DEBUG]:dvb: Add service "_dev_dvb_adapter0_Siano_Mobile_Digital_MDTV_Receiver762000000_0003" on "BS: 762,000 kHz" [DEBUG]:dvb: Add service "_dev_dvb_adapter0_Siano_Mobile_Digital_MDTV_Receiver762000000_0004" on "BS: 762,000 kHz" [DEBUG]:dvb: Add service "_dev_dvb_adapter0_Siano_Mobile_Digital_MDTV_Receiver762000000_000a" on "BS: 762,000 kHz" [NOTICE]:dvb: New mux "11,565 kHz" created by automatic mux discovery Program received signal SIGSEGV, Segmentation fault. [Switching to Thread 0xb59fdb40 (LWP 1503)] 0xb7cb7e41 in ?? () from /lib/i386-linux-gnu/libc.so.6 (gdb)
Updated by Adam Sutton over 12 years ago
Hi Gabriele,
What you need to do us obtain the gdb stack trace info.
When it crashes, under gdb, run the gdb command: by full
Adam
Updated by Gabriele Tassoni over 12 years ago
Hi,
here it is (I hope _):
(gdb) bt full #0 0xb7cb7e41 in ?? () from /lib/i386-linux-gnu/libc.so.6 No symbol table info available. #1 0xb7cb7a46 in strdup () from /lib/i386-linux-gnu/libc.so.6 No symbol table info available. #2 0x08063d46 in htsmsg_add_str (msg=0xb3e01ce8, name=0x809e5ea "bandwidth", str=0x0) at /home/hiserver/sources/tvheadend/src/htsmsg.c:229 f = 0xb3e00c00 #3 0x08087032 in dvb_mux_save (tdmi=0xb3e02310) at /home/hiserver/sources/tvheadend/src/dvb/dvb_multiplex.c:511 f = 0xb3e02394 m = 0xb3e01ce8 #4 0x08088449 in dvb_mux_create (tda=0x80de178, dmc=0xb59fc0bc, tsid=202, network=0x0, source=0x809dcdf "automatic mux discovery", enabled=1, initialscan=1, identifier=0x0, satconf=0x0) at /home/hiserver/sources/tvheadend/src/dvb/dvb_multiplex.c:278 tdmi = 0xb3e02310 hash = <optimized out> buf = "11,565 kHz\000apter0_Siano_Mobile_Digital_MDTV_Receiver11565000\000\060\065\067@\023\340\263+ß\265( \340\263( \340\263 !\340\263 ;\022\b\035\235\b\bx\341\r\b\000\000\000\000\000\000\000\000쿟\265\264\300\237\265\340\227\020\b\n\000\000\000\224\322ʷ@\300\237\265\204\301\237\265\000\000\000\000_dev_dvb\364\317ݷp\300\237\265\236\350ʷp\300\237\265\310\301\237\265+\302\237\265\000\000\000\000,\301\237\265\264\301\237\265Rece+\302\237\265\067\066\062\060\060\060\060\060\001\310Ƿ" #5 0x08083434 in dvb_table_sat_delivery (tsid=202, len=11, ptr=0xb59fc2c0 "\001\025e", tdmi=<optimized out>) at /home/hiserver/sources/tvheadend/src/dvb/dvb_tables.c:991 freq = <optimized out> dmc = {dmc_fe_params = {frequency = 11565000, inversion = INVERSION_AUTO, u = {qpsk = {symbol_rate = 7879000, fec_inner = FEC_2_3}, qam = {symbol_rate = 7879000, fec_inner = FEC_2_3, modulation = QPSK}, ofdm = { bandwidth = 7879000, code_rate_HP = FEC_2_3, code_rate_LP = FEC_NONE, constellation = QPSK, transmission_mode = TRANSMISSION_MODE_2K, guard_interval = GUARD_INTERVAL_1_32, hierarchy_information = HIERARCHY_NONE}, vsb = { modulation = 7879000}}}, dmc_polarisation = 0, dmc_satconf = 0x0, dmc_fe_modulation = QPSK, dmc_fe_delsys = SYS_DVBS, dmc_fe_rolloff = ROLLOFF_35} modulation = <optimized out> #6 dvb_nit_callback (tdmi=0x8123b20, ptr=0xb59fc2c0 "\001\025e", len=71, tableid=64 '@', opaque=0x0) at /home/hiserver/sources/tvheadend/src/dvb/dvb_tables.c:1125 tag = <optimized out> tlen = 11 '\v' ntl = 71 networkname = "BS\000\000\036\000\000\000\330\"ೈ;\022\b\266\305\004\bl\266\r\b\305\001\000\000\305\001\000\000X\016\340\263+o<@i\350ѷx\341\r\bB8\b\b\036\000\000\000+o<@X\016\340\263t\301\237\265\000\000\000\000\001\000\000\000\305\001\000\000\036\000\000\000\001\000\000\000<\000\000\000\250ҟ\265\324\302\237\265 ;\022\b!\004\000\000\324\302\237\265mH\b\b ;\022\bX\016\340\263\000/\b\b\000\000\000\000\310\301\237\265\003\000\000\000!\004\000\000\000\000\000\000\350\341\r\bx\341\r\bPMT(1057)\000\r\b\020;\022\bF\242Jul 29 09:53:54\000a\000\230\302\237\265\034\302\237\265x\341\r\bx\341\r\bx\341\r\bx\341\r\bx\341\r\b\230\302\237\265\277\234\336\267\234\266\r\b\253\302\237\265\036\000\000\000x\341\r\bx\341\r\bx\341\r\b\230\302\237\265" tsid = <optimized out> network_id = <optimized out> #7 0x08083c3a in dvb_proc_table (r=<optimized out>, sec=0xb59fc2a8 "@\360`", tdt=0xb3e005b8, tdmi=0x8123b20) at /home/hiserver/sources/tvheadend/src/dvb/dvb_tables.c:172 chkcrc = 1 tableid = 64 len = <optimized out> ret = <optimized out> ptr = 0xb59fc2ab "" #8 dvb_table_input (aux=0x80de178) at /home/hiserver/sources/tvheadend/src/dvb/dvb_tables.c:216 tda = 0x80de178 r = 0 i = <optimized out> tid = <optimized out> fd = <optimized out> x = 1 ev = {{events = 1, data = {ptr = 0x1bb, fd = 443, u32 = 443, u64 = 64424509883}}} sec = "@\360`\000\311\303\000\000\360\004@\002BS\360O\000\312\000\310\360IC\v\001\025e\000\001\020\001\000xy\002A\030\000\b\001\000\005\001\000\006\001\000\001\001\000\002\001\000\003\001\000\004\001\000\n\002\203 \000\b\374\067\000\005\374\225\000\006\374x\000\001\374z\000\002\374\024\000\003\374B\000\004\374-\000\n\377b\337=\313Sura\000\327\374\200\fH\n\001\003TRC\004VMT2\002j\374\200\020H\016\001\003TRC\bVMT3 S&C@a\353qere la concorrenza, organizza uno spettacolo...Con Dolores del Rio, Fred Astaire e"... tdmi = 0x8123b20 tdt = 0xb3e005b8 cycle_barrier = 133519760 __PRETTY_FUNCTION__ = "dvb_table_input" #9 0xb7de7d4c in start_thread () from /lib/i386-linux-gnu/libpthread.so.0 No symbol table info available. #10 0xb7d26ace in clone () from /lib/i386-linux-gnu/libc.so.6 No symbol table info available.
Updated by Adam Sutton over 12 years ago
- Assignee changed from Hein Rigolo to Adam Sutton
I'll try and look at this when I get a chance, I think this has been reported several times over the past year or so.
Updated by Adam Sutton over 12 years ago
Sorry, only just got back to looking at this.
I'm not really the expert in these areas, but it looks to me like its incorrectly detected/reported a transponder for the wrong modulation scheme. This has then resulted in it trying to save parameters which don't exist and cause NULL ptr exceptions.
We could protect against the NUL ptr problems, but that still leaves the real question, of why did it try to save the wrong settings, unanswered. And there would no doubt be other problems down the line.
I need to get Andreas to take a look at it.
Updated by Adam Sutton over 12 years ago
- Status changed from Accepted to Need feedback
Can you please confirm what DVB system you're using, it looks like DVB-T? But there is some question about whether it might actually be DVB-H?
Maybe you could attach your .hts configuration folder, so we can take a look at the setup params (helps idiots like me figure stuff out ).
Adam
Updated by Adam Sutton over 12 years ago
OK,
we think we might have discovered what's causing this. TVH parsers service descriptors regardless of whether they have meaning on the current delivery mechanism.
So it would appear in this case you're using a DVB-T system, but the broadcaster is (for some reason) sending sat delivery descriptors. TVH tries to create muxes based on this but because there is a mismatch between what is expected and what's provided it crashes.
I've created a patch (on my fork) to test this theory. If you could try this branch:
https://github.com/adamsutton/tvheadend/tree/issue/redmine-1030
I would really appreciate that. If the problem goes away and I've not completely broken things I'll merge to master.
Regards
Adam
Updated by Gabriele Tassoni over 12 years ago
Hi Adam,
I'm on holidays right now , tomorrow i'll be back home and will try the patch.
The system is a dvb-t.
Thanks again ! :-)
Updated by Adam Sutton over 12 years ago
No problem.
I've actually discovered that currently automux detection doesn't even do anything on DVB-T as the code was never implemented. All those this is being changed.
But it would be good to know if this patch does work and that your broadcaster is indeed sending the wrong delivery descriptors (i.e. sending sat descriptors on a terrestrial network).
Adam
Updated by dhead 666 over 12 years ago
It looks like the real deal.
Following issue 251 https://www.lonelycoder.com/redmine/issues/251:
I used to get segmentation fault upon mux discovery that crushed tvheadend,
tvheadend was useable only with the mux update flag off.
Now I don't get any segmentation faults at all.
You should notice that due to the very low quality I got, I couldn't test any live stream,
but tvheadend do recognize the dvb-t service and list the channels and epg,
so I guess also gets the descriptors and doesn't crush.
Anyway, thanks for the fix and keeping the project alive (issue 251 long lived for 2 years) and making it useable for us.
Updated by Adam Sutton over 12 years ago
- Status changed from Resolved to Fixed
- % Done changed from 0 to 100
Applied in changeset commit:426ee1c03d70f5c8025fd474c51ef1adf33cbded.
Updated by Gabriele Tassoni about 12 years ago
Sorry for this late reply, I finally tried the main branch with Adam's changes and it all works perfectly now... I even have a good signal and fount more than 360 services, all the channel I tried via XBMC and I can watch them really perfectly.
Thank you for your efforts, the issue exists no more on my system! _