qemu-cr16/include/system
Chenyi Qiang 2fde3fb916 physmem: Support coordinated discarding of RAM with guest_memfd
A new field, attributes, was introduced in RAMBlock to link to a
RamBlockAttributes object, which centralizes all guest_memfd related
information (such as fd and status bitmap) within a RAMBlock.

Create and initialize the RamBlockAttributes object upon ram_block_add().
Meanwhile, register the object in the target RAMBlock's MemoryRegion.
After that, guest_memfd-backed RAMBlock is associated with the
RamDiscardManager interface, and the users can execute RamDiscardManager
specific handling. For example, VFIO will register the
RamDiscardListener and get notifications when the state_change() helper
invokes.

As coordinate discarding of RAM with guest_memfd is now supported, only
block uncoordinated discard.

Tested-by: Alexey Kardashevskiy <aik@amd.com>
Reviewed-by: Alexey Kardashevskiy <aik@amd.com>
Acked-by: David Hildenbrand <david@redhat.com>
Signed-off-by: Chenyi Qiang <chenyi.qiang@intel.com>
Link: https://lore.kernel.org/r/20250612082747.51539-6-chenyi.qiang@intel.com
Signed-off-by: Peter Xu <peterx@redhat.com>
2025-06-23 16:03:59 -04:00
..
accel-blocker.h
accel-ops.h
address-spaces.h
arch_init.h
balloon.h
block-backend-common.h
block-backend-global-state.h
block-backend-io.h
block-backend.h
block-ram-registrar.h
blockdev.h
confidential-guest-support.h
cpu-throttle.h
cpu-timers-internal.h
cpu-timers.h
cpus.h
cryptodev-vhost-user.h
cryptodev-vhost.h
cryptodev.h
device_tree.h
dirtylimit.h
dirtyrate.h
dma.h
dump-arch.h
dump.h
event-loop-base.h
host_iommu_device.h
hostmem.h
hvf.h
hvf_int.h accel/hvf: Fix TYPE_HVF_ACCEL instance size 2025-06-10 12:59:09 +02:00
hw_accel.h
iommufd.h
ioport.h
iothread.h
kvm.h
kvm_int.h
kvm_xen.h
memory.h memory: Unify the definiton of ReplayRamPopulate() and ReplayRamDiscard() 2025-06-23 16:03:59 -04:00
memory_mapping.h
numa.h
nvmm.h
os-posix.h
os-wasm.h
os-win32.h
qtest.h
ram_addr.h
ramblock.h physmem: Support coordinated discarding of RAM with guest_memfd 2025-06-23 16:03:59 -04:00
replay.h
reset.h
rng-random.h
rng.h
rtc.h
runstate-action.h
runstate.h
seccomp.h
spdm-socket.h
stats.h
system.h
tcg.h
tpm.h
tpm_backend.h
tpm_util.h
vhost-user-backend.h
watchdog.h
whpx.h
xen-mapcache.h
xen.h