machine: Use host_memory_backend_is_mapped() in machine_consume_memdev()
memory_region_is_mapped() is the wrong check, we actually want to check whether the backend is already marked mapped. For example, memory regions mapped via an alias, such as NVDIMMs, currently don't make memory_region_is_mapped() return "true". As the machine is initialized before any memory devices (and thereby before NVDIMMs are initialized), this isn't a fix but merely a cleanup. Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Reviewed-by: Igor Mammedov <imammedo@redhat.com> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com> Reviewed-by: Peter Xu <peterx@redhat.com> Signed-off-by: David Hildenbrand <david@redhat.com> Message-Id: <20211102164317.45658-2-david@redhat.com> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
This commit is contained in:
parent
7bdbf99aa2
commit
eef3a7abff
@ -1091,7 +1091,7 @@ MemoryRegion *machine_consume_memdev(MachineState *machine,
|
||||
{
|
||||
MemoryRegion *ret = host_memory_backend_get_memory(backend);
|
||||
|
||||
if (memory_region_is_mapped(ret)) {
|
||||
if (host_memory_backend_is_mapped(backend)) {
|
||||
error_report("memory backend %s can't be used multiple times.",
|
||||
object_get_canonical_path_component(OBJECT(backend)));
|
||||
exit(EXIT_FAILURE);
|
||||
|
Loading…
Reference in New Issue
Block a user