delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2005/01/10/14:11:54

Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com
Date: Mon, 10 Jan 2005 20:11:36 +0100
From: Corinna Vinschen <corinna-cygwin AT cygwin DOT com>
To: cygwin AT cygwin DOT com
Subject: Re: problem in pthread_key_create
Message-ID: <20050110191136.GI23702@cygbert.vinschen.de>
Reply-To: cygwin AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
References: <200501101836 DOT j0AIaG9m007168 AT thor DOT remedy DOT nl>
Mime-Version: 1.0
In-Reply-To: <200501101836.j0AIaG9m007168@thor.remedy.nl>
User-Agent: Mutt/1.4.2i

On Jan 10 19:36, Johnny Willemsen wrote:
> Hi Corinna,
> 
> Thanks for the info. You are right, an EBUSY is returned when a valid key is
> passed. I wrote first the report about EBUSY, then after that of the ! Part.
> 
> But, why EBUSY and not EINVAL? I have not figured out why a regression test
> in ACE (see www.cs.wustl.edu/~schmidt) calls this twice. We now get the
> error in our logfile:
> ACE_Thread::keycreate: Device or resource busy (no more keys)
> 
> I would have expected:
> ACE_Thread::keycreate: Invalid value.
> 
> I find the error text so strange.

I don't.  You're asking the function to recreate a key which is already
in use.  "Already in use" roughly translates to EBUSY pretty well,
doesn't it?  Also, since the standards don't define a specific error
code in this situation, you can't expect one.

However, the important sentence in the SUSv3 description is:

  It is the responsibility of the programmer to ensure that it is called
  *exactly* once per key before use of the key.

So it's arguably a bug in the above regression test.


Corinna

-- 
Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Project Co-Leader          mailto:cygwin AT cygwin DOT com
Red Hat, Inc.

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019