Jose Marcio Martins da Cruz wrote:

Hello,

I have a problem with an application I wrote.

It works fine under Solaris, Linux, and FreeBSD till release 5.2.1.

Under FreeBSD 5.3 and newers I have problems.

The application is constituted by two processes : a supervisor and modules. The
supervisor forks and become a module when it shall launch one.

The supervisor is a single loop and it has a thread to handle signals. Each
module is a multithreaded server, with its own thread to handle signals.

Under FreeBSD 5.3 and newers, when the supervisor forks to become a module, it
receives a SIGABRT and exits immediately when it launches the signal handler 
thread.

I solved this by replacing the signal handling of the father : using a handler
defined with sigaction instead of using a thread. But I'd like to understanding
what's wrong with this and what changed from FreeBSD 5.2.1 to 5.3

a new threading library.

have you tried 6.0?
also, does the child do an exec() after forking?

Thanks

Jose-Marcio
_______________________________________________
freebsd-hackers@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "[EMAIL PROTECTED]"
_______________________________________________
freebsd-hackers@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to