Received: by 2002:ab2:6203:0:b0:1f5:f2ab:c469 with SMTP id o3csp894076lqt; Fri, 19 Apr 2024 13:55:35 -0700 (PDT) X-Forwarded-Encrypted: i=3; AJvYcCWoxEetJOnbHvwXZsAp6pmdta+PNuEQZNafTA0m3w+hauxLcENZkKZQFaAdU4mVZl8cPr9chisQntZMtTalIXjbF+bzROdK1W74Lzwfrw== X-Google-Smtp-Source: AGHT+IH9CU0zIFEiVC/zioNaLBLzcsjKM51SAEdapY27BmXhZuxJRDiz7F6GEqSF2o2fQu4ncbbk X-Received: by 2002:a17:906:5acf:b0:a52:5c9a:1c8b with SMTP id x15-20020a1709065acf00b00a525c9a1c8bmr2263046ejs.5.1713560135511; Fri, 19 Apr 2024 13:55:35 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1713560135; cv=pass; d=google.com; s=arc-20160816; b=vi9R6U7YEcEEmbGsJxtqYUm/F+GA7+5xCZcjFAvWtaYm/X55EA/Sk2fQ0dZ5cg+JzC 7cedBt3Ox7DCmBFCEdz1C/XVPIExWkscgKZ6v66mhZzrW2RetxY5O9km/Xwxjla2+oKe I7+x9Vv2E4+lL5WlVm/GPKLWSnVHAxrnuz3wIYWZSkwFDpbM2Fw++kwbEl8ZPGppfvrd LNU9klzijkl6SEMt3JRtx8zX3vHDUU2fBYmjcXjsLURjU1BR9cht7LVZSUKi8/qgr/Td 8aBHsuXLhyqp2FGgXxDC5w1NR7Vkz0zF5/Vnq0umf6RZxccVD31lzU74FDaTXoFEPzEY yFNA== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:list-unsubscribe:list-subscribe :list-id:precedence:dkim-signature; bh=AnzzcopxYVakJwmdZOL+JC6KyzHciDKz/A3YbkmreBI=; fh=NL8CHAVu3outcQU8VEndWSPY8GoueaY4HE9U+D2hG6E=; b=sKBJ/o2aGO7Fsw8BYOzzSu3iGJE+juOKZfdX+wQun6kQ5gks2tWPRyC+OSTdUsAsno NKsBfesbjARjxQ45qdI5NKvTmptfN6ReoT2OeapgWHS9AnL97mfqPwQzZ0O+VH1ipjTq t+tiMwwxO4hK+T14zmitS0VkDLCHuVs9rkkdi1i8aCiGd/omIIYensov8TDA4X9PfKP/ pwcrI7ObPgh9l5k7/QYbEwIwRFsQG2qnediIMaDHHpXr3u358Q1VGPkxxRsdoX466WtQ hRU5rhSDxjGcoFs22qITK2xK2c8cEmpZSgzOyZ+jXEwwVRqar6i7o93W599OyGeZp2RI 4Exw==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@google.com header.s=20230601 header.b=3WmKU+vS; arc=pass (i=1 spf=pass spfdomain=google.com dkim=pass dkdomain=google.com dmarc=pass fromdomain=google.com); spf=pass (google.com: domain of linux-kernel+bounces-151949-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:4601:e00::3 as permitted sender) smtp.mailfrom="linux-kernel+bounces-151949-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Return-Path: Received: from am.mirrors.kernel.org (am.mirrors.kernel.org. [2604:1380:4601:e00::3]) by mx.google.com with ESMTPS id jp16-20020a170906f75000b00a555e4feed5si2545867ejb.290.2024.04.19.13.55.35 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 19 Apr 2024 13:55:35 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel+bounces-151949-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:4601:e00::3 as permitted sender) client-ip=2604:1380:4601:e00::3; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20230601 header.b=3WmKU+vS; arc=pass (i=1 spf=pass spfdomain=google.com dkim=pass dkdomain=google.com dmarc=pass fromdomain=google.com); spf=pass (google.com: domain of linux-kernel+bounces-151949-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:4601:e00::3 as permitted sender) smtp.mailfrom="linux-kernel+bounces-151949-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by am.mirrors.kernel.org (Postfix) with ESMTPS id 3C2341F228B2 for ; Fri, 19 Apr 2024 20:55:35 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 952402BB04; Fri, 19 Apr 2024 20:55:26 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b="3WmKU+vS" Received: from mail-qt1-f173.google.com (mail-qt1-f173.google.com [209.85.160.173]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 7F8292837B for ; Fri, 19 Apr 2024 20:55:24 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.160.173 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1713560125; cv=none; b=WSm/CeeWYngDOJc6xBV+m/DdqW+QQ4qOzuM4SXeDgbgwMPb5dulczsL5birhs9gheVyOboE8HjIgWUJSs/CqMPFhOPHvpoCR9SYIaXOk5/2GhLIcst+t2bdl8dKe0b4HXdX5P+YNm43lb4IRozfH3Terpw6FXMbtvBvvQHnh0TA= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1713560125; c=relaxed/simple; bh=0GvM01Qlx5wuJBtCbl0XQHDADvYPFlcLL9+gjZzeNB4=; h=MIME-Version:References:In-Reply-To:From:Date:Message-ID:Subject: To:Cc:Content-Type; b=IU1+1qeEduNGIAjSOOB25MAKvgzplLgEKcIeonzM1LAwTu7To0k9krSt3fbX9Mwe5JvcmZeTZvFl0Rg6dEfqkgzREKdhLKITDUHAHnW2JVeI0deMqNV0cu3dVVhLvqelxNuBhM+aQ1NRmRcLk0aGTQX9r8SFYzAz9v1ycMlpIB0= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com; spf=pass smtp.mailfrom=google.com; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b=3WmKU+vS; arc=none smtp.client-ip=209.85.160.173 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=google.com Received: by mail-qt1-f173.google.com with SMTP id d75a77b69052e-434b5abbb0dso89271cf.0 for ; Fri, 19 Apr 2024 13:55:24 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1713560123; x=1714164923; darn=vger.kernel.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=AnzzcopxYVakJwmdZOL+JC6KyzHciDKz/A3YbkmreBI=; b=3WmKU+vSGEVMlsj7qemhhGlkU64jcdm379MU9ZmE//fK+O43qEPv+1bWIzzOV2FFUA IUyLGyFs0P5xn8VrNcE5npNWMe2r8zo8BIVMa3JV+ZcCyq2hwQjCeMrUVsD0RH7EwmBJ Tv1f9R7XDdDRXj+aFWFtkr27XigL8ELO3N1vGjbLcguur/XRUbTt8/MoxVI+YSdasvXh di0nnxD52+b9X8zIrpwWnVTAA0bTEfhkMP4dMMaAd05wWaaYCBvE10r9Cb4u9Lq4q7l4 torqRnB0Ynyr9wx9ORJ+38qYRwDMjGzrnfbEF+YibFnJgTLzw0FCMeF3lbhfOnQ3q8lt A0HQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1713560123; x=1714164923; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=AnzzcopxYVakJwmdZOL+JC6KyzHciDKz/A3YbkmreBI=; b=oem+2vuT4kN/CgshgIiaD9NPo7Qhy1Dj0NdMRc/Qv/3tcBULLN3iyBfeS7dYrOuhUC GGQ18BcVH2fh65L2SUL3sGKdffHyidsuW3feODtvS2vlcrsylwVfk9lwFhrHOjlmNnyj tgoa/mBt3WHWB8TQ8MiF83aCrdSNPhhXlUE3dRWhF7oete6TPDVin02n/ubBsriaWnaV XvmZDuBhybwj7R9J9L9569yxDt1RqXCohB+q0rTB8Y9vu3IU+bj22fwQMRgDuk37esek k80Dn4frOxhLH0tO4ycsQ8TPhGPPGgrZEdHKlr++JtTqXNsJmvLGdf3TWGJHsxxnPpAb XH8w== X-Forwarded-Encrypted: i=1; AJvYcCXDkEPiZ7Bi3jDF8L9P7/2MiUXOMFLnFcX8VW1dpf6ufyqDocEg6N3hEcSfrqwN2FwIkn47vOcFuMLbF3SXF+VWYAhqiMuaeOms5qML X-Gm-Message-State: AOJu0YxRn0slN3wTI3XJonhV79TzuDhKk4RSD3XOH2LiyAuS82i7wsoq w0DMdE+HBq8zqryB3Q2exZcFMu6/dbLxjIqtCko7J/fYLjiAqnFc4jDK/D9HD5Rtq2KfoYXYevl 2IXvQ8ilZflPp87TZj3nXhz+z8UbVXie7hCTb X-Received: by 2002:ac8:7357:0:b0:437:c52f:cd6a with SMTP id q23-20020ac87357000000b00437c52fcd6amr69580qtp.8.1713560123419; Fri, 19 Apr 2024 13:55:23 -0700 (PDT) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 References: <20240401232946.1837665-1-jthoughton@google.com> <20240401232946.1837665-6-jthoughton@google.com> In-Reply-To: From: James Houghton Date: Fri, 19 Apr 2024 13:54:47 -0700 Message-ID: Subject: Re: [PATCH v3 5/7] KVM: x86: Participate in bitmap-based PTE aging To: David Matlack Cc: Andrew Morton , Paolo Bonzini , Yu Zhao , Marc Zyngier , Oliver Upton , Sean Christopherson , Jonathan Corbet , James Morse , Suzuki K Poulose , Zenghui Yu , Catalin Marinas , Will Deacon , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , "H. Peter Anvin" , Steven Rostedt , Masami Hiramatsu , Mathieu Desnoyers , Shaoqin Huang , Gavin Shan , Ricardo Koller , Raghavendra Rao Ananta , Ryan Roberts , David Rientjes , Axel Rasmussen , linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, kvmarm@lists.linux.dev, kvm@vger.kernel.org, linux-mm@kvack.org, linux-trace-kernel@vger.kernel.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Fri, Apr 12, 2024 at 1:44=E2=80=AFPM David Matlack = wrote: > > On 2024-04-01 11:29 PM, James Houghton wrote: > > Only handle the TDP MMU case for now. In other cases, if a bitmap was > > not provided, fallback to the slowpath that takes mmu_lock, or, if a > > bitmap was provided, inform the caller that the bitmap is unreliable. > > I think this patch will trigger a lockdep assert in > > kvm_tdp_mmu_age_gfn_range > kvm_tdp_mmu_handle_gfn > for_each_tdp_mmu_root > __for_each_tdp_mmu_root > kvm_lockdep_assert_mmu_lock_held > > ... because it walks tdp_mmu_roots without holding mmu_lock. Indeed, thanks. I'll make sure to build with CONFIG_LOCKDEP for the future versions and check for errors. > > Yu's patch[1] added a lockless walk to the TDP MMU. We'd need something > similar here and also update the comment above tdp_mmu_roots describing > how tdp_mmu_roots can be read locklessly. I'll add the macro / function to do the lockless walk of tdp_mmu_roots and explain why it is safe. Thanks for pointing out this big mistake. > [1] https://lore.kernel.org/kvmarm/ZItX64Bbx5vdjo9M@google.com/