Bug #294
Segfault when recording from EPG
0%
Description
Tvheadend segfaults when recording a show called "Lærkevej" from EPG.
[INFO]:subscription: "DVR: Lærkevej" subscribing on "TV2 / Midt-Vest", weight: 300, adapter: "STV0900 frontend", network: "Telenor", mux: "Telenor: 10,841,000 kHz Horizontal (LNB 2 (1W))", provider: "Telenor", service: "TV2 / Midt-Vest", quality: 100
[DEBUG]:Transport: STV0900 frontend/Telenor: 10,841,000 kHz Horizontal (LNB 2 (1W))/TV2 / Midt-Vest: Status changed to [Hardware input]
[DEBUG]:Transport: STV0900 frontend/Telenor: 10,841,000 kHz Horizontal (LNB 2 (1W))/TV2 / Midt-Vest: Status changed to [Hardware input] [Input on service]
[WARNING]:TS: STV0900 frontend/Telenor: 10,841,000 kHz Horizontal (LNB 2 (1W))/TV2 / Midt-Vest: Transport error indicator
[DEBUG]:Transport: STV0900 frontend/Telenor: 10,841,000 kHz Horizontal (LNB 2 (1W))/TV2 / Midt-Vest: Status changed to [Hardware input] [Input on service] [Demuxed packets]
[INFO]:capmt: Trying to obtain key for service "TV2 / Midt-Vest"
[INFO]:capmt: Obtained key for service "TV2 / Midt-Vest"
[DEBUG]:Transport: STV0900 frontend/Telenor: 10,841,000 kHz Horizontal (LNB 2 (1W))/TV2 / Midt-Vest: Status changed to [Hardware input] [Input on service] [Demuxed packets] [Reassembled packets]
[DEBUG]:dvr: File "/glftpd/site/recorded/TV2 - Midt-Vest-Lærkevej.2010-09-30.mkv" -- No such file or directory -- Using for recording
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb3532b70 (LWP 29417)]
0xb7e537a0 in ?? () from /lib/tls/i686/cmov/libc.so.6
(gdb) info reg
eax 0x0 0
ecx 0x0 0
edx 0x0 0
ebx 0x0 0
esp 0xb3532178 0xb3532178
ebp 0xb3532198 0xb3532198
esi 0x0 0
edi 0x0 0
eip 0xb7e537a0 0xb7e537a0
eflags 0x10246 [ PF ZF IF RF ]
cs 0x73 115
ss 0x7b 123
ds 0x7b 123
es 0x7b 123
fs 0x0 0
gs 0x33 51
(gdb) disassemble $pc-32,$pc+32
Dump of assembler code from 0xb7e53780 to 0xb7e537c0:
0xb7e53780: je 0xb7e537a0
0xb7e53782: and $0xfffffff0,%esi
0xb7e53785: pcmpeqb (%esi),%xmm0
0xb7e53789: lea 0x10(%eax),%esi
0xb7e5378c: pmovmskb %xmm0,%edx
0xb7e53790: shr %cl,%edx
0xb7e53792: test %edx,%edx
0xb7e53794: jne 0xb7e537dc
0xb7e53796: sub %ecx,%esi
0xb7e53798: pxor %xmm0,%xmm0
0xb7e5379c: lea 0x0(%esi,%eiz,1),%esi
=> 0xb7e537a0: pcmpeqb (%esi),%xmm0
0xb7e537a4: pmovmskb %xmm0,%edx
0xb7e537a8: add $0x10,%esi
0xb7e537ab: test %edx,%edx
0xb7e537ad: jne 0xb7e537dc
0xb7e537af: pcmpeqb (%esi),%xmm0
0xb7e537b3: pmovmskb %xmm0,%edx
0xb7e537b7: add $0x10,%esi
0xb7e537ba: test %edx,%edx
0xb7e537bc: jne 0xb7e537dc
0xb7e537be: pcmpeqb (%esi),%xmm0
---Type <return> to continue, or q <return> to quit---
End of assembler dump.
(gdb) bt full
#0 0xb7e537a0 in ?? () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#1 0x0806f322 in ebml_append_string (q=0xb2c0db28, id=17543, str=0x0)
at /home/lbm/tvheadend/src/dvr/ebml.c:79
No locals.
#2 0x0806f8ec in build_tag_string (name=<value optimized out>,
value=<value optimized out>, targettype=<value optimized out>,
targettypename=0x0) at /home/lbm/tvheadend/src/dvr/mkmux.c:394
q = 0xb2c0dad8
st = 0xb2c0db28
t = <value optimized out>
#3 0x08070cd9 in mk_build_metadata (
filename=0xb2c0d8c0 "/glftpd/site/recorded/TV2 - Midt-Vest-L\303\246rkevej.2010-09-30.mkv", ss=0x835a388, de=0x836ba70, write_tags=1)
at /home/lbm/tvheadend/src/dvr/mkmux.c:452
q = 0xb2c0da80
datestr = "2010-09-30 20:00:00\000\210\060\017\bp\272\066\b\330\"S\263Y\267\006\b\210\060\017\b\210\060\017\b\212}\t\b\000\000\000\000\230N \bp\272\066\b\370\"S\263"
tm = {tm_sec = 0, tm_min = 0, tm_hour = 20, tm_mday = 30, tm_mon = 8,
tm_year = 110, tm_wday = 4, tm_yday = 272, tm_isdst = 1,
tm_gmtoff = 7200, tm_zone = 0x80ca028 "CEST"}
#4 mk_mux_create (
---Type <return> to continue, or q <return> to quit---
filename=0xb2c0d8c0 "/glftpd/site/recorded/TV2 - Midt-Vest-L\303\246rkevej.2010-09-30.mkv", ss=0x835a388, de=0x836ba70, write_tags=1)
at /home/lbm/tvheadend/src/dvr/mkmux.c:595
mkm = 0xb2c0d908
fd = <value optimized out>
#5 0x0806dbe4 in dvr_rec_start (aux=0x836ba70)
at /home/lbm/tvheadend/src/dvr/dvr_rec.c:310
i = <value optimized out>
#6 dvr_thread (aux=0x836ba70) at /home/lbm/tvheadend/src/dvr/dvr_rec.c:414
sm = 0x8204e98
run = 1
#7 0xb7f6696e in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
No symbol table info available.
#8 0xb7eada4e in clone () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.