Hi,
I recently decided to upgrade from vdr 1.3.13 + an older xine plugin to
1.3.34 and xine plugin 0.7.6.
I'm using xine-lib 1.1.0 with the xine plugin.
Now I've compiled both the same xine-lib and vdr once for x86 and once
for x86_64 (so I'm really using the same source) but only the version
for x86_64 works.
If I strace the xine process running on my x86 machine I can see that it
closes /tmp/vdr-xine/stream right after a few reads. This does not
happen on the x86_64 one.
Would someone have any ideas as to why this might be happening?
All pipes in /tmp/vdr-xine are present and have sane permissions. I'm
using the same glibc versions and am using non nptl ones in both cases.
VDR is not patched in any way and I'm not using any CC flags besides the
default ones.
Any help is appreciated.
kind regards Philip
---- strace of x86 version ----
open("/tmp/vdr-xine/stream", O_RDONLY|O_NONBLOCK|O_LARGEFILE) = 7
poll([{fd=7, events=POLLIN, revents=POLLIN}], 1, 300) = 1
fcntl64(7, F_GETFL) = 0x8800 (flags
O_RDONLY|O_NONBLOCK|O_LARGEFILE)
fcntl64(7, F_SETFL, O_RDONLY|O_LARGEFILE) = 0
open("/tmp/vdr-xine/stream.control", O_RDONLY|O_LARGEFILE) = 8
open("/tmp/vdr-xine/stream.result", O_WRONLY|O_LARGEFILE) = 9
open("/tmp/vdr-xine/stream.event", O_WRONLY|O_LARGEFILE) = 10
clone(child_stack=0xac97a504,
flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID,
parent_tidptr=0xac97abf8, {entry_number:6, base_addr:0xac97abb0,
limit:1048575, seg_32bit:1, contents:0, read_exec_only:0,
limit_in_pages:1, seg_not_present:0, useable:1},
child_tidptr=0xac97abf8) = 22198
futex(0x873ff38, FUTEX_WAKE, 1) = 1
futex(0x873ff34, FUTEX_WAKE, 1) = 1
futex(0x873ff1c, FUTEX_WAKE, 1) = 1
futex(0x8750bf0, FUTEX_WAKE, 1) = 1
gettimeofday({1129110121, 21324}, NULL) = 0
clock_gettime(CLOCK_REALTIME, {1129110121, 21382000}) = 0
futex(0x873fa24, FUTEX_WAIT, 15, {0, 999942000}) = 0
gettimeofday({1129110121, 21857}, NULL) = 0
futex(0x873fa08, FUTEX_WAKE, 1) = 0
clock_gettime(CLOCK_REALTIME, {1129110121, 21958000}) = 0
futex(0x873fa24, FUTEX_WAIT, 17, {0, 999899000}) = 0
futex(0x873fa08, FUTEX_WAIT, 2, NULL) = 0
futex(0x873fa08, FUTEX_WAKE, 1) = 0
futex(0x873f344, FUTEX_WAKE, 1) = 1
futex(0x8d1c9c8, FUTEX_WAKE, 1) = 1
clone(child_stack=0xabfac504,
flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID,
parent_tidptr=0xabfacbf8, {entry_number:6, base_addr:0xabfacbb0,
limit:1048575, seg_32bit:1, contents:0, read_exec_only:0,
limit_in_pages:1, seg_not_present:0, useable:1},
child_tidptr=0xabfacbf8) = 22199
nanosleep({0, 100000}, {0, 0}) = 0
open("/usr/share/xine/libxine1/fonts/cetus-24.xinefont.gz", O_RDONLY) = 8
fstat64(8, {st_mode=S_IFREG|0644, st_size=11552, ...}) = 0
mmap2(NULL, 131072, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0xadc30000
read(8, "\37\213\10\0\0\0\0\0\0\3\355}\365\227-\315v\320\351\362"...,
131072) = 11552
read(8, "", 131072) = 0
_llseek(8, 0, [11552], SEEK_CUR) = 0
read(8, "", 131072) = 0
close(8) = 0
---- end strace of x86 version ----