linux/drivers/virtio
David Hildenbrand 3711387a75 virtio-mem: Big Block Mode (BBM) - safe memory hotunplug
Let's add a safe mechanism to unplug memory, avoiding long/endless loops
when trying to offline memory - similar to in SBM.

Fake-offline all memory (via alloc_contig_range()) before trying to
offline+remove it. Use this mode as default, but allow to enable the other
mode explicitly (which could give better memory hotunplug guarantees in
some environments).

The "unsafe" mode can be enabled e.g., via virtio_mem.bbm_safe_unplug=0
on the cmdline.

Reviewed-by: Wei Yang <richard.weiyang@linux.alibaba.com>
Cc: "Michael S. Tsirkin" <mst@redhat.com>
Cc: Jason Wang <jasowang@redhat.com>
Cc: Pankaj Gupta <pankaj.gupta.linux@gmail.com>
Cc: Michal Hocko <mhocko@kernel.org>
Cc: Oscar Salvador <osalvador@suse.de>
Cc: Wei Yang <richard.weiyang@linux.alibaba.com>
Cc: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: David Hildenbrand <david@redhat.com>
Link: https://lore.kernel.org/r/20201112133815.13332-30-david@redhat.com
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
2020-12-18 16:14:28 -05:00
..
Kconfig vhost,vdpa,virtio: cleanups, fixes 2020-10-23 11:00:57 -07:00
Makefile virtio: fix build for configs without dma-bufs 2020-08-19 06:43:28 +02:00
virtio_balloon.c virtio-balloon: Constify id_table 2020-10-21 10:34:08 -04:00
virtio_dma_buf.c virtio: fix build for configs without dma-bufs 2020-08-19 06:43:28 +02:00
virtio_input.c virtio_input: Constify id_table 2020-10-21 10:34:09 -04:00
virtio_mem.c virtio-mem: Big Block Mode (BBM) - safe memory hotunplug 2020-12-18 16:14:28 -05:00
virtio_mmio.c virtio: Implement get_shm_region for MMIO transport 2020-09-10 10:05:58 +02:00
virtio_pci_common.c virtio-pci: check name when counting MSI-X vectors 2020-02-06 03:40:26 -05:00
virtio_pci_common.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 78 2019-05-24 17:37:51 +02:00
virtio_pci_legacy.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 78 2019-05-24 17:37:51 +02:00
virtio_pci_modern.c virtio: Implement get_shm_region for PCI transport 2020-09-10 10:05:58 +02:00
virtio_ring.c virtio: fixes, features 2020-08-11 14:34:17 -07:00
virtio_vdpa.c virtio_vdpa: legacy features handling 2020-08-05 11:08:40 -04:00
virtio.c vhost,vdpa,virtio: cleanups, fixes 2020-10-23 11:00:57 -07:00