From: Yi Zhang <yi.z.zhang@linux.intel.com>
To: Eduardo Habkost <ehabkost@redhat.com>
Cc: "Michael S. Tsirkin" <mst@redhat.com>,
pagupta@redhat.com, qemu-devel@nongnu.org,
yu.c.zhang@linux.intel.com, stefanha@redhat.com,
imammedo@redhat.com, pbonzini@redhat.com,
dan.j.williams@intel.com, xiaoguangrong.eric@gmail.com
Subject: Re: [Qemu-devel] [PATCH V9 4/6] util/mmap-alloc: support MAP_SYNC in qemu_ram_mmap()
Date: Tue, 22 Jan 2019 11:21:25 +0800 [thread overview]
Message-ID: <20190122032124.GA30317@tiger-server> (raw)
In-Reply-To: <20190121144400.GM4136@habkost.net>
On 2019-01-21 at 12:44:00 -0200, Eduardo Habkost wrote:
> On Mon, Jan 21, 2019 at 01:15:36PM +0800, Yi Zhang wrote:
> > On 2019-01-18 at 16:11:47 -0200, Eduardo Habkost wrote:
> [...]
> > > Anyway, I see a more fundamental problem in each version of this
> > > patch: the semantics of the command-line options are not clearly
> > > documented.
> > >
> > > We have at least 3 different possible use cases we might need to
> > > support:
> > >
> > > 1) pmem=on, MAP_SYNC not desired
> > > 2) pmem=on, MAP_SYNC desired but optional
> >
> > Form V9, As Michael suggest, We removed the sync option, MAP_SYNC will
> > force on while we set pmem=on. So we only have 2 user cases, Will update
> > to user documentation.
> > 1) pmem=on, MAP_SYNC not desired
> > We will not pass the flag to mmap2
>
> If this use case is supported, how the command-line should look
> like to enable it?
>
>
> > 2) pmem=on, MAP_SYNC desired
> > We will pass the flag to mmap2
>
> Same question as above: how the command-line should look like for
> this use case?
Sorry, I got some miss-understood of the MAP_SYNC desired.
As we talk with Micheal:
we give up on a bit of flexibility, and just say
pmem=on forces MAP_SYNC. on a MAP_SYNC capable configrations(kernel+
backend dax)
Current user case is like below:
1. pmem=on is set, shared=on is set, MAP_SYNC supported in linux kernel:
a: backend is a dax supporting file.
- MAP_SYNC will active.
b: backedn is not a dax supporting file.
- mmap will result in an EOPNOTSUPP error.
2. The reset of cases:
- we will never pass the MAP_SYNC to mmap2
>
> >
> > > 3) pmem=on, MAP_SYNC required, not optional
> > >
> > > Which cases from the list above we need to support?
> > >
> > > From the cases above, what's the expected semantics of "pmem=on"
> > > with no extra options?
>
> We still need to answer that question.
>
> The current semantics of pmem=on (with no extra options) is (1).
> It looks like we can't change it to (2) without breaking existing
> configurations. If you make existing configurations stop working
> on hosts where they currently work, you need to explain why it's
> OK to do that.
>
>
> > >
> > > If these questions are not answered (in the commit message and
> > > user documentation), we won't be able to review and discuss the
> > > code.
> > >
> > >
> [...]
>
>
> --
> Eduardo
>
next prev parent reply other threads:[~2019-01-22 3:21 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-01-16 8:10 [Qemu-devel] [PATCH V9 0/6] support MAP_SYNC for memory-backend-file Zhang Yi
2019-01-16 8:10 ` [Qemu-devel] [PATCH V9 1/6] numa: Fixed the memory leak of numa error message Zhang Yi
2019-01-16 15:56 ` Michael S. Tsirkin
2019-01-18 17:36 ` Eduardo Habkost
2019-01-16 8:10 ` [Qemu-devel] [PATCH V9 2/6] memory: use sparse feature define RAM_FLAG Zhang Yi
2019-01-16 15:55 ` Michael S. Tsirkin
2019-01-21 6:35 ` Yi Zhang
2019-01-21 20:24 ` Michael S. Tsirkin
2019-01-22 3:25 ` Yi Zhang
2019-01-16 8:10 ` [Qemu-devel] [PATCH V9 3/6] util/mmap-alloc: switch 'shared' to 'flags' parameter Zhang Yi
2019-01-16 15:49 ` Michael S. Tsirkin
2019-01-16 8:10 ` [Qemu-devel] [PATCH V9 4/6] util/mmap-alloc: support MAP_SYNC in qemu_ram_mmap() Zhang Yi
2019-01-16 15:58 ` Michael S. Tsirkin
2019-01-18 18:11 ` Eduardo Habkost
2019-01-21 5:15 ` Yi Zhang
2019-01-21 14:44 ` Eduardo Habkost
2019-01-22 3:21 ` Yi Zhang [this message]
2019-01-22 3:27 ` Michael S. Tsirkin
2019-01-22 17:33 ` Dan Williams
2019-01-22 18:47 ` Michael S. Tsirkin
2019-01-16 8:11 ` [Qemu-devel] [PATCH V9 5/6] hostmem: add more information in error messages Zhang Yi
2019-01-16 11:30 ` Stefano Garzarella
2019-01-16 8:11 ` [Qemu-devel] [PATCH V9 6/6] docs: Added MAP_SYNC documentation Zhang Yi
2019-01-16 15:40 ` Michael S. Tsirkin
2019-01-21 6:11 ` Yi Zhang
2019-01-21 7:21 ` Pankaj Gupta
2019-01-21 7:57 ` Yi Zhang
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=20190122032124.GA30317@tiger-server \
--to=yi.z.zhang@linux.intel.com \
--cc=dan.j.williams@intel.com \
--cc=ehabkost@redhat.com \
--cc=imammedo@redhat.com \
--cc=mst@redhat.com \
--cc=pagupta@redhat.com \
--cc=pbonzini@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=stefanha@redhat.com \
--cc=xiaoguangrong.eric@gmail.com \
--cc=yu.c.zhang@linux.intel.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).