From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-2.8 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id AA5BEC433F5 for ; Fri, 24 Sep 2021 04:34:50 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 8741561107 for ; Fri, 24 Sep 2021 04:34:50 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S242218AbhIXEgN (ORCPT ); Fri, 24 Sep 2021 00:36:13 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:43170 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S237144AbhIXEgL (ORCPT ); Fri, 24 Sep 2021 00:36:11 -0400 Received: from mail-il1-x130.google.com (mail-il1-x130.google.com [IPv6:2607:f8b0:4864:20::130]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 0A491C061574; Thu, 23 Sep 2021 21:34:39 -0700 (PDT) Received: by mail-il1-x130.google.com with SMTP id v16so9006969ilg.3; Thu, 23 Sep 2021 21:34:38 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=2r3uHfiNTEeauI0qfOMLdIlPnnjW+o7oi9itFKgNNmo=; b=fdGPBfTIIKmH8Ik+1f3lUEUMb8jFS/BFVFKhiWWulXm5ZJhjP92WmTlype1RVSjDkV l5kt8t3VvnDaMlBZnXLB6iZDpokrW39ZZGfkursRajR8yyS12bOM9QCNSUpP0IQbrFkO qkr33cDNczNmXBKCas0BR0rg39eaNcBRW5/EQT2s0IkHgIU/pLnKlYChY3pSAebeEXvO LmRWvX5DTRNP268BNkKVoXSrxbHxCQ8dvD52hRpocR+dB4po7zOeNCRGqmEob85s5tdj eBiZGcYaD29G5rOCykoi/nO2/5o7Ud5GnS2qMDKI4MHKLb2U0d4FCk0qriKkW57uB/aM KgVA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=2r3uHfiNTEeauI0qfOMLdIlPnnjW+o7oi9itFKgNNmo=; b=cTV0saUNLsQWyJdz+uOEoHdHPffCdUsBYUg1MasCSf2tdmOahnN5lmZthLedl6hUTa 1B65SE6o+IMIlJl7jd45YGNAsAo/Ekz1KuXYGaXMQ/wUhdvpY73YuD0/RvvtGNyWlmTn 7UgDfFZBcl430DhFlXeiT82XIWMYiIlyRkFNTdQSLJmda1fph55Gb+2orrRrVKMJzSbO U6hXO7rF0RSWKjlyixBo3pa2Gn8qFaFZxyOAdpfrTO4HhL9iGRTfjg2bF7HhIrPF4SnW 6D3NXdIGRhpB/5G42yz0iIEp6xz+xvwHdwxPp3akmZaiIybMiMXBwBR1g+D0I2Eo2nsQ NrWQ== X-Gm-Message-State: AOAM531pNhI4JbiNOfQS/Cupk38tXczcn0VjoLRohs9wv8tJbgUBxiYb /UTKwPNZ4YbA4adURrc/UzQK57Zw2C+UnYNpVuI= X-Google-Smtp-Source: ABdhPJzEgBABW4mg2utXHmBrllZW9Z85DYLZ9jFrATnK8EeNSzpxxUEjhvDeaZruoslRCDJJpaNQGi/6Ll9SK8alKw8= X-Received: by 2002:a05:6e02:1088:: with SMTP id r8mr6568454ilj.46.1632458078345; Thu, 23 Sep 2021 21:34:38 -0700 (PDT) MIME-Version: 1.0 References: <20210917061040.2270822-1-alistair.francis@opensource.wdc.com> <20210917061040.2270822-2-alistair.francis@opensource.wdc.com> <72990864-5ec6-1f73-efd9-61b667a172dd@collabora.com> In-Reply-To: <72990864-5ec6-1f73-efd9-61b667a172dd@collabora.com> From: Alistair Francis Date: Fri, 24 Sep 2021 14:34:12 +1000 Message-ID: Subject: Re: [PATCH v3 2/2] perf bench: Add support for 32-bit systems with 64-bit time_t To: =?UTF-8?Q?Andr=C3=A9_Almeida?= Cc: Alistair Francis , Linux Kernel Mailing List , linux-riscv , Namhyung Kim , Jiri Olsa , linux-perf-users@vger.kernel.org, Alexander Shishkin , Mark Rutland , Arnaldo Carvalho de Melo , Davidlohr Bueso , Darren Hart , Peter Zijlstra , Ingo Molnar , Thomas Gleixner , Atish Patra , Arnd Bergmann , Alistair Francis Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, Sep 21, 2021 at 8:47 AM Andr=C3=A9 Almeida wrote: > > Hi Alistair, > > =C3=80s 03:10 de 17/09/21, Alistair Francis escreveu: > > From: Alistair Francis > > > > Some 32-bit architectures (such are 32-bit RISC-V) only have a 64-bit > > time_t and as such don't have the SYS_futex syscall. This patch will > > allow us to use the SYS_futex_time64 syscall on those platforms. > > > > Thanks for your patch! However, I don't think that any futex operation > at perf has timeout. Do you plan to implement a test that use it? Or the > idea is to get this ready for it in case someone want to do so in the > future? I don't have plans to implement any new tests (although I'm happy to add one if need be). My goal was just to get this to build for RISC-V 32-bit. The timeout was already exposed by the old futex macro, so I was just following that. > > > Also, I faced a similar problem with the new futex2 syscalls, that > supports exclusively 64bit timespec. But I took a different approach: I > called __NR_clock_gettime64 for 32bit architectures so it wouldn't > require to convert the struct: > > #if defined(__i386__) || __TIMESIZE =3D=3D 32 > # define NR_gettime64 __NR_clock_gettime64 > #else > # define NR_gettime64 __NR_clock_gettime > #endif > > struct timespec64 { > long long tv_sec; /* seconds */ > long long tv_nsec; /* nanoseconds */ > }; > > int gettime64(clock_t clockid, struct timespec64 *tv) > { > return syscall(NR_gettime64, clockid, tv); > } > > Then we can just use &timeout at __NR_futex_time64 for 32bit arch and at > __NR_futex for 64bit arch. So the idea is to use 64-bit time_t everywhere and only work on 5.1+ kernel= s. If that's the favoured approach I can convert this series to your idea. Alistair > > This might be a simpler solution to the problem that you are facing but > I'm not entirely sure. Also, futex's selftests do use the timeout > argument and I think that they also won't compile in 32-bit RISC-V, so > maybe we can start from there so we can actually test the timeout > argument and check if it's working. > > Thanks, > Andr=C3=A9 From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-0.8 required=3.0 tests=BAYES_00,DKIM_ADSP_CUSTOM_MED, DKIM_SIGNED,DKIM_VALID,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id AC950C433EF for ; Fri, 24 Sep 2021 04:35:13 +0000 (UTC) Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 30AF061107 for ; Fri, 24 Sep 2021 04:35:12 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 mail.kernel.org 30AF061107 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:Cc:To:Subject:Message-ID:Date:From: In-Reply-To:References:MIME-Version:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=CK/VZlAcIkYUQC/7wAo2BB99IV7lddVLNSJGykeFQ0o=; b=1Q0SkhFpQMUIC+ f5SD5ryvQV31Yp+s+9yfMMXSLlvcwRU3uG24o8NLnrWIjniKaPotc4xqGlC5yZ2bnrlkvDUTmu+uX bPzl9Pj8ECpj6VwwXPcpKCm8Cz30N2yUEsA+DpcFxuuG7B0vUv+oj8x/h71AzA7zRjKDhhtVBd/nj r+So+pCfNqleGEhUx3YK8jFvyilbdFJt23abQrtRLcLISJDkJCvkOMF1fMtLeFD1XGhn9FxIhmFIn VS+gjNzHv1ayCmhGNkvVVqGMGmewBf/BJFGah8BcdXH1a3Io7bQcg2HeG+KnXT+F8cn/zLh7Y11cH ikUm0sbi+DV7zXFRqebg==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1mTcv4-00D51d-U1; Fri, 24 Sep 2021 04:34:42 +0000 Received: from mail-il1-x134.google.com ([2607:f8b0:4864:20::134]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1mTcv1-00D514-ND for linux-riscv@lists.infradead.org; Fri, 24 Sep 2021 04:34:41 +0000 Received: by mail-il1-x134.google.com with SMTP id i13so8993807ilm.4 for ; Thu, 23 Sep 2021 21:34:38 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=2r3uHfiNTEeauI0qfOMLdIlPnnjW+o7oi9itFKgNNmo=; b=fdGPBfTIIKmH8Ik+1f3lUEUMb8jFS/BFVFKhiWWulXm5ZJhjP92WmTlype1RVSjDkV l5kt8t3VvnDaMlBZnXLB6iZDpokrW39ZZGfkursRajR8yyS12bOM9QCNSUpP0IQbrFkO qkr33cDNczNmXBKCas0BR0rg39eaNcBRW5/EQT2s0IkHgIU/pLnKlYChY3pSAebeEXvO LmRWvX5DTRNP268BNkKVoXSrxbHxCQ8dvD52hRpocR+dB4po7zOeNCRGqmEob85s5tdj eBiZGcYaD29G5rOCykoi/nO2/5o7Ud5GnS2qMDKI4MHKLb2U0d4FCk0qriKkW57uB/aM KgVA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=2r3uHfiNTEeauI0qfOMLdIlPnnjW+o7oi9itFKgNNmo=; b=fYHunyQEuxYk7y8sPSX+TK95YXgk7BtJg6/LwF1GEnZUM7oUPDPMTVONNxRj5itBhG L0vBQUTM0YxwaMp2xoWbRCgO/9ZzucWZSlUWIQsIUQ+BO8E4s4Jj3HDJyf2O3a/rfBnK TGYvGMbAnI6RpiG9sFmMXzoqyYX/pmosAnBcZ5w/q6SgHyza0aeONH5XxwGKekNEbcIX B7+81zG/VO7uRCY4EdIEHp+sh6NaFcxO/P/LaK89QJJtDa3yOGVI3zOGPPWy4PUouY93 pxu0gzQlLqxJVe/4dQyTqP9vvt/ZUx1Fywy5WvS5OdqBmGqinrFxTvFkTR4++ZuGTDts utfg== X-Gm-Message-State: AOAM531T/HzS5mY0cfAf9m4yy7hBbVvoTak6+P3FtqvC8+n19pv8UspJ O0oZK1orGQjbAdPV1wrMvIpr1rnTFsiGzs8Te9A= X-Google-Smtp-Source: ABdhPJzEgBABW4mg2utXHmBrllZW9Z85DYLZ9jFrATnK8EeNSzpxxUEjhvDeaZruoslRCDJJpaNQGi/6Ll9SK8alKw8= X-Received: by 2002:a05:6e02:1088:: with SMTP id r8mr6568454ilj.46.1632458078345; Thu, 23 Sep 2021 21:34:38 -0700 (PDT) MIME-Version: 1.0 References: <20210917061040.2270822-1-alistair.francis@opensource.wdc.com> <20210917061040.2270822-2-alistair.francis@opensource.wdc.com> <72990864-5ec6-1f73-efd9-61b667a172dd@collabora.com> In-Reply-To: <72990864-5ec6-1f73-efd9-61b667a172dd@collabora.com> From: Alistair Francis Date: Fri, 24 Sep 2021 14:34:12 +1000 Message-ID: Subject: Re: [PATCH v3 2/2] perf bench: Add support for 32-bit systems with 64-bit time_t To: =?UTF-8?Q?Andr=C3=A9_Almeida?= Cc: Alistair Francis , Linux Kernel Mailing List , linux-riscv , Namhyung Kim , Jiri Olsa , linux-perf-users@vger.kernel.org, Alexander Shishkin , Mark Rutland , Arnaldo Carvalho de Melo , Davidlohr Bueso , Darren Hart , Peter Zijlstra , Ingo Molnar , Thomas Gleixner , Atish Patra , Arnd Bergmann , Alistair Francis X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20210923_213439_822420_388FBC7C X-CRM114-Status: GOOD ( 28.06 ) X-BeenThere: linux-riscv@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-riscv" Errors-To: linux-riscv-bounces+linux-riscv=archiver.kernel.org@lists.infradead.org T24gVHVlLCBTZXAgMjEsIDIwMjEgYXQgODo0NyBBTSBBbmRyw6kgQWxtZWlkYSA8YW5kcmVhbG1l aWRAY29sbGFib3JhLmNvbT4gd3JvdGU6Cj4KPiBIaSBBbGlzdGFpciwKPgo+IMOAcyAwMzoxMCBk ZSAxNy8wOS8yMSwgQWxpc3RhaXIgRnJhbmNpcyBlc2NyZXZldToKPiA+IEZyb206IEFsaXN0YWly IEZyYW5jaXMgPGFsaXN0YWlyLmZyYW5jaXNAd2RjLmNvbT4KPiA+Cj4gPiBTb21lIDMyLWJpdCBh cmNoaXRlY3R1cmVzIChzdWNoIGFyZSAzMi1iaXQgUklTQy1WKSBvbmx5IGhhdmUgYSA2NC1iaXQK PiA+IHRpbWVfdCBhbmQgYXMgc3VjaCBkb24ndCBoYXZlIHRoZSBTWVNfZnV0ZXggc3lzY2FsbC4g VGhpcyBwYXRjaCB3aWxsCj4gPiBhbGxvdyB1cyB0byB1c2UgdGhlIFNZU19mdXRleF90aW1lNjQg c3lzY2FsbCBvbiB0aG9zZSBwbGF0Zm9ybXMuCj4gPgo+Cj4gVGhhbmtzIGZvciB5b3VyIHBhdGNo ISBIb3dldmVyLCBJIGRvbid0IHRoaW5rIHRoYXQgYW55IGZ1dGV4IG9wZXJhdGlvbgo+IGF0IHBl cmYgaGFzIHRpbWVvdXQuIERvIHlvdSBwbGFuIHRvIGltcGxlbWVudCBhIHRlc3QgdGhhdCB1c2Ug aXQ/IE9yIHRoZQo+IGlkZWEgaXMgdG8gZ2V0IHRoaXMgcmVhZHkgZm9yIGl0IGluIGNhc2Ugc29t ZW9uZSB3YW50IHRvIGRvIHNvIGluIHRoZQo+IGZ1dHVyZT8KCkkgZG9uJ3QgaGF2ZSBwbGFucyB0 byBpbXBsZW1lbnQgYW55IG5ldyB0ZXN0cyAoYWx0aG91Z2ggSSdtIGhhcHB5IHRvCmFkZCBvbmUg aWYgbmVlZCBiZSkuCgpNeSBnb2FsIHdhcyBqdXN0IHRvIGdldCB0aGlzIHRvIGJ1aWxkIGZvciBS SVNDLVYgMzItYml0LiBUaGUgdGltZW91dAp3YXMgYWxyZWFkeSBleHBvc2VkIGJ5IHRoZSBvbGQg ZnV0ZXggbWFjcm8sIHNvIEkgd2FzIGp1c3QgZm9sbG93aW5nCnRoYXQuCgo+Cj4KPiBBbHNvLCBJ IGZhY2VkIGEgc2ltaWxhciBwcm9ibGVtIHdpdGggdGhlIG5ldyBmdXRleDIgc3lzY2FsbHMsIHRo YXQKPiBzdXBwb3J0cyBleGNsdXNpdmVseSA2NGJpdCB0aW1lc3BlYy4gQnV0IEkgdG9vayBhIGRp ZmZlcmVudCBhcHByb2FjaDogSQo+IGNhbGxlZCBfX05SX2Nsb2NrX2dldHRpbWU2NCBmb3IgMzJi aXQgYXJjaGl0ZWN0dXJlcyBzbyBpdCB3b3VsZG4ndAo+IHJlcXVpcmUgdG8gY29udmVydCB0aGUg c3RydWN0Ogo+Cj4gI2lmIGRlZmluZWQoX19pMzg2X18pIHx8IF9fVElNRVNJWkUgPT0gMzIKPiAj IGRlZmluZSBOUl9nZXR0aW1lNjQgX19OUl9jbG9ja19nZXR0aW1lNjQKPiAjZWxzZQo+ICMgZGVm aW5lIE5SX2dldHRpbWU2NCBfX05SX2Nsb2NrX2dldHRpbWUKPiAjZW5kaWYKPgo+IHN0cnVjdCB0 aW1lc3BlYzY0IHsKPiAgICAgICAgIGxvbmcgbG9uZyB0dl9zZWM7ICAgICAgIC8qIHNlY29uZHMg Ki8KPiAgICAgICAgIGxvbmcgbG9uZyB0dl9uc2VjOyAgICAgIC8qIG5hbm9zZWNvbmRzICovCj4g fTsKPgo+IGludCBnZXR0aW1lNjQoY2xvY2tfdCBjbG9ja2lkLCBzdHJ1Y3QgdGltZXNwZWM2NCAq dHYpCj4gewo+ICAgICAgICAgcmV0dXJuIHN5c2NhbGwoTlJfZ2V0dGltZTY0LCBjbG9ja2lkLCB0 dik7Cj4gfQo+Cj4gVGhlbiB3ZSBjYW4ganVzdCB1c2UgJnRpbWVvdXQgYXQgX19OUl9mdXRleF90 aW1lNjQgZm9yIDMyYml0IGFyY2ggYW5kIGF0Cj4gX19OUl9mdXRleCBmb3IgNjRiaXQgYXJjaC4K ClNvIHRoZSBpZGVhIGlzIHRvIHVzZSA2NC1iaXQgdGltZV90IGV2ZXJ5d2hlcmUgYW5kIG9ubHkg d29yayBvbiA1LjErIGtlcm5lbHMuCgpJZiB0aGF0J3MgdGhlIGZhdm91cmVkIGFwcHJvYWNoIEkg Y2FuIGNvbnZlcnQgdGhpcyBzZXJpZXMgdG8geW91ciBpZGVhLgoKQWxpc3RhaXIKCj4KPiBUaGlz IG1pZ2h0IGJlIGEgc2ltcGxlciBzb2x1dGlvbiB0byB0aGUgcHJvYmxlbSB0aGF0IHlvdSBhcmUg ZmFjaW5nIGJ1dAo+IEknbSBub3QgZW50aXJlbHkgc3VyZS4gQWxzbywgZnV0ZXgncyBzZWxmdGVz dHMgZG8gdXNlIHRoZSB0aW1lb3V0Cj4gYXJndW1lbnQgYW5kIEkgdGhpbmsgdGhhdCB0aGV5IGFs c28gd29uJ3QgY29tcGlsZSBpbiAzMi1iaXQgUklTQy1WLCBzbwo+IG1heWJlIHdlIGNhbiBzdGFy dCBmcm9tIHRoZXJlIHNvIHdlIGNhbiBhY3R1YWxseSB0ZXN0IHRoZSB0aW1lb3V0Cj4gYXJndW1l bnQgYW5kIGNoZWNrIGlmIGl0J3Mgd29ya2luZy4KPgo+IFRoYW5rcywKPiAgICAgICAgIEFuZHLD qQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KbGludXgt cmlzY3YgbWFpbGluZyBsaXN0CmxpbnV4LXJpc2N2QGxpc3RzLmluZnJhZGVhZC5vcmcKaHR0cDov L2xpc3RzLmluZnJhZGVhZC5vcmcvbWFpbG1hbi9saXN0aW5mby9saW51eC1yaXNjdgo=