Processed: Re: Bug#561203: FTBFS [hppa] - pthread_create() (QThread) + fork() = crash
Processing commands for cont...@bugs.debian.org: tags 561203 pending Bug #561203 [libc6] FTBFS [hppa] - pthread_create() (or QThread) + fork() = crash Added tag(s) pending. thanks Stopping processing here. Please contact me if you need assistance. Debian bug tracking system administrator (administrator, Debian Bugs database) -- To UNSUBSCRIBE, email to debian-glibc-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Bug#561203: FTBFS [hppa] - pthread_create() (QThread) + fork() = crash
tags 561203 pending thanks Hello, On antradienis 22 Gruodis 2009 21:54:16 Modestas Vainius wrote: when investigating this issue further, I determined that fork() following pthread_create() sometimes makes the application crash. In order to reproduce, build attached minifail.cpp with: [.. snip ..] When repeatedly running it as `minifail` (pure_test() mode), I get: $ i=0; while true; do i=$(($i+1)); echo Run $i; ./minifail; done; [.. snip ..] The hang which is original problem of this FTBFS, can be reproduced with `./minifail qt` (qt_test() mode that uses QThread + fork()). QThread internally uses pthreads but unfortunately I was not able to reproduce the hang with pure pthread_* calls. $ i=0; while true; do i=$(($i+1)); echo Run $i; ./minifail qt; done; [.. snip ..] ii libc6 2.10.2-2 GNU C Library: Shared libraries It seems libc6 2.10.2-3 fixed the problem. I cannot reproduce the bug with both test cases above any more. As far as I can tell from the changelog, rebuild with gcc-4.4 helped. I will close this bug once a couple of KDE packages get built on hppa successfully. -- Modestas Vainius modes...@vainius.eu signature.asc Description: This is a digitally signed message part.
Bug#561203: FTBFS [hppa] - pthread_create() (QThread) + fork() = crash
It seems libc6 2.10.2-3 fixed the problem. I cannot reproduce the bug with both test cases above any more. As far as I can tell from the changelog, rebuild with gcc-4.4 helped. I will close this bug once a couple of KDE packages get built on hppa successfully. Hello Modestas, libc6-2.10.2-3 made it much, *much* better (I'm not sure yet why!!). But I can still reproduce the bug on my system with your testcases. It's just much harder to reproduce it, but it still happens. So, it's not fixed yet, it just happens much less often. I'm continuing to look into this issue, but at least we have some progress... Helge -- Preisknaller: GMX DSL Flatrate für nur 16,99 Euro/mtl.! http://portal.gmx.net/de/go/dsl02 -- To UNSUBSCRIBE, email to debian-glibc-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Bug#561203: FTBFS [hppa] - pthread_create() (QThread) + fork() = crash
tags 561203 - pending thanks Hello, On pirmadienis 04 Sausis 2010 17:18:40 Helge Deller wrote: libc6-2.10.2-3 made it much, *much* better (I'm not sure yet why!!). But I can still reproduce the bug on my system with your testcases. It's just much harder to reproduce it, but it still happens. So, it's not fixed yet, it just happens much less often. Indeed, you are right. I was able to run `./minifail qt` 90k times without a hang, but it hang at the 3000+th run next time. Anyway, probability of hitting this bug has become much much lower now so maybe KDE will finally build on hppa now. Even if build fails with a timeout like previously, it should be enough to give back it once again. Btw, backtrace of the hang is different now: (gdb) t 2 [Switching to thread 2 (Thread 0x41d26480 (LWP 4088))]#0 0x046c in ?? () (gdb) bt #0 0x046c in ?? () #1 0x40a06380 in ?? () from /lib/libc.so.6 #2 0x40a06380 in ?? () from /lib/libc.so.6 #3 0x40a060b4 in malloc () from /lib/libc.so.6 #4 0x4093b2b4 in operator new(unsigned int) () from /usr/lib/libstdc++.so.6 #5 0x404e45e8 in QThreadPrivate::createEventDispatcher (data=0x16c40) at thread/qthread_unix.cpp:159 #6 0x404e4858 in QThreadPrivate::start (arg=0x168f8) at thread/qthread_unix.cpp:183 #7 0x403080a0 in start_thread () from /lib/libpthread.so.0 #8 0x40a66898 in clone () from /lib/libc.so.6 #9 0x04010300 in ?? () #10 0x04010300 in ?? () Backtrace stopped: previous frame identical to this frame (corrupt stack?) (gdb) x/20i 0x40a060b4 0x40a060b4 malloc+1208: b,l 0x40a05d60 malloc+356,r0 0x40a060b8 malloc+1212: copy ret0,r5 0x40a060bc malloc+1216: mfctl tr3,ret0 0x40a060c0 malloc+1220: ldi 0,r23 0x40a060c4 malloc+1224: ldw -478(ret0),r25 0x40a060c8 malloc+1228: ldi 1,r24 0x40a060cc malloc+1232: depwi -1,31,1,r25 0x40a060d0 malloc+1236: copy r3,r26 0x40a060d4 malloc+1240: copy r19,r4 0x40a060d8 malloc+1244: be,l 100(sr2,r0),sr0,r31 0x40a060dc malloc+1248: ldi d2,r20 0x40a060e0 malloc+1252: copy r4,r19 0x40a060e4 malloc+1256: b,l 0x40a05d28 malloc+300,r0 0x40a060e8 malloc+1260: ldo -8(r5),r20 0x40a060ec malloc+1264: mfctl tr3,ret0 0x40a060f0 malloc+1268: ldi 0,r23 0x40a060f4 malloc+1272: ldw -478(ret0),r25 0x40a060f8 malloc+1276: ldi 1,r24 0x40a060fc malloc+1280: depwi -1,31,1,r25 0x40a06100 malloc+1284: copy r7,r26 (gdb) x/20i 0x40a06380 0x40a06380: b,l 0x40a0622c,r0 0x40a06384: copy r4,r19 0x40a06388: mfctl tr3,ret0 0x40a0638c: copy r5,r26 0x40a06390: ldw -478(ret0),r25 0x40a06394: ldi 0,r23 0x40a06398: depwi -1,31,1,r25 0x40a0639c: ldi 1,r24 0x40a063a0: copy r19,r4 0x40a063a4: be,l 100(sr2,r0),sr0,r31 0x40a063a8: ldi d2,r20 0x40a063ac: copy r4,r19 0x40a063b0: b,l,n 0x40a06290,r0 0x40a063b4: stw rp,-14(sp) 0x40a063b8: addil L%1000,r19,r1 0x40a063bc: ldo 40(sp),sp 0x40a063c0: ldw 35c(r1),ret0 0x40a063c4: stw r4,-34(sp) 0x40a063c8: copy r19,r4 0x40a063cc: stw r19,-20(sp) -- Modestas Vainius modes...@vainius.eu signature.asc Description: This is a digitally signed message part.
Processed: Re: Bug#561203: FTBFS [hppa] - pthread_create() (QThread) + fork() = crash
Processing commands for cont...@bugs.debian.org: tags 561203 - pending Bug #561203 [libc6] FTBFS [hppa] - pthread_create() (or QThread) + fork() = crash Removed tag(s) pending. thanks Stopping processing here. Please contact me if you need assistance. Debian bug tracking system administrator (administrator, Debian Bugs database) -- To UNSUBSCRIBE, email to debian-glibc-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Bug#561203: FTBFS [hppa] - pthread_create() (QThread) + fork() = crash
On Mon, Jan 04, 2010 at 05:47:54PM +0200, Modestas Vainius wrote: On pirmadienis 04 Sausis 2010 17:18:40 Helge Deller wrote: libc6-2.10.2-3 made it much, *much* better (I'm not sure yet why!!). But I can still reproduce the bug on my system with your testcases. It's just much harder to reproduce it, but it still happens. So, it's not fixed yet, it just happens much less often. Indeed, you are right. I was able to run `./minifail qt` 90k times without a hang, but it hang at the 3000+th run next time. Anyway, probability of hitting this bug has become much much lower now so maybe KDE will finally build on hppa now. Even if build fails with a timeout like previously, it should be enough to give back it once again. given back. -- To UNSUBSCRIBE, email to debian-glibc-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Bug#561203: Re: Bug#561203: FTBFS [hppa] - pthread_create() (QThread) + fork() = crash
Hi What's the status of this bug? It's holding the KDE transition which is blocking the Xorg and python transitions... Cheers Luk -- To UNSUBSCRIBE, email to debian-glibc-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Bug#561203: Re: Bug#561203: FTBFS [hppa] - pthread_create() (QThread) + fork() = crash
On Sun, Dec 27, 2009 at 9:47 AM, Luk Claes l...@debian.org wrote: What's the status of this bug? It's holding the KDE transition which is blocking the Xorg and python transitions... I'm working on this bug. The current status is under investigation. I don't have a good idea of what is going on or why it's crashing. Cheers, Carlos. -- To UNSUBSCRIBE, email to debian-glibc-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Bug#561203: FTBFS [hppa] - pthread_create() (QThread) + fork() = crash
On 12/27/2009 04:38 PM, Carlos O'Donell wrote: On Sun, Dec 27, 2009 at 9:47 AM, Luk Claesl...@debian.org wrote: What's the status of this bug? It's holding the KDE transition which is blocking the Xorg and python transitions... I'm working on this bug. The current status is under investigation. I don't have a good idea of what is going on or why it's crashing. I could reproduce this bug as well and will continue to debug as soon as I return back from christmas family visits. My current analysis/assumption is: I assumed, that the NPTL userspace implementation is correct and in this case I only see a difference in how the clone() syscall is called from pthread_create() and fork(). fork() always worked, while pthread_create() sometimes failed. pthread_create() uses clone(child_stack=0x4088d040, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID, parent_tidptr=0x4108c4e8, tls=0x4108c900, child_tidptr=0x4108c4e8), while fork() uses clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x40002028) So, maybe the kernel implementation of clone() misses some cache flush instructions for the newly created child in the pthread_create() case... ? That said... I still need some more time for testing... Helge -- To UNSUBSCRIBE, email to debian-glibc-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Bug#561203: FTBFS [hppa] - pthread_create() (QThread) + fork() = crash
Helge Deller wrote: On 12/27/2009 04:38 PM, Carlos O'Donell wrote: On Sun, Dec 27, 2009 at 9:47 AM, Luk Claesl...@debian.org wrote: What's the status of this bug? It's holding the KDE transition which is blocking the Xorg and python transitions... I'm working on this bug. The current status is under investigation. I don't have a good idea of what is going on or why it's crashing. I could reproduce this bug as well and will continue to debug as soon as I return back from christmas family visits. My current analysis/assumption is: So, maybe the kernel implementation of clone() misses some cache flush instructions for the newly created child in the pthread_create() case... ? That said... I still need some more time for testing... Thanks to both of you for the update. Hopefully the cause can be identiefied and fixed soon. Cheers Luk -- To UNSUBSCRIBE, email to debian-glibc-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Processed: Bug#561203: FTBFS [hppa] - pthread_create() (QThread) + fork() = crash
Processing commands for cont...@bugs.debian.org: retitle 561203 FTBFS [hppa] - pthread_create() (or QThread) + fork() = crash Bug #561203 [src:kde4libs] FTBFS [hppa] - build hangs Changed Bug title to 'FTBFS [hppa] - pthread_create() (or QThread) + fork() = crash' from 'FTBFS [hppa] - build hangs' reassign 561203 libc6 2.10.2-2 Bug #561203 [src:kde4libs] FTBFS [hppa] - pthread_create() (or QThread) + fork() = crash Bug reassigned from package 'src:kde4libs' to 'libc6'. Bug No longer marked as found in versions kde4libs/4:4.3.4-1. Bug #561203 [libc6] FTBFS [hppa] - pthread_create() (or QThread) + fork() = crash Bug Marked as found in versions eglibc/2.10.2-2. affects 561203 kde4libs Bug #561203 [libc6] FTBFS [hppa] - pthread_create() (or QThread) + fork() = crash Added indication that 561203 affects kde4libs tags 561203 help Bug #561203 [libc6] FTBFS [hppa] - pthread_create() (or QThread) + fork() = crash Added tag(s) help. thanks Stopping processing here. Please contact me if you need assistance. Debian bug tracking system administrator (administrator, Debian Bugs database) -- To UNSUBSCRIBE, email to debian-glibc-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Bug#561203: FTBFS [hppa] - pthread_create() (QThread) + fork() = crash
On Tue, Dec 22, 2009 at 2:54 PM, Modestas Vainius modes...@vainius.eu wrote: when investigating this issue further, I determined that fork() following pthread_create() sometimes makes the application crash. In order to reproduce, build attached minifail.cpp with: $ g++ -I/usr/include/qt4 -lQtCore minifail.cpp -o minifail -O0 -g Thank you for the test case. This means that thread 2 was not started at all and hung at clone(). Relevant QThread code at http://qt.gitorious.org/qt/qt/blobs/4.5/src/corelib/thread/qthread_unix.cpp I don't believe that it would be stuck at the store instruction which is pointed to by the PC (iaoqh). However, I do believe that something is wrong and I am going to investigate the kde4libs failure tonight. I strongly believe that if you fix the first problem, the 2nd one will disappear too as their origin is the same. Both tests work just fine on amd64. Contrary to what I said previously, the bug is reproducible under strace -f, but you have to wait much longer (up to 1th run). ii libc6 2.10.2-2 GNU C Library: Shared libraries Thanks. I'll look into this tonight. Cheers, Carlos. -- To UNSUBSCRIBE, email to debian-glibc-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Bug#561203: FTBFS [hppa] - pthread_create() (QThread) + fork() = crash
On 12/22/2009 08:54 PM, Modestas Vainius wrote: when investigating this issue further, I determined that fork() following pthread_create() sometimes makes the application crash. In order to reproduce, build attached minifail.cpp with: $ g++ -I/usr/include/qt4 -lQtCore minifail.cpp -o minifail -O0 -g (pipe()/read()/write() are only used to sync parent with child after fork(), they are irrelevant for the problem). Thanks! Good testcase! I could verify all problems you reported (segfaults and hangs). Kernel 2.6.33-rc1-32bit, UP-machine, c3000. Helge -- To UNSUBSCRIBE, email to debian-glibc-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org