diff options
| author | Chenyi Qiang <chenyi.qiang@intel.com> | 2025-06-12 16:27:43 +0800 |
|---|---|---|
| committer | Peter Xu <peterx@redhat.com> | 2025-06-23 16:03:59 -0400 |
| commit | ff1211154c45c9f7f82116ae9a8c72a848e4a8b5 (patch) | |
| tree | 3a98fc18ec47c6188428bde5b22586e196707293 /migration/ram.c | |
| parent | f47a672a72acd6e2712031f0bc4d4f3ae4b6302c (diff) | |
| download | focaccia-qemu-ff1211154c45c9f7f82116ae9a8c72a848e4a8b5.tar.gz focaccia-qemu-ff1211154c45c9f7f82116ae9a8c72a848e4a8b5.zip | |
memory: Change memory_region_set_ram_discard_manager() to return the result
Modify memory_region_set_ram_discard_manager() to return -EBUSY if a RamDiscardManager is already set in the MemoryRegion. The caller must handle this failure, such as having virtio-mem undo its actions and fail the realize() process. Opportunistically move the call earlier to avoid complex error handling. This change is beneficial when introducing a new RamDiscardManager instance besides virtio-mem. After ram_block_coordinated_discard_require(true) unlocks all RamDiscardManager instances, only one instance is allowed to be set for one MemoryRegion at present. Suggested-by: David Hildenbrand <david@redhat.com> Reviewed-by: David Hildenbrand <david@redhat.com> Reviewed-by: Pankaj Gupta <pankaj.gupta@amd.com> Tested-by: Alexey Kardashevskiy <aik@amd.com> Reviewed-by: Alexey Kardashevskiy <aik@amd.com> Reviewed-by: Xiaoyao Li <xiaoyao.li@intel.com> Signed-off-by: Chenyi Qiang <chenyi.qiang@intel.com> Link: https://lore.kernel.org/r/20250612082747.51539-3-chenyi.qiang@intel.com Signed-off-by: Peter Xu <peterx@redhat.com>
Diffstat (limited to 'migration/ram.c')
0 files changed, 0 insertions, 0 deletions