[PATCH v2 2/2] KVM: arm64: Add memcg accounting to KVM allocations

Oliver Upton oupton at google.com
Mon Sep 13 05:21:12 PDT 2021


Justin,

On Thu, Sep 9, 2021 at 8:57 AM Justin He <Justin.He at arm.com> wrote:
>
> Hi Oliver, thanks for the review, please my comments below:
>
> > -----Original Message-----
> > From: Oliver Upton <oupton at google.com>
> > Sent: Wednesday, September 8, 2021 6:29 AM
> > To: Justin He <Justin.He at arm.com>
> > Cc: Marc Zyngier <maz at kernel.org>; James Morse <James.Morse at arm.com>;
> > Alexandru Elisei <Alexandru.Elisei at arm.com>; Suzuki Poulose
> > <Suzuki.Poulose at arm.com>; Xiaoming Ni <nixiaoming at huawei.com>; Lorenzo
> > Pieralisi <Lorenzo.Pieralisi at arm.com>; Kees Cook <keescook at chromium.org>;
> > Catalin Marinas <Catalin.Marinas at arm.com>; Nick Desaulniers
> > <ndesaulniers at google.com>; linux-kernel at vger.kernel.org; Liu Shixin
> > <liushixin2 at huawei.com>; Sami Tolvanen <samitolvanen at google.com>; Will
> > Deacon <will at kernel.org>; kvmarm at lists.cs.columbia.edu; linux-arm-
> > kernel at lists.infradead.org
> > Subject: Re: [PATCH v2 2/2] KVM: arm64: Add memcg accounting to KVM
> > allocations
> >
> > Hi Jia,
> >
> > On Tue, Sep 7, 2021 at 7:33 AM Jia He <justin.he at arm.com> wrote:
> > >
> > > Inspired by commit 254272ce6505 ("kvm: x86: Add memcg accounting to KVM
> > > allocations"), it would be better to make arm64 KVM consistent with
> > > common kvm codes.
> > >
> > > The memory allocations of VM scope should be charged into VM process
> > > cgroup, hence change GFP_KERNEL to GFP_KERNEL_ACCOUNT.
> > >
> > > There remain a few cases since these allocations are global, not in VM
> > > scope.
> >
> > I believe there are more memory allocations that could be switched to
> > GFP_KERNEL_ACCOUNT. For non-pKVM kernels, we probably should charge
> > all stage-2 paging structure allocations to the VM process. Your patch
> > appears to only change the allocation of the kvm_pgtable structure,
> > but not descendent paging structures.
> >
> Do you mean kvm_hyp_zalloc_page() here?
> Seems kvm_hyp_zalloc_page() is in both global and VM scopes.

Doh! kvm_hyp_zalloc_page() is only for the hyp's page tables, hence I
believe your patch is correct as it stands. As such:

Reviewed-by: Oliver Upton <oupton at google.com>



More information about the linux-arm-kernel mailing list