From patchwork Tue Sep 7 12:31:10 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jia He X-Patchwork-Id: 12478569 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-12.1 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id B4FC3C433F5 for ; Tue, 7 Sep 2021 12:35:13 +0000 (UTC) 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 mail.kernel.org (Postfix) with ESMTPS id 884BA6103E for ; Tue, 7 Sep 2021 12:35:13 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 mail.kernel.org 884BA6103E Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=arm.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=lists.infradead.org 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:MIME-Version:List-Subscribe:List-Help: List-Post:List-Archive:List-Unsubscribe:List-Id:Message-Id:Date:Subject:Cc:To :From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References: List-Owner; bh=aaHleT2lvdQ+ZiJPuKm4+czF8u2mCWrZaNggDvC9YYw=; b=FV+6umwWBEwU9c HzzetOWNNIOKDyQZNCVAc0Vggmq0V88gXzwW+waKntzC332WRyAq6HHwfRM9lohwyUk/AIWPb7RE4 4N7B46Ta8+XsIK01hql0+slFvdYZJPvvTimhUDc2n4PLxbA3QRfd+jciP8FkFd+p7Xz+J2e1STFU6 9EpUZEV6gSOEtQ9SYoTqwdAfGt+eFcBoWyUVOPxWH7hc0Bc2yj80fG1a/JzjQWjSO4MpisM55LvzU g0xrW6rRBGw+pv60pux9GoTGRePA62GOo4e892KkvGoRhJQ8C8LF4Ymb1iU47IQZhsTJqASeZqyXS YMfauMq0mc0Bg3ttuc4g==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1mNaI0-003g51-T9; Tue, 07 Sep 2021 12:33:25 +0000 Received: from foss.arm.com ([217.140.110.172]) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1mNaHr-003g1Z-K0 for linux-arm-kernel@lists.infradead.org; Tue, 07 Sep 2021 12:33:20 +0000 Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 67CFE6D; Tue, 7 Sep 2021 05:33:10 -0700 (PDT) Received: from entos-ampere-02.shanghai.arm.com (entos-ampere-02.shanghai.arm.com [10.169.214.103]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 31CFC3F766; Tue, 7 Sep 2021 05:33:04 -0700 (PDT) From: Jia He To: Marc Zyngier , James Morse , Alexandru Elisei , Suzuki K Poulose Cc: Catalin Marinas , Will Deacon , Liu Shixin , Eric Auger , Kees Cook , Nick Desaulniers , Sami Tolvanen , Lorenzo Pieralisi , Xiaoming Ni , Zenghui Yu , linux-arm-kernel@lists.infradead.org, kvmarm@lists.cs.columbia.edu, linux-kernel@vger.kernel.org, Jia He Subject: [PATCH v2 0/2] Add memcg accounting to Arm KVM Date: Tue, 7 Sep 2021 20:31:10 +0800 Message-Id: <20210907123112.10232-1-justin.he@arm.com> X-Mailer: git-send-email 2.17.1 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20210907_053315_762191_88DEADA5 X-CRM114-Status: UNSURE ( 8.06 ) X-CRM114-Notice: Please train this message. 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: , MIME-Version: 1.0 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org Inspired by what had been done by X86 kvm and kvm common codes, it would be better to make arm64 kvm consistent with them. The memory allocations of VM scope should be charged into VM process. Hence change the allocation flag from GFP_KERNEL to GFP_KERNEL_ACCOUNT. There remain some GFP_KERNEL unchanged since they are global allocations, instead of VM scope. Changes: v2: address a few comments from Marc Zyngier, including redundant GFP_KERNEL, incorrect memcg accounting and variable type v1: https://lkml.org/lkml/2021/9/2/649 Jia He (2): KVM: arm64: vgic: Add memcg accounting to vgic allocations KVM: arm64: Add memcg accounting to KVM allocations 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 +- arch/arm64/kvm/vgic/vgic-init.c | 2 +- arch/arm64/kvm/vgic/vgic-irqfd.c | 2 +- arch/arm64/kvm/vgic/vgic-its.c | 14 +++++++------- arch/arm64/kvm/vgic/vgic-mmio-v3.c | 2 +- arch/arm64/kvm/vgic/vgic-v4.c | 2 +- 9 files changed, 18 insertions(+), 16 deletions(-)