[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250314213757.244258-1-npache@redhat.com>
Date: Fri, 14 Mar 2025 15:37:53 -0600
From: Nico Pache <npache@...hat.com>
To: linux-hyperv@...r.kernel.org,
linux-kernel@...r.kernel.org,
xen-devel@...ts.xenproject.org,
linux-fsdevel@...r.kernel.org,
linux-mm@...ck.org,
virtualization@...ts.linux.dev
Cc: alexander.atanasov@...tuozzo.com,
muchun.song@...ux.dev,
roman.gushchin@...ux.dev,
mhocko@...nel.org,
kys@...rosoft.com,
haiyangz@...rosoft.com,
wei.liu@...nel.org,
decui@...rosoft.com,
jgross@...e.com,
sstabellini@...nel.org,
oleksandr_tyshchenko@...m.com,
akpm@...ux-foundation.org,
mst@...hat.com,
david@...hat.com,
yosry.ahmed@...ux.dev,
hannes@...xchg.org,
nphamcs@...il.com,
chengming.zhou@...ux.dev,
kanchana.p.sridhar@...el.com,
llong@...hat.com,
shakeel.butt@...ux.dev
Subject: [PATCH v2 0/4] track memory used by balloon drivers
This series introduces a way to track memory used by balloon drivers.
Add a NR_BALLOON_PAGES counter to track how many pages are reclaimed by the
balloon drivers. First add the accounting, then updates the balloon drivers
(virtio, Hyper-V, VMware, Pseries-cmm, and Xen) to maintain this counter. The
virtio, Vmware, and pseries-cmm balloon drivers utilize the balloon_compaction
interface to allocate and free balloon pages. Other balloon drivers will have to
maintain this counter manually.
This makes the information visible in memory reporting interfaces like
/proc/meminfo, show_mem, and OOM reporting.
This provides admins visibility into their VM balloon sizes without
requiring different virtualization tooling. Furthermore, this information
is helpful when debugging an OOM inside a VM.
V2 changes:
- Add counter to the balloon_compaction interface
- Dropped patches for virtio and VMware as they use balloon_compaction interface
Tested: virtio_balloon, run stress-ng, inflate balloon, oom prints
Signed-off-by: Nico Pache <npache@...hat.com>
Nico Pache (4):
meminfo: add a per node counter for balloon drivers
balloon_compaction: update the NR_BALLOON_PAGES state
hv_balloon: update the NR_BALLOON_PAGES state
xen: balloon: update the NR_BALLOON_PAGES state
drivers/hv/hv_balloon.c | 2 ++
drivers/xen/balloon.c | 4 ++++
fs/proc/meminfo.c | 2 ++
include/linux/mmzone.h | 1 +
mm/balloon_compaction.c | 2 ++
mm/show_mem.c | 4 +++-
mm/vmstat.c | 1 +
7 files changed, 15 insertions(+), 1 deletion(-)
--
2.48.1
Powered by blists - more mailing lists