[PATCH v3 00/15] virtio-mem: paravirtualized memory

From: David Hildenbrand
Date: Thu May 07 2020 - 06:32:02 EST


This series is based on latest linux-next. The patches are located at:
https://github.com/davidhildenbrand/linux.git virtio-mem-v3

Patch #1 - #10 where contained in v2 and only contain minor modifications
(mostly smaller fixes). The remaining patches are new and contain smaller
optimizations.

Details about virtio-mem can be found in the cover letter of v2 [1]. A
basic QEMU implementation was posted yesterday [2].

[1] https://lkml.kernel.org/r/20200311171422.10484-1-david@xxxxxxxxxx
[2] https://lkml.kernel.org/r/20200506094948.76388-1-david@xxxxxxxxxx

v2 -> v3:
- "virtio-mem: Paravirtualized memory hotplug"
-- Include "linux/slab.h" to fix build issues
-- Remember the "region_size", helpful for patch #11
-- Minor simplifaction in virtio_mem_overlaps_range()
-- Use notifier_from_errno() instead of notifier_to_errno() in notifier
-- More reliable check for added memory when unloading the driver
- "virtio-mem: Allow to specify an ACPI PXM as nid"
-- Also print the nid
- Added patch #11-#15

Cc: Sebastien Boeuf <sebastien.boeuf@xxxxxxxxx>
Cc: Samuel Ortiz <samuel.ortiz@xxxxxxxxx>
Cc: Robert Bradford <robert.bradford@xxxxxxxxx>
Cc: Luiz Capitulino <lcapitulino@xxxxxxxxxx>
Cc: Pankaj Gupta <pankaj.gupta.linux@xxxxxxxxx>
Cc: teawater <teawaterz@xxxxxxxxxxxxxxxxx>
Cc: Igor Mammedov <imammedo@xxxxxxxxxx>
Cc: Dr. David Alan Gilbert <dgilbert@xxxxxxxxxx>

David Hildenbrand (15):
virtio-mem: Paravirtualized memory hotplug
virtio-mem: Allow to specify an ACPI PXM as nid
virtio-mem: Paravirtualized memory hotunplug part 1
virtio-mem: Paravirtualized memory hotunplug part 2
mm: Allow to offline unmovable PageOffline() pages via
MEM_GOING_OFFLINE
virtio-mem: Allow to offline partially unplugged memory blocks
mm/memory_hotplug: Introduce offline_and_remove_memory()
virtio-mem: Offline and remove completely unplugged memory blocks
virtio-mem: Better retry handling
MAINTAINERS: Add myself as virtio-mem maintainer
virtio-mem: Add parent resource for all added "System RAM"
virtio-mem: Drop manual check for already present memory
virtio-mem: Unplug subblocks right-to-left
virtio-mem: Use -ETXTBSY as error code if the device is busy
virtio-mem: Try to unplug the complete online memory block first

MAINTAINERS | 7 +
drivers/acpi/numa/srat.c | 1 +
drivers/virtio/Kconfig | 17 +
drivers/virtio/Makefile | 1 +
drivers/virtio/virtio_mem.c | 1962 +++++++++++++++++++++++++++++++
include/linux/memory_hotplug.h | 1 +
include/linux/page-flags.h | 10 +
include/uapi/linux/virtio_ids.h | 1 +
include/uapi/linux/virtio_mem.h | 208 ++++
mm/memory_hotplug.c | 81 +-
mm/page_alloc.c | 26 +
mm/page_isolation.c | 9 +
12 files changed, 2314 insertions(+), 10 deletions(-)
create mode 100644 drivers/virtio/virtio_mem.c
create mode 100644 include/uapi/linux/virtio_mem.h

--
2.25.3