mirror of
https://github.com/Motorhead1991/qemu.git
synced 2026-02-12 03:49:27 -07:00
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> |
||
|---|---|---|
| .. | ||
| 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 | ||
| hw_accel.h | ||
| iommufd.h | ||
| ioport.h | ||
| iothread.h | ||
| kvm.h | ||
| kvm_int.h | ||
| kvm_xen.h | ||
| memory.h | ||
| memory_mapping.h | ||
| numa.h | ||
| nvmm.h | ||
| os-posix.h | ||
| os-wasm.h | ||
| os-win32.h | ||
| qtest.h | ||
| ram_addr.h | ||
| ramblock.h | ||
| 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 | ||