Received: by 2002:a05:6358:9144:b0:117:f937:c515 with SMTP id r4csp5452128rwr; Tue, 9 May 2023 01:26:03 -0700 (PDT) X-Google-Smtp-Source: ACHHUZ7wa+psz78eTMbDVwXu98I56HQE9P6O+wa7FJPu2uJ94FHhqSJL6U99yDFmUal8ILz0UA9R X-Received: by 2002:a05:6a20:548d:b0:ff:da37:ae9 with SMTP id i13-20020a056a20548d00b000ffda370ae9mr11405681pzk.53.1683620762925; Tue, 09 May 2023 01:26:02 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1683620762; cv=none; d=google.com; s=arc-20160816; b=YMUoxgbp3jKgEXcDu5CgQSd8igk1cG3lENxX9wY9C08+j8Gq+HBDSmnWGPQceIh6d0 Hh0R7OKGKnen3KgjsrVnBz4jCH5Vsyth68i6BbqdSpOUM5Fdr0PdsH1DLz69S+favINP huvBSsHgRwGa5sFxX8vUzZYX2Ze2odm3z1Y69nP1Y8cRW3L1SaPZqrkYRw5vapJHmnms OFsZTF2HxYE+E3yH4R/54lCvZAB9atfpD4WWLyRGjFSakJgO1pOLDVUfPETlGTZB2aRP qfWtetiZlgwYX8SdMc9LEZvOKJ8GWLc5A+PjIV/XtWsQVRjYGSjtkvQPYsDeqkW2I0rM Y5Ug== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:mime-version:message-id:date:references :in-reply-to:subject:cc:to:dkim-signature:dkim-signature:from; bh=xVv4rfLO7xw6sqAWJDUtooVryD59aLxpHrjjHESoCv4=; b=ELRbcbjAtM8y2xzya2WJK8ROY3WL1iLnenXzAobFTVzPRckPAx82e9NKWUXuGabHMQ qzlMKhNGd76e9+wbEuZN0FGH8QULbkmYvaBYMt28TqrZZaFA4yFlw0HtcZ3I+UOXmU99 Qvmj+PMpeKgejAjPohZFZnfo165TTSDPriS+tiCZ3epZmIG3ZO41XRlcevXecIBc1VHT bGSSutKpZMLBMilIpXOjbk7BSMnsDD470kURhoLsd2OBX6Pwj3AbU7DZbz159C+lNz2A 9gnsNDEwlvnTVTLHUsfuojj8CXiPEY2/+oKRqAfjIqtU1QdDZ/2HlvwWlkz/M65aLnmI pYEw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linutronix.de header.s=2020 header.b=UYr2e1+g; dkim=neutral (no key) header.i=@linutronix.de; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=linutronix.de Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id h64-20020a638343000000b00517ce377586si1005939pge.270.2023.05.09.01.25.47; Tue, 09 May 2023 01:26:02 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@linutronix.de header.s=2020 header.b=UYr2e1+g; dkim=neutral (no key) header.i=@linutronix.de; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=linutronix.de Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234671AbjEIIN2 (ORCPT + 99 others); Tue, 9 May 2023 04:13:28 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:60696 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229539AbjEIIN0 (ORCPT ); Tue, 9 May 2023 04:13:26 -0400 Received: from galois.linutronix.de (Galois.linutronix.de [IPv6:2a0a:51c0:0:12e:550::1]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 2FDDC19F; Tue, 9 May 2023 01:13:23 -0700 (PDT) From: Thomas Gleixner DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020; t=1683620001; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=xVv4rfLO7xw6sqAWJDUtooVryD59aLxpHrjjHESoCv4=; b=UYr2e1+gFJj75hLTU6wulu/To8fs/3NLSTT1O/4A/dFoPk1Mwvn+4on1C/mSGDw9X/b3/G mIrECPfYYeTbNUw3RoQIQUfrX5mnUofAMMxQNDUqI/AFoku3cF86gPwsybPzPHVKburTU2 zIr0TgMHNijQocNFUxjJnyzNJxEtcDTEmpbWlG997sTpM54qRhns7zh+pzonEy1oTjzFW3 14DPxxumcT1F8fbLdgqmUfKwr1kDGuB7WZ/9BKC89wkrCBiBsaJdRO/mqxk7qcZj7+AStQ AZ4wyuPb6bKPM7xPxIBgHHgQsRIzp0+N70d65avjQFf8REYtlxwaUJECG0mXag== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020e; t=1683620001; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=xVv4rfLO7xw6sqAWJDUtooVryD59aLxpHrjjHESoCv4=; b=9wiCNSXeePGKC5dkLze/Mvp1SnJ8hPA6OqZF+Gp+ghyrguRljiC5BokrInr2EL8X9l+0Yk ytnJfUjVGEIWI7CA== To: Peter Zijlstra , bigeasy@linutronix.de Cc: mark.rutland@arm.com, maz@kernel.org, catalin.marinas@arm.com, will@kernel.org, chenhuacai@kernel.org, kernel@xen0n.name, hca@linux.ibm.com, gor@linux.ibm.com, agordeev@linux.ibm.com, borntraeger@linux.ibm.com, svens@linux.ibm.com, pbonzini@redhat.com, wanpengli@tencent.com, vkuznets@redhat.com, mingo@redhat.com, bp@alien8.de, dave.hansen@linux.intel.com, x86@kernel.org, hpa@zytor.com, jgross@suse.com, boris.ostrovsky@oracle.com, daniel.lezcano@linaro.org, kys@microsoft.com, haiyangz@microsoft.com, wei.liu@kernel.org, decui@microsoft.com, rafael@kernel.org, peterz@infradead.org, longman@redhat.com, boqun.feng@gmail.com, pmladek@suse.com, senozhatsky@chromium.org, rostedt@goodmis.org, john.ogness@linutronix.de, juri.lelli@redhat.com, vincent.guittot@linaro.org, dietmar.eggemann@arm.com, bsegall@google.com, mgorman@suse.de, bristot@redhat.com, vschneid@redhat.com, jstultz@google.com, sboyd@kernel.org, linux-kernel@vger.kernel.org, loongarch@lists.linux.dev, linux-s390@vger.kernel.org, kvm@vger.kernel.org, linux-hyperv@vger.kernel.org, linux-pm@vger.kernel.org Subject: Re: [RFC][PATCH 1/9] seqlock/latch: Provide raw_read_seqcount_latch_retry() In-Reply-To: <20230508213147.448097252@infradead.org> References: <20230508211951.901961964@infradead.org> <20230508213147.448097252@infradead.org> Date: Tue, 09 May 2023 10:13:20 +0200 Message-ID: <871qjp3otb.ffs@tglx> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Status: No, score=-4.4 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_MED,SPF_HELO_NONE, SPF_PASS,T_SCC_BODY_TEXT_LINE,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, May 08 2023 at 23:19, Peter Zijlstra wrote: > The read side of seqcount_latch consists of: > > do { > seq = raw_read_seqcount_latch(&latch->seq); > ... > } while (read_seqcount_latch_retry(&latch->seq, seq)); > > which is asymmetric in the raw_ department, and sure enough, > read_seqcount_latch_retry() includes (explicit) instrumentation where > raw_read_seqcount_latch() does not. > > This inconsistency becomes a problem when trying to use it from > noinstr code. As such, fix it by renaming and re-implementing > raw_read_seqcount_latch_retry() without the instrumentation. > > Specifically the instrumentation in question is kcsan_atomic_next(0) > in do___read_seqcount_retry(). Loosing this annotation is not a > problem because raw_read_seqcount_latch() does not pass through > kcsan_atomic_next(KCSAN_SEQLOCK_REGION_MAX). > > Signed-off-by: Peter Zijlstra (Intel) Reviewed-by: Thomas Gleixner