[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: 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 Claes<luk@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


Reply to: