From: "Philippe Mathieu-Daudé" <philmd@redhat.com>
To: qemu-devel@nongnu.org, David Edmondson <david.edmondson@oracle.com>
Cc: "Kevin Wolf" <kwolf@redhat.com>,
qemu-block@nongnu.org, "Xu Yandong" <xuyandong2@huawei.com>,
"Markus Armbruster" <armbru@redhat.com>,
"Max Reitz" <mreitz@redhat.com>,
haibinzhang <haibinzhang@tencent.com>,
"Stefan Hajnoczi" <stefanha@redhat.com>,
"Paolo Bonzini" <pbonzini@redhat.com>,
"Philippe Mathieu-Daudé" <philmd@redhat.com>,
"Stefano Garzarella" <sgarzare@redhat.com>
Subject: [RFC PATCH v2 0/3] hw/block/pflash: Mmap read-only backend files with MAP_SHARED
Date: Mon, 1 Mar 2021 12:53:26 +0100 [thread overview]
Message-ID: <20210301115329.411762-1-philmd@redhat.com> (raw)
Since v1:
- check driver is "raw" (David)
- ignore CFI02 for now
Hi,
This series aims to reduce the memory footprint of flash devices
when the backing file is read-only.
When a backing file is read-only, the model considers the flash
is in "protected" mode. No write are allowed, but the MMIO
state machine is still usable.
This series introduces a new memory region helper to mmap files
and use it with the pflash device (only with read-only backing
files).
The goal is to reduce QEMU's memory footprint when multiple VMs
are instantiated using the same read-only backing file, which is
the case with the CODE flash from OVMF and AAVMF.
Previous attempts:
- Huawei
https://www.mail-archive.com/qemu-devel@nongnu.org/msg607292.html
- Tencent
https://www.mail-archive.com/qemu-devel@nongnu.org/msg742066.html
- Oracle
https://www.mail-archive.com/qemu-devel@nongnu.org/msg760065.html
RFC because yet another approach to tackle this technical debt,
and very little tested.
Regards,
Phil.
Philippe Mathieu-Daudé (3):
exec/memory: Introduce memory_region_init_rom_device_from_file()
hw/block/pflash: Move code around
hw/block/pflash: use memory_region_init_rom_device_from_file()
include/exec/memory.h | 85 +++++++++++++++++++++++++++++++++++
hw/block/pflash_cfi01.c | 49 +++++++++++++++------
hw/block/pflash_cfi02.c | 18 ++++----
softmmu/memory.c | 98 +++++++++++++++++++++++++++++++++++++++++
4 files changed, 228 insertions(+), 22 deletions(-)
--
2.26.2
next reply other threads:[~2021-03-01 11:54 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-03-01 11:53 Philippe Mathieu-Daudé [this message]
2021-03-01 11:53 ` [RFC PATCH v2 1/3] exec/memory: Introduce memory_region_init_rom_device_from_file() Philippe Mathieu-Daudé
2021-03-01 11:53 ` [RFC PATCH v2 2/3] hw/block/pflash: Move code around Philippe Mathieu-Daudé
2021-03-01 11:53 ` [RFC PATCH v2 3/3] hw/block/pflash: use memory_region_init_rom_device_from_file() Philippe Mathieu-Daudé
2021-03-01 18:13 ` Stefan Hajnoczi
2021-03-02 7:04 ` Philippe Mathieu-Daudé
2021-03-02 10:54 ` Stefan Hajnoczi
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20210301115329.411762-1-philmd@redhat.com \
--to=philmd@redhat.com \
--cc=armbru@redhat.com \
--cc=david.edmondson@oracle.com \
--cc=haibinzhang@tencent.com \
--cc=kwolf@redhat.com \
--cc=mreitz@redhat.com \
--cc=pbonzini@redhat.com \
--cc=qemu-block@nongnu.org \
--cc=qemu-devel@nongnu.org \
--cc=sgarzare@redhat.com \
--cc=stefanha@redhat.com \
--cc=xuyandong2@huawei.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).