Received: by 2002:a05:6358:3188:b0:123:57c1:9b43 with SMTP id q8csp1041836rwd; Wed, 31 May 2023 08:43:03 -0700 (PDT) X-Google-Smtp-Source: ACHHUZ6u1JvyIrpK3DbeM/xHJzsB8HL5qcRTreiBiIz6SM1bMee+VCNnWAE0c6H0NgXh3JRgMFQ+ X-Received: by 2002:a17:903:1d2:b0:1af:b7cd:5961 with SMTP id e18-20020a17090301d200b001afb7cd5961mr4781657plh.1.1685547783623; Wed, 31 May 2023 08:43:03 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1685547783; cv=none; d=google.com; s=arc-20160816; b=lD45u9jD3ALEIu3mmGKSP0/QKYKRrSfZFqUVv5VsPrUXtlvY0uOLq8gubbpxOcH/Q4 hnux3gzHgxn+DqpG96wcPkUIfp3Rsvbu5WnmKISzvi9kyCkkvt79juwBQRjZvXevKMPC 6BSw3alB+nKYmfopG1YNf/uzGGojwRICJp6c0zBqmVb/OkGTob7Q4GwSBEEJkmR0pflN QZy4ByKcpHL/nDQHHn9PsaKP5dFWmJipUhQ7x83Eyu86EhwdddSOf+qByKUJV8luUqux l7rPHrCa0PrPtfR3UIG5ZH7OqIjAGyT71RrXipDueJbTPQyiKZLApDnxEa3RbFs+QZDc 1qew== 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=J/AAE9ZGPs36fIX5clcov8ewvgNxaRXgiAw5owj43/k=; b=WQZijvxCALX2r/KzNxifW5HqJrbQa/Y4vhnxnurr2gkfL7rqsZRy4T7m1MZFHtEdrW XyEKwZ1KhlmaQgzcjicPD3GYg29JiNpNU9BI2GbtFYebbd3z0Ebq1pGQ+dj+yV0DIKBN QHCYy5b7fxsqBDUi2CbEWXlP0Sd9It5Kdi2GGpiKoD1OftUANg25FPmoMW9k2DARqZM+ 7nf/+J9CALTRmfjwSMehnd3BKNMIM6RH8s5trn8RcRuwHWd01vCc/8j7AclG7uakeCQd MFk4Y1SOmrq4uSBg5UJZo/IH045cJhGeEl9VfS5P7A6GbFUnHsFazKY7KyErq1J/WGWa adfA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linutronix.de header.s=2020 header.b=dgIZbWn0; dkim=neutral (no key) header.i=@linutronix.de header.s=2020e header.b=siix7a11; 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 g23-20020a1709029f9700b001ac83d19265si1026091plq.291.2023.05.31.08.42.47; Wed, 31 May 2023 08:43:03 -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=dgIZbWn0; dkim=neutral (no key) header.i=@linutronix.de header.s=2020e header.b=siix7a11; 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 S232623AbjEaP2K (ORCPT + 99 others); Wed, 31 May 2023 11:28:10 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:52632 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234542AbjEaP2F (ORCPT ); Wed, 31 May 2023 11:28:05 -0400 Received: from galois.linutronix.de (Galois.linutronix.de [193.142.43.55]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 8FCE8107; Wed, 31 May 2023 08:27:53 -0700 (PDT) From: Thomas Gleixner DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020; t=1685546872; 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=J/AAE9ZGPs36fIX5clcov8ewvgNxaRXgiAw5owj43/k=; b=dgIZbWn0Ffwl39MVqBYxhPk2zpqPDivTmcf41Fwe6BiycAhlt0CQ23s3y9g+opc388aIX1 KMxYZ759atp4cXI4qOTYG11J1QP7M4cOEdXucffb0LttwWfoAe0n4Wa7Zd20QcC8oOfxgj 96/yB9GLCeaI3pr7pfguXpIhv/df5PM/paQIV4bgjljfkr3mhLev75vrgdvAzRBUk1NLEZ ywkKRdkJ9R7LTx37n2x1qjKWFtrMbxL4AWvlDsLppwCiClDZTRU3KXx1jbWVf908rNmO4K ljHAUO2sUBOI0cgVUtSNDz+PiJ6CkZvm8VEAwx773h+T43k7b9R5cW2Sg+KGmw== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020e; t=1685546872; 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=J/AAE9ZGPs36fIX5clcov8ewvgNxaRXgiAw5owj43/k=; b=siix7a116hO8Xmv/CgUCeR0LA9Ni9RJTtUSvmYgfIbz3coXXR2G04VhnPcGIBu6HbqOjaw b571t2+jaB3FtuDg== 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: [PATCH v2 08/13] x86/vdso: Fix gettimeofday masking In-Reply-To: <20230519102715.704767397@infradead.org> References: <20230519102058.581557770@infradead.org> <20230519102715.704767397@infradead.org> Date: Wed, 31 May 2023 17:27:51 +0200 Message-ID: <87r0qwfrm0.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 Fri, May 19 2023 at 12:21, Peter Zijlstra wrote: > Because of how the virtual clocks use U64_MAX as an exception value > instead of a valid time, the clocks can no longer be assumed to wrap > cleanly. This is then compounded by arch_vdso_cycles_ok() rejecting > everything with the MSB/Sign-bit set. > > Therefore, the effective mask becomes S64_MAX, and the comment with > vdso_calc_delta() that states the mask is U64_MAX and isn't optimized > out is just plain silly. > > Now, the code has a negative filter -- to deal with TSC wobbles: > > if (cycles > last) > > which is just plain wrong, because it should've been written as: > > if ((s64)(cycles - last) > 0) > > to take wrapping into account, but per all the above, we don't > actually wrap on u64 anymore. Indeed. The rationale was that you need ~146 years uptime with a 4GHz TSC or ~584 years with 1GHz to actually reach the wrap around point. Though I can see your point to make sure that silly BIOSes or VMMs cannot cause havoc by accident or malice. Did anyone ever validate that wrap around on TSC including TSC deadline timer works correctly? I have faint memories of TSC_ADJUST, which I prefer not to bring back to main memory :) Thanks, tglx