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
>
>


Reply via email to