Received: by 2002:a05:6a10:d5a5:0:0:0:0 with SMTP id gn37csp4512721pxb; Tue, 5 Oct 2021 04:51:57 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwhBWv+8BUZwCT4cyNgbdEDBiO2KkbmESEQupb/hyi6l5AqvnbTPmRMdTtWWEwd9I0JS9wl X-Received: by 2002:a62:160e:0:b0:445:1642:5069 with SMTP id 14-20020a62160e000000b0044516425069mr31312891pfw.66.1633434716915; Tue, 05 Oct 2021 04:51:56 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1633434716; cv=none; d=google.com; s=arc-20160816; b=FHxKRGIHoyidoJ589SFy0AXnm24/b6am/Fzd40tNAGdGdVHsUrNZbqDxCEBx5CwX+a sEXwUIOhqN6fV9/sLhFy3fNJDeKNg8W8F6RyVk+LMTTPZ3lZ8n8UYzcsqpjp6OREWyQh FPDl4llWkDq5XKCbEZVRE6xPhheX5Sh63/0xcos6SdU6tUy+F2xXcD8IgjzAc1FOvQD+ YIBSdCpJKgAjcSZLg42AODtYPnnd8KCtN7z2+5j3nqrv/aAXTvqVbTDcBL1yXAU5iIzC SNqjg5jzclM2v6pVdznZVdKLscv/Au/ZqCcYl+s+bylzlsX8Gif2H6qdQtfUqCJTLrQr 6z/g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:subject:message-id:date:from:in-reply-to :references:mime-version:dkim-signature; bh=ZXyHYhWprLF6VOTKKbJ9elBPTHHvHE5sqZFrMqC4ukc=; b=OT+DgjLzNug2NajQKNfrJ6tmIAZGqYqtz6nDHh9MvwdhAVU+P2B3zueLJ8RQD2fpie S0Jkffkrl7dhZ1nWkFKOp1wxtMFuwLHzIPEKWMVLUGQsTJyfRCLqYTXafzEwAJcdTKlq 50/7rwfFWQ7RCv29RJXtquYANmCMdoHQpH6GRBPvz0H9BEgQtR26BAc90uze8qlXCYXT 7EYBZrYB81F/ta4e0lv5r5s+Vjbw83t9MYyhAYfpKPEJPairT8XWHvMbjZd4XAwyVD3O iSEpOazHbLKorNWlpWjduC86PrLqIpVyIDuhEOrE/gwJKXdl+y2DiqRqmcaINFyR7Nix Mtkw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=AdpPxdZ9; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id n7si30037993plh.453.2021.10.05.04.51.43; Tue, 05 Oct 2021 04:51:56 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=AdpPxdZ9; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234354AbhJELwq (ORCPT + 99 others); Tue, 5 Oct 2021 07:52:46 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:35664 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234397AbhJELwo (ORCPT ); Tue, 5 Oct 2021 07:52:44 -0400 Received: from mail-oi1-x22b.google.com (mail-oi1-x22b.google.com [IPv6:2607:f8b0:4864:20::22b]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id BC58DC06174E for ; Tue, 5 Oct 2021 04:50:53 -0700 (PDT) Received: by mail-oi1-x22b.google.com with SMTP id n63so526715oif.7 for ; Tue, 05 Oct 2021 04:50:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=ZXyHYhWprLF6VOTKKbJ9elBPTHHvHE5sqZFrMqC4ukc=; b=AdpPxdZ9CqU5FBxAA98Y3fzXjRIpzwI+jLyQpXlS0B2Zag9lwe0Tm/W8yG54SJ9A9u ZloN1JllYx08BhPRvTu5lLeMVb90zvrbUzw51Q/oTdDElg8798X7vT7CKO7GyYUcONLE k9O1RUB4qxTUoeLEVIq3Grm6ll7KDg+JufpDII0qJIcg/GKTG35cmkQ5XWHVutEWOyV9 afmn3IVBAGabm9Ko1S1/pP/T924r2z5QRlfubG528dYb2KvZAfCV+7dPjVhxdNnppO46 HYvS1v3YPsVAuU8KqDjulvXw2WkI0lv0lSxJUhzjPCzS4XqZ3dFKVW9ScGGE+fi2AxGF NvfA== 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; bh=ZXyHYhWprLF6VOTKKbJ9elBPTHHvHE5sqZFrMqC4ukc=; b=qd7stoyDfgfL8qfD6vFWB31GEWQUnSM84j1OXJ5flPQrvTfpQdcZl/YFPMb4rVRZzl +IeLMHxe1zwKJbUc2I+FJtMlNkP37oTkPA8uor95xijYQgGmg9QcCYX0Y7uUp0BwqFH9 V8ccGZX4eFC/1PmZpi/okrc2h5mQHiQ4ftkru9Hb/q0pAi/fYH7EP8bHnJAUEA17gRsx wPTq7gQrC/wMwZFk6kxVWzIhFU/MX++Rmgrx9HsqCs8XJ0insuEf35pOZyoqD8ao/6c4 /PR3ThoI3YyLQjOYOO/KUl1ePcCkmNfGsTREjWQ8poYR1aOxDLjz+VUZ/5cFPVgVPRnY 9u/w== X-Gm-Message-State: AOAM532bvSOtLoMTpz4vpIQimLv7UBeF9nmkWH9jbgxCb/ji1mZAjuIV 1jkdUEJ3urWQogTCLm61L6vhO5H7Ua8c4F6Xn9jm1Q== X-Received: by 2002:a54:4618:: with SMTP id p24mr2068916oip.134.1633434652953; Tue, 05 Oct 2021 04:50:52 -0700 (PDT) MIME-Version: 1.0 References: <20211005105905.1994700-1-elver@google.com> <20211005105905.1994700-6-elver@google.com> In-Reply-To: From: Marco Elver Date: Tue, 5 Oct 2021 13:50:41 +0200 Message-ID: Subject: Re: [PATCH -rcu/kcsan 05/23] kcsan: Add core memory barrier instrumentation functions To: Peter Zijlstra Cc: "Paul E . McKenney" , Alexander Potapenko , Boqun Feng , Borislav Petkov , Dmitry Vyukov , Ingo Molnar , Josh Poimboeuf , Mark Rutland , Thomas Gleixner , Waiman Long , Will Deacon , kasan-dev@googlegroups.com, linux-arch@vger.kernel.org, linux-doc@vger.kernel.org, linux-kbuild@vger.kernel.org, linux-kernel@vger.kernel.org, linux-mm@kvack.org, x86@kernel.org Content-Type: text/plain; charset="UTF-8" Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, 5 Oct 2021 at 13:45, Peter Zijlstra wrote: > On Tue, Oct 05, 2021 at 01:41:18PM +0200, Peter Zijlstra wrote: > > On Tue, Oct 05, 2021 at 12:58:47PM +0200, Marco Elver wrote: > > > +static __always_inline void kcsan_atomic_release(int memorder) > > > +{ > > > + if (memorder == __ATOMIC_RELEASE || > > > + memorder == __ATOMIC_SEQ_CST || > > > + memorder == __ATOMIC_ACQ_REL) > > > + __kcsan_release(); > > > +} > > > + [...] > > > + kcsan_atomic_release(memorder); > > > __atomic_thread_fence(memorder); > > > } > > > EXPORT_SYMBOL(__tsan_atomic_thread_fence); > > > > I find that very hard to read.. kcsan_atomic_release() it not in fact a > > release. It might be a release if @memorder implies one. You're right, this name can be improved. `kcsan_atomic_builtin_memorder(..)` is probably better > Also, what's the atomic part signify? Is that because you're modeling > the difference in acquire/release semantics between > smp_load_{acquire,release}() and atomic*_{acquire,release}() ? Sorry, just a bad name. It's about the builtins. The above suggested name should hopefully be clearer.