From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on dcvr.yhbt.net X-Spam-Level: X-Spam-ASN: AS31976 209.132.180.0/23 X-Spam-Status: No, score=-3.9 required=3.0 tests=AWL,BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_EF,HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED,SPF_HELO_PASS,SPF_PASS shortcircuit=no autolearn=ham autolearn_force=no version=3.4.2 Received: from sourceware.org (server1.sourceware.org [209.132.180.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dcvr.yhbt.net (Postfix) with ESMTPS id AEAEC1F461 for ; Thu, 27 Jun 2019 20:07:39 +0000 (UTC) DomainKey-Signature: a=rsa-sha1; c=nofws; d=sourceware.org; h=list-id :list-unsubscribe:list-subscribe:list-archive:list-post :list-help:sender:subject:to:cc:references:from:message-id:date :mime-version:in-reply-to:content-type :content-transfer-encoding; q=dns; s=default; b=Ryg9Y6sXiP1U1gri X+ClKpi8Zw3g3mJvQTUKTc8gy5UnzgvF8naQ0uneNlBI2SxqYe/3HqOWzsC05jgW 27DTHZuj8+XpxIDL0bEtFIbBwZW8vWjHTcI4UYEuKPiQTDxY6Q00bpwq7v0ORthL sCtGr0gsp+nRJQqt6WkIXQQF+sE= DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=sourceware.org; h=list-id :list-unsubscribe:list-subscribe:list-archive:list-post :list-help:sender:subject:to:cc:references:from:message-id:date :mime-version:in-reply-to:content-type :content-transfer-encoding; s=default; bh=2gpBj9m8sVkXqvBh22pyV0 m8UOs=; b=P9qwDCwrkuRaE9rS/+XVKy82S3DF9qMzaIjh8QQncVO7XazJhWRfUQ aP3/LArowME3AujcdyS3BJuh3Siw/sg2euClk/IF3E6tnKQ3zczmkQvI4rgrlc6z Q66h9ifoARBFc++JRTEV8AGG0JdtXd9lJQfcs0ED2JX8GCGRLHvSA= Received: (qmail 28957 invoked by alias); 27 Jun 2019 20:07:37 -0000 Mailing-List: contact libc-alpha-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: libc-alpha-owner@sourceware.org Received: (qmail 28949 invoked by uid 89); 27 Jun 2019 20:07:37 -0000 Authentication-Results: sourceware.org; auth=none X-HELO: mail-qk1-f178.google.com Subject: Re: glibc at the Toolchains microconference at LPC 2019 To: Florian Weimer , Zack Weinberg Cc: "Dmitry V. Levin" , GNU C Library References: <87o92kibdz.fsf@oldenburg2.str.redhat.com> <20190626163908.GA13251@altlinux.org> <530DF2A2-2D76-43F6-81D0-405EFE097A57@brauner.io> <5f740811-e7d7-6ece-4156-89651666e416@redhat.com> <20190627093928.GA25423@altlinux.org> <87a7e3rljd.fsf@oldenburg2.str.redhat.com> From: Carlos O'Donell Message-ID: <27351f76-ac6a-1607-cb63-21282b3bd84f@redhat.com> Date: Thu, 27 Jun 2019 16:07:31 -0400 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.7.0 MIME-Version: 1.0 In-Reply-To: <87a7e3rljd.fsf@oldenburg2.str.redhat.com> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit On 6/27/19 1:21 PM, Florian Weimer wrote: > * Zack Weinberg: > >> I specifically disagree with this. The existence of these dedicated >> libraries does not mean that there is no need for a minimal wrapper in >> the C library. In fact, providing a minimal wrapper in the C library >> would make the implementation of dedicated libraries easier, since >> they can concentrate on designing their higher-level API rather than >> wasting engineering effort on system call wrappers. glibc has already >> done all of the low-level work necessary. > > We would have to begin backporting syscall wrappers, though. Otherwise > these libraries are blocked until a glibc upgrade, which may not happen > any time soon. Correct. > Maybe we can move well-established libraries into glibc eventually, but > that can have unpredictable results if those libraries did not use > symbol versioning from the start (so that their implementation > interposes a newer glibc implementation for the entire process). I don't think anyone is asking for this, but it will be a question that comes up when established practice is migrated to glibc. How did libstdc++'s adoption of boost APIs handle this? I think they just renamed things? > But I don't know if this (no syscall wrappers except in glibc) works as > a default policy. I didn't read Zack's comment as meaning "no syscall wrappers *except* in glibc," but "users can trust glibc to *always* provide syscall wrappers" in that we as a community should not shirk our duty to provide syscall wrappers because project X, Y, or Z says they will do it for us or are already doing it as part of some userspace interface. There will always be users that want that minimal C-callable interface. -- Cheers, Carlos.