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 Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 7B937C25B75 for ; Fri, 31 May 2024 19:18:29 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 0C79F6B00A3; Fri, 31 May 2024 15:18:29 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 076116B00BE; Fri, 31 May 2024 15:18:29 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id E0ABC6B00BF; Fri, 31 May 2024 15:18:28 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id C07E26B00A3 for ; Fri, 31 May 2024 15:18:28 -0400 (EDT) Received: from smtpin02.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id 2BEA8120E10 for ; Fri, 31 May 2024 19:18:28 +0000 (UTC) X-FDA: 82179652296.02.8869D9C Received: from out-179.mta0.migadu.com (out-179.mta0.migadu.com [91.218.175.179]) by imf27.hostedemail.com (Postfix) with ESMTP id 4D9A240007 for ; Fri, 31 May 2024 19:18:24 +0000 (UTC) Authentication-Results: imf27.hostedemail.com; dkim=pass header.d=linux.dev header.s=key1 header.b="OL//CPF3"; spf=pass (imf27.hostedemail.com: domain of oliver.upton@linux.dev designates 91.218.175.179 as permitted sender) smtp.mailfrom=oliver.upton@linux.dev; dmarc=pass (policy=none) header.from=linux.dev ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1717183104; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=2PNxbejm0F++LAZR/c3kykM2MBahftMSuulGipIjRRI=; b=rmERMXSkC0AuQtFSHzByZ7kqa9gkaTBDBRXDYprKLU3NgD0NOkYQmS9p6F+iUqPVAVJF1y xJLnJU3Tgc6Ohftb9sE0A1MHUTeWhxFl1AX1GhJDRhbET55BnvqetIcZqQu5Mp6i2fKPdR CpB2Yb7hGcqja9suQLhIohTHOYQDZFw= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1717183104; a=rsa-sha256; cv=none; b=EwA/Qxiyf3zrfPcxmNhPkTbtDg6RyMAyUcO1J+COzX6IzRBlmbhMLOxAQFWXaLtfvYcEg7 6TE+hTo7hXheaAEje3EboiqvIiPtRcRtO15lGuQ8Vz55tGfSUHlBT6/sXZ5eL5xecxjS22 Z9uUc0jXoZ4/seFis7MFyswF/evjIqM= ARC-Authentication-Results: i=1; imf27.hostedemail.com; dkim=pass header.d=linux.dev header.s=key1 header.b="OL//CPF3"; spf=pass (imf27.hostedemail.com: domain of oliver.upton@linux.dev designates 91.218.175.179 as permitted sender) smtp.mailfrom=oliver.upton@linux.dev; dmarc=pass (policy=none) header.from=linux.dev X-Envelope-To: jthoughton@google.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.dev; s=key1; t=1717183102; 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=2PNxbejm0F++LAZR/c3kykM2MBahftMSuulGipIjRRI=; b=OL//CPF3OaxDLNyUcF7L7kyNMf3VPjTvzSryLUW5C3BaNJ8N7qvdo+GYUTIaqfYoH8qbo6 hUFuWYcFNlSydh5QitAFxaO+uiSO8irmL6Dy7FoK51VSXO1IpH+zzZd24unXmg4kvPBA2e eDLUrnlpHUL5vYjUk6kginvv7JlKt2g= X-Envelope-To: akpm@linux-foundation.org X-Envelope-To: pbonzini@redhat.com X-Envelope-To: aou@eecs.berkeley.edu X-Envelope-To: ankita@nvidia.com X-Envelope-To: anup@brainfault.org X-Envelope-To: atishp@atishpatra.org X-Envelope-To: axelrasmussen@google.com X-Envelope-To: maobibo@loongson.cn X-Envelope-To: catalin.marinas@arm.com X-Envelope-To: dmatlack@google.com X-Envelope-To: rientjes@google.com X-Envelope-To: chenhuacai@kernel.org X-Envelope-To: james.morse@arm.com X-Envelope-To: corbet@lwn.net X-Envelope-To: maz@kernel.org X-Envelope-To: mpe@ellerman.id.au X-Envelope-To: npiggin@gmail.com X-Envelope-To: palmer@dabbelt.com X-Envelope-To: paul.walmsley@sifive.com X-Envelope-To: rananta@google.com X-Envelope-To: ryan.roberts@arm.com X-Envelope-To: seanjc@google.com X-Envelope-To: shahuang@redhat.com X-Envelope-To: shuah@kernel.org X-Envelope-To: suzuki.poulose@arm.com X-Envelope-To: zhaotianrui@loongson.cn X-Envelope-To: will@kernel.org X-Envelope-To: yuzhao@google.com X-Envelope-To: yuzenghui@huawei.com X-Envelope-To: kvm-riscv@lists.infradead.org X-Envelope-To: kvm@vger.kernel.org X-Envelope-To: kvmarm@lists.linux.dev X-Envelope-To: linux-arm-kernel@lists.infradead.org X-Envelope-To: linux-doc@vger.kernel.org X-Envelope-To: linux-kernel@vger.kernel.org X-Envelope-To: linux-kselftest@vger.kernel.org X-Envelope-To: linux-mips@vger.kernel.org X-Envelope-To: linux-mm@kvack.org X-Envelope-To: linux-riscv@lists.infradead.org X-Envelope-To: linuxppc-dev@lists.ozlabs.org X-Envelope-To: loongarch@lists.linux.dev Date: Fri, 31 May 2024 12:18:11 -0700 X-Report-Abuse: Please report any abuse attempt to abuse@migadu.com and include these headers. From: Oliver Upton To: James Houghton Cc: Andrew Morton , Paolo Bonzini , Albert Ou , Ankit Agrawal , Anup Patel , Atish Patra , Axel Rasmussen , Bibo Mao , Catalin Marinas , David Matlack , David Rientjes , Huacai Chen , James Morse , Jonathan Corbet , Marc Zyngier , Michael Ellerman , Nicholas Piggin , Palmer Dabbelt , Paul Walmsley , Raghavendra Rao Ananta , Ryan Roberts , Sean Christopherson , Shaoqin Huang , Shuah Khan , Suzuki K Poulose , Tianrui Zhao , Will Deacon , Yu Zhao , Zenghui Yu , kvm-riscv@lists.infradead.org, kvm@vger.kernel.org, kvmarm@lists.linux.dev, linux-arm-kernel@lists.infradead.org, linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, linux-mips@vger.kernel.org, linux-mm@kvack.org, linux-riscv@lists.infradead.org, linuxppc-dev@lists.ozlabs.org, loongarch@lists.linux.dev Subject: Re: [PATCH v4 6/7] KVM: arm64: Relax locking for kvm_test_age_gfn and kvm_age_gfn Message-ID: References: <20240529180510.2295118-1-jthoughton@google.com> <20240529180510.2295118-7-jthoughton@google.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: X-Migadu-Flow: FLOW_OUT X-Rspam-User: X-Stat-Signature: poobwp3fw4sngk9dwcgcpyokrf6wtgrk X-Rspamd-Server: rspam07 X-Rspamd-Queue-Id: 4D9A240007 X-HE-Tag: 1717183104-188030 X-HE-Meta: U2FsdGVkX19WBqESHxfmfpt96vwT2MHDkSOuIgaw58lVTe50rocGatIINBD6wwENp92FNZUy+0ljoLZl0qtdktR33trfjF0UoH+AXJMQTi8zlYtfVXyGtmwoQdRXvlJk/ysKEgUjngaBELCI5G81nGX/tfbdX41sBH8o/RfaIF7XAlbaQClJObJeTfJlcyndH+CD1B8Axh1o6Hcu5Sx98mRUQz+7av3eejaYMz++S2ewF5bJXGioqMseZTfWutKgdl1GEkI1DcUgRbgc67Tk+xGm+pUh+5i3LHEEd+yUifW/+XnCFtMpgUho0q13BoEn/o2QcnyxijUtxK7RRGUfZvFETqfoijBVPbGMgpDzi5/A5o968fOyNbwpmKg+NwW/Cj4ie2ImFlSmctWwUpRLhHYBS+CJzWy8VW0UcZZdDK7SIyjt2/CwW21CcBXav8Eaae0RJ5WxJznodDXVu3XxWS1qo763inHRQJq3nyVGwwIfw/I/8JsmiAbOhlyBuoDc0WtrOiLoHDhq2IgW+nhVeC84p8wtpd7Ygxf+mfcF7j1OXwq1yP/F3jdIa8KSUyHJDaF0WwzY/FRa2UGNUI9umzA/5SvyHCq0yCM0xdl/6wUG1xGbqqZCf4JIz/go9C/+/M6V3wTPMLO7bjac0mKGFD1oLc8zfjYNwyFB2pkzila0W+i3B6rm/aHFZ2o9C2IAIF+bIAuqlehuclr1k5tETkyegoIUri4OIVwGM1bDfJb3EuFah6/UFTnd0YVmHUSaJ9e8rjPSa60cU69IvnCsE9O2quouSk0L5E2YoF/A0WNh0U/t1aKd2a0/hHpRgktTsOHPSwXzXbQzRHLdkxjzOccx5C3QyEjzUaV4n4FlQ6ZLkYZaR6MUmQT5JxiBkyYjvC2m00EkioybkmToIvw5ogr6EZGVdsGaXJGf2wEjNl+2qst5Yd07AoTTzrAdVuThykexUwm/ZtRP10NhN6l KFBe/uTk gUCF3pBBtXxQUokSoDKNyG99RJOCE3K2AIVnkPg4TSP7YOZF3E0+hd5AudiPTcGBHFZelzftJxfozI0rzvDhLcQBKDyWBie3KFQu6MFMsu5gQozI6Ne0up/ECqgcC3oK0acFj0/Y6JbPZXTI= X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: On Fri, May 31, 2024 at 12:11:33PM -0700, Oliver Upton wrote: > On Wed, May 29, 2024 at 06:05:09PM +0000, James Houghton wrote: > > [...] > > > diff --git a/arch/arm64/kvm/hyp/pgtable.c b/arch/arm64/kvm/hyp/pgtable.c > > index 9e2bbee77491..eabb07c66a07 100644 > > --- a/arch/arm64/kvm/hyp/pgtable.c > > +++ b/arch/arm64/kvm/hyp/pgtable.c > > @@ -1319,10 +1319,8 @@ static int stage2_age_walker(const struct kvm_pgtable_visit_ctx *ctx, > > data->young = true; > > > > /* > > - * stage2_age_walker() is always called while holding the MMU lock for > > - * write, so this will always succeed. Nonetheless, this deliberately > > - * follows the race detection pattern of the other stage-2 walkers in > > - * case the locking mechanics of the MMU notifiers is ever changed. > > + * This walk may not be exclusive; the PTE is permitted to change > > + * from under us. > > */ > > if (data->mkold && !stage2_try_set_pte(ctx, new)) > > return -EAGAIN; > > It is probably worth mentioning that if there was a race to update the > PTE then the GFN is most likely young, so failing to clear AF probably > isn't even consequential. Oh, and the WARN_ON() in kvm_pgtable_stage2_test_clear_young() is bogus now. Maybe demote it to: r = kvm_pgtable_walk(...); WARN_ON_ONCE(r && r != -EAGAIN); -- Thanks, Oliver