The Linux Kernel Mailing List
 help / color / mirror / Atom feed
* pthreads & fork & execve
@ 2001-03-30 13:22 Dennis Noordsij
  2001-04-02 11:42 ` Richard Guenther
  0 siblings, 1 reply; 8+ messages in thread
From: Dennis Noordsij @ 2001-03-30 13:22 UTC (permalink / raw)
  To: linux-kernel

Hi,

I have question regarding use of pthreads, forks and execve's which appears 
to not work very well :-) First let me explain the reasoning though

We have an app that launches a few other apps and keeps track of their 
status, resource consumption etc. If one of the apps crashes, it is restarted 
according to certain parameters.

The app uses pthreads, and it's method of (re)starting an application is 
forking and calling execve. 

It works fine for all-but-one other app, which core dumps when started this 
way (from the commandline it works fine) and the core only traces back to  
int main(int argc, char **argv). It uses both pthreads and -ldl for plugin 
handling. 

We have tried changing the linking order (i.e. -ldl -lpthread, -lpthread, 
-ldl, etc), and even execv'ing a shell script that starts a shell script that 
starts the app - result is the same, instant core without even running.

I can see who forks together with threads and execve's are a messy 
combination, and a better solution altogether to our approach is appreciated 
just as much as a way to make the current solution work :-)

We have tested both kernels 2.4.2 and 2.2.18. 

We have tried on different systems, different hardware and slightly different 
distributions (debian potato, unstable, etc).

To sum up: using a pthreaded app to launch another pthreaded app by means of 
forking and exec(ve)'ng makes the second app core immediately, (at entering 
main). What to do?

Kind regards, and thanks for any help
Dennis Noordsij

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2001-04-03 10:20 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2001-03-30 13:22 pthreads & fork & execve Dennis Noordsij
2001-04-02 11:42 ` Richard Guenther
2001-04-02 12:54   ` Gustavo Niemeyer
2001-04-02 13:00     ` Jakub Jelinek
2001-04-02 14:25       ` Gustavo Niemeyer
2001-04-02 13:33     ` Adam Dickmeiss
2001-04-02 14:32       ` Gustavo Niemeyer
2001-04-03 10:09     ` Richard Guenther

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox