All of lore.kernel.org
 help / color / mirror / Atom feed
* [virtio-comment] [PATCH 0/2] Add alternative to deflate-on-oom
@ 2022-01-24 12:56 David Stevens
  2022-01-24 12:56 ` [virtio-comment] [PATCH 1/2] virtio-balloon: add an event queue David Stevens
  2022-01-24 12:56 ` [virtio-comment] [PATCH 2/2] virtio-balloon: add a responsive host feature David Stevens
  0 siblings, 2 replies; 16+ messages in thread
From: David Stevens @ 2022-01-24 12:56 UTC (permalink / raw)
  To: virtio-comment; +Cc: David Stevens

This series provides an alternative to deflate-on-oom, by adding a
feature flag that lets the driver assume that all memory in the balloon
will be made available when necessary. To allow the device to better
fulfil that assumption, this series also adds an event queue for the
driver to send OOM events to the device.

Currently, if deflate-on-oom is not provided, then the guest driver does
not know when, or even if, the memory in the balloon will ever be
returned. Because of this, the Linux virtio balloon driver effectively
unplugs memory in the balloon when deflate-on-oom is not provided.
However, this can lead to compatibilty issues with userspace, since very
few userspace programs actually handle hotplug of memory, and Linux's
uAPIs aren't really even suited to potentially high frequency plugging
and unplugging memory. With this alternative to deflate-on-oom, systems
which cannot use deflate-on-oom can still run unmodified Linux programs
in the guest.

Since this series is already adding an event queue, it also adds an
event the guest can use to inform the host of an allocation failure when
trying to inflate the balloon. This provides an explicit signal that
inflation may take a long time or fail altogether, which the device can
then handle as it sees fit (e.g. abort the inflation attempt and tell
the program making resource management decisions that it wasn't able to
free enough memory from the guest).

David Stevens (2):
  virtio-balloon: add an event queue
  virtio-balloon: add a responsive host feature

 conformance.tex |  2 ++
 content.tex     | 75 +++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 77 insertions(+)

-- 
2.35.0.rc0.227.g00780c9af4-goog


This publicly archived list offers a means to provide input to the
OASIS Virtual I/O Device (VIRTIO) TC.

In order to verify user consent to the Feedback License terms and
to minimize spam in the list archive, subscription is required
before posting.

Subscribe: virtio-comment-subscribe@lists.oasis-open.org
Unsubscribe: virtio-comment-unsubscribe@lists.oasis-open.org
List help: virtio-comment-help@lists.oasis-open.org
List archive: https://lists.oasis-open.org/archives/virtio-comment/
Feedback License: https://www.oasis-open.org/who/ipr/feedback_license.pdf
List Guidelines: https://www.oasis-open.org/policies-guidelines/mailing-lists
Committee: https://www.oasis-open.org/committees/virtio/
Join OASIS: https://www.oasis-open.org/join/


^ permalink raw reply	[flat|nested] 16+ messages in thread

end of thread, other threads:[~2022-08-16  7:13 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-01-24 12:56 [virtio-comment] [PATCH 0/2] Add alternative to deflate-on-oom David Stevens
2022-01-24 12:56 ` [virtio-comment] [PATCH 1/2] virtio-balloon: add an event queue David Stevens
2022-01-28 15:46   ` David Hildenbrand
2022-01-31  7:10     ` David Stevens
2022-01-31  8:43       ` David Hildenbrand
2022-02-04  1:41         ` David Stevens
2022-02-10 12:53           ` David Hildenbrand
2022-02-14  6:59             ` David Stevens
2022-08-09 20:52   ` Michael S. Tsirkin
2022-08-10  7:54     ` David Stevens
2022-08-10  9:10       ` Michael S. Tsirkin
2022-08-16  7:13         ` David Stevens
2022-01-24 12:56 ` [virtio-comment] [PATCH 2/2] virtio-balloon: add a responsive host feature David Stevens
2022-01-28 15:52   ` David Hildenbrand
2022-01-31  7:09     ` David Stevens
2022-01-31  8:28       ` David Hildenbrand

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.