[vdr] VDR 1.7 FreeBSD segfault when cutting recordings

2013-03-15 Thread Gerhard Brauer
Hello,

i'm new on this list and my English is not the best...

I'm using VDR 1.7 headless on a FreeBSD machine. Interaction with
this vdr server is done via vdr-sfxe from the xineliboutput plugin.

I never have any problem during other actions with the remote VDR
(recording, viewing, place cutting marks,...) _exept_ when i start
the cutting procedere itself with the keyboard shortcut 2.
Most times ( 95%) the remote vdr segfaults immidiatly. The file
structure is still created (%foobar ff.). In the few times when it
not segfaults then the cutting is done well without problems.

I have contacted the FreeBSD maintainer of the vdr port and he
advised to do a gdb backtrace on the generated coredump file. After
seeing the backtrace he has no solution and told me to post better
here on the list.
I attach the gdb backtrace output with this mail (i hope the
mailinglist allow attached file). Maybe you have a solution and/or
an idea how to solve this. Of course i could do further tests or
debugging, the segfault is well to reproduce here ;-)

Sometimes (but not so often and reproducable), when the cutting
process/thread is not segfaulting, i got also an dying vdr process
with signal 10 (bus error). That's when i use backspace to close
the well cutted recording, normally it would go back to the current
TV channel. Don't know if this is in some relation with the
segfault/signal 11 I often have. This rare error i also got only
during the cutting procedere, i could never reproduce it during
watching TV or recordings.

Some infos on hardware and software versions of the (vdr) server:
-
FreeBSD 9.0-RELEASE-p3 amd64
CPU: AMD E-450 APU with Radeon(tm) HD Graphics (1699.36-MHz K8-class
CPU)
FreeBSD/SMP: Multiprocessor System Detected: 2 CPUs
FreeBSD/SMP: 1 package(s) x 2 core(s)
real memory  = 8589934592 (8192 MB)
avail memory = 7809277952 (7447 MB)

Filesystem ZFS

vdr-1.7.29_2 
vdr-plugin-xineliboutput-1.0.90s20120511_6 
---
Log output when the vdr dies with signal 11 (this is not from the
attached backtrace):
Mar 15 10:44:00 s01 vdr: [50363392] setting audio track to 1 (0)
Mar 15 10:44:00 s01 vdr: [50364416] TS buffer on device 1 thread ended 
(pid=8844, tid=50364416)
Mar 15 10:44:00 s01 vdr: [50365440] buffer stats: 34404 (1%) used
Mar 15 10:44:00 s01 vdr: [50365440] receiver on device 1 thread ended 
(pid=8844, tid=50365440)
Mar 15 10:44:17 s01 vdr: [50361344] playing 
'/video/Die_Marx_Brothers_im_Kaufhaus/2012-10-29.01.48.50.99.rec/002.vdr'
Mar 15 10:44:19 s01 vdr: [50363392] SetBrokenLink: no GOP header found in video 
packet
Mar 15 10:44:31 s01 vdr: [50361344] loading 
/video/Die_Marx_Brothers_im_Kaufhaus/2012-10-29.01.48.50.99.rec//marks.vdr
Mar 15 10:44:31 s01 vdr: [50361344] creating directory 
/video/%Die_Marx_Brothers_im_Kaufhaus/2012-10-29.01.58.50.99.rec
Mar 15 10:44:31 s01 vdr: [50361344] removing 
/video/%Die_Marx_Brothers_im_Kaufhaus/2012-10-29.01.58.50.99.del/index.vdr
Mar 15 10:44:31 s01 vdr: [50361344] removing 
/video/%Die_Marx_Brothers_im_Kaufhaus/2012-10-29.01.58.50.99.del/001.vdr
Mar 15 10:44:31 s01 vdr: [50361344] removing 
/video/%Die_Marx_Brothers_im_Kaufhaus/2012-10-29.01.58.50.99.del/info.vdr
Mar 15 10:44:31 s01 vdr: [50361344] removing 
/video/%Die_Marx_Brothers_im_Kaufhaus/2012-10-29.01.58.50.99.del
Mar 15 10:44:31 s01 vdr: [50361344] loading 
/video/Die_Marx_Brothers_im_Kaufhaus/2012-10-29.01.48.50.99.rec//marks.vdr
Mar 15 10:44:31 s01 vdr: [50361344] playing 
'/video/Die_Marx_Brothers_im_Kaufhaus/2012-10-29.01.48.50.99.rec/001.vdr'
Mar 15 10:44:31 s01 vdr: [50361344] recording to 
'/video/%Die_Marx_Brothers_im_Kaufhaus/2012-10-29.01.58.50.99.rec/001.vdr'
Mar 15 10:44:31 s01 vdr: [58882048] video cutting thread started (pid=8844, 
tid=58882048)
Mar 15 10:44:32 s01 kernel: pid 8844 (vdr), uid 938: exited on signal 11 (core 
dumped)
-

From my low experience (I'm not a C developer) i think it could be a thread
timing problem, maybe FreeBSD special and in relation with the ZFS filesystem.
Suspicios is IMHO that an error occurs only in the cutting procedere.

So, do you smell antyhing like a bug or similar ;-) Any ideas what i could do
or test/debug to get rid off this error?

Regards and TIA

Gerhard



bt.txt.gz
Description: Binary data
___
vdr mailing list
vdr@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr


