[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL v1 2/3] physmem: Bail out qemu_ram_block_from_host() for invalid r
From: |
Edgar E. Iglesias |
Subject: |
[PULL v1 2/3] physmem: Bail out qemu_ram_block_from_host() for invalid ram addrs |
Date: |
Fri, 12 Jul 2024 13:02:29 +0200 |
From: "Edgar E. Iglesias" <edgar.iglesias@amd.com>
Bail out in qemu_ram_block_from_host() when
xen_ram_addr_from_mapcache() does not find an existing
mapping.
Signed-off-by: Edgar E. Iglesias <edgar.iglesias@amd.com>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
---
system/physmem.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/system/physmem.c b/system/physmem.c
index 14aa025d41..2154432cb6 100644
--- a/system/physmem.c
+++ b/system/physmem.c
@@ -2277,6 +2277,10 @@ RAMBlock *qemu_ram_block_from_host(void *ptr, bool
round_offset,
ram_addr_t ram_addr;
RCU_READ_LOCK_GUARD();
ram_addr = xen_ram_addr_from_mapcache(ptr);
+ if (ram_addr == RAM_ADDR_INVALID) {
+ return NULL;
+ }
+
block = qemu_get_ram_block(ram_addr);
if (block) {
*offset = ram_addr - block->offset;
--
2.43.0