memory-device: Unify enabled vs. supported error messages

Let's unify the error messages, such that we can simply stop allocating
ms->device_memory if the size would be 0 (and there are no memory
devices ever).

The case of "not supported by the machine" should barely pop up either
way: if the machine doesn't support memory devices, it usually doesn't
call the pre_plug handler ...

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: David Hildenbrand <david@redhat.com>
Message-Id: <20230623124553.400585-2-david@redhat.com>
Signed-off-by: David Hildenbrand <david@redhat.com>
This commit is contained in:
David Hildenbrand 2023-06-23 14:45:44 +02:00
parent 887cba855b
commit 99d88de6eb

View File

@ -104,15 +104,10 @@ static uint64_t memory_device_get_free_addr(MachineState *ms,
GSList *list = NULL, *item; GSList *list = NULL, *item;
Range as, new = range_empty; Range as, new = range_empty;
if (!ms->device_memory) { if (!ms->device_memory || !memory_region_size(&ms->device_memory->mr)) {
error_setg(errp, "memory devices (e.g. for memory hotplug) are not " error_setg(errp, "the configuration is not prepared for memory devices"
"supported by the machine"); " (e.g., for memory hotplug), consider specifying the"
return 0; " maxmem option");
}
if (!memory_region_size(&ms->device_memory->mr)) {
error_setg(errp, "memory devices (e.g. for memory hotplug) are not "
"enabled, please specify the maxmem option");
return 0; return 0;
} }
range_init_nofail(&as, ms->device_memory->base, range_init_nofail(&as, ms->device_memory->base,