From: Haozhong Zhang <haozhong.zhang@intel.com>
To: qemu-devel@nongnu.org, Eduardo Habkost <ehabkost@redhat.com>,
Igor Mammedov <imammedo@redhat.com>
Cc: Paolo Bonzini <pbonzini@redhat.com>,
Peter Crosthwaite <crosthwaite.peter@gmail.com>,
Richard Henderson <rth@twiddle.net>,
Xiao Guangrong <guangrong.xiao@linux.intel.com>,
Haozhong Zhang <haozhong.zhang@intel.com>
Subject: [Qemu-devel] [PATCH 0/2] Improve truncation behavior of memory-backend-file
Date: Mon, 24 Oct 2016 17:21:49 +0800 [thread overview]
Message-ID: <20161024092151.32386-1-haozhong.zhang@intel.com> (raw)
The previous discussion thread can be found at
http://lists.nongnu.org/archive/html/qemu-devel/2016-10/msg04668.html
For a mmeory backend file, e.g.
-object memory-backend-file,mem-path=foo,size=SZ,...
the size of the backend file 'foo' is specified by the 'size'
option. If the specified size 'SZ' does not match the actual size of
file 'foo', QEMU will truncate the backend file 'foo'. In certain
usage scenarios (e.g. vNVDIMM), the truncation may corrupt the
existing data in the file.
Patch 1 in this series avoids such data corruption by disabling
truncating non-empty backend files. If the backend file is not empty
and the option 'size' does not match the actual file size, QEMU will
error out. If the backend file is empty, QEMU will extend to the size
specified by the option 'size'.
Patch 2 makes the option 'size' optional. It's to avoid the misusing
of 'size' option. If the user is uncertain about the backend file size,
they can skip the 'size' option and let QEMU use the actual file size.
For an empty file, the option 'size' must be specified.
Haozhong Zhang (2):
exec.c: do not truncate non-empty memory backend file
hostmem-file: allow option 'size' optional
backends/hostmem-file.c | 10 ++++++----
exec.c | 45 ++++++++++++++++++++++++++++++++++++++++++++-
2 files changed, 50 insertions(+), 5 deletions(-)
--
2.10.1
next reply other threads:[~2016-10-24 9:22 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-10-24 9:21 Haozhong Zhang [this message]
2016-10-24 9:21 ` [Qemu-devel] [PATCH 1/2] exec.c: do not truncate non-empty memory backend file Haozhong Zhang
2016-10-25 19:30 ` Eduardo Habkost
2016-10-26 4:19 ` Haozhong Zhang
2016-10-24 9:21 ` [Qemu-devel] [PATCH 2/2] hostmem-file: allow option 'size' optional Haozhong Zhang
2016-10-25 19:50 ` Eduardo Habkost
2016-10-26 5:56 ` Haozhong Zhang
2016-10-26 7:49 ` Haozhong Zhang
2016-10-26 14:17 ` Eduardo Habkost
2016-10-26 14:30 ` Paolo Bonzini
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=20161024092151.32386-1-haozhong.zhang@intel.com \
--to=haozhong.zhang@intel.com \
--cc=crosthwaite.peter@gmail.com \
--cc=ehabkost@redhat.com \
--cc=guangrong.xiao@linux.intel.com \
--cc=imammedo@redhat.com \
--cc=pbonzini@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=rth@twiddle.net \
/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).