This series has been successfully tested by QE. Start a vm using pc.ram id but specifying a different memory-backend from the default one. Check the error message has been improved.
Tested-by: Mario Casquero <mcasq...@redhat.com> On Wed, Aug 23, 2023 at 5:38 PM David Hildenbrand <da...@redhat.com> wrote: > > For migration purposes, users might want to reuse the default RAM > backend id, but specify a different memory backend. > > For example, to reuse "pc.ram" on q35, one has to set > -machine q35,memory-backend=pc.ram > Only then, can a memory backend with the id "pc.ram" be created > manually. > > Let's improve the error message. > > Unfortuantely, we cannot use error_append_hint(), because the caller > passes &error_fatal. > > Suggested-by: ThinerLogoer <logoerthin...@163.com> > Signed-off-by: David Hildenbrand <da...@redhat.com> > --- > hw/core/machine.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/hw/core/machine.c b/hw/core/machine.c > index f0d35c6401..dbcd124d45 100644 > --- a/hw/core/machine.c > +++ b/hw/core/machine.c > @@ -1382,7 +1382,9 @@ void machine_run_board_init(MachineState *machine, > const char *mem_path, Error * > machine_class->default_ram_id)) { > error_setg(errp, "object name '%s' is reserved for the default" > " RAM backend, it can't be used for any other purposes." > - " Change the object's 'id' to something else", > + " Change the object's 'id' to something else or disable" > + " automatic creation of the default RAM backend by setting" > + " the 'memory-backend' machine property", > machine_class->default_ram_id); > return; > } > -- > 2.41.0 > >