Bug #3611
tvheadend crashes with satip
0%
Description
Have some tvheadend-crashes with satip (tvh as satip-client).
using tvh daily build (4.1-1575~g270a698~trusty) on ubuntu linux (4.2.0-25-generic)
"dmesg" and "dmesg -T" outputs:
[ 5730.146945] tvh:satip-front9245: segfault at 0 ip 000000000050526a sp 00007efc197d8e50 error 4 in tvheadend[400000+ed1000]
[74233.583666] tvh:satip-front19624: segfault at 0 ip 000000000050526a sp 00007f7151fd9e50 error 4 in tvheadend[400000+ed1000]
[160491.428546] tvh:satip-front8883: segfault at 0 ip 000000000050526a sp 00007fce7bfdde50 error 4 in tvheadend[400000+ed1000]
[246928.087201] tvh:satip-front23335: segfault at 0 ip 00000000005052e4 sp 00007fbb167dae50 error 4 in tvheadend[400000+ed1000]
[55255.314386] tvh:satip-front5977: segfault at 0 ip 0000000000507c9a sp 00007f62d27dae50 error 4 in tvheadend[400000+ed8000]
[Sam Jän 23 01:06:02 2016] tvh:satip-front5977: segfault at 0 ip 0000000000507c9a sp 00007f62d27dae50 error 4 in tvheadend[400000+ed8000]
[Sam Jän 23 21:02:04 2016] tvh:satip-front5683: segfault at 0 ip 0000000000507c9a sp 00007f3ed77dce50 error 4 in tvheadend[400000+ed8000]
[Son Jän 24 01:05:01 2016] tvh:satip-front9949: segfault at 0 ip 0000000000507d14 sp 00007f9213fdde50 error 4 in tvheadend[400000+ed8000]
[Son Feb 21 18:31:31 2016] traps: tvh:satip-front17979 general protection ip:7f751566c8c9 sp:7f74e0fd6e80 error:0 in libc-2.21.so[7f75155eb000+1c0000]
tvh:satip-front5598: segfault at 7f0b037ffff8 ip 00007f0b59e6babc sp 00007f0b12fdbf18 error 6 in libc-2.21.so[7f0b59dd7000+1c0000]
tvh:satip-front9228: segfault at 7f9ddffffff8 ip 00007f9e27826ce1 sp 00007f9dd57d8f00 error 6 in libc-2.21.so[7f9e27792000+1c0000]
[Mon Feb 22 22:18:51 2016] traps: tvh:satip-front14291 general protection ip:47d1b0 sp:64ac98aaf676e4f0 error:0 in tvheadend[400000+efd000]
[Mit Mär 2 12:56:26 2016] tvh:satip-front18882: segfault at 7f95177ffff8 ip 00007f9570564d23 sp 00007f95317d8f00 error 6 in libc-2.21.so[7f95704d0000+1c0000]
[Son Mär 6 20:58:43 2016] traps: tvh:mi-main32654 general protection ip:7f2de5a4616b sp:7f2da17f93b0 error:0 in libc-2.21.so[7f2de59c7000+1c0000]
i was able to start tvheadend manual in a "screen" - session (give me more output):
http://pastebin.com/ic6RNHSz
dump was written to core.nas.tvh-mi-main.1457294970.zip
using satip-box from Inverto IDL-400s - firmware from perexg (https://github.com/perexg/satip-axe) because of too many continuity errors with original firmware (https://github.com/perexg/satip-axe/issues/43)
no tvh-crashes with my dual-pcie-card (from TBS) before using satip
i am monitoring the tvheadend-process with zabbix (see picture: monitoring-tvh-memory-consumption)
http://postimg.org/image/j84wg03qx/
core dump still uploading (185MB)
hoping for a solution...
Files
History
Updated by Thomas Smith over 8 years ago
crashed again
Updated by Jaroslav Kysela over 8 years ago
Compile tvheadend with --trace-enabled=yes . Also, don't use stripped version of binary (just use the binary which is available in the ./build.linux directory).
Install gdb on your server and provide full backtrace: https://tvheadend.org/projects/tvheadend/wiki/Debugging
Updated by Jaroslav Kysela over 8 years ago
And lastly - upgrade to latest - v4.1-1595-gd532539 .
Updated by Thomas Smith over 8 years ago
checked out tvheadend for compiling
./configure --trace-enabled=yes (seems, it is default)
starting tvheadend
./tvheadend -D
2016-03-07 09:22:23.744 [ NOTICE] START: HTS Tvheadend version 4.1-1595~gd532539 started, running as PID:8388 UID:117 GID:129, CWD:/home/hts/case-3611/tvheadend/build.linux CNF:/home/hts/.hts/tvheadend
starting gdb:
gdb tvheadend 8388
(gdb) set logging on
Copying output to gdb.txt.
(gdb) set pagination off
(gdb) thread apply all bt full
Thread 1 (LWP 8388):
#0 0x00007f8c148d7149 in ?? ()
No symbol table info available.
#1 0x0000000000000000 in ?? ()
No symbol table info available.
(gdb)
Thread 1 (LWP 8388):
#0 0x00007f8c148d7149 in ?? ()
No symbol table info available.
#1 0x0000000000000000 in ?? ()
No symbol table info available.
(gdb) generate-core-file
warning: target file /proc/8388/cmdline contained unexpected null characters
Saved corefile core.8388
(gdb)
warning: target file /proc/8388/cmdline contained unexpected null characters
Saved corefile core.8388
(gdb)
warning: target file /proc/8388/cmdline contained unexpected null characters
Saved corefile core.8388
(gdb)
waiting for next crash....
Updated by Thomas Smith over 8 years ago
crashed again - but iam not sure that i made all correct...
2016-03-07 12:20:49.394 [ INFO] dvr: entry f83e8dce807b9a169c8bc79a1c3a3729 "Inspector Barnaby" on "zdf_neo HD" starting at 2016-03-27 03:50:30, scheduled for recording by "192.168.240.192"
2016-03-07 12:21:02.318 [ INFO] subscription: 0002: "192.168.240.11 [ naskodi | Kodi Media Center ]" unsubscribing from "arte HD", hostname="192.168.240.11", username="naskodi", client="Kodi Media Center"
2016-03-07 12:21:02.320 [ INFO] subscription: 0003: "192.168.240.11 [ naskodi | Kodi Media Center ]" subscribing on channel "ZDF HD", weight: 150, adapter: "SAT>IP DVB-S Tuner #2 (192.168.240.22)", network: "SAT", mux: "11361.75H", provider: "ZDFvision", service: "ZDF HD", profile="htsp", hostname="192.168.240.11", username="naskodi", client="Kodi Media Center"
2016-03-07 12:21:39.407 [ ERROR] http: 192.168.240.11: HTTP/1.1 HEAD /imagecache/4994 -- 404
2016-03-07 12:22:06.219 [ INFO] subscription: 0003: "192.168.240.11 [ naskodi | Kodi Media Center ]" unsubscribing from "ZDF HD", hostname="192.168.240.11", username="naskodi", client="Kodi Media Center"
2016-03-07 12:22:06.223 [ INFO] mpegts: 11875.5H in SAT - tuning on SAT>IP DVB-S Tuner #1 (192.168.240.22)
2016-03-07 12:22:06.223 [ ALERT] CRASH: Signal: 11 in PRG: ./tvheadend (4.1-1595~gd532539) [45d0131c9ca38f61aa5c2b01a46f934c95bd20ba] CWD: /home/hts/case-3611/tvheadend/build.linux
2016-03-07 12:22:06.223 [ ALERT] CRASH: Fault address (nil) (Address not mapped)
2016-03-07 12:22:06.223 [ ALERT] CRASH: Loaded libraries: /lib/x86_64-linux-gnu/libssl.so.1.0.0 /lib/x86_64-linux-gnu/libcrypto.so.1.0.0 /lib/x86_64-linux-gnu/libz.so.1 /usr/lib/x86_64-linux-gnu/liburiparser.so.1 /usr/lib/x86_64-linux-gnu/libavahi-common.so.3 /usr/lib/x86_64-linux-gnu/libavahi-client.so.3 /lib/x86_64-linux-gnu/libdbus-1.so.3 /lib/x86_64-linux-gnu/libdl.so.2 /lib/x86_64-linux-gnu/libpthread.so.0 /lib/x86_64-linux-gnu/libm.so.6 /lib/x86_64-linux-gnu/librt.so.1 /lib/x86_64-linux-gnu/libc.so.6 /lib/x86_64-linux-gnu/libsystemd.so.0 /lib64/ld-linux-x86-64.so.2 /lib/x86_64-linux-gnu/liblzma.so.5 /lib/x86_64-linux-gnu/libgcrypt.so.20 /lib/x86_64-linux-gnu/libgpg-error.so.0
2016-03-07 12:22:06.223 [ ALERT] CRASH: Register dump [23]: 00000000000000000000000000000000000000000000000000000000037ba8700000000000000052000000000000000200000000037b9ff0000000000000009600000000037b9ff000000000037ba9d000000000037ba1c8000000000000000000000000036d87e00000000000000000000000000000000000007f4b7bffe95000000000004cd7b9000000000001020200000000000000330000000000000004000000000000000efffffffe7ffbba110000000000000000
2016-03-07 12:22:06.223 [ ALERT] CRASH: STACKTRACE
2016-03-07 12:22:06.288 [ ALERT] CRASH: /home/hts/case-3611/tvheadend/src/trap.c:148 0x46db49
2016-03-07 12:22:06.317 [ ALERT] CRASH: ??:0 0x7f4bb6916d10
2016-03-07 12:22:06.368 [ ALERT] CRASH: /home/hts/case-3611/tvheadend/src/descrambler/descrambler.c:250 0x4cd7b9
2016-03-07 12:22:06.420 [ ALERT] CRASH: /home/hts/case-3611/tvheadend/src/service.c:658 0x45a0e0
2016-03-07 12:22:06.476 [ ALERT] CRASH: /home/hts/case-3611/tvheadend/src/service.c:802 0x45bad6
2016-03-07 12:22:06.527 [ ALERT] CRASH: /home/hts/case-3611/tvheadend/src/subscriptions.c:284 (discriminator 4) 0x45652a
2016-03-07 12:22:06.579 [ ALERT] CRASH: /home/hts/case-3611/tvheadend/src/subscriptions.c:353 0x457899
2016-03-07 12:22:06.632 [ ALERT] CRASH: /home/hts/case-3611/tvheadend/src/main.c:589 (discriminator 3) 0x430ab1
2016-03-07 12:22:06.682 [ ALERT] CRASH: /home/hts/case-3611/tvheadend/src/wrappers.c:159 0x43aa58
Speicherzugriffsfehler (Speicherabzug geschrieben)
will reboot NAS to guaranty that no orphaned/zombie-processes are running
Updated by Jaroslav Kysela over 8 years ago
The 'thread apply all bt full' should be executed after crash. Anyway, these random crashes looks like a memory corruption issue - try to run tvh under valgrind.
valgrind --leak-check=full --show-reachable=yes <tvh_binary_with_arguments>
Updated by Thomas Smith over 8 years ago
i dont think so, because iam supporting a friend with the same config
before: dvb-s2 dual pcie card - no tvh crashes seen
now: using satip - crashes exists
Friends NAs crashes today two-times:
[Mon Mär 7 15:10:33 2016] tvh:satip-front22438: segfault at 7f01337ffff8 ip 00007f0172b20d23 sp 00007f01227daf00 error 6 in libc-2.21.so[7f0172a8c000+1c0000]
[Mon Mär 7 16:54:10 2016] traps: tvh:mtimer25732 general protection ip:525538 sp:7ff95a7fb6a0 error:0 in tvheadend[400000+f02000]
Mar 7 17:06:19 nasd tvheadend29103: nit: onid 0001 (1) tsid 0460 (1120) mux <none> (discovery)
Mar 7 17:06:19 nasd tvheadend29103: nit: DVB-S2 19.2E freq 12728500 V sym 22000000 fec 2/3 mod PSK/8 roff 35 is_id -1 pls_mode ROOT pls_code 0
Mar 7 17:06:19 nasd tvheadend29103: nit: onid 0001 (1) tsid 0460 (1120) mux 12728.5V in SAT
Mar 7 17:06:19 nasd tvheadend29103: nit: onid 0085 (133) tsid 000C (12) mux <none> (discovery)
Mar 7 17:06:19 nasd tvheadend29103: nit: DVB-S2 19.2E freq 12304500 H sym 27500000 fec 9/10 mod QPSK roff 35 is_id -1 pls_mode ROOT pls_code 0
Mar 7 17:06:19 nasd tvheadend29103: nit: onid 0085 (133) tsid 000C (12) mux 12304.5H in SAT
Mar 7 17:06:19 nasd tvheadend29103: nit: onid 0001 (1) tsid 04B1 (1201) mux <none> (discovery)
Mar 7 17:06:19 nasd tvheadend29103: nit: DVB-S 19.2E freq 12421500 H sym 27500000 fec 3/4 mod QPSK roff 35 is_id -1 pls_mode ROOT pls_code 0
Mar 7 17:06:19 nasd tvheadend29103: nit: onid 0001 (1) tsid 04B1 (1201) mux 12421.5H in SAT
Mar 7 17:06:19 nasd tvheadend29103: nit: onid 0085 (133) tsid 000D (13) mux <none> (discovery)
Mar 7 17:06:19 nasd tvheadend29103: nit: DVB-S2 19.2E freq 11992500 H sym 27500000 fec 9/10 mod QPSK roff 35 is_id -1 pls_mode ROOT pls_code 0
Mar 7 17:06:19 nasd tvheadend29103: nit: onid 0085 (133) tsid 000D (13) mux 11992.5H in SAT
Mar 7 17:06:19 nasd tvheadend29103: nit: onid 0085 (133) tsid 000E (14) mux <none> (discovery)
Mar 7 17:06:19 nasd tvheadend29103: nit: DVB-S2 19.2E freq 11875500 H sym 27500000 fec 3/4 mod PSK/8 roff 35 is_id -1 pls_mode ROOT pls_code 0
Mar 7 17:06:19 nasd tvheadend29103: nit: onid 0085 (133) tsid 000E (14) mux 11875.5H in SAT
Mar 7 17:06:19 nasd tvheadend29103: nit: onid 0085 (133) tsid 000F (15) mux <none> (discovery)
Mar 7 17:06:19 nasd tvheadend29103: nit: DVB-S 19.2E freq 10920750 H sym 22000000 fec 7/8 mod QPSK roff 35 is_id -1 pls_mode ROOT pls_code 0
Mar 7 17:06:19 nasd tvheadend29103: nit: onid 0085 (133) tsid 000F (15) mux 10920.75H in SAT
Mar 7 17:06:19 nasd tvheadend29103: nit: onid 0085 (133) tsid 0003 (3) mux <none> (discovery)
Mar 7 17:06:19 nasd tvheadend29103: nit: DVB-S2 19.2E freq 11719500 H sym 27500000 fec 9/10 mod QPSK roff 35 is_id -1 pls_mode ROOT pls_code 0
Mar 7 17:06:19 nasd tvheadend29103: nit: onid 0085 (133) tsid 0003 (3) mux 11719.5H in SAT
Mar 7 17:06:19 nasd tvheadend29103: nit: onid 0085 (133) tsid 0021 (33) mux <none> (discovery)
Mar 7 17:06:19 nasd tvheadend29103: nit: DVB-S 19.2E freq 12480000 V sym 27500000 fec 3/4 mod QPSK roff 35 is_id -1 pls_mode ROOT pls_code 0
Mar 7 17:06:19 nasd tvheadend29103: eit: completed pid 18 table 00000000 / 00000000
Mar 7 17:06:20 nasd tvheadend29103: epggrab: grab done for 10832.25H in SAT (complete)
Mar 7 17:06:21 nasd tvheadend29103: nit: completed pid 16 table 00000000 / 00000000
Mar 7 17:06:22 nasd tvheadend29103: settings: saving to /home/hts/.hts/tvheadend/input/dvb/networks/5d58be0d05b0d826aa58672513e3fe61/config
Mar 7 17:06:22 nasd tvheadend29103: settings: saving to /home/hts/.hts/tvheadend/input/dvb/networks/5d58be0d05b0d826aa58672513e3fe61/muxes/b9aaeeeafabf17a52f82148a7cf0eed1
Mar 7 17:06:24 nasd tvheadend29103: cwc: Sending ECM (PID 7374) section=0/0, for service "VOX HD" (seqno: 4)
Mar 7 17:06:24 nasd tvheadend29103: cwc: Received ECM reply (PID 7374) for service "VOX HD" [0] even: 84.56.93.6d.be.71.f9.28 odd: 5a.13.f7.64.12.57.d7.40 (seqno: 4 Req delay: 315 ms)
Mar 7 17:06:24 nasd tvheadend29103: descrambler: info - service='VOX HD' caid=1830(NagraVision) provid=000000 ecmtime=315 hops=1 reader='' from='10.8.1.1:8438' protocol='newcamd'
Mar 7 17:06:26 nasd tvheadend29103: dvr: checking free and used disk space for config "movies" : OK
Mar 7 17:06:26 nasd tvheadend29103: dvr: checking free and used disk space for config "serien" : OK
Mar 7 17:06:26 nasd tvheadend29103: dvr: checking free and used disk space for config "serien_ohne_db" : OK
Mar 7 17:06:26 nasd tvheadend29103: dvr: checking free and used disk space for config "Default profile" : OK
Mar 7 17:06:34 nasd tvheadend29103: cwc: Sending ECM (PID 7374) section=0/0, for service "VOX HD" (seqno: 5)
Mar 7 17:06:34 nasd tvheadend29103: cwc: Received ECM reply (PID 7374) for service "VOX HD" [0] even: 30.fe.e4.12.96.4f.f8.dd odd: 5a.13.f7.64.12.57.d7.40 (seqno: 5 Req delay: 347 ms)
Mar 7 17:06:34 nasd tvheadend29103: descrambler: info - service='VOX HD' caid=1830(NagraVision) provid=000000 ecmtime=347 hops=1 reader='' from='10.8.1.1:8438' protocol='newcamd'
Mar 7 17:06:41 nasd tvheadend29103: dvr: checking free and used disk space for config "movies" : OK
Mar 7 17:06:41 nasd tvheadend29103: dvr: checking free and used disk space for config "serien" : OK
Mar 7 17:06:41 nasd tvheadend29103: dvr: checking free and used disk space for config "serien_ohne_db" : OK
Mar 7 17:06:41 nasd tvheadend29103: dvr: checking free and used disk space for config "Default profile" : OK
Mar 7 17:06:44 nasd tvheadend29103: cwc: Sending ECM (PID 7374) section=0/0, for service "VOX HD" (seqno: 6)
Mar 7 17:06:44 nasd tvheadend29103: cwc: Received ECM reply (PID 7374) for service "VOX HD" [0] even: 30.fe.e4.12.96.4f.f8.dd odd: f8.03.b9.b4.42.e7.71.9a (seqno: 6 Req delay: 331 ms)
Mar 7 17:06:44 nasd tvheadend29103: descrambler: info - service='VOX HD' caid=1830(NagraVision) provid=000000 ecmtime=331 hops=1 reader='' from='10.8.1.1:8438' protocol='newcamd'
Mar 7 17:06:54 nasd tvheadend29103: cwc: Sending ECM (PID 7374) section=0/0, for service "VOX HD" (seqno: 7)
Mar 7 17:06:54 nasd tvheadend29103: cwc: Received ECM reply (PID 7374) for service "VOX HD" [0] even: ba.6e.9b.c3.b4.43.49.40 odd: f8.03.b9.b4.42.e7.71.9a (seqno: 7 Req delay: 563 ms)
Mar 7 17:06:54 nasd tvheadend29103: descrambler: info - service='VOX HD' caid=1830(NagraVision) provid=000000 ecmtime=563 hops=1 reader='' from='10.8.1.1:8438' protocol='newcamd'
Mar 7 17:06:56 nasd tvheadend29103: dvr: checking free and used disk space for config "movies" : OK
Mar 7 17:06:56 nasd tvheadend29103: dvr: checking free and used disk space for config "serien" : OK
Mar 7 17:06:56 nasd tvheadend29103: dvr: checking free and used disk space for config "serien_ohne_db" : OK
Mar 7 17:06:56 nasd tvheadend29103: dvr: checking free and used disk space for config "Default profile" : OK
anyway - will make a memory test on my NAS-box....
Updated by B C over 8 years ago
you did missunderstand the mem problem, it is not hw related but might be a code error. google for valgrind to further investigate the root cause
Updated by Thomas Smith over 8 years ago
Updated by Thomas Smith over 8 years ago
installing packages:
aptitude install valgrind autotools-dev debhelper dpatch gdb libc6-dev gcc-multilib libc6-dbg alleyoop
starting program:
valgrind --tool=memcheck --leak-check=full --show-leak-kinds=all /usr/bin/tvheadend -D
output:
11584 5,757,912 bytes in 83,448 blocks are still reachable in loss record 1,334 of 1,338
11584 at 0x4C2BBCF: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
11584 by 0x6B4E3C9: strdup (strdup.c:42)
11584 by 0x4493FB: ? (in /usr/bin/tvheadend)
11584 by 0x44B020: ? (in /usr/bin/tvheadend)
11584 by 0x44EE5F: ? (in /usr/bin/tvheadend)
11584 by 0x450506: ? (in /usr/bin/tvheadend)
11584 by 0x42F8A9: ? (in /usr/bin/tvheadend)
11584 by 0x6AE3A3F: (below main) (libc-start.c:289)
11584
11584 7,778,738 bytes in 17,595 blocks are still reachable in loss record 1,335 of 1,338
11584 at 0x4C2BBCF: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
11584 by 0x6B4E3C9: strdup (strdup.c:42)
11584 by 0x47552D: ? (in /usr/bin/tvheadend)
11584 by 0x475EAC: ? (in /usr/bin/tvheadend)
11584 by 0x448EAB: ? (in /usr/bin/tvheadend)
11584 by 0x44E99E: ? (in /usr/bin/tvheadend)
11584 by 0x4505BE: ? (in /usr/bin/tvheadend)
11584 by 0x42F8A9: ? (in /usr/bin/tvheadend)
11584 by 0x6AE3A3F: (below main) (libc-start.c:289)
11584
11584 10,485,760 bytes in 1 blocks are still reachable in loss record 1,336 of 1,338
11584 at 0x4C2BBCF: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
11584 by 0x5194FA: ? (in /usr/bin/tvheadend)
11584 by 0x519F53: ? (in /usr/bin/tvheadend)
11584 by 0x43B83D: ? (in /usr/bin/tvheadend)
11584 by 0x639C6A9: start_thread (pthread_create.c:333)
11584 by 0x6BC9E9C: clone (clone.S:109)
11584
11584 26,035,776 bytes in 83,448 blocks are still reachable in loss record 1,337 of 1,338
11584 at 0x4C2DB95: calloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
11584 by 0x447872: ? (in /usr/bin/tvheadend)
11584 by 0x44F31C: ? (in /usr/bin/tvheadend)
11584 by 0x450506: ? (in /usr/bin/tvheadend)
11584 by 0x42F8A9: ? (in /usr/bin/tvheadend)
11584 by 0x6AE3A3F: (below main) (libc-start.c:289)
11584
11584 26,035,776 bytes in 83,448 blocks are still reachable in loss record 1,338 of 1,338
11584 at 0x4C2DB95: calloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
11584 by 0x4478F2: ? (in /usr/bin/tvheadend)
11584 by 0x44EABC: ? (in /usr/bin/tvheadend)
11584 by 0x4505BE: ? (in /usr/bin/tvheadend)
11584 by 0x42F8A9: ? (in /usr/bin/tvheadend)
11584 by 0x6AE3A3F: (below main) (libc-start.c:289)
11584
11584 LEAK SUMMARY:
11584 definitely lost: 1,056 bytes in 23 blocks
11584 indirectly lost: 297,774 bytes in 115 blocks
11584 possibly lost: 33,211 bytes in 55 blocks
11584 still reachable: 109,447,358 bytes in 957,460 blocks
11584 suppressed: 0 bytes in 0 blocks
11584
11584 For counts of detected and suppressed errors, rerun with: -v
11584 Use --track-origins=yes to see where uninitialised values come from
11584 ERROR SUMMARY: 176375 errors from 51 contexts (suppressed: 0 from 0)
Getötet
Updated by Jaroslav Kysela over 8 years ago
The binary should have the debugging symbols, otherwise valgrind won't show the function names. Just copy the binary from ./build directory in the GIT tree - assuming that you compile tvh from sources.
Also, you should wait for crash and report all valgrind messages. I need for (example):
==15200== Invalid read of size 8 ==15200== at 0x4E8DB4: scanfile_done_region.isra.1 (scanfile.c:812) ==15200== by 0x4E8EBB: scanfile_done (scanfile.c:894) ==15200== by 0x4E904A: scanfile_init (scanfile.c:874) ==15200== by 0x4E4046: dvb_network_init (mpegts_network_dvb.c:848) ==15200== by 0x4C8E49: mpegts_init (mpegts.c:41) ==15200== by 0x42F047: main (main.c:1155) ==15200== Address 0x0 is not stack'd, malloc'd or (recently) free'd ==15200==
The final statistics does not make sense when tvh crashes.
Updated by Thomas Smith over 8 years ago
[32m2016-03-08 20:22:49.027 [ INFO] epgdb: gzip format detected, inflating (ratio 14.9%)[39m
[32m2016-03-08 20:23:34.458 [ INFO] epgdb: loaded v2[39m
[32m2016-03-08 20:23:34.458 [ INFO] epgdb: config 1[39m
[32m2016-03-08 20:23:34.458 [ INFO] epgdb: channels 0[39m
[32m2016-03-08 20:23:34.458 [ INFO] epgdb: brands 0[39m
[32m2016-03-08 20:23:34.459 [ INFO] epgdb: seasons 0[39m
[32m2016-03-08 20:23:34.459 [ INFO] epgdb: episodes 86367[39m
[32m2016-03-08 20:23:34.459 [ INFO] epgdb: broadcasts 86188[39m
23906 at 0x698661A: re_compile_fastmap_iter.isra.27 (regcomp.c:332)
23906 by 0x6996E97: re_compile_fastmap (regcomp.c:284)
23906 by 0x6996FA1: regcomp (regcomp.c:516)
23906 by 0x4B0FE3: dvr_autorec_entry_class_title_set (dvr_autorec.c:527)
23906 by 0x438DAC: prop_write_values (prop.c:226)
23906 by 0x4329EC: idnode_class_write_values.isra.6 (idnode.c:1067)
23906 by 0x436EA6: idnode_write0 (idnode.c:1146)
23906 by 0x4B2381: dvr_autorec_create (dvr_autorec.c:297)
23906 by 0x4B27C8: dvr_autorec_init (dvr_autorec.c:1297)
23906 by 0x4B6E62: dvr_init (dvr_config.c:1305)
23906 by 0x42E5B6: main (main.c:1186)
23906
23906 Conditional jump or move depends on uninitialised value(s)
23906 at 0x698661A: re_compile_fastmap_iter.isra.27 (regcomp.c:332)
23906 by 0x6996EB9: re_compile_fastmap (regcomp.c:286)
23906 by 0x6996FA1: regcomp (regcomp.c:516)
23906 by 0x4B0FE3: dvr_autorec_entry_class_title_set (dvr_autorec.c:527)
23906 by 0x438DAC: prop_write_values (prop.c:226)
23906 by 0x4329EC: idnode_class_write_values.isra.6 (idnode.c:1067)
23906 by 0x436EA6: idnode_write0 (idnode.c:1146)
23906 by 0x4B2381: dvr_autorec_create (dvr_autorec.c:297)
23906 by 0x4B27C8: dvr_autorec_init (dvr_autorec.c:1297)
23906 by 0x4B6E62: dvr_init (dvr_config.c:1305)
23906 by 0x42E5B6: main (main.c:1186)
....
[31m2016-03-08 20:23:37.632 [ ERROR] dvr: failed to add inotify watch to /data/movies/recordingsserien/Die Oktonauten und das große arktische Abenteuer (err=Datei oder Verzeichnis nicht gefunden)[39m
[31m2016-03-08 20:23:37.640 [ ERROR] dvr: failed to add inotify watch to /data/movies/recordingsserien/Die Oktonauten und das große arktische Abenteuer (err=Datei oder Verzeichnis nicht gefunden)[39m
[570;1H[7mWindow width too large. Truncated to 1000.[27m
[175C[5m[41m[101m�����[1023C[0m[7m[34m[94m
Updated by Thomas Smith over 8 years ago
- File too-slowly.JPG too-slowly.JPG added
maybe my nas is too slow for valgrind?
Updated by Thomas Smith over 8 years ago
- File putty.log.log.zip putty.log.log.zip added
another crash - see putty-log
iam not sure. hoping all was done in a correct way
self compiled tvheadend are crashing shortly (only some seconds) after starting with valgrind....
Updated by Thomas Smith over 8 years ago
changing to directory:
hts@nas:~/case-3611/tvheadend/build.linux$ valgrind --tool=memcheck --leak-check=full --show-leak-kinds=all ./tvheadend -D
crashing again after 5min livetv and starting second livetv-stream
Updated by Jaroslav Kysela over 8 years ago
For me:
==25672== Thread 33 tvh:mtimer: ==25672== Invalid read of size 2 ==25672== at 0x4CD7B9: descrambler_service_start (descrambler.c:250) ==25672== by 0x45A0DF: service_start (service.c:658) ==25672== by 0x45BAD5: service_find_instance (service.c:802) ==25672== by 0x456529: subscription_start_instance (subscriptions.c:284) ==25672== by 0x457898: subscription_reschedule (subscriptions.c:353) ==25672== by 0x430AB0: mtimer_thread (main.c:589) ==25672== by 0x43AA57: thread_wrapper (wrappers.c:159) ==25672== by 0x61896A9: start_thread (pthread_create.c:333) ==25672== by 0x69B6E9C: clone (clone.S:109) ==25672== Address 0x0 is not stack'd, malloc'd or (recently) free'd ==25672==
Updated by Thomas Smith over 8 years ago
ok - now it´s better to understand!
there is a correlation between scrambled channels and crashes
the reason why tvheadend was crashing very shortly with valgrind was a autorecording timers. every time when tvheadend starts up, it begun to start recordings (most of them are scrambled channels)
after deactivating upcoming and running recordings, tvheadend was able to start in valgrind. after startup it was also possible to watch livetv without scrambled channels (tested 4 channels)
if i switch to a scrambled channel, tvheadend crashes
now compiling tbs-drivers (pcie-card) to see whats happend when starting tvheandend with valgrind without satip...
Updated by Thomas Smith over 8 years ago
- File putty-pciE.log.log.zip putty-pciE.log.log.zip added
same crashes with pciE-card - we should change the bug-name/header...
switching to free tv: no crashes
switching to a scrambled channel: tvh crashes immediately
what can i do?
Updated by Jaroslav Kysela over 8 years ago
There's is something wrong in your environment - the code in mentioned lines should not crash on the NULL pointer usage...
It might be good to analyze the crash point using gdb and check why the NULLs are there.
Updated by Thomas Smith over 8 years ago
i was testing tvheadend (with valgrind) on friends environment (nearly same tvh-config and same tvh-version) - working well. but it is only running tvh on his virtual machine
and friends environment is more powerfull than my environment
cat cpuinfo (my box <-> friends box):
AMD Turion(tm) II Neo N54L Dual-Core Processor <-> Intel(R) Core(TM) i3-4350T CPU @ 3.10GHz
cpu MHz: 2200.000 <-> cpu MHz: 3099.998
important flag: NO aes <-> aes
bogomips: 4392.64 <-> bogomips: 6199.99
iam also using zfs with raid5 and crypt-devices for recordings (/dev/mapper: backupexternzfs_crypt, data_m1_crypt, data_m2_crypt, data_m3_crypt, data_m4_crypt, zfs_cache_crypt) and other services (nfs, samba, openvpn, mysql, kodi) - all on the same box: HP Microserver
it seems, this is too much workload
maybe the change to satip (from 2 to 4 tuners) + tcp/ip traffic from the satip-box was killing my environment
thank you for your support
please close this case
Updated by Jaroslav Kysela over 8 years ago
To correct my words: I mean with environment the configuration of TVH. It looks like a software error, but the debugging requires some knowledge.
Updated by Thomas Smith over 8 years ago
runinng qdb:
set logging on
set pagination off
file /home/hts/case-3611/tvheadend/build.linux/tvheadend
run
waiting for crash - afterwards i will type in gdb:
thread apply all bt full
thank you for your patience
Updated by Thomas Smith over 8 years ago
started:
2016-03-10 17:56:36.740 [ INFO] config: backup: migrating config from 4.1-1630~geda03e9 (running 4.1-1647~g845bde7)
2016-03-10 17:56:54.483 [ NOTICE] START: HTS Tvheadend version 4.1-1647~g845bde7 started, running as PID:8031 UID:117 GID:129, CWD:/home/hts CNF:/home/hts/.hts/tvheadend
waiting for crash...
Updated by Jaroslav Kysela over 8 years ago
- Status changed from New to Fixed
OK. Basically, you hit this error, because TVH cannot find the data files with some configurations. Use --enable-bundle (for configure script) or install files from data directory (GIT tree) to /usr/local/share/tvheadend .
Updated by Thomas Smith over 8 years ago
crash
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fffae7fc700 (LWP 8139)]
0x00007ffff602bd23 in _wordcopy_bwd_dest_aligned (dstp=17514472, dstp@entry=114892984, srcp=17514616, srcp@entry=114893138, len=2305843009201521636, len@entry=2305843009213693947) at wordcopy.c:398
398 wordcopy.c: Datei oder Verzeichnis nicht gefunden.
see more informations in gdb.log
Updated by Thomas Smith over 8 years ago
trying again with gdb and compiling again:
./configure --enable-trace --enable-bundle
(gdb) set logging on
Copying output to gdb.txt.
(gdb) set pagination off
(gdb) file /home/hts/case-3611-c/tvheadend/build.linux/tvheadend
Reading symbols from /home/hts/case-3611-c/tvheadend/build.linux/tvheadend...done.
(gdb) run
[New Thread 0x7ffff3a28700 (LWP 17241)]
2016-03-16 15:24:00.891 [ INFO] config: backup: migrating config from 4.1-1647~g845bde7 (running 4.1-1695~g7adc49f)
2016-03-16 15:24:00.891 [ INFO] config: backup: running, output file /home/hts/.hts/tvheadend/backup/4.1-1647~g845bde7.tar.bz2
2016-03-16 15:24:17.527 [ NOTICE] START: HTS Tvheadend version 4.1-1695~g7adc49f started, running as PID:17223 UID:117 GID:129, CWD:/home/hts/case-3611-c/tvheadend/build.linux CNF:/home/hts/.hts/tvheadend
waiting for next crash
Updated by Jaroslav Kysela over 8 years ago
Please, type 'bt' (backtrace) when you get a crash in gdb to see the call-path. Otherwise, I cannot use this.
Updated by Thomas Smith over 8 years ago
- File gdb-extra.txt.log.zip gdb-extra.txt.log.zip added
gdb-extra.log after "thread apply all bt full"
Updated by Jaroslav Kysela over 8 years ago
It seems that tvh crashes in src/httpc.c line 1070 - memmove(hc->hc_rbuf, hc->hc_rbuf + hc->hc_hsize, len) where len is negative 25 . It implies that hc->hc_size is bigger than hc->hc_rpos on line 1059 .
Could you type 'frame 3' and 'print *hc' when the program crashes? Assuming that you'll be in the crashed thread with same stack as thread 42:
Thread 42 (Thread 0x7fffb17fa700 (LWP 5942)): #0 0x00007ffff602bd23 in _wordcopy_bwd_dest_aligned (dstp=140735869353960, dstp@entry=140735927473696, srcp=140735869354088, srcp@entry=140735927473837, len=2305843009206428984, len@entry=2305843009213693948) at wordcopy.c:398 a0 = <optimized out> a1 = <optimized out> a2 = 8386058790885871360 a3 = 2318343847712653413 sh_1 = 40 sh_2 = 24 #1 0x00007ffff602606a in __memmove_sse2 (dest=0x7fffa2f6d640, src=<optimized out>, len=18446744073709551584) at ../string/memmove.c:105 dstp = <optimized out> srcp = <optimized out> #2 0x00000000004802ad in memmove (__len=18446744073709551591, __src=<optimized out>, __dest=<optimized out>) at /usr/include/x86_64-linux-gnu/bits/string3.h:59 No locals. #3 http_client_run0 (hc=hc@entry=0x7fffa1b81ac0) at src/httpc.c:1070 buf = 0x7fffb17d8f80 "$" saveptr = 0x7fffa2f6d6cb "" argv = {0x7fffa2f6d640 "RTSP/1.0", 0x7fffa2f6d649 "200", 0x7fffa2f6d64d "OK"} d = <optimized out> p = <optimized out> ver = <optimized out> res = <optimized out> delimsize = 2 r = <optimized out> len = 18446744073709551591
Updated by Thomas Smith over 8 years ago
(gdb) bt
#0 0x00007ffff602bd23 in wordcopy_bwd_dest_aligned (dstp=140736204898280, dstp@entry=140736213499288, srcp=140736204898456, srcp@entry=140736213499475, len=2305843009212618820, len@entry=2305843009213693943) at wordcopy.c:398
#1 0x00007ffff602606a in __memmove_sse2 (dest=0x7fffb4033de0, src=<optimized out>, len=18446744073709551544) at ../string/memmove.c:105
#2 0x00000000004802ad in memmove (_len=18446744073709551545, _src=<optimized out>, __dest=<optimized out> at /usr/include/x86_64-linux-gnu/bits/string3.h:59
#3 http_client_run0 (hc=hc@entry=0x7fffb4003380) at src/httpc.c:1070
#4 0x0000000000480302 in http_client_run (hc=0x7fffb4003380) at src/httpc.c:1134
#5 0x000000000050db21 in satip_frontend_input_thread (aux=0x7fffa8005af0) at src/input/mpegts/satip/satip_frontend.c:1512
#6 0x000000000043af08 in thread_wrapper (p=0x7fffa8001f50) at src/wrappers.c:159
#7 0x00007ffff68786aa in start_thread (arg=0x7fffb1ffb700) at pthread_create.c:333
#8 0x00007ffff609de9d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109
(gdb) frame 3
#3 http_client_run0 (hc=hc@entry=0x7fffb4003380) at src/httpc.c:1070
1070 memmove(hc->hc_rbuf, hc->hc_rbuf + hc->hc_hsize, len);
(gdb) print *hc
$1 = {hc_link = {tqe_next = 0x500a003634200071, tqe_prev = 0x4f200063696c6275}, hc_mutex = {_data = {__lock = 1330205776, _count = 539775822, __owner = 1129530692, __nusers = 1161972050, __kind = 1163075628, __spins = 21844, __elision = 0, __list = {_prev = 0x0, __next = 0x0}}, __size = "PTIONS, DESCRIBE, SETU", '\000' <repeats 17 times>, __align = 2318319503991723088}, hc_id = 0, hc_fd = 0, hc_scheme = 0x0, hc_host = 0x0, hc_port = 0, hc_bindaddr = 0x0, hc_efd = 0x81750000000000, hc_pevents = 0, hc_pevents_pause = 1398034944, hc_code = 774975312, hc_version = (unknown: 808583216), hc_redirv = (unknown: 1263468592), hc_cmd = 1631848960, hc_args = {tqh_first = 0x2c6e755320006574, tqh_last = 0x2030322072614d20}, hc_url = 0x38353a31333a3031 <error: Cannot access memory at address 0x38353a31333a3031>, hc_aux = 0x4d47203631303220, hc_data_limit = 7598543875326214228, hc_io_size = 3976731462811545199, hc_data = 0xa00313737353039 <error: Cannot access memory at address 0xa00313737353039>, hc_data_size = 3905781963111625539, hc_ping_time = 7163375852440259072, hc_rbuf = 0x4e4f4954504f2000 <error: Cannot access memory at address 0x4e4f4954504f2000>, hc_rsize = 5927673091510512723, hc_rpos = 6072351070225777225, hc_hsize = 85, hc_csize = 0, hc_chunk = 0x0, hc_chunk_size = 0, hc_chunk_csize = 0, hc_chunk_alloc = 0, hc_chunk_pos = 0, hc_location = 0x0, hc_running = 117 'u', hc_shutdown_wait = 129 '\201', hc_redirects = 0, hc_result = 1347638354, hc_shutdown = -1, hc_sending = -1, hc_einprogress = -1, hc_reconnected = -1, hc_keepalive = 0, hc_in_data = -1, hc_in_rtp_data = 0, hc_chunked = 0, hc_chunk_trails = -1, hc_handle_location = 0, hc_pause = 0, hc_wcmd = 0x4b4f0030303200, hc_wqueue = {tqh_first = 0x532000657461440a, tqh_last = 0x2072614d202c6e75}, hc_verify_peer = 824193074, hc_cseq = 825440816, hc_rcseq = 540554554, hc_rtsp_session = 0x65530a00544d4720 <error: Cannot access memory at address 0x65530a00544d4720>, hc_rtp_dest = 0x3220006e6f697373 <error: Cannot access memory at address 0x3220006e6f697373>, hc_rtp_port = 959918128, hc_rtcp_port = 926364976, hc_rtp_tcp = 1124728881, hc_rtcp_tcp = 7431539, hc_rtcp_server_port = 3552288, hc_rtp_multicast = 0, hc_rtsp_stream_id = 6075442896186861932, hc_rtp_timeout = 1397641033, hc_rtsp_user = 0x202c454249524353 <error: Cannot access memory at address 0x202c454249524353>, hc_rtsp_pass = 0x55544553 <error: Cannot access memory at address 0x55544553>, hc_rtsp_keep_alive_cmd = 0 '\000', hc_ssl = 0x0, hc_close_timer = {mti_link = {le_next = 0x0, le_prev = 0x0}, mti_callback = 0x0, mti_opaque = 0x0, mti_expire = 0}, hc_hdr_create = 0x8175000000, hc_hdr_received = 0x2f50535452000000, hc_data_received = 0x30303200302e31, hc_data_complete = 0x657461440a004b4f, hc_rtp_data_received = 0x4d202c6e75532000, hc_rtp_data_complete = 0x3031203032207261, hc_conn_closed = 0x322038353a31333a}
(gdb)
Updated by Thomas Smith over 8 years ago
- File crash-12-16.txt crash-12-16.txt added
crashed again today
Updated by Jaroslav Kysela over 8 years ago
The stack / memory is corrupted, so it cannot be inspected when wrong memmove is called.
Add this to code:
diff --git a/src/httpc.c b/src/httpc.c index 701a648..93b06f7 100644 --- a/src/httpc.c +++ b/src/httpc.c @@ -1057,6 +1057,7 @@ header: return http_client_flush(hc, res); } len = hc->hc_rpos - hc->hc_hsize; + if (len < 0 || len > 10*1024*1024) abort(); hc->hc_rpos = 0; if (hc->hc_code == HTTP_STATUS_CONTINUE) { memmove(hc->hc_rbuf, hc->hc_rbuf + hc->hc_hsize, len);
Wait for crash and do 'frame X' 'print *hc', X will be different - if you do 'bt' you'll see which frame is in http_client_run0 routine.
Updated by Thomas Smith over 8 years ago
checked out latest version from git and added line in row 1060:
if (len < 0 || len > 10*1024*1024) abort();
waiting for compiling, starting, crashing...
Updated by Thomas Smith over 8 years ago
crashed again
Program received signal SIGABRT, Aborted.
[Switching to Thread 0x7fffadffb700 (LWP 7150)]
0x00007ffff5fcc267 in __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:55
55 ../sysdeps/unix/sysv/linux/raise.c: Datei oder Verzeichnis nicht gefunden.
(gdb)
(gdb)
(gdb)
(gdb)
(gdb) bt
#0 0x00007ffff5fcc267 in __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:55
#1 0x00007ffff5fcdeca in __GI_abort () at abort.c:89
#2 0x00000000004802d8 in http_client_run0 (hc=hc@entry=0x2ca9a40) at src/httpc.c:1060
#3 0x0000000000480322 in http_client_run (hc=0x2ca9a40) at src/httpc.c:1135
#4 0x000000000050da01 in satip_frontend_input_thread (aux=0x7fffa0002260) at src/input/mpegts/satip/satip_frontend.c:1526
#5 0x000000000043af08 in thread_wrapper (p=0x7fffa0003160) at src/wrappers.c:159
#6 0x00007ffff68786aa in start_thread (arg=0x7fffadffb700) at pthread_create.c:333
#7 0x00007ffff609de9d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109
(gdb)
(gdb) frame 2
#2 0x00000000004802d8 in http_client_run0 (hc=hc@entry=0x2ca9a40) at src/httpc.c:1060
1060 if (len < 0 || len > 10*1024*1024) abort();
(gdb) print *hc
$1 = {hc_link = {tqe_next = 0x0, tqe_prev = 0x0}, hc_mutex = {__data = {__lock = 1, _count = 0, __owner = 7150, __nusers = 1, __kind = 0, __spins = 0, __elision = 0, __list = {_prev = 0x0, __next = 0x0}}, __size = "\001\000\000\000\000\000\000\000\356\033\000\000\001", '\000' <repeats 26 times>, __align = 1}, hc_id = 151, hc_fd = 20, hc_scheme = 0x46696c0 "rstp", hc_host = 0x1c76dc0 "192.168.240.22", hc_port = 554, hc_bindaddr = 0x0, hc_efd = 0x19995b0, hc_pevents = 1, hc_pevents_pause = 0, hc_code = 200, hc_version = RTSP_VERSION_1_0, hc_redirv = RTSP_VERSION_1_0, hc_cmd = RTSP_CMD_OPTIONS, hc_args = {tqh_first = 0x2b648b0, tqh_last = 0x6ce4440}, hc_url = 0x0, hc_aux = 0x7fffa0002260, hc_data_limit = 0, hc_io_size = 131072, hc_data = 0x0, hc_data_size = 0, hc_ping_time = 402257640164, hc_rbuf = 0x83c2c00 "RTSP/1.0", hc_rsize = 46666, hc_rpos = 116, hc_hsize = 143, hc_csize = 0, hc_chunk = 0x0, hc_chunk_size = 0, hc_chunk_csize = 0, hc_chunk_alloc = 0, hc_chunk_pos = 0, hc_location = 0x0, hc_running = 0 '\000', hc_shutdown_wait = 0 '\000', hc_redirects = 0, hc_result = 0, hc_shutdown = 0, hc_sending = 0, hc_einprogress = 0, hc_reconnected = 0, hc_keepalive = -1, hc_in_data = 0, hc_in_rtp_data = 0, hc_chunked = 0, hc_chunk_trails = 0, hc_handle_location = 0, hc_pause = 0, hc_wcmd = 0x0, hc_wqueue = {tqh_first = 0x0, tqh_last = 0x2ca9b78}, hc_verify_peer = -1, hc_cseq = 78, hc_rcseq = 78, hc_rtsp_session = 0x5fdd260 "0521595368", hc_rtp_dest = 0x0, hc_rtp_port = -1, hc_rtcp_port = -1, hc_rtp_tcp = 0, hc_rtcp_tcp = 1, hc_rtcp_server_port = 0, hc_rtp_multicast = 0, hc_rtsp_stream_id = 1, hc_rtp_timeout = 30, hc_rtsp_user = 0x0, hc_rtsp_pass = 0x0, hc_rtsp_keep_alive_cmd = 0 '\000', hc_ssl = 0x0, hc_close_timer = {mti_link = {le_next = 0x0, le_prev = 0x0}, mti_callback = 0x0, mti_opaque = 0x0, mti_expire = 0}, hc_hdr_create = 0x47e3e0 <http_client_basic_args>, hc_hdr_received = 0x0, hc_data_received = 0x0, hc_data_complete = 0x0, hc_rtp_data_received = 0x50c5d0 <satip_frontend_rtp_data_received>, hc_rtp_data_complete = 0x0, hc_conn_closed = 0x0}
(gdb) frame 3
#3 0x0000000000480322 in http_client_run (hc=0x2ca9a40) at src/httpc.c:1135
1135 r = http_client_run0(hc);
(gdb) fcc267 in _GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:55
(gdb) print *hc
$2 = {hc_link = {tqe_next = 0x0, tqe_prev = 0x0}, hc_mutex = {_data = {__lock = 1, _count = 0, __owner = 7150, __nusers = 1, __kind = 0, __spins = 0, __elision = 0, __list = {_prev = 0x0, __next = 0x0}}, __size = "\001\000\000\000\000\000\000\000\356\033\000\000\001", '\000' <repeats 26 times>, __align = 1}, hc_id = 151, hc_fd = 20, hc_scheme = 0x46696c0 "rstp", hc_host = 0x1c76dc0 "192.168.240.22", hc_port = 554, hc_bindaddr = 0x0, hc_efd = 0x19995b0, hc_pevents = 1, hc_pevents_pause = 0, hc_code = 200, hc_version = RTSP_VERSION_1_0, hc_redirv = RTSP_VERSION_1_0, hc_cmd = RTSP_CMD_OPTIONS, hc_args = {tqh_first = 0x2b648b0, tqh_last = 0x6ce4440}, hc_url = 0x0, hc_aux = 0x7fffa0002260, hc_data_limit = 0, hc_io_size = 131072, hc_data = 0x0, hc_data_size = 0, hc_ping_time = 402257640164, hc_rbuf = 0x83c2c00 "RTSP/1.0", hc_rsize = 46666, hc_rpos = 116, hc_hsize = 143, hc_csize = 0, hc_chunk = 0x0, hc_chunk_size = 0, hc_chunk_csize = 0, hc_chunk_alloc = 0, hc_chunk_pos = 0, hc_location = 0x0, hc_running = 0 '\000', hc_shutdown_wait = 0 '\000', hc_redirects = 0, hc_result = 0, hc_shutdown = 0, hc_sending = 0, hc_einprogress = 0, hc_reconnected = 0, hc_keepalive = -1, hc_in_data = 0, hc_in_rtp_data = 0, hc_chunked = 0, hc_chunk_trails = 0, hc_handle_location = 0, hc_pause = 0, hc_wcmd = 0x0, hc_wqueue = {tqh_first = 0x0, tqh_last = 0x2ca9b78}, hc_verify_peer = -1, hc_cseq = 78, hc_rcseq = 78, hc_rtsp_session = 0x5fdd260 "0521595368", hc_rtp_dest = 0x0, hc_rtp_port = -1, hc_rtcp_port = -1, hc_rtp_tcp = 0, hc_rtcp_tcp = 1, hc_rtcp_server_port = 0, hc_rtp_multicast = 0, hc_rtsp_stream_id = 1, hc_rtp_timeout = 30, hc_rtsp_user = 0x0, hc_rtsp_pass = 0x0, hc_rtsp_keep_alive_cmd = 0 '\000', hc_ssl = 0x0, hc_close_timer = {mti_link = {le_next = 0x0, le_prev = 0x0}, mti_callback = 0x0, mti_opaque = 0x0, mti_expire = 0}, hc_hdr_create = 0x47e3e0 <http_client_basic_args>, hc_hdr_received = 0x0, hc_data_received = 0x0, hc_data_complete = 0x0, hc_rtp_data_received = 0x50c5d0 <satip_frontend_rtp_data_received>, hc_rtp_data_complete = 0x0, hc_conn_closed = 0x0}
(gdb) frame 4
#4 0x000000000050da01 in satip_frontend_input_thread (aux=0x7fffa0002260) at src/input/mpegts/satip/satip_frontend.c:1526
1526 r = http_client_run(rtsp);
(gdb) print *hc
No symbol "hc" in current context.
(gdb) frame 0
#0 0x00007ffff5fcc267 in __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:55
55 ../sysdeps/unix/sysv/linux/raise.c: Datei oder Verzeichnis nicht gefunden.
(gdb) print *hc
No symbol "hc" in current context.
(gdb) frame 1
#1 0x00007ffff5fcdeca in __GI_abort () at abort.c:89
89 in abort.c
(gdb) print *hc
No symbol "hc" in current context.
(gdb) frame 5
#5 0x000000000043af08 in thread_wrapper (p=0x7fffa0003160) at src/wrappers.c:159
159 void *r = ts->run(ts->arg);
(gdb) print *hc
No symbol "hc" in current context.
(gdb) frame 6
#6 0x00007ffff68786aa in start_thread (arg=0x7fffadffb700) at pthread_create.c:333
333 pthread_create.c: Datei oder Verzeichnis nicht gefunden.
(gdb) print *hc
No symbol "hc" in current context.
(gdb) frame 7
#7 0x00007ffff609de9d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109
109 ../sysdeps/unix/sysv/linux/x86_64/clone.S: Datei oder Verzeichnis nicht gefunden.
(gdb) print *hc
No symbol "hc" in current context.
Updated by Thomas Smith over 8 years ago
again:
Program received signal SIGABRT, Aborted.
[Switching to Thread 0x7fffb17fa700 (LWP 22725)]
0x00007ffff5fcc267 in __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:55
55 ../sysdeps/unix/sysv/linux/raise.c: Datei oder Verzeichnis nicht gefunden.
#2 0x00000000004802d8 in http_client_run0 (hc=hc@entry=0x7fffa8126060) at src/httpc.c:1060
#3 0x0000000000480322 in http_client_run (hc=0x7fffa8126060) at src/httpc.c:1135
#4 0x000000000050da01 in satip_frontend_input_thread (aux=0x8260460) at src/input/mpegts/satip/satip_frontend.c:1526
#5 0x000000000043af08 in thread_wrapper (p=0x2572a70) at src/wrappers.c:159
#6 0x00007ffff68786aa in start_thread (arg=0x7fffb17fa700) at pthread_create.c:333
#7 0x00007ffff609de9d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109
(gdb) frame 0
#0 0x00007ffff5fcc267 in _GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:55
55 in ../sysdeps/unix/sysv/linux/raise.c
(gdb) print *hc
No symbol "hc" in current context.
(gdb) frame 1
#1 0x00007ffff5fcdeca in __GI_abort () at abort.c:89
89 abort.c: Datei oder Verzeichnis nicht gefunden.
(gdb) print *hc
No symbol "hc" in current context.
(gdb) frame 2
#2 0x00000000004802d8 in http_client_run0 (hc=hc@entry=0x7fffa8126060) at src/httpc.c:1060
1060 if (len < 0 || len > 10*1024*1024) abort();
(gdb) print *hc
$1 = {hc_link = {tqe_next = 0x0, tqe_prev = 0x0}, hc_mutex = {_data = {__lock = 1, _count = 0, __owner = 22725, __nusers = 1, __kind = 0, __spins = 0, __elision = 0, __list = {_prev = 0x0, _next = 0x0}}, __size = "\001\000\000\000\000\000\000\000\305X\000\000\001", '\000' <repeats 26 times>, __align = 1}, hc_id = 8, hc_fd = 46, hc_scheme = 0x7fffa84a2fb0 "rstp", hc_host = 0x7fffa83ae160 "192.168.240.22", hc_port = 554, hc_bindaddr = 0x0, hc_efd = 0x7fffa8000bf0, hc_pevents = 1, hc_pevents_pause = 0, hc_code = 200, hc_version = RTSP_VERSION_1_0, hc_redirv = RTSP_VERSION_1_0, hc_cmd = RTSP_CMD_OPTIONS, hc_args = {tqh_first = 0x7fffa8142e50, tqh_last = 0x7fffa813a540}, hc_url = 0x0, hc_aux = 0x8260460, hc_data_limit = 0, hc_io_size = 131072, hc_data = 0x0, hc_data_size = 0, hc_ping_time = 566410986255, hc_rbuf = 0x7fffa8091430 "RTSP/1.0", hc_rsize = 119118, hc_rpos = 116, hc_hsize = 157, hc_csize = 0, hc_chunk = 0x0, hc_chunk_size = 0, hc_chunk_csize = 0, hc_chunk_alloc = 0, hc_chunk_pos = 0, hc_location = 0x0, hc_running = 0 '\000', hc_shutdown_wait = 0 '\000', hc_redirects = 0, hc_result = 0, hc_shutdown = 0, hc_sending = 0, hc_einprogress = 0, hc_reconnected = 0, hc_keepalive = 1, hc_in_data = 0, hc_in_rtp_data = 0, hc_chunked = 0, hc_chunk_trails = 0, hc_handle_location = 0, hc_pause = 0, hc_wcmd = 0x0, hc_wqueue = {tqh_first = 0x0, tqh_last = 0x7fffa8126198}, hc_verify_peer = -1, hc_cseq = 252, hc_rcseq = 252, hc_rtsp_session = 0x7fffa8101290 "0596516649", hc_rtp_dest = 0x0, hc_rtp_port = -1, hc_rtcp_port = -1, hc_rtp_tcp = 0, hc_rtcp_tcp = 1, hc_rtcp_server_port = 0, hc_rtp_multicast = 0, hc_rtsp_stream_id = 2, hc_rtp_timeout = 30, hc_rtsp_user = 0x0, hc_rtsp_pass = 0x0, hc_rtsp_keep_alive_cmd = 0 '\000', hc_ssl = 0x0, hc_close_timer = {mti_link = {le_next = 0x0, le_prev = 0x0}, mti_callback = 0x0, mti_opaque = 0x0, mti_expire = 0}, hc_hdr_create = 0x47e3e0 <http_client_basic_args>, hc_hdr_received = 0x0, hc_data_received = 0x0, hc_data_complete = 0x0, hc_rtp_data_received = 0x50c5d0 <satip_frontend_rtp_data_received>, hc_rtp_data_complete = 0x0, hc_conn_closed = 0x0}_data = {__lock = 1, _count = 0, __owner = 22725, __nusers = 1, __kind = 0, __spins = 0, __elision = 0, __list = {_prev = 0x0, __next = 0x0}}, __size = "\001\000\000\000\000\000\000\000\305X\000\000\001", '\000' <repeats 26 times>, __align = 1}, hc_id = 8, hc_fd = 46, hc_scheme = 0x7fffa84a2fb0 "rstp", hc_host = 0x7fffa83ae160 "192.168.240.22", hc_port = 554, hc_bindaddr = 0x0, hc_efd = 0x7fffa8000bf0, hc_pevents = 1, hc_pevents_pause = 0, hc_code = 200, hc_version = RTSP_VERSION_1_0, hc_redirv = RTSP_VERSION_1_0, hc_cmd = RTSP_CMD_OPTIONS, hc_args = {tqh_first = 0x7fffa8142e50, tqh_last = 0x7fffa813a540}, hc_url = 0x0, hc_aux = 0x8260460, hc_data_limit = 0, hc_io_size = 131072, hc_data = 0x0, hc_data_size = 0, hc_ping_time = 566410986255, hc_rbuf = 0x7fffa8091430 "RTSP/1.0", hc_rsize = 119118, hc_rpos = 116, hc_hsize = 157, hc_csize = 0, hc_chunk = 0x0, hc_chunk_size = 0, hc_chunk_csize = 0, hc_chunk_alloc = 0, hc_chunk_pos = 0, hc_location = 0x0, hc_running = 0 '\000', hc_shutdown_wait = 0 '\000', hc_redirects = 0, hc_result = 0, hc_shutdown = 0, hc_sending = 0, hc_einprogress = 0, hc_reconnected = 0, hc_keepalive = -1, hc_in_data = 0, hc_in_rtp_data = 0, hc_chunked = 0, hc_chunk_trails = 0, hc_handle_location = 0, hc_pause = 0, hc_wcmd = 0x0, hc_wqueue = {tqh_first = 0x0, tqh_last = 0x7fffa8126198}, hc_verify_peer = -1, hc_cseq = 252, hc_rcseq = 252, hc_rtsp_session = 0x7fffa8101290 "0596516649", hc_rtp_dest = 0x0, hc_rtp_port = -1, hc_rtcp_port = -1, hc_rtp_tcp = 0, hc_rtcp_tcp = 1, hc_rtcp_server_port = 0, hc_rtp_multicast = 0, hc_rtsp_stream_id = 2, hc_rtp_timeout = 30, hc_rtsp_user = 0x0, hc_rtsp_pass = 0x0, hc_rtsp_keep_alive_cmd = 0 '\000', hc_ssl = 0x0, hc_close_timer = {mti_link = {le_next = 0x0, le_prev = 0x0}, mti_callback = 0x0, mti_opaque = 0x0, mti_expire = 0}, hc_hdr_create = 0x47e3e0 <http_client_basic_args>, hc_hdr_received = 0x0, hc_data_received = 0x0, hc_data_complete = 0x0, hc_rtp_data_received = 0x50c5d0 <satip_frontend_rtp_data_received>, hc_rtp_data_complete = 0x0, hc_conn_closed = 0x0}
(gdb) frame 3
#3 0x0000000000480322 in http_client_run (hc=0x7fffa8126060) at src/httpc.c:1135
1135 r = http_client_run0(hc);
(gdb) print *hc
$2 = {hc_link = {tqe_next = 0x0, tqe_prev = 0x0}, hc_mutex = {
(gdb) frame 4
#4 0x000000000050da01 in satip_frontend_input_thread (aux=0x8260460) at src/input/mpegts/satip/satip_frontend.c:1526
1526 r = http_client_run(rtsp);
(gdb) print *hc
No symbol "hc" in current context.
(gdb) frame 5
#5 0x000000000043af08 in thread_wrapper (p=0x2572a70) at src/wrappers.c:159
159 void *r = ts>run(ts->arg);
(gdb) print *hc
No symbol "hc" in current context.
(gdb) frame 6
#6 0x00007ffff68786aa in start_thread (arg=0x7fffb17fa700) at pthread_create.c:333
333 pthread_create.c: Datei oder Verzeichnis nicht gefunden.
(gdb) print *hc
No symbol "hc" in current context.
(gdb) frame 7
#7 0x00007ffff609de9d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109
109 ../sysdeps/unix/sysv/linux/x86_64/clone.S: Datei oder Verzeichnis nicht gefunden.
(gdb) print *hc
No symbol "hc" in current context.
Updated by Jaroslav Kysela over 8 years ago
I think that I fixed that in v4.1-1724-g41707e1 . Thanks for your feedback.