From owner-freebsd-hackers@FreeBSD.ORG Wed Jan 25 10:14:50 2006 Return-Path: X-Original-To: freebsd-hackers@freebsd.org Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id A0F0D16A471 for ; Wed, 25 Jan 2006 10:14:50 +0000 (GMT) (envelope-from Jose-Marcio.Martins@ensmp.fr) Received: from saci.ensmp.fr (saci.ensmp.fr [194.214.158.176]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3195443D76 for ; Wed, 25 Jan 2006 10:14:45 +0000 (GMT) (envelope-from Jose-Marcio.Martins@ensmp.fr) Received: from [127.0.0.1] (localhost.ensmp.fr. [127.0.0.1]) by saci.ensmp.fr (sendmail X.1.0.PreAlpha0.0) with ESMTP id S00000000000002AF00; Wed, 25 Jan 2006 11:14:42 +0100 Message-ID: <43D74F91.2090009@ensmp.fr> Date: Wed, 25 Jan 2006 11:14:41 +0100 From: Jose Marcio Martins da Cruz User-Agent: Mozilla/5.0 (X11; U; SunOS sun4u; en-US; rv:1.7) Gecko/20041221 X-Accept-Language: en-us, en MIME-Version: 1.0 To: freebsd-hackers@freebsd.org X-Enigmail-Version: 0.90.1.0 X-Enigmail-Supports: pgp-inline, pgp-mime Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Subject: Changes from 5.2.1 to 5.3 (theads / signal handling) X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 25 Jan 2006 10:14:50 -0000 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