NetBSD Problem Report #45146
From www@NetBSD.org Thu Jul 14 16:26:52 2011
Return-Path: <www@NetBSD.org>
Received: from mail.netbsd.org (mail.netbsd.org [204.152.190.11])
by www.NetBSD.org (Postfix) with ESMTP id 959FA63CAA2
for <gnats-bugs@gnats.NetBSD.org>; Thu, 14 Jul 2011 16:26:52 +0000 (UTC)
Message-Id: <20110714162652.0632163BEBD@www.NetBSD.org>
Date: Thu, 14 Jul 2011 16:26:52 +0000 (UTC)
From: o.vd.linden@quicknet.nl
Reply-To: o.vd.linden@quicknet.nl
To: gnats-bugs@NetBSD.org
Subject: sigwait() cancellation point
X-Send-Pr-Version: www-1.0
>Number: 45146
>Category: lib
>Synopsis: sigwait() cancellation point
>Confidential: no
>Severity: non-critical
>Priority: medium
>Responsible: lib-bug-people
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Thu Jul 14 16:30:00 +0000 2011
>Originator: Onno van der Linden
>Release: 5.99.53 i386
>Organization:
>Environment:
NetBSD sheep 5.99.53 NetBSD 5.99.53 (SHEEP) #0: Thu Jun 16 21:15:01 MEST 2011 onno@sheep:/usr/src/sys/arch/i386/compile/SHEEP i386
>Description:
pthread_testcancel(3) contains a list of functions that should have a cancellation point.
- clock_nanosleep() mentioned in pthread_testcancel(3) should probably be clock()
- sem_timedwait() mentioned in pthread_testcancel(3) should probably be sem_trywait()
- waitid() mentioned in pthread_testcancel(3) should be ????
- pkg/45131 contains a fix for csup that's wrong. It looks like sigwait() (implemented in libc as a wrapper around sigtimedwait()) isn't calling the sigtimedwait() wrapper in pthread_cancelstub.c when using sigwait() in a thread (like csup does)
>How-To-Repeat:
See pkg/45131
>Fix:
pthread_testcancel(3) should contain the changes mentioned earlier.
sigwait() cancellation point could be fixed with another entry in pthread_cancelstub.c but that doesn't look right to me.
(Contact us)
$NetBSD: query-full-pr,v 1.39 2013/11/01 18:47:49 spz Exp $
$NetBSD: gnats_config.sh,v 1.8 2006/05/07 09:23:38 tsutsui Exp $
Copyright © 1994-2007
The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.