Alexander Graf <g...@amazon.com> writes: > Add an option for hostmem-file to start the memory object at an offset > into the target file. This is useful if multiple memory objects reside > inside the same target file, such as a device node. > > In particular, it's useful to map guest memory directly into /dev/mem > for experimentation. > > Signed-off-by: Alexander Graf <g...@amazon.com>
[...] > diff --git a/qapi/qom.json b/qapi/qom.json > index a877b879b9..8f5eaa8415 100644 > --- a/qapi/qom.json > +++ b/qapi/qom.json > @@ -635,6 +635,10 @@ > # specify the required alignment via this option. > # 0 selects a default alignment (currently the page size). (default: > 0) > # > +# @offset: the offset into the target file that the region starts at. You can > +# use this option to overload multiple regions into a single fils. single file I'm not sure about "to overload multiple regions into a single file". Maybe "to back multiple regions with a single file". Any alignment requirements? What happens when the regions overlap? > +# (default: 0) (since 8.1) > +# > # @discard-data: if true, the file contents can be destroyed when QEMU exits, > # to avoid unnecessarily flushing data to the backing file. > Note > # that ``discard-data`` is only an optimization, and QEMU > might > @@ -655,6 +659,7 @@ > { 'struct': 'MemoryBackendFileProperties', > 'base': 'MemoryBackendProperties', > 'data': { '*align': 'size', > + '*offset': 'size', > '*discard-data': 'bool', > 'mem-path': 'str', > '*pmem': { 'type': 'bool', 'if': 'CONFIG_LIBPMEM' }, [...]