Hi, Philip Lawatsch wrote: > 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. The below strace extract doesn't contain a close(7). > 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. I don't think that it has anything to do with opening the fifos, as they open properly just before the call to clone(). Are you sure that your xine-lib get's called in the x86 case and not an older version which lacks support for some of vdr-xine's remote procedure calls? > 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 ---- > > _______________________________________________ > vdr mailing list > vdr@xxxxxxxxxxx > http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr > > -- Dipl.-Inform. (FH) Reinhard Nissl mailto:rnissl@xxxxxx