Re: [vdr] [ANNOUNCE] vdr-xine-0.9.4 plugin

2013-03-15 Thread Carsten Koch

Hi,

On 03/16/11 20:29, Reinhard Nissl wrote:
I'm pleased to announce maintenance release 0.9.4. 

is there something newer available?
In partcular, something that works with VDR 1.7.40?

With VDR 1.7.40 (under OpenSUSE 12.3) I get:


*** Plugin xine:
WARNING: plugin xine is using an old Makefile!
g++ -g -O3 -Wall -Werror=overloaded-virtual -Wno-parentheses -fPIC 
-D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE 
-D_LARGEFILE64_SOURCE  -c -D_GNU_SOURCE -DPLUGIN_NAME_I18N='xine' 
-DFIFO_DIR=\/tmp/vdr-xine\ -DVERIFY_BITMAP_DIRTY=0 `pkg-config 
--cflags libxine`  -I/home/cko/vdr-1.7.40/include xineDevice.c
xineDevice.c: In member function 'virtual void 
PluginXine::cXineDevice::StillPicture(const uchar*, int)':
xineDevice.c:1203:36: error: 'class cPatPmtParser' has no member named 
'PmtPid'
xineDevice.c:1403:1: warning: narrowing conversion of 
'(vdr172::cRemux::IsFrameH264(Data, Length) ? 10 : 183)' from 'int' to 
'uchar {aka unsigned char}' inside { } is ill-formed in C++11 [-Wnarrowing]

make[1]: *** [xineDevice.o] Error 1



You can
find it on my homepage as usual:

http://home.vr-web.de/~rnissl


Not any more.
http://home.vr-web.de in general and http://home.vr-web.de/~rnissl
seems to be gone.

Cheers,
Carsten.


___
vdr mailing list
vdr@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr


Re: [vdr] [ANNOUNCE] vdr-xine-0.9.4 plugin

2013-03-15 Thread Joerg Riechardt

Hi,
two patches I use attached,
Joerg

Am 15.03.2013 16:38, schrieb Carsten Koch:

Hi,

On 03/16/11 20:29, Reinhard Nissl wrote:

I'm pleased to announce maintenance release 0.9.4.

is there something newer available?
In partcular, something that works with VDR 1.7.40?

With VDR 1.7.40 (under OpenSUSE 12.3) I get:


*** Plugin xine:
WARNING: plugin xine is using an old Makefile!
g++ -g -O3 -Wall -Werror=overloaded-virtual -Wno-parentheses -fPIC
-D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE
-D_LARGEFILE64_SOURCE  -c -D_GNU_SOURCE -DPLUGIN_NAME_I18N='xine'
-DFIFO_DIR=\/tmp/vdr-xine\ -DVERIFY_BITMAP_DIRTY=0 `pkg-config
--cflags libxine`  -I/home/cko/vdr-1.7.40/include xineDevice.c
xineDevice.c: In member function 'virtual void
PluginXine::cXineDevice::StillPicture(const uchar*, int)':
xineDevice.c:1203:36: error: 'class cPatPmtParser' has no member named
'PmtPid'
xineDevice.c:1403:1: warning: narrowing conversion of
'(vdr172::cRemux::IsFrameH264(Data, Length) ? 10 : 183)' from 'int' to
'uchar {aka unsigned char}' inside { } is ill-formed in C++11 [-Wnarrowing]
make[1]: *** [xineDevice.o] Error 1



You can
find it on my homepage as usual:

http://home.vr-web.de/~rnissl


Not any more.
http://home.vr-web.de in general and http://home.vr-web.de/~rnissl
seems to be gone.

Cheers,
Carsten.


___
vdr mailing list
vdr@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr

diff -Naur xine-0.9.4_orig/xineDevice.c xine-0.9.4/xineDevice.c
--- xine-0.9.4_orig/xineDevice.c2011-02-27 19:14:19.0 +0100
+++ xine-0.9.4/xineDevice.c 2012-12-22 18:42:36.389557075 +0100
@@ -1200,7 +1200,11 @@
   int pid = TsPid(Data);
   if (pid == 0)
 patPmtParser.ParsePat(Data, TS_SIZE);
+#if APIVERSNUM = 10732
+  else if (patPmtParser.IsPmtPid(pid))
+#else
   else if (pid == patPmtParser.PmtPid())
+#endif
 patPmtParser.ParsePmt(Data, TS_SIZE);
   else if (pid == patPmtParser.Vpid())
   {
diff -Nru b/Makefile a/Makefile
--- b/Makefile  2011-03-15 23:22:03.0 +0100
+++ a/Makefile  2012-03-27 23:28:00.684231800 +0200
@@ -97,7 +97,7 @@
 
 ### The main target:
 
-all: libvdr-$(PLUGIN).so i18n xineplayer
+all: libvdr-$(PLUGIN).so xineplayer
 
 ### Implicit rules:
 
diff -Nru b/xine.c a/xine.c
--- b/xine.c2011-01-18 14:45:04.0 +0100
+++ a/xine.c2012-03-27 23:29:28.338233019 +0200
@@ -13,7 +13,6 @@
 #include xineDevice.h
 #include xineSettings.h
 #include xineSetupPage.h
-#include xineI18n.h
 
 
 
___
vdr mailing list
vdr@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr