[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH V4 04/19] machine: aux-ram-share option
From: |
Markus Armbruster |
Subject: |
Re: [PATCH V4 04/19] machine: aux-ram-share option |
Date: |
Thu, 05 Dec 2024 13:08:25 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) |
Steve Sistare <steven.sistare@oracle.com> writes:
> Allocate auxilliary guest RAM as an anonymous file that is shareable
> with an external process. This option applies to memory allocated as
> a side effect of creating various devices. It does not apply to
> memory-backend-objects, whether explicitly specified on the command
> line, or implicitly created by the -m command line option.
>
> This option is intended to support new migration modes, in which the
> memory region can be transferred in place to a new QEMU process, by sending
> the memfd file descriptor to the process. Memory contents are preserved,
> and if the mode also transfers device descriptors, then pages that are
> locked in memory for DMA remain locked. This behavior is a pre-requisite
> for supporting vfio, vdpa, and iommufd devices with the new modes.
>
> Signed-off-by: Steve Sistare <steven.sistare@oracle.com>
[...]
> diff --git a/qemu-options.hx b/qemu-options.hx
> index dacc979..02b9118 100644
> --- a/qemu-options.hx
> +++ b/qemu-options.hx
> @@ -38,6 +38,9 @@ DEF("machine", HAS_ARG, QEMU_OPTION_machine, \
> " nvdimm=on|off controls NVDIMM support (default=off)\n"
> " memory-encryption=@var{} memory encryption object to
> use (default=none)\n"
> " hmat=on|off controls ACPI HMAT support (default=off)\n"
> +#ifdef CONFIG_POSIX
> + " aux-ram-share=on|off allocate auxiliary guest RAM as
> shared (default: off)\n"
> +#endif
> " memory-backend='backend-id' specifies explicitly
> provided backend for main RAM (default=none)\n"
> "
> cxl-fmw.0.targets.0=firsttarget,cxl-fmw.0.targets.1=secondtarget,cxl-fmw.0.size=size[,cxl-fmw.0.interleave-granularity=granularity]\n",
> QEMU_ARCH_ALL)
> @@ -101,6 +104,18 @@ SRST
> Enables or disables ACPI Heterogeneous Memory Attribute Table
> (HMAT) support. The default is off.
>
> +#ifdef CONFIG_POSIX
> + ``aux-ram-share=on|off``
> + Allocate auxiliary guest RAM as an anonymous file that is
> + shareable with an external process. This option applies to
> + memory allocated as a side effect of creating various devices.
> + It does not apply to memory-backend-objects, whether explicitly
> + specified on the command line, or implicitly created by the -m
> + command line option.
> +
> + Some migration modes require aux-ram-share=on.
> +#endif
> +
I get
Warning, treated as error:
.../qemu-options.hx:117:Definition list ends without a blank line;
unexpected unindent.
Putting the blank line before #endif works for me.
> ``memory-backend='id'``
> An alternative to legacy ``-mem-path`` and ``mem-prealloc`` options.
> Allows to use a memory backend as main RAM.
[...]
[PATCH V4 14/19] migration: cpr-transfer mode, Steve Sistare, 2024/12/02
[PATCH V4 15/19] tests/migration-test: memory_backend, Steve Sistare, 2024/12/02