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=-4.1 required=3.0 tests=AWL,BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED,RCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL,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 9B8681F463 for ; Thu, 2 Jan 2020 13:08:26 +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:references:from:message-id:date :mime-version:in-reply-to:content-type :content-transfer-encoding; q=dns; s=default; b=CLGPxUnHPk2Mqjm7 s87xQb2AcbTxJfXUIvPlE27SCLSr8HjdwnP+OjeDWs92pRrt7UXWM5sIo32eGCcw oyYgBTtJovNTLwHFiZ4Hzkp/O35TdlGN+EDKI83ZMaHOUJAvxpToY0ChtkpIw615 3/wsS6YL3fQHIFX12gfREJ41mHs= 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:references:from:message-id:date :mime-version:in-reply-to:content-type :content-transfer-encoding; s=default; bh=lE70rjgprUcNcrImrooqu0 oBDSE=; b=kIBmxNApkPolV7l5bPgQVaMQec1/WQ0Eab/5Uhbl4Qoo+GczPQfi9m 6eHFHot+Wzq5QE2Kr/TWib85HLvN6FMOwVbXWw+EYE7FZVPyn/LK31A7TiRfeUJI 0Mrhw/hue4JjN/J0j+e/cifUGIeCzBY1v1EgmaEiZyJJovPlFHGsU= Received: (qmail 54703 invoked by alias); 2 Jan 2020 13:08:24 -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 54690 invoked by uid 89); 2 Jan 2020 13:08:23 -0000 Authentication-Results: sourceware.org; auth=none X-HELO: aye.elm.relay.mailchannels.net X-Sender-Id: dreamhost|x-authsender|siddhesh@gotplt.org X-Sender-Id: dreamhost|x-authsender|siddhesh@gotplt.org X-MC-Relay: Neutral X-MailChannels-SenderId: dreamhost|x-authsender|siddhesh@gotplt.org X-MailChannels-Auth-Id: dreamhost X-Share-Suffer: 7c916d454e4261b7_1577970500073_1786104850 X-MC-Loop-Signature: 1577970500073:1544927461 X-MC-Ingress-Time: 1577970500073 DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=gotplt.org; h=subject:to :references:from:message-id:date:mime-version:in-reply-to :content-type:content-transfer-encoding; s=gotplt.org; bh=lE70rj gprUcNcrImrooqu0oBDSE=; b=nT+gbHVRmDc2UyQZ8FE8PAVRGHpQKlEBZ5ZwfY LJEM0XlDTTzEvNhFATl0YQyn/QZudtpGPHAqwtKcAaRzgk0rHHNUWAjag293Q/UN lpAUOC8JIKgwpgXVwMBmMfehZO/U04egWnzLbz8RDCHMNNz6LlUCqOikq3jId1Cp HA+pk= Subject: Re: [PATCH 11/16] linux: Optimize fallback 32-bit clock_gettime To: Adhemerval Zanella , libc-alpha@sourceware.org References: <20191217214728.2886-1-adhemerval.zanella@linaro.org> <20191217214728.2886-11-adhemerval.zanella@linaro.org> X-DH-BACKEND: pdx1-sub0-mail-a59 From: Siddhesh Poyarekar Message-ID: Date: Thu, 2 Jan 2020 18:37:56 +0530 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.3.1 MIME-Version: 1.0 In-Reply-To: <20191217214728.2886-11-adhemerval.zanella@linaro.org> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-VR-OUT-STATUS: OK X-VR-OUT-SCORE: -100 X-VR-OUT-SPAMCAUSE: gggruggvucftvghtrhhoucdtuddrgedufedrvdeguddghedtucetufdoteggodetrfdotffvucfrrhhofhhilhgvmecuggftfghnshhusghstghrihgsvgdpffftgfetoffjqffuvfenuceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmnecujfgurhepuffvfhfhkffffgggjggtgfesthejredttdefjeenucfhrhhomhepufhiugguhhgvshhhucfrohihrghrvghkrghruceoshhiugguhhgvshhhsehgohhtphhlthdrohhrgheqnecukfhppeduvdefrddvhedvrddvtddvrddujedvnecurfgrrhgrmhepmhhouggvpehsmhhtphdphhgvlhhopegludelvddrudeikedruddrleejngdpihhnvghtpeduvdefrddvhedvrddvtddvrddujedvpdhrvghtuhhrnhdqphgrthhhpefuihguughhvghshhcurfhohigrrhgvkhgrrhcuoehsihguughhvghshhesghhothhplhhtrdhorhhgqedpmhgrihhlfhhrohhmpehsihguughhvghshhesghhothhplhhtrdhorhhgpdhnrhgtphhtthhopegrughhvghmvghrvhgrlhdriigrnhgvlhhlrgeslhhinhgrrhhordhorhhgnecuvehluhhsthgvrhfuihiivgeptd On 18/12/19 3:17 am, Adhemerval Zanella wrote: > This patch avoid probing the __NR_clock_getttime64 syscall each time > __clock_gettime64 is issued on a kernel without 64 bit time support. > Once ENOSYS is obtained, only 32-bit clock_gettime are used. > > The following snippet: > > clock_gettime (CLOCK_REALTIME, &(struct timespec) { 0 }); > clock_gettime (CLOCK_MONOTONIC, &(struct timespec) { 0 }); > clock_gettime (CLOCK_BOOTTIME, &(struct timespec) { 0 }); > clock_gettime (20, &(struct timespec) { 0 }); > > On a kernel without 64 bit time support and with vDSO support results > on the following syscalls: > > syscall_0x193(0, 0xff87ba30, [...]) = -1 ENOSYS (Function not implemented) > clock_gettime(CLOCK_BOOTTIME, {tv_sec=927082, tv_nsec=474382032}) = 0 > clock_gettime(0x14 /* CLOCK_??? */, 0xff87b9f8) = -1 EINVAL (Invalid argument) > > While on a kernel without vDSO support: > > syscall_0x193(0, 0xbec95550, 0xb6ed2000, 0x1, 0xbec95550, 0) = -1 (errno 38) > clock_gettime(CLOCK_REALTIME, {tv_sec=1576615930, tv_nsec=638250162}) = 0 > clock_gettime(CLOCK_MONOTONIC, {tv_sec=1665478, tv_nsec=638779620}) = 0 > clock_gettime(CLOCK_BOOTTIME, {tv_sec=1675418, tv_nsec=292932704}) = 0 > clock_gettime(0x14 /* CLOCK_??? */, 0xbec95530) = -1 EINVAL (Invalid argument) > > Checked on i686-linux-gnu on 4.15 kernel. > --- > sysdeps/unix/sysv/linux/clock_gettime.c | 16 ++++++++++++---- > 1 file changed, 12 insertions(+), 4 deletions(-) > OK. Reviewed-by: Siddhesh Poyarekar