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 kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id AE7E4C28B28 for ; Wed, 12 Mar 2025 20:11:46 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 5B229280002; Wed, 12 Mar 2025 16:11:44 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 53B63280001; Wed, 12 Mar 2025 16:11:44 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 3B4DE280002; Wed, 12 Mar 2025 16:11:44 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id 19664280001 for ; Wed, 12 Mar 2025 16:11:44 -0400 (EDT) Received: from smtpin28.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id 30C0BB9BDB for ; Wed, 12 Mar 2025 20:11:45 +0000 (UTC) X-FDA: 83213994570.28.52B0120 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by imf11.hostedemail.com (Postfix) with ESMTP id 883C640006 for ; Wed, 12 Mar 2025 20:11:39 +0000 (UTC) Authentication-Results: imf11.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=RlpGPeub; spf=pass (imf11.hostedemail.com: domain of npache@redhat.com designates 170.10.129.124 as permitted sender) smtp.mailfrom=npache@redhat.com; dmarc=pass (policy=none) header.from=redhat.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1741810300; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=CUM3a6gnZC/3zAtpJFYD7FtGrYIIZpsLuUMo7CMvX0I=; b=WRiwJKlg8rhfE8XHyUtOO+44q010CD6NyvVeLTb9d510ULJQQItPVlFmN3szNzw9Qi6KDG T3JqRZMSfSYgS/WQvvaQpaSBJNatH5G2WOYMvoH5+PfKHGX8ArGPj1wiuTpJGE9uzeLKbt B3Q5PXCGjdc87QP3L/fiLvlyNpdtdKU= ARC-Authentication-Results: i=1; imf11.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=RlpGPeub; spf=pass (imf11.hostedemail.com: domain of npache@redhat.com designates 170.10.129.124 as permitted sender) smtp.mailfrom=npache@redhat.com; dmarc=pass (policy=none) header.from=redhat.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1741810300; a=rsa-sha256; cv=none; b=VGNefVLaK7/VChHcXqYcoQPrChBVKRqrbpJZCcsBUF+M1c31/dkV2jgm+dsDeTb2EIzIwO etXgzTUuMDOPVAV4F9kIblczJ+SA8IsXJ+6mVnmD1Uwenl/EdPJMTcb+NgI1tFw+Tr1yD1 GnEPkZ9rQ4TdE2J2C7knzXCSXKDwWD4= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1741810298; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=CUM3a6gnZC/3zAtpJFYD7FtGrYIIZpsLuUMo7CMvX0I=; b=RlpGPeubXh2/Btu0Ntl/+N0pDf75cmtkmxzBO+JfX7L6tqqwVC1CE7FsgRIf4631OMwLQI tTPYuYk+sa8NVB9D3UXS58RJD/ZzrR15lR9yaCNSvW1PvVALBuwDLwihAFP3BJTMD+A5fA fVDVEG8wzfSgB7GBclHDtvj+rMqDPWI= Received: from mail-yb1-f198.google.com (mail-yb1-f198.google.com [209.85.219.198]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-111-7KYzzMacNjKSzgT8HgVjCw-1; Wed, 12 Mar 2025 16:11:37 -0400 X-MC-Unique: 7KYzzMacNjKSzgT8HgVjCw-1 X-Mimecast-MFC-AGG-ID: 7KYzzMacNjKSzgT8HgVjCw_1741810297 Received: by mail-yb1-f198.google.com with SMTP id 3f1490d57ef6-e60aebf48e8so340848276.0 for ; Wed, 12 Mar 2025 13:11:37 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741810297; x=1742415097; 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=CUM3a6gnZC/3zAtpJFYD7FtGrYIIZpsLuUMo7CMvX0I=; b=IDRrH5bO7bigYrjj11rrOCOOIfpulR/WFncJN+IdWghRQVA5Ou8l5u43r/kXFoZ8xY xh+nIfJSn/gK8sPHBK+VJBaiZeHl+auLlnjiVrzETDFoB52C6B0+70j5K4qpkc9DLI4x pUg4RkUHDEU3yUf1SCzqwacEdjrSgwg94Ls1oqiU36YLhOzCf5lMiBl57MXpzAMbUiDP oU1nY+Sy5/SjiuUdVtG3hau02lr+JkC7sBUfonr7ryUGxcK1Eq3nhZE3GFhoA5JgbDGp 74XxUIknVkdJJ+LOojXe+5c+RO9NHj6PmfE5G8qYIkgPyh9waDsd8O2KwKDC8INK2yqh s5Xg== X-Forwarded-Encrypted: i=1; AJvYcCVs8QFC8DJ/wG5N+3RBrCo5iZ/lCuwL2vX6K+JwrCKDirIO0cvciD6d58sjULXFL3nh4Jc8mSWD7A==@kvack.org X-Gm-Message-State: AOJu0YxFK+frrXGKxqyF7vRvcgo1diFcX/C7Tyd1nFRQ/R2eYUglaIi7 q8L/B5EEcBPPcflGJHMG4jPSh16MxEZLhquZyb/s+rXccqanU0ZTkT28N7xnRMt+HeUKiaxm+DH WLpDUXuyP3r8cA4tOgn6LvmKsSJ7X3Io4hwfQkFTRH0yGeq2fvhTpSjdGX7OEJC3q/TAn42Oxlt 4v6LC/V6uCABXr70jf4PX5Yqs= X-Gm-Gg: ASbGnct76qF/2+CF/uySaSwFyl1bvDlXB30DNc3Z7ye/xY1AoS5tAQIi9njZjoV3QEk F6l95z55aEOdV34DQJ1RoSVUXZehQDDjUY/Wh0cfUgDVhqNcK9VOXlchQ+3Cjv+7xNXtL5p8YeX xq826/us2Zo/s= X-Received: by 2002:a05:6902:4908:b0:e63:71cf:7a25 with SMTP id 3f1490d57ef6-e6371cf7f99mr23022230276.19.1741810296859; Wed, 12 Mar 2025 13:11:36 -0700 (PDT) X-Google-Smtp-Source: AGHT+IFILEwS4y4Eu7CtZytQ1AMLlSYSOVDPPOZAL/URaaVOd4HXzYxT1BzN9xV4mLg1LOlVPDho5H2JPLVwRxAT/sw= X-Received: by 2002:a05:6902:4908:b0:e63:71cf:7a25 with SMTP id 3f1490d57ef6-e6371cf7f99mr23022141276.19.1741810296082; Wed, 12 Mar 2025 13:11:36 -0700 (PDT) MIME-Version: 1.0 References: <20250312000700.184573-1-npache@redhat.com> <20250312000700.184573-5-npache@redhat.com> <20250312025607-mutt-send-email-mst@kernel.org> In-Reply-To: <20250312025607-mutt-send-email-mst@kernel.org> From: Nico Pache Date: Wed, 12 Mar 2025 14:11:09 -0600 X-Gm-Features: AQ5f1JpCzw-OMEiWJ5oWmnRpNTzG9s0Jia2dTAgWmtQzoaspW3JJPq9uXITvZCU Message-ID: Subject: Re: [RFC 4/5] vmx_balloon: update the NR_BALLOON_PAGES state To: "Michael S. Tsirkin" Cc: linux-hyperv@vger.kernel.org, linux-kernel@vger.kernel.org, virtualization@lists.linux.dev, xen-devel@lists.xenproject.org, linux-fsdevel@vger.kernel.org, linux-mm@kvack.org, cgroups@vger.kernel.org, kys@microsoft.com, haiyangz@microsoft.com, wei.liu@kernel.org, decui@microsoft.com, jerrin.shaji-george@broadcom.com, bcm-kernel-feedback-list@broadcom.com, arnd@arndb.de, gregkh@linuxfoundation.org, david@redhat.com, jasowang@redhat.com, xuanzhuo@linux.alibaba.com, eperezma@redhat.com, jgross@suse.com, sstabellini@kernel.org, oleksandr_tyshchenko@epam.com, akpm@linux-foundation.org, hannes@cmpxchg.org, mhocko@kernel.org, roman.gushchin@linux.dev, shakeel.butt@linux.dev, muchun.song@linux.dev, nphamcs@gmail.com, yosry.ahmed@linux.dev, kanchana.p.sridhar@intel.com, alexander.atanasov@virtuozzo.com X-Mimecast-Spam-Score: 0 X-Mimecast-MFC-PROC-ID: uGm32-7GbCzUNp4qxKYawTtC94-jnCFbFZmjah5r8sI_1741810297 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspam-User: X-Rspamd-Queue-Id: 883C640006 X-Rspamd-Server: rspam08 X-Stat-Signature: gp7idd4mowiowbkp8otoyu8comrt34kk X-HE-Tag: 1741810299-432109 X-HE-Meta: U2FsdGVkX1/EHi0E+lINUABz7y0YweMO1hs/qE2SvK9Km1TRRwcka5KHE6tisZS/eICE/ahI6jmeCiBnKB/arykTjMKEpMahhMPD6N4uY0+vdTIG/fs0+qbb/cCSolhCDSQR0b3uuYhRd1d4FaKDtywB3w++vOOkpqcYvyY6ENaV5pKC8m84a9WU13LdbKd8syKMrKiCQJGfL+iuMBewumYnbDyqu50mEv/RfCZiHcg9Ix+kopA8s2Ums0quzM3d4tqEGzc45Pqe0iyghEK74er9X9Gu+SxAwRDLtSu6+TfGAGOkJA2LBedeh/udCRMBQr0ohifBLDJa+oy38Nc8v78EOWTKgYv5Lfggwnkz5jGnGXTao05uT4ZYQrsueqyIaIKxr4DvR2da2erdOW3zUHqg3ZNQHIQNdqcfukWqew2Cpo7qYYjMb1R/suGEqjTTeyGqGRES7VwMmyFUoA8rtr7iePvLGj3bnV3OPeaNef12X5Wr3wvPWXn21csGGMuI45LOhV2IVavNnZWKz7rxDNMucLGhMOyBTId+uDBKNW01D134ErxJWGUkWSslm6kEJSXWTy10Mvp/n3oDwNI1efhilYiFmDtXuDdTJsDvYJ+iBceP9YoCSeew/e1xrF9n+pmLrkR1QnzaXaaupx/UvAXoUF04o7/Jnc2UlsrIfddqLPaCfq1/OD4aYf2KP7bGtdwg+zgFh5a869CZXoOm/4aW5u/9gHHbAbZsHyvuigUXwFT2CvjNtVELfDJUqOLQPjl+keesxD2juRyuOI9N7WSk8eZGEXx9mB15uO18/UhwKiy+UDDXEfjcWGwUZJPRO3co5bd6Am5AjFMnawhRDrJw6GMu5nRulHRASDQ8RLg+siRr7ZPUMGDwvSChr3tep5a+0sfQdmqw+A/JhdDUsIvVxFj2zFBgTQubDb38Py64cVJGtnD8is1vN/ROFnMBoJSfYqQAF1ifj/xaMsu 9ytokGxE Vx8E6nxiU5V2ht3NRTKst/4EdZEz5lncodxc6o3p6UnHpCyBvJhhguhcDGA7q1wM+slgFnhcw5ya5eOjtYFr32tCeiu90PP+cIkNYo6Zg4qud5NQjJvkcKAguOhxirsxkOtl7XbgIdY9GCsPGrvKuriucEuurEEYoSED0JPrm9BuaBCrtkCsKhw7UCxViZ4STfEAdmpLeAE6BjfRc5LwIRSYfB+g5HIYRM8QGXSqsKoIv9TsT9xanLowQAsblkmMoHW3917CbF/wuMdEIMUW2DkZjY0x5RV1WpIznyMH0TVYmLQ/qaizKq8EpR3qUOYHl9JGN X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: On Wed, Mar 12, 2025 at 12:57=E2=80=AFAM Michael S. Tsirkin wrote: > > On Tue, Mar 11, 2025 at 06:06:59PM -0600, Nico Pache wrote: > > Update the NR_BALLOON_PAGES counter when pages are added to or > > removed from the VMware balloon. > > > > Signed-off-by: Nico Pache > > --- > > drivers/misc/vmw_balloon.c | 5 ++++- > > 1 file changed, 4 insertions(+), 1 deletion(-) > > > > diff --git a/drivers/misc/vmw_balloon.c b/drivers/misc/vmw_balloon.c > > index c817d8c21641..2c70b08c6fb3 100644 > > --- a/drivers/misc/vmw_balloon.c > > +++ b/drivers/misc/vmw_balloon.c > > @@ -673,6 +673,8 @@ static int vmballoon_alloc_page_list(struct vmballo= on *b, > > > > vmballoon_stats_page_inc(b, VMW_BALLOON_PAGE_STAT= _ALLOC, > > ctl->page_size); > > + mod_node_page_state(page_pgdat(page), NR_BALLOON_= PAGES, > > + vmballoon_page_in_frames(ctl->page_size))= ; > > > same issue as virtio I think - this counts frames not pages. I agree with the viritio issue since PAGE_SIZE can be larger than VIRTIO_BALLOON_PFN_SHIFT, resulting in multiple virtio_balloon pages for each page. I fixed that one, thanks! For the Vmware one, the code is littered with mentions of counting in 4k or 2M but as far as I can tell from looking at the code it actually operates in PAGE_SIZE or PMD size chunks and this count would be correct. Perhaps I am missing something though. > > > } > > > > if (page) { > > @@ -915,6 +917,8 @@ static void vmballoon_release_page_list(struct list= _head *page_list, > > list_for_each_entry_safe(page, tmp, page_list, lru) { > > list_del(&page->lru); > > __free_pages(page, vmballoon_page_order(page_size)); > > + mod_node_page_state(page_pgdat(page), NR_BALLOON_PAGES, > > + -vmballoon_page_in_frames(page_size)); > > } > > > > if (n_pages) > > @@ -1129,7 +1133,6 @@ static void vmballoon_inflate(struct vmballoon *b= ) > > > > /* Update the balloon size */ > > atomic64_add(ctl.n_pages * page_in_frames, &b->size); > > - > > > unrelated change Fixed, Thanks for reviewing! > > > vmballoon_enqueue_page_list(b, &ctl.pages, &ctl.n_pages, > > ctl.page_size); > > > > -- > > 2.48.1 >