From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sean Christopherson Subject: Re: [PATCH v5 2/4] KVM: mmu: add a helper to account memory used by KVM MMU. Date: Mon, 27 Jun 2022 16:20:04 +0000 Message-ID: References: <20220606222058.86688-1-yosryahmed@google.com> <20220606222058.86688-3-yosryahmed@google.com> Mime-Version: 1.0 Return-path: DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; h=date:from:to:cc:subject:message-id:references:mime-version :content-disposition:in-reply-to; bh=l6X68KuyBDU81KFCllZcPJCpgvdaKM9lp1nYP5LV1kY=; b=QYuHqx8JmD3fGZhFw9UuYiMUgaHHG5YjGJZr+BhXEcVvOKmxYAAHNIYT4pML0YKcd9 UOpJZM3FxgCDYFkMEGVBOlFqLEi8hSMYRQnc+e7vRrYWrYSatKpLhI/fy9hbjAzv1Pnb Fzbk/A5QTs7U7PdF27OM5n8DIpWN30JeOZDLCACOEVdlNkDU2Q35PBJKkpYSbiWrD6Tw wUqWe7xVXLUA8Y8WFwrTpTXlCat4Ci9KWWfxvDWzzZ/KX8yqgOjmViXM2APbm4qweJdE PTl/Ci9fvhKr/8UGP8qNqQ7aXyTDMrVnpzr/DD4SM5yQhjeV+eXwvVZzqlB5dla5a1gv MANA== Content-Disposition: inline In-Reply-To: <20220606222058.86688-3-yosryahmed-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org> List-ID: Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: Yosry Ahmed Cc: Tejun Heo , Johannes Weiner , Zefan Li , Marc Zyngier , James Morse , Alexandru Elisei , Suzuki K Poulose , Paolo Bonzini , Vitaly Kuznetsov , Wanpeng Li , Jim Mattson , Joerg Roedel , Andrew Morton , Michal Hocko , Roman Gushchin , Shakeel Butt , Oliver Upton , cgroups-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org, kvmarm-FPEHb7Xf0XXUo1n7N8X6UoWGPAHP3yOg@public.gmane.org, kvm-u79uwXL29TY@public.gmane.org On Mon, Jun 06, 2022, Yosry Ahmed wrote: > Add a helper to account pages used by KVM for page tables in secondary > pagetable stats. This function will be used by subsequent patches in > different archs. > > Signed-off-by: Yosry Ahmed > --- > include/linux/kvm_host.h | 9 +++++++++ > 1 file changed, 9 insertions(+) > > diff --git a/include/linux/kvm_host.h b/include/linux/kvm_host.h > index 883e86ec8e8c4..645585f3a4bed 100644 > --- a/include/linux/kvm_host.h > +++ b/include/linux/kvm_host.h > @@ -2246,6 +2246,15 @@ static inline void kvm_handle_signal_exit(struct kvm_vcpu *vcpu) > } > #endif /* CONFIG_KVM_XFER_TO_GUEST_WORK */ > > +/* > + * If nr > 1, we assume virt is the address of the first page of a block of But what if @nr is -2, which is technically less than 1? :-) > + * pages that were allocated together (i.e accounted together). Don't document assumptions, document the rules. And avoid "we", pronouns are ambiguous, e.g. is "we" the author, or KVM, or something else entirely? /* * If more than one page is being (un)accounted, @virt must be the address of * the first page of a block of pages what were allocated together. */ > + */ > +static inline void kvm_account_pgtable_pages(void *virt, int nr) > +{ > + mod_lruvec_page_state(virt_to_page(virt), NR_SECONDARY_PAGETABLE, nr); > +} > + > /* > * This defines how many reserved entries we want to keep before we > * kick the vcpu to the userspace to avoid dirty ring full. This > -- > 2.36.1.255.ge46751e96f-goog > 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 mm01.cs.columbia.edu (mm01.cs.columbia.edu [128.59.11.253]) by smtp.lore.kernel.org (Postfix) with ESMTP id C2CFDC43334 for ; Mon, 27 Jun 2022 16:20:13 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by mm01.cs.columbia.edu (Postfix) with ESMTP id 4BF554B29E; Mon, 27 Jun 2022 12:20:13 -0400 (EDT) X-Virus-Scanned: at lists.cs.columbia.edu Authentication-Results: mm01.cs.columbia.edu (amavisd-new); dkim=softfail (fail, message has been altered) header.i=@google.com Received: from mm01.cs.columbia.edu ([127.0.0.1]) by localhost (mm01.cs.columbia.edu [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id eLNSHltq4z7j; Mon, 27 Jun 2022 12:20:12 -0400 (EDT) Received: from mm01.cs.columbia.edu (localhost [127.0.0.1]) by mm01.cs.columbia.edu (Postfix) with ESMTP id 1383C4B13D; Mon, 27 Jun 2022 12:20:12 -0400 (EDT) Received: from localhost (localhost [127.0.0.1]) by mm01.cs.columbia.edu (Postfix) with ESMTP id A7AF949F3B for ; Mon, 27 Jun 2022 12:20:10 -0400 (EDT) X-Virus-Scanned: at lists.cs.columbia.edu Received: from mm01.cs.columbia.edu ([127.0.0.1]) by localhost (mm01.cs.columbia.edu [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id iY4xpXB62CBZ for ; Mon, 27 Jun 2022 12:20:09 -0400 (EDT) Received: from mail-pf1-f174.google.com (mail-pf1-f174.google.com [209.85.210.174]) by mm01.cs.columbia.edu (Postfix) with ESMTPS id 88AEE49EE3 for ; Mon, 27 Jun 2022 12:20:09 -0400 (EDT) Received: by mail-pf1-f174.google.com with SMTP id x4so9503664pfq.2 for ; Mon, 27 Jun 2022 09:20:09 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; h=date:from:to:cc:subject:message-id:references:mime-version :content-disposition:in-reply-to; bh=l6X68KuyBDU81KFCllZcPJCpgvdaKM9lp1nYP5LV1kY=; b=QYuHqx8JmD3fGZhFw9UuYiMUgaHHG5YjGJZr+BhXEcVvOKmxYAAHNIYT4pML0YKcd9 UOpJZM3FxgCDYFkMEGVBOlFqLEi8hSMYRQnc+e7vRrYWrYSatKpLhI/fy9hbjAzv1Pnb Fzbk/A5QTs7U7PdF27OM5n8DIpWN30JeOZDLCACOEVdlNkDU2Q35PBJKkpYSbiWrD6Tw wUqWe7xVXLUA8Y8WFwrTpTXlCat4Ci9KWWfxvDWzzZ/KX8yqgOjmViXM2APbm4qweJdE PTl/Ci9fvhKr/8UGP8qNqQ7aXyTDMrVnpzr/DD4SM5yQhjeV+eXwvVZzqlB5dla5a1gv MANA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=l6X68KuyBDU81KFCllZcPJCpgvdaKM9lp1nYP5LV1kY=; b=4L2hmcdiGjt00d6SNSdmU5pBGWodDXfIRzN02W4vVc8lF1tInZ5QNrnl9ChxaH9FHy KMpFSzUvGzSJmBUKBZSKo7AAu4O6ZPRzf3jnLsBSBKoz0U9utUguqBxl6/evvdrd5aiS VjxtwlH5C6K4ztxeNRywVdyH0gGxS+96xC7Gdc65HF/cOtfqkK4CiVB5RqfyOH343ZW5 lwzNFCWge0wQ5Pgj4ALnEj3XG/qREob09puZiNzi3TdIhOF1IGKh1nEvrurjAxO+J2cA uAiY+GVrdnM2KauvX8x0vZId7/68C0N2LzDVixaX917fwdxVlosDg3vRARBhJDropjzb RMtw== X-Gm-Message-State: AJIora86o3fEpaCTJy180Y17CVCUizURiRGTN0wes2EXBbJlLvAB3Sdn f6MIxfUWEuK2d4JxMsxOwR46UQ== X-Google-Smtp-Source: AGRyM1sm+8Ne4/LREAP1BhpBHmHl7sHKXi5L+eGvKtbQn5emgnCoxtJdYUMElvkncDMjnmXaWe/0bg== X-Received: by 2002:a63:710c:0:b0:40c:adcf:ce72 with SMTP id m12-20020a63710c000000b0040cadcfce72mr13747246pgc.310.1656346808483; Mon, 27 Jun 2022 09:20:08 -0700 (PDT) Received: from google.com (123.65.230.35.bc.googleusercontent.com. [35.230.65.123]) by smtp.gmail.com with ESMTPSA id 10-20020a17090a174a00b001ec84049064sm7538417pjm.41.2022.06.27.09.20.07 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 27 Jun 2022 09:20:08 -0700 (PDT) Date: Mon, 27 Jun 2022 16:20:04 +0000 From: Sean Christopherson To: Yosry Ahmed Subject: Re: [PATCH v5 2/4] KVM: mmu: add a helper to account memory used by KVM MMU. Message-ID: References: <20220606222058.86688-1-yosryahmed@google.com> <20220606222058.86688-3-yosryahmed@google.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20220606222058.86688-3-yosryahmed@google.com> Cc: Wanpeng Li , kvm@vger.kernel.org, Roman Gushchin , Michal Hocko , linux-mm@kvack.org, Zefan Li , kvmarm@lists.cs.columbia.edu, Marc Zyngier , Joerg Roedel , Shakeel Butt , cgroups@vger.kernel.org, Andrew Morton , linux-arm-kernel@lists.infradead.org, Jim Mattson , linux-kernel@vger.kernel.org, Johannes Weiner , Tejun Heo , Paolo Bonzini , Vitaly Kuznetsov X-BeenThere: kvmarm@lists.cs.columbia.edu X-Mailman-Version: 2.1.14 Precedence: list List-Id: Where KVM/ARM decisions are made List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: kvmarm-bounces@lists.cs.columbia.edu Sender: kvmarm-bounces@lists.cs.columbia.edu On Mon, Jun 06, 2022, Yosry Ahmed wrote: > Add a helper to account pages used by KVM for page tables in secondary > pagetable stats. This function will be used by subsequent patches in > different archs. > > Signed-off-by: Yosry Ahmed > --- > include/linux/kvm_host.h | 9 +++++++++ > 1 file changed, 9 insertions(+) > > diff --git a/include/linux/kvm_host.h b/include/linux/kvm_host.h > index 883e86ec8e8c4..645585f3a4bed 100644 > --- a/include/linux/kvm_host.h > +++ b/include/linux/kvm_host.h > @@ -2246,6 +2246,15 @@ static inline void kvm_handle_signal_exit(struct kvm_vcpu *vcpu) > } > #endif /* CONFIG_KVM_XFER_TO_GUEST_WORK */ > > +/* > + * If nr > 1, we assume virt is the address of the first page of a block of But what if @nr is -2, which is technically less than 1? :-) > + * pages that were allocated together (i.e accounted together). Don't document assumptions, document the rules. And avoid "we", pronouns are ambiguous, e.g. is "we" the author, or KVM, or something else entirely? /* * If more than one page is being (un)accounted, @virt must be the address of * the first page of a block of pages what were allocated together. */ > + */ > +static inline void kvm_account_pgtable_pages(void *virt, int nr) > +{ > + mod_lruvec_page_state(virt_to_page(virt), NR_SECONDARY_PAGETABLE, nr); > +} > + > /* > * This defines how many reserved entries we want to keep before we > * kick the vcpu to the userspace to avoid dirty ring full. This > -- > 2.36.1.255.ge46751e96f-goog > _______________________________________________ kvmarm mailing list kvmarm@lists.cs.columbia.edu https://lists.cs.columbia.edu/mailman/listinfo/kvmarm 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 bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id C7B6FC433EF for ; Mon, 27 Jun 2022 16:21:24 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:In-Reply-To:MIME-Version:References: Message-ID:Subject:Cc:To:From:Date:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=4g0jf/UNVKKItyx20z0bmAcXwjsQOI7ENGeA+EaGgaE=; b=mjxDnXuJqThUYm IA+ihIDroT38hEIYujek3zivJLys8OcmUtr2rywICSeEh3dhKXXEN8jf/4gHX7ebQkZtn2W5fQ1lV IyxuM/HpCGe8Yn4zuwHjzV6wybdOq+oLPX4NcbOdFg5VHAhp9gVvvDi6G86DjQYVdxFgccdEAHId6 UP6je24jUtF99mzX7ccLC3MNvSBKqEkNMWTfiggw7oVuSXp/LjBySq0ihjJAvDOuFeOAI21HRX1iI fibD+lKgRaGT1D65F4YJcQjhiLDAITCPP2JjBjbtaD6AZoC4S0XplrIKClMcfnKlkVV81k5qS2R6U p9cj7aUgthjQp1VH9FFA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1o5rTC-001mnU-9o; Mon, 27 Jun 2022 16:20:14 +0000 Received: from mail-pg1-x52b.google.com ([2607:f8b0:4864:20::52b]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1o5rT8-001mmY-Lm for linux-arm-kernel@lists.infradead.org; Mon, 27 Jun 2022 16:20:11 +0000 Received: by mail-pg1-x52b.google.com with SMTP id d129so9544540pgc.9 for ; Mon, 27 Jun 2022 09:20:09 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; h=date:from:to:cc:subject:message-id:references:mime-version :content-disposition:in-reply-to; bh=l6X68KuyBDU81KFCllZcPJCpgvdaKM9lp1nYP5LV1kY=; b=QYuHqx8JmD3fGZhFw9UuYiMUgaHHG5YjGJZr+BhXEcVvOKmxYAAHNIYT4pML0YKcd9 UOpJZM3FxgCDYFkMEGVBOlFqLEi8hSMYRQnc+e7vRrYWrYSatKpLhI/fy9hbjAzv1Pnb Fzbk/A5QTs7U7PdF27OM5n8DIpWN30JeOZDLCACOEVdlNkDU2Q35PBJKkpYSbiWrD6Tw wUqWe7xVXLUA8Y8WFwrTpTXlCat4Ci9KWWfxvDWzzZ/KX8yqgOjmViXM2APbm4qweJdE PTl/Ci9fvhKr/8UGP8qNqQ7aXyTDMrVnpzr/DD4SM5yQhjeV+eXwvVZzqlB5dla5a1gv MANA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=l6X68KuyBDU81KFCllZcPJCpgvdaKM9lp1nYP5LV1kY=; b=ExZHB0bjBGOFxyH/3cswx9W3Hh8c77/VnXME5LRMdwulZO1JItt7dLw6TLN+urAHSx 7Nw3jagwDE8JI+G63bOq/fXjlWTqbwRAdM/rt+7wBivTDZBBccOGNTczBcPSbF092bHk 5jwHA3klWvTxIcqoKuNa+psrqLbFOTIuJ0py6U9/an7EEcczvE8vKNXl/ujqtA3Ov82I CcIlvyPNbL7m/Dq9WYdB+o/ylSuDVRHsU8qhjbLAhpnQ90OGH5KxUmOny26psvBz2kcD 04bbkAjvorDvOE5Tt3YP+TL+mBeoag0qEdZfuO0/ZfAcENbHMd7h/s9gH9Oy7bev2lfn SEHw== X-Gm-Message-State: AJIora9oTyQcuCqZCOG42rZCDXWUxkTBQ3OF9EdjFPj5y0EfkWcyQ/Uz wzeZ7ksc4xc9pXjuDVXy1/rznw== X-Google-Smtp-Source: AGRyM1sm+8Ne4/LREAP1BhpBHmHl7sHKXi5L+eGvKtbQn5emgnCoxtJdYUMElvkncDMjnmXaWe/0bg== X-Received: by 2002:a63:710c:0:b0:40c:adcf:ce72 with SMTP id m12-20020a63710c000000b0040cadcfce72mr13747246pgc.310.1656346808483; Mon, 27 Jun 2022 09:20:08 -0700 (PDT) Received: from google.com (123.65.230.35.bc.googleusercontent.com. [35.230.65.123]) by smtp.gmail.com with ESMTPSA id 10-20020a17090a174a00b001ec84049064sm7538417pjm.41.2022.06.27.09.20.07 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 27 Jun 2022 09:20:08 -0700 (PDT) Date: Mon, 27 Jun 2022 16:20:04 +0000 From: Sean Christopherson To: Yosry Ahmed Cc: Tejun Heo , Johannes Weiner , Zefan Li , Marc Zyngier , James Morse , Alexandru Elisei , Suzuki K Poulose , Paolo Bonzini , Vitaly Kuznetsov , Wanpeng Li , Jim Mattson , Joerg Roedel , Andrew Morton , Michal Hocko , Roman Gushchin , Shakeel Butt , Oliver Upton , cgroups@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, kvmarm@lists.cs.columbia.edu, kvm@vger.kernel.org, linux-mm@kvack.org Subject: Re: [PATCH v5 2/4] KVM: mmu: add a helper to account memory used by KVM MMU. Message-ID: References: <20220606222058.86688-1-yosryahmed@google.com> <20220606222058.86688-3-yosryahmed@google.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20220606222058.86688-3-yosryahmed@google.com> X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20220627_092010_749881_C060E672 X-CRM114-Status: GOOD ( 19.38 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org On Mon, Jun 06, 2022, Yosry Ahmed wrote: > Add a helper to account pages used by KVM for page tables in secondary > pagetable stats. This function will be used by subsequent patches in > different archs. > > Signed-off-by: Yosry Ahmed > --- > include/linux/kvm_host.h | 9 +++++++++ > 1 file changed, 9 insertions(+) > > diff --git a/include/linux/kvm_host.h b/include/linux/kvm_host.h > index 883e86ec8e8c4..645585f3a4bed 100644 > --- a/include/linux/kvm_host.h > +++ b/include/linux/kvm_host.h > @@ -2246,6 +2246,15 @@ static inline void kvm_handle_signal_exit(struct kvm_vcpu *vcpu) > } > #endif /* CONFIG_KVM_XFER_TO_GUEST_WORK */ > > +/* > + * If nr > 1, we assume virt is the address of the first page of a block of But what if @nr is -2, which is technically less than 1? :-) > + * pages that were allocated together (i.e accounted together). Don't document assumptions, document the rules. And avoid "we", pronouns are ambiguous, e.g. is "we" the author, or KVM, or something else entirely? /* * If more than one page is being (un)accounted, @virt must be the address of * the first page of a block of pages what were allocated together. */ > + */ > +static inline void kvm_account_pgtable_pages(void *virt, int nr) > +{ > + mod_lruvec_page_state(virt_to_page(virt), NR_SECONDARY_PAGETABLE, nr); > +} > + > /* > * This defines how many reserved entries we want to keep before we > * kick the vcpu to the userspace to avoid dirty ring full. This > -- > 2.36.1.255.ge46751e96f-goog > _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel 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 vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id A85D2CCA473 for ; Mon, 27 Jun 2022 16:20:15 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S236626AbiF0QUN (ORCPT ); Mon, 27 Jun 2022 12:20:13 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:52728 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S238420AbiF0QUK (ORCPT ); Mon, 27 Jun 2022 12:20:10 -0400 Received: from mail-pg1-x52f.google.com (mail-pg1-x52f.google.com [IPv6:2607:f8b0:4864:20::52f]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 219BF2660 for ; Mon, 27 Jun 2022 09:20:09 -0700 (PDT) Received: by mail-pg1-x52f.google.com with SMTP id v126so5390278pgv.11 for ; Mon, 27 Jun 2022 09:20:09 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; h=date:from:to:cc:subject:message-id:references:mime-version :content-disposition:in-reply-to; bh=l6X68KuyBDU81KFCllZcPJCpgvdaKM9lp1nYP5LV1kY=; b=QYuHqx8JmD3fGZhFw9UuYiMUgaHHG5YjGJZr+BhXEcVvOKmxYAAHNIYT4pML0YKcd9 UOpJZM3FxgCDYFkMEGVBOlFqLEi8hSMYRQnc+e7vRrYWrYSatKpLhI/fy9hbjAzv1Pnb Fzbk/A5QTs7U7PdF27OM5n8DIpWN30JeOZDLCACOEVdlNkDU2Q35PBJKkpYSbiWrD6Tw wUqWe7xVXLUA8Y8WFwrTpTXlCat4Ci9KWWfxvDWzzZ/KX8yqgOjmViXM2APbm4qweJdE PTl/Ci9fvhKr/8UGP8qNqQ7aXyTDMrVnpzr/DD4SM5yQhjeV+eXwvVZzqlB5dla5a1gv MANA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=l6X68KuyBDU81KFCllZcPJCpgvdaKM9lp1nYP5LV1kY=; b=NC/eGb45z4AcRpiK6+1hi5VrXUl8c8Cuheq7UWKnL2/qAqf08BYUPYC0ASFZ6njyrA 3Qr2/eSb8gvnYVtKK/16WLRZEtKSFBpRd6OvoZn2wRnRJZbmPVBq7JuZsVGcf+RCfFGz 7tcEj81OicLS6KI1NU0O6IDbsCUaA9jLm/BVKksBRb4rH1gher44VC2ybrsya5Plkb8W r/MB7FgI9cTEM8RucvbCLkczmDymQ2Xdm5dcOyb9COuHAV3zRPOdTzlXbsdq+axKGaq+ Vly/tYbsCvpLmlS5rG0770h0cFgxHApCMBKFfkWidkN8/LU/V2H8JLuC2QNZR6dgP5Es oXJA== X-Gm-Message-State: AJIora92z1GS8tpP+V0TqTv5T/xUsHcyknxgAGBEX3GfvXbylJNI3P65 zZ0pF37I5c9dQVqzs1p19Iqafg== X-Google-Smtp-Source: AGRyM1sm+8Ne4/LREAP1BhpBHmHl7sHKXi5L+eGvKtbQn5emgnCoxtJdYUMElvkncDMjnmXaWe/0bg== X-Received: by 2002:a63:710c:0:b0:40c:adcf:ce72 with SMTP id m12-20020a63710c000000b0040cadcfce72mr13747246pgc.310.1656346808483; Mon, 27 Jun 2022 09:20:08 -0700 (PDT) Received: from google.com (123.65.230.35.bc.googleusercontent.com. [35.230.65.123]) by smtp.gmail.com with ESMTPSA id 10-20020a17090a174a00b001ec84049064sm7538417pjm.41.2022.06.27.09.20.07 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 27 Jun 2022 09:20:08 -0700 (PDT) Date: Mon, 27 Jun 2022 16:20:04 +0000 From: Sean Christopherson To: Yosry Ahmed Cc: Tejun Heo , Johannes Weiner , Zefan Li , Marc Zyngier , James Morse , Alexandru Elisei , Suzuki K Poulose , Paolo Bonzini , Vitaly Kuznetsov , Wanpeng Li , Jim Mattson , Joerg Roedel , Andrew Morton , Michal Hocko , Roman Gushchin , Shakeel Butt , Oliver Upton , cgroups@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, kvmarm@lists.cs.columbia.edu, kvm@vger.kernel.org, linux-mm@kvack.org Subject: Re: [PATCH v5 2/4] KVM: mmu: add a helper to account memory used by KVM MMU. Message-ID: References: <20220606222058.86688-1-yosryahmed@google.com> <20220606222058.86688-3-yosryahmed@google.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20220606222058.86688-3-yosryahmed@google.com> Precedence: bulk List-ID: X-Mailing-List: kvm@vger.kernel.org On Mon, Jun 06, 2022, Yosry Ahmed wrote: > Add a helper to account pages used by KVM for page tables in secondary > pagetable stats. This function will be used by subsequent patches in > different archs. > > Signed-off-by: Yosry Ahmed > --- > include/linux/kvm_host.h | 9 +++++++++ > 1 file changed, 9 insertions(+) > > diff --git a/include/linux/kvm_host.h b/include/linux/kvm_host.h > index 883e86ec8e8c4..645585f3a4bed 100644 > --- a/include/linux/kvm_host.h > +++ b/include/linux/kvm_host.h > @@ -2246,6 +2246,15 @@ static inline void kvm_handle_signal_exit(struct kvm_vcpu *vcpu) > } > #endif /* CONFIG_KVM_XFER_TO_GUEST_WORK */ > > +/* > + * If nr > 1, we assume virt is the address of the first page of a block of But what if @nr is -2, which is technically less than 1? :-) > + * pages that were allocated together (i.e accounted together). Don't document assumptions, document the rules. And avoid "we", pronouns are ambiguous, e.g. is "we" the author, or KVM, or something else entirely? /* * If more than one page is being (un)accounted, @virt must be the address of * the first page of a block of pages what were allocated together. */ > + */ > +static inline void kvm_account_pgtable_pages(void *virt, int nr) > +{ > + mod_lruvec_page_state(virt_to_page(virt), NR_SECONDARY_PAGETABLE, nr); > +} > + > /* > * This defines how many reserved entries we want to keep before we > * kick the vcpu to the userspace to avoid dirty ring full. This > -- > 2.36.1.255.ge46751e96f-goog >