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

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




> -----Original Message-----
> From: Marc Zyngier <maz@xxxxxxxxxx>
> Sent: Friday, September 3, 2021 2:12 AM
> To: Justin He <Justin.He@xxxxxxx>
> Cc: James Morse <James.Morse@xxxxxxx>; Alexandru Elisei
> <Alexandru.Elisei@xxxxxxx>; Suzuki Poulose <Suzuki.Poulose@xxxxxxx>;
> Catalin Marinas <Catalin.Marinas@xxxxxxx>; Will Deacon <will@xxxxxxxxxx>;
> Liu Shixin <liushixin2@xxxxxxxxxx>; Eric Auger <eric.auger@xxxxxxxxxx>;
> Kees Cook <keescook@xxxxxxxxxxxx>; Nick Desaulniers
> <ndesaulniers@xxxxxxxxxx>; Shenming Lu <lushenming@xxxxxxxxxx>; Sami
> Tolvanen <samitolvanen@xxxxxxxxxx>; Lorenzo Pieralisi
> <Lorenzo.Pieralisi@xxxxxxx>; Xiaoming Ni <nixiaoming@xxxxxxxxxx>; Zenghui
> Yu <yuzenghui@xxxxxxxxxx>; linux-arm-kernel@xxxxxxxxxxxxxxxxxxx;
> kvmarm@xxxxxxxxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx
> Subject: Re: [PATCH 2/2] KVM: arm64: Add memcg accounting to KVM
> allocations
> 
> On Thu, 02 Sep 2021 01:28:01 +0100,
> Jia He <justin.he@xxxxxxx> 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 remained a few cases since these allocations are global, not in VM
> > scope.
> >
> > Signed-off-by: Jia He <justin.he@xxxxxxx>
> > ---
> >  arch/arm64/kvm/arm.c      | 6 ++++--
> >  arch/arm64/kvm/mmu.c      | 2 +-
> >  arch/arm64/kvm/pmu-emul.c | 2 +-
> >  arch/arm64/kvm/reset.c    | 2 +-
> >  4 files changed, 7 insertions(+), 5 deletions(-)
> >
> > diff --git a/arch/arm64/kvm/arm.c b/arch/arm64/kvm/arm.c
> > index e9a2b8f27792..9d6f5bcaddef 100644
> > --- a/arch/arm64/kvm/arm.c
> > +++ b/arch/arm64/kvm/arm.c
> > @@ -289,10 +289,12 @@ long kvm_arch_dev_ioctl(struct file *filp,
> >
> >  struct kvm *kvm_arch_alloc_vm(void)
> >  {
> > +	unsigned long sz = sizeof(struct kvm);
> 
> If you are going to introduce an extra variable, please use the
> correct type (size_t).

Okay
> 
> > +
> >  	if (!has_vhe())
> > -		return kzalloc(sizeof(struct kvm), GFP_KERNEL);
> > +		return kzalloc(sz, GFP_KERNEL | GFP_KERNEL_ACCOUNT);
> 
> Why both GFP_KERNEL and GFP_KERNEL_ACCOUNT?
Urgh, sorry for the mistake.

--
Cheers,
Justin (Jia He)


_______________________________________________
kvmarm mailing list
kvmarm@xxxxxxxxxxxxxxxxxxxxx
https://lists.cs.columbia.edu/mailman/listinfo/kvmarm



[Index of Archives]     [Linux KVM]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux