From: Chen Fan <chen.fan.fnst@cn.fujitsu.com>
To: Alex Williamson <alex.williamson@redhat.com>
Cc: izumi.taku@jp.fujitsu.com, qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [RFC v4 4/9] aer: impove pcie_aer_init to support vfio device
Date: Wed, 11 Mar 2015 10:37:38 +0800 [thread overview]
Message-ID: <54FFAA72.4030108@cn.fujitsu.com> (raw)
In-Reply-To: <1425932961.4675.211.camel@redhat.com>
On 03/10/2015 04:29 AM, Alex Williamson wrote:
> On Mon, 2015-03-02 at 15:16 +0800, Chen Fan wrote:
>> extend pcie_aer_init arguments to adjust vfio device.
> Some discussion of why vfio wants this would be useful.
qemu treats vfio device as an emulated device.
and these attributes of aer can be emulated too.
so here I would use pcie_aer_init to add an aer capability
directly. and get rid of this patch from series.
Thanks,
Chen
>
>
>> Signed-off-by: Chen Fan <chen.fan.fnst@cn.fujitsu.com>
>> ---
>> hw/pci-bridge/ioh3420.c | 3 ++-
>> hw/pci-bridge/xio3130_downstream.c | 3 ++-
>> hw/pci-bridge/xio3130_upstream.c | 3 ++-
>> hw/pci/pcie_aer.c | 7 ++++---
>> include/hw/pci/pcie_aer.h | 4 +++-
>> 5 files changed, 13 insertions(+), 7 deletions(-)
>>
>> diff --git a/hw/pci-bridge/ioh3420.c b/hw/pci-bridge/ioh3420.c
>> index cce2fdd..354574f 100644
>> --- a/hw/pci-bridge/ioh3420.c
>> +++ b/hw/pci-bridge/ioh3420.c
>> @@ -129,7 +129,8 @@ static int ioh3420_initfn(PCIDevice *d)
>> goto err_pcie_cap;
>> }
>> pcie_cap_root_init(d);
>> - rc = pcie_aer_init(d, IOH_EP_AER_OFFSET);
>> + rc = pcie_aer_init(d, PCI_ERR_VER,
>> + IOH_EP_AER_OFFSET, PCI_ERR_SIZEOF);
>> if (rc < 0) {
>> goto err;
>> }
>> diff --git a/hw/pci-bridge/xio3130_downstream.c b/hw/pci-bridge/xio3130_downstream.c
>> index b3a6479..407f75f 100644
>> --- a/hw/pci-bridge/xio3130_downstream.c
>> +++ b/hw/pci-bridge/xio3130_downstream.c
>> @@ -92,7 +92,8 @@ static int xio3130_downstream_initfn(PCIDevice *d)
>> goto err_pcie_cap;
>> }
>> pcie_cap_arifwd_init(d);
>> - rc = pcie_aer_init(d, XIO3130_AER_OFFSET);
>> + rc = pcie_aer_init(d, PCI_ERR_VER,
>> + XIO3130_AER_OFFSET, PCI_ERR_SIZEOF);
>> if (rc < 0) {
>> goto err;
>> }
>> diff --git a/hw/pci-bridge/xio3130_upstream.c b/hw/pci-bridge/xio3130_upstream.c
>> index eada582..52b130f 100644
>> --- a/hw/pci-bridge/xio3130_upstream.c
>> +++ b/hw/pci-bridge/xio3130_upstream.c
>> @@ -81,7 +81,8 @@ static int xio3130_upstream_initfn(PCIDevice *d)
>> }
>> pcie_cap_flr_init(d);
>> pcie_cap_deverr_init(d);
>> - rc = pcie_aer_init(d, XIO3130_AER_OFFSET);
>> + rc = pcie_aer_init(d, PCI_ERR_VER,
>> + XIO3130_AER_OFFSET, PCI_ERR_SIZEOF);
>> if (rc < 0) {
>> goto err;
>> }
>> diff --git a/hw/pci/pcie_aer.c b/hw/pci/pcie_aer.c
>> index ece1487..a76a943 100644
>> --- a/hw/pci/pcie_aer.c
>> +++ b/hw/pci/pcie_aer.c
>> @@ -94,12 +94,13 @@ static void aer_log_clear_all_err(PCIEAERLog *aer_log)
>> aer_log->log_num = 0;
>> }
>>
>> -int pcie_aer_init(PCIDevice *dev, uint16_t offset)
>> +int pcie_aer_init(PCIDevice *dev, uint8_t cap_ver,
>> + uint16_t offset, uint16_t size)
>> {
>> PCIExpressDevice *exp;
>>
>> - pcie_add_capability(dev, PCI_EXT_CAP_ID_ERR, PCI_ERR_VER,
>> - offset, PCI_ERR_SIZEOF);
>> + pcie_add_capability(dev, PCI_EXT_CAP_ID_ERR,
>> + cap_ver, offset, size);
>> exp = &dev->exp;
>> exp->aer_cap = offset;
>>
>> diff --git a/include/hw/pci/pcie_aer.h b/include/hw/pci/pcie_aer.h
>> index bcac80a..afa074e 100644
>> --- a/include/hw/pci/pcie_aer.h
>> +++ b/include/hw/pci/pcie_aer.h
>> @@ -87,7 +87,9 @@ struct PCIEAERErr {
>>
>> extern const VMStateDescription vmstate_pcie_aer_log;
>>
>> -int pcie_aer_init(PCIDevice *dev, uint16_t offset);
>> +int pcie_aer_init(PCIDevice *dev, uint8_t cap_ver,
>> + uint16_t offset, uint16_t size);
>> +
>> void pcie_aer_exit(PCIDevice *dev);
>> void pcie_aer_write_config(PCIDevice *dev,
>> uint32_t addr, uint32_t val, int len);
>
>
> .
>
next prev parent reply other threads:[~2015-03-11 2:44 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-03-02 7:16 [Qemu-devel] [RFC v4 0/9] pass aer error to guest for vfio device Chen Fan
2015-03-02 7:16 ` [Qemu-devel] [RFC v4 1/9] pcie_aer: fix typos in pcie_aer_inject_error comment Chen Fan
2015-03-02 7:16 ` [Qemu-devel] [RFC v4 2/9] aer: fix a wrong init PCI_ERR_COR_STATUS w1cmask type register Chen Fan
2015-03-02 7:16 ` [Qemu-devel] [RFC v4 3/9] vfio: add pcie extanded capability support Chen Fan
2015-03-09 20:28 ` Alex Williamson
2015-03-11 2:42 ` Chen Fan
2015-03-02 7:16 ` [Qemu-devel] [RFC v4 4/9] aer: impove pcie_aer_init to support vfio device Chen Fan
2015-03-09 20:29 ` Alex Williamson
2015-03-11 2:37 ` Chen Fan [this message]
2015-03-12 10:29 ` Chen Fan
2015-03-02 7:16 ` [Qemu-devel] [RFC v4 5/9] vfio: add aer support for " Chen Fan
2015-03-02 7:16 ` [Qemu-devel] [RFC v4 6/9] vfio: add 'x-aer' option to disable aer capability Chen Fan
2015-03-09 20:29 ` Alex Williamson
2015-03-11 3:42 ` Chen Fan
2015-03-11 15:44 ` Alex Williamson
2015-03-02 7:16 ` [Qemu-devel] [RFC v4 7/9] pcie_aer: expose pcie_aer_msg() interface Chen Fan
2015-03-02 7:16 ` [Qemu-devel] [RFC v4 8/9] vfio-pci: pass the aer error to guest Chen Fan
2015-03-09 20:29 ` Alex Williamson
2015-03-11 2:57 ` Chen Fan
2015-03-02 7:16 ` [Qemu-devel] [RFC v4 9/9] pcie: fix several trivial typos Chen Fan
2015-03-09 1:33 ` [Qemu-devel] [RFC v4 0/9] pass aer error to guest for vfio device Chen Fan
2015-03-09 20:34 ` Alex Williamson
2015-03-10 1:27 ` Chen Fan
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=54FFAA72.4030108@cn.fujitsu.com \
--to=chen.fan.fnst@cn.fujitsu.com \
--cc=alex.williamson@redhat.com \
--cc=izumi.taku@jp.fujitsu.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).