From: "Michael S. Tsirkin" <mst@redhat.com>
To: Ross Zwisler <ross.zwisler@linux.intel.com>
Cc: Dan Williams <dan.j.williams@intel.com>,
Eduardo Habkost <ehabkost@redhat.com>,
linux-nvdimm <linux-nvdimm@lists.01.org>,
Qemu Developers <qemu-devel@nongnu.org>,
Stefan Hajnoczi <stefanha@redhat.com>,
Igor Mammedov <imammedo@redhat.com>
Subject: Re: [Qemu-devel] [qemu PATCH v4 3/4] nvdimm, acpi: support NFIT platform capabilities
Date: Wed, 6 Jun 2018 22:04:56 +0300 [thread overview]
Message-ID: <20180606220431-mutt-send-email-mst@kernel.org> (raw)
In-Reply-To: <20180606170033.GA29035@linux.intel.com>
On Wed, Jun 06, 2018 at 11:00:33AM -0600, Ross Zwisler wrote:
> On Wed, Jun 06, 2018 at 10:50:51AM -0600, Ross Zwisler wrote:
> > On Tue, Jun 05, 2018 at 03:21:30PM -0700, Dan Williams wrote:
> > > On Tue, Jun 5, 2018 at 3:07 PM, Ross Zwisler
> > > <ross.zwisler@linux.intel.com> wrote:
> > > > On Tue, Jun 05, 2018 at 09:37:25PM +0300, Michael S. Tsirkin wrote:
> > > >> On Tue, Jun 05, 2018 at 11:15:00AM -0700, Dan Williams wrote:
> > > >> > On Tue, Jun 5, 2018 at 9:42 AM, Ross Zwisler
> > > >> > <ross.zwisler@linux.intel.com> wrote:
> > > >> > > On Tue, Jun 05, 2018 at 06:25:27PM +0300, Michael S. Tsirkin wrote:
> > > >> > >> On Mon, May 21, 2018 at 10:32:02AM -0600, Ross Zwisler wrote:
> > > >> > >> > Add a machine command line option to allow the user to control the Platform
> > > >> > >> > Capabilities Structure in the virtualized NFIT. This Platform Capabilities
> > > >> > >> > Structure was added in ACPI 6.2 Errata A.
> > > >> > >> >
> > > >> > >> > Signed-off-by: Ross Zwisler <ross.zwisler@linux.intel.com>
> > > >> > >>
> > > >> > >> I tried playing with it and encoding the capabilities is
> > > >> > >> quite awkward.
> > > >> > >>
> > > >> > >> Can we add bits for specific capabilities instead of nvdimm-cap?
> > > >> > >>
> > > >> > >> How about:
> > > >> > >>
> > > >> > >> "cpu-flush-on-power-loss-cap"
> > > >> > >> "memory-flush-on-power-loss-cap"
> > > >> > >> "byte-addressable-mirroring-cap"
> > > >> > >
> > > >> > > Hmmm...I don't like that as much because:
> > > >> > >
> > > >> > > a) It's very verbose. Looking at my current qemu command line few other
> > > >> > > options require that many characters, and you'd commonly be defining more
> > > >> > > than one of these for a given VM.
> > > >> > >
> > > >> > > b) It means that the QEMU will need to be updated if/when new flags are added,
> > > >> > > because we'll have to have new options for each flag. The current
> > > >> > > implementation is more future-proof because you can specify any flags
> > > >> > > value you want.
> > > >> > >
> > > >> > > However, if you feel strongly about this, I'll make the change.
> > > >> >
> > > >> > Straw-man: Could we do something similar with what we are doing in ndctl?
> > > >> >
> > > >> > enum ndctl_persistence_domain {
> > > >> > PERSISTENCE_NONE = 0,
> > > >> > PERSISTENCE_MEM_CTRL = 10,
> > > >> > PERSISTENCE_CPU_CACHE = 20,
> > > >> > PERSISTENCE_UNKNOWN = INT_MAX,
> > > >> > };
> > > >> >
> > > >> > ...and have the command line take a number where "10" and "20" are
> > > >> > supported today, but allows us to adapt to new persistence domains in
> > > >> > the future.
> > > >>
> > > >> I'm fine with that except can we have symbolic names instead of numbers
> > > >> on command line?
> > > >>
> > > >> --
> > > >> MST
> > > >
> > > > Okay, we can move to the symbolic names. Do you want them to be that long, or
> > > > would:
> > > >
> > > > nvdimm-cap-cpu
> > > > nvdimm-cap-mem-ctrl
> > > > nvdimm-cap-mirroring
> > >
> > > Wait, why is mirroring part of this?
> > >
> > > I was thinking this option would be:
> > >
> > > --persistence-domain={cpu,mem-ctrl}
> > >
> > > ...and try not to let ACPI specifics leak into the qemu command line
> > > interface. For example PowerPC qemu could have a persistence domain
> > > communicated via Open Firmware or some other mechanism.
> >
> > Sure, this seems fine, though we may want to throw an "nvdimm" in the name
> > somewhere so it's clear what the option affects.
> >
> > nvdimm-persistence={cpu,mem-ctrl} maybe?
> >
> > Michael, does this work for you?
>
> Hmm...also, the version of these patches that used numeric values did go
> upstream in QEMU. So, do we need to leave that interface intact, and just add
> a new one that uses symbolic names? Or did you still just want to replace the
> numeric one since it hasn't appeared in a QEMU release yet?
The later. No release => no stable APIs.
--
MST
next prev parent reply other threads:[~2018-06-06 19:05 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-05-21 16:31 [Qemu-devel] [qemu PATCH v4 0/4] support NFIT platform capabilities Ross Zwisler
2018-05-21 16:32 ` [Qemu-devel] [qemu PATCH v4 1/4] nvdimm: fix typo in label-size definition Ross Zwisler
2018-05-21 16:32 ` [Qemu-devel] [qemu PATCH v4 2/4] tests/.gitignore: add entry for generated file Ross Zwisler
2018-05-21 16:41 ` Eric Blake
2018-05-21 17:32 ` Philippe Mathieu-Daudé
2018-05-21 18:29 ` Eric Blake
2018-05-21 16:32 ` [Qemu-devel] [qemu PATCH v4 3/4] nvdimm, acpi: support NFIT platform capabilities Ross Zwisler
2018-06-05 15:25 ` Michael S. Tsirkin
2018-06-05 16:42 ` Ross Zwisler
2018-06-05 18:15 ` Dan Williams
2018-06-05 18:37 ` Michael S. Tsirkin
2018-06-05 22:07 ` Ross Zwisler
2018-06-05 22:21 ` Dan Williams
2018-06-06 16:50 ` Ross Zwisler
2018-06-06 17:00 ` Ross Zwisler
2018-06-06 17:08 ` Ross Zwisler
2018-06-06 19:06 ` Michael S. Tsirkin
2018-06-12 11:55 ` Igor Mammedov
2018-06-06 19:04 ` Michael S. Tsirkin [this message]
2018-06-06 19:07 ` Michael S. Tsirkin
2018-06-06 23:20 ` Elliott, Robert (Persistent Memory)
2018-06-06 23:40 ` Dan Williams
2018-06-07 15:29 ` Michael S. Tsirkin
2018-06-07 15:30 ` Michael S. Tsirkin
2018-05-21 16:32 ` [Qemu-devel] [qemu PATCH v4 4/4] ACPI testing: test " Ross Zwisler
2018-05-25 17:51 ` [Qemu-devel] [qemu PATCH v4 0/4] support " Michael S. Tsirkin
2018-05-31 22:03 ` Ross Zwisler
2018-05-29 19:54 ` Ross Zwisler
2018-06-01 5:11 ` Elliott, Robert (Persistent Memory)
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=20180606220431-mutt-send-email-mst@kernel.org \
--to=mst@redhat.com \
--cc=dan.j.williams@intel.com \
--cc=ehabkost@redhat.com \
--cc=imammedo@redhat.com \
--cc=linux-nvdimm@lists.01.org \
--cc=qemu-devel@nongnu.org \
--cc=ross.zwisler@linux.intel.com \
--cc=stefanha@redhat.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).