Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 25 Jan 2006 11:14:41 +0100
From:      Jose Marcio Martins da Cruz <Jose-Marcio.Martins@ensmp.fr>
To:        freebsd-hackers@freebsd.org
Subject:   Changes from 5.2.1 to 5.3 (theads / signal handling)
Message-ID:  <43D74F91.2090009@ensmp.fr>

next in thread | raw e-mail | index | archive | help

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

Thanks

Jose-Marcio



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?43D74F91.2090009>