From: Alex Williamson <alex.williamson@redhat.com>
To: "Michael S. Tsirkin" <mst@redhat.com>
Cc: Chen Fan <chen.fan.fnst@cn.fujitsu.com>,
izumi.taku@jp.fujitsu.com, qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [PATCH v5 6/7] vfio: add 'x-aer' property to expose aercap
Date: Wed, 18 Mar 2015 08:09:45 -0600 [thread overview]
Message-ID: <1426687785.3643.364.camel@redhat.com> (raw)
In-Reply-To: <20150318142315-mutt-send-email-mst@redhat.com>
On Wed, 2015-03-18 at 14:23 +0100, Michael S. Tsirkin wrote:
> On Thu, Mar 12, 2015 at 06:23:58PM +0800, Chen Fan wrote:
> > add 'x-aer' property to let user able to decide whether expose
> > the aer capability.
> >
> > Signed-off-by: Chen Fan <chen.fan.fnst@cn.fujitsu.com>
>
> If it's exposed to users, it should not have the x- prefix.
> That prefix means "internal only".
It's my understanding that the x- prefix is to be used for any
"unsupported" option that should not be picked up by libvirt or other
management tools as an official API. It may be removed or changed at
any point. That doesn't imply it's internal-only. See for example
x-vga, which is toggled by the user, but has a number of complicated
issues to call officially supported. Or x-req, which allows a user to
opt-out of the collaborative device request interface, but should not be
the default and should not be easily accessible.
I still don't know if x- is really the correct option in this case. If
the guest is known not to support AER, then the user may desire the stop
VM behavior. I also don't understand how a guest can necessarily
recover from an AER since things like bus reset aren't exposed to guests
except for very limited cases. Thanks,
Alex
> > ---
> > hw/vfio/pci.c | 8 ++++++++
> > 1 file changed, 8 insertions(+)
> >
> > diff --git a/hw/vfio/pci.c b/hw/vfio/pci.c
> > index 8966c49..0517091 100644
> > --- a/hw/vfio/pci.c
> > +++ b/hw/vfio/pci.c
> > @@ -159,6 +159,8 @@ typedef struct VFIOPCIDevice {
> > #define VFIO_FEATURE_ENABLE_VGA (1 << VFIO_FEATURE_ENABLE_VGA_BIT)
> > #define VFIO_FEATURE_ENABLE_REQ_BIT 1
> > #define VFIO_FEATURE_ENABLE_REQ (1 << VFIO_FEATURE_ENABLE_REQ_BIT)
> > +#define VFIO_FEATURE_ENABLE_AER_BIT 2
> > +#define VFIO_FEATURE_ENABLE_AER (1 << VFIO_FEATURE_ENABLE_AER_BIT)
> > int32_t bootindex;
> > uint8_t pm_cap;
> > bool has_vga;
> > @@ -2731,6 +2733,10 @@ static int vfio_setup_aer(VFIOPCIDevice *vdev, int pos, uint16_t size)
> > uint32_t severity, errcap;
> > int ret;
> >
> > + if (!(vdev->features & VFIO_FEATURE_ENABLE_AER)) {
> > + return 0;
> > + }
> > +
> > errcap = vfio_pci_read_config(pdev, pdev->exp.aer_cap + PCI_ERR_CAP, 4);
> > /* The ability to record multiple headers is depending on
> > the state of the Multiple Header Recording Capable bit and
> > @@ -3691,6 +3697,8 @@ static Property vfio_pci_dev_properties[] = {
> > VFIO_FEATURE_ENABLE_VGA_BIT, false),
> > DEFINE_PROP_BIT("x-req", VFIOPCIDevice, features,
> > VFIO_FEATURE_ENABLE_REQ_BIT, true),
> > + DEFINE_PROP_BIT("x-aer", VFIOPCIDevice, features,
> > + VFIO_FEATURE_ENABLE_AER_BIT, true),
> > DEFINE_PROP_INT32("bootindex", VFIOPCIDevice, bootindex, -1),
> > DEFINE_PROP_BOOL("x-mmap", VFIOPCIDevice, vbasedev.allow_mmap, true),
> > /*
> > --
> > 1.9.3
> >
next prev parent reply other threads:[~2015-03-18 14:09 UTC|newest]
Thread overview: 53+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-03-12 10:23 [Qemu-devel] [PATCH v5 0/7] pass aer error to guest for vfio device Chen Fan
2015-03-12 10:23 ` [Qemu-devel] [PATCH v5 1/7] vfio: add pcie extanded capability support Chen Fan
2015-03-12 10:23 ` [Qemu-devel] [PATCH v5 2/7] aer: impove pcie_aer_init to support vfio device Chen Fan
2015-03-13 22:25 ` Alex Williamson
2015-03-16 2:30 ` Chen Fan
2015-03-12 10:23 ` [Qemu-devel] [PATCH v5 3/7] vfio: add aer support for " Chen Fan
2015-03-13 22:28 ` Alex Williamson
2015-03-12 10:23 ` [Qemu-devel] [PATCH v5 4/7] pcie_aer: expose pcie_aer_msg() interface Chen Fan
2015-03-13 22:30 ` Alex Williamson
2015-03-18 13:29 ` Michael S. Tsirkin
2015-03-19 1:33 ` Chen Fan
2015-03-12 10:23 ` [Qemu-devel] [PATCH v5 5/7] vfio-pci: pass the aer error to guest Chen Fan
2015-03-13 22:34 ` Alex Williamson
2015-03-16 3:05 ` Chen Fan
2015-03-16 3:52 ` Alex Williamson
2015-03-16 7:35 ` Chen Fan
2015-03-16 14:09 ` Alex Williamson
2015-03-25 1:33 ` Chen Fan
2015-03-25 2:31 ` Alex Williamson
2015-03-25 1:53 ` Chen Fan
2015-03-25 2:41 ` Alex Williamson
2015-03-25 3:07 ` Chen Fan
2015-04-01 4:12 ` Chen Fan
2015-04-01 15:46 ` Alex Williamson
2015-04-08 8:59 ` Chen Fan
2015-04-08 15:36 ` Alex Williamson
2015-04-15 10:30 ` Chen Fan
2015-04-15 14:18 ` Alex Williamson
2015-03-12 10:23 ` [Qemu-devel] [PATCH v5 6/7] vfio: add 'x-aer' property to expose aercap Chen Fan
2015-03-18 13:23 ` Michael S. Tsirkin
2015-03-18 14:09 ` Alex Williamson [this message]
2015-03-12 10:23 ` [Qemu-devel] [PATCH v5 7/7] pc: add PC_I440FX_COMPAT to disable aercap for vifo device Chen Fan
2015-03-13 22:38 ` Alex Williamson
2015-03-16 2:48 ` Chen Fan
2015-03-16 2:49 ` Chen Fan
2015-03-18 13:23 ` Michael S. Tsirkin
2015-03-18 14:02 ` Alex Williamson
2015-03-18 14:05 ` Michael S. Tsirkin
2015-03-18 14:15 ` Alex Williamson
2015-03-18 14:36 ` Michael S. Tsirkin
2015-03-18 14:50 ` Alex Williamson
2015-03-18 15:02 ` Michael S. Tsirkin
2015-03-18 15:45 ` Alex Williamson
2015-03-18 16:44 ` Michael S. Tsirkin
2015-03-18 17:11 ` Alex Williamson
2015-03-18 17:45 ` Michael S. Tsirkin
2015-03-18 18:08 ` Alex Williamson
2015-03-18 18:56 ` Michael S. Tsirkin
2015-03-18 19:05 ` Alex Williamson
2015-03-19 21:26 ` Paolo Bonzini
2015-03-16 2:52 ` [Qemu-devel] [PATCH v5 0/7] pass aer error to guest for vfio device Chen Fan
2015-03-16 4:57 ` Michael S. Tsirkin
2015-03-19 21:44 ` 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=1426687785.3643.364.camel@redhat.com \
--to=alex.williamson@redhat.com \
--cc=chen.fan.fnst@cn.fujitsu.com \
--cc=izumi.taku@jp.fujitsu.com \
--cc=mst@redhat.com \
--cc=qemu-devel@nongnu.org \
/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).