From owner-svn-src-all@freebsd.org Wed Jun 1 15:44:48 2016 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 75DBBB61A6A for ; Wed, 1 Jun 2016 15:44:48 +0000 (UTC) (envelope-from ed@nuxi.nl) Received: from mail-yw0-x22e.google.com (mail-yw0-x22e.google.com [IPv6:2607:f8b0:4002:c05::22e]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 446C010C7 for ; Wed, 1 Jun 2016 15:44:48 +0000 (UTC) (envelope-from ed@nuxi.nl) Received: by mail-yw0-x22e.google.com with SMTP id o16so22182596ywd.2 for ; Wed, 01 Jun 2016 08:44:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nuxi-nl.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc; bh=+2wbew8Lx3m1CbNAxIufeDVG//4QAK+6/Q478rJFh5g=; b=bgJpQZQl8YgfNEjS4Vt9JnlAiRDbxpc6xZ+nF324RseoEPrfYwKuepSlyVIWpz8UA1 UWiNv9sssZ1CLB7N1225MVrkpLosBS2cDeFv9qcvIT/9+lALAomZq1ZgHY43KygwdRJ4 hc5bxZowlxQe1nrc4/LuNZ6nNt7Ynua8iAgcL04SS5mUqTvvlSLqXE4K8NIzoV2DBsBm Pj7qxCp7HNHYNyLROhv0F5iq6WZQ+Gk6lG/4Klg5nUxraG0DGKx7NlSRKP+TKzN1tzoV FNvdctJm6yQNRpAatoPhUFnfk/TU5+Fwa81a/xTH9SNbtVIq/VpxbB274xadLGtdx815 Irhw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:date :message-id:subject:from:to:cc; bh=+2wbew8Lx3m1CbNAxIufeDVG//4QAK+6/Q478rJFh5g=; b=JrTk2qQ/FSAm6pkhgJkHZmF4QKTvEpYv6LW6NQb2SqK2ugetieHByTbLWk2cnnqlTQ JNuA3fMSPn36CawFpdaK7dxhwomWHCEKW4gtSbibF5zDq/LuZ8iW8NsMOLvzA49osAHO V78knFlZem2Rjjs9uZXLxsZ8PIttkI2/fq2BsgA6if5l8AId5WaOlqsZRZFsXia+iLHf eUTL9g/UkPcwHBR0iBWi4QUZrOrZ3a/Usqbl/K08D7+Pf1cHMsB635+0WrgoQ8XQIWj4 euVq99+l5beB+oIQDBiZ9k9bQPyrm3ziP+heyhy0WbT0zAr+Zv90W3qnz+OGzrmKiKb+ 609w== X-Gm-Message-State: ALyK8tJZQm+q7gQITxYrUK/DMi/ftsj4qqGjAg7KZK3mneeZv6Xt7upa7ts24+uVrUXyyooiKNebd18Lpaqcpw== MIME-Version: 1.0 X-Received: by 10.13.202.207 with SMTP id m198mr2985002ywd.140.1464795887366; Wed, 01 Jun 2016 08:44:47 -0700 (PDT) Received: by 10.13.201.199 with HTTP; Wed, 1 Jun 2016 08:44:47 -0700 (PDT) In-Reply-To: <20160601183101.X1028@besplex.bde.org> References: <201605311905.u4VJ5geL053766@repo.freebsd.org> <20160601183101.X1028@besplex.bde.org> Date: Wed, 1 Jun 2016 17:44:47 +0200 Message-ID: Subject: Re: svn commit: r301071 - head/sys/sys From: Ed Schouten To: Bruce Evans Cc: Ed Schouten , src-committers , svn-src-all@freebsd.org, svn-src-head@freebsd.org Content-Type: text/plain; charset=UTF-8 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.22 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 01 Jun 2016 15:44:48 -0000 Hi Bruce, 2016-06-01 11:31 GMT+02:00 Bruce Evans : >> - This header file has always depended on pthread_t, pthread_attr_t, >> struct timespec, size_t and uid_t. Only as of POSIX 2008, these >> dependencies have been states explicitly. They should now be defined. > > Not always. POSIX didn't have pthreads or timespecs before about 1993. Sure. s/always/for a long time/ >> - In our implementation, struct sigevent::sigev_notify_attributes has >> type "void *" instead of "pthread_attr_t *". My guess is that this was >> done to prevent pulling in the pthread types, but this can easily be >> avoided by using the underlying structure types. > > Not easily, since the tags of the underlying struct types are in the > application namespace, at least up to POSIX 2001. Yeah, it's quite unfortunate that we use structure types starting with 'pthread'. They should have had leading underscores. But in my opinion that's not a problem specific to this change; it's a problem with our pthread implementation in general. >> +#include > > This gives the following pollution (which breaks almost everything since > includes this header: > - struct tag names pthread* > - struct member names state and mutex Yes. It would have made so much more sense if a header like would have defined all pthread types as __pthread_t, __pthread_mutex_t, etc. That way there would have been a way to expose just pthread_t and pthread_attr_t without pulling in the rest. -- Ed Schouten Nuxi, 's-Hertogenbosch, the Netherlands KvK-nr.: 62051717