[libvirt] [Qemu-devel] [PATCH] deprecate -mem-path fallback to anonymous RAM

Dr. David Alan Gilbert dgilbert at redhat.com
Thu Jun 20 13:34:09 UTC 2019


* Igor Mammedov (imammedo at redhat.com) wrote:
> Fallback might affect guest or worse whole host performance
> or functionality if backing file were used to share guest RAM
> with another process.
> 
> Patch deprecates fallback so that we could remove it in future
> and ensure that QEMU will provide expected behavior and fail if
> it can't use user provided backing file.
> 
> Signed-off-by: Igor Mammedov <imammedo at redhat.com>

Ah yes that's useful because it's a mess for postcopy.



Reviewed-by: Dr. David Alan Gilbert <dgilbert at redhat.com>

> ---
> PS:
> Patch is written on top of
>   [PATCH v4 0/3] numa: deprecate '-numa node,  mem' and default memory distribution
> to avoid conflicts in qemu-deprecated.texi
> 
>  numa.c               | 4 ++--
>  qemu-deprecated.texi | 8 ++++++++
>  2 files changed, 10 insertions(+), 2 deletions(-)
> 
> diff --git a/numa.c b/numa.c
> index 91a29138a2..53d67b8ad9 100644
> --- a/numa.c
> +++ b/numa.c
> @@ -494,8 +494,8 @@ static void allocate_system_memory_nonnuma(MemoryRegion *mr, Object *owner,
>              if (mem_prealloc) {
>                  exit(1);
>              }
> -            error_report("falling back to regular RAM allocation.");
> -
> +            warn_report("falling back to regular RAM allocation. "
> +                        "Fallback to RAM allocation is deprecated.");
>              /* Legacy behavior: if allocation failed, fall back to
>               * regular RAM allocation.
>               */
> diff --git a/qemu-deprecated.texi b/qemu-deprecated.texi
> index 2fe9b72121..2193705644 100644
> --- a/qemu-deprecated.texi
> +++ b/qemu-deprecated.texi
> @@ -112,6 +112,14 @@ QEMU using implicit generic or board specific splitting rule.
>  Use @option{memdev} with @var{memory-backend-ram} backend or @option{mem} (if
>  it's supported by used machine type) to define mapping explictly instead.
>  
> + at subsection -mem-path fallback to RAM (since 4.1)
> +Currently if system memory allocation from file pointed by @option{mem-path}
> +fails, QEMU fallbacks to allocating from anonymous RAM. Which might result
> +in unpredictable behavior since provided backing file wasn't used. In future
> +QEMU will not fallback and fail to start up, so user could fix his/her QEMU/host
> +configuration or explicitly use -m without -mem-path if system memory allocated
> +from anonymous RAM suits usecase.
> +
>  @section QEMU Machine Protocol (QMP) commands
>  
>  @subsection block-dirty-bitmap-add "autoload" parameter (since 2.12.0)
> -- 
> 2.18.1
> 
> 
--
Dr. David Alan Gilbert / dgilbert at redhat.com / Manchester, UK




More information about the libvir-list mailing list