lkml.org 
[lkml]   [2018]   [Sep]   [18]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
Subject[PATCH 00/19] vmw_balloon: compaction, shrinker, 64-bit, etc.
Date
This patch-set adds the following enhancements to the VMware balloon
driver:

1. Balloon compaction support.
2. Report the number of inflated/deflated ballooned pages through vmstat.
3. Memory shrinker to avoid balloon over-inflation (and OOM).
4. Support VMs with memory limit that is greater than 16TB.
5. Faster and more aggressive inflation.

To support compaction we wish to use the existing infrastructure.
However, we need to make slight adaptions for it. We add a new list
interface to balloon-compaction, which is more generic and efficient,
since it does not require as many IRQ save/restore operations. We leave
the old interface that is used by the virtio balloon.

Big parts of this patch-set are cleanup and documentation. Patches 1-13
simplify the balloon code, document its behavior and allow the balloon
code to run concurrently. The support for concurrency is required for
compaction and the shrinker interface.

For documentation we use the kernel-doc format. We are aware that the
balloon interface is not public, but following the kernel-doc format may
be useful one day.

Cc: Xavier Deguillard <xdeguillard@vmware.com>
Cc: "Michael S. Tsirkin" <mst@redhat.com>
Cc: Jason Wang <jasowang@redhat.com>
Cc: linux-mm@kvack.org
Cc: virtualization@lists.linux-foundation.org

Nadav Amit (18):
vmw_balloon: handle commands in a single function.
vmw_balloon: unify commands tracing and stats
vmw_balloon: merge send_lock and send_unlock path
vmw_balloon: simplifying batch access
vmw_balloon: remove sleeping allocations
vmw_balloon: change batch/single lock abstractions
vmw_balloon: treat all refused pages equally
vmw_balloon: refactor change size from vmballoon_work
vmw_balloon: simplify vmballoon_send_get_target()
vmw_balloon: stats rework
vmw_balloon: rework the inflate and deflate loops
vmw_balloon: general style cleanup
vmw_balloon: add reset stat
mm/balloon_compaction: suppress allocation warnings
mm/balloon_compaction: list interfaces
vmw_balloon: compaction support
vmw_balloon: memory shrinker
vmw_balloon: split refused pages

Xavier Deguillard (1):
vmw_balloon: support 64-bit memory limit

drivers/misc/Kconfig | 1 +
drivers/misc/vmw_balloon.c | 2181 ++++++++++++++++++----------
include/linux/balloon_compaction.h | 4 +
include/uapi/linux/magic.h | 1 +
mm/balloon_compaction.c | 142 +-
5 files changed, 1560 insertions(+), 769 deletions(-)

--
2.17.1

\
 
 \ /
  Last update: 2018-09-18 08:42    [W:0.093 / U:0.292 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site