qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH] pci_aer_init: cleanup


From: Marcel Apfelbaum
Subject: Re: [Qemu-devel] [PATCH] pci_aer_init: cleanup
Date: Wed, 2 Nov 2016 12:12:33 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.1.1

On 10/13/2016 05:32 AM, Cao jin wrote:
log_max have no chance to be PCIE_AER_LOG_MAX_UNSET, unless user specify it.


Hi,


Bonus:
1. remove unnecessary local variable.
2. fix a typo.

Signed-off-by: Cao jin <address@hidden>
---
 hw/pci/pcie_aer.c         | 10 +---------
 include/hw/pci/pcie_aer.h |  2 +-
 2 files changed, 2 insertions(+), 10 deletions(-)

diff --git a/hw/pci/pcie_aer.c b/hw/pci/pcie_aer.c
index ac47f34..6cf088b 100644
--- a/hw/pci/pcie_aer.c
+++ b/hw/pci/pcie_aer.c
@@ -99,18 +99,10 @@ static void aer_log_clear_all_err(PCIEAERLog *aer_log)
 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, cap_ver,
                         offset, size);
-    exp = &dev->exp;
-    exp->aer_cap = offset;
+    dev->exp.aer_cap = offset;

-    /* log_max is property */
-    if (dev->exp.aer_log.log_max == PCIE_AER_LOG_MAX_UNSET) {
-        dev->exp.aer_log.log_max = PCIE_AER_LOG_MAX_DEFAULT;
-    }

OK, maybe this check is not needed, the default value is PCIE_AER_LOG_MAX_DEFAULT 
-> 8.

The user can pass -device ioh3420,aer_log_max=0xffff and until now would be 
automatically
modified to PCIE_AER_LOG_MAX_DEFAULT -> 15, from now on he will fail. However 
the behavior
change is OK.



-    /* clip down the value to avoid unreasobale memory usage */
     if (dev->exp.aer_log.log_max > PCIE_AER_LOG_MAX_LIMIT) {
         return -EINVAL;
     }


If you already started working on it, maybe you can fix the error message when 
the user passes
aer_log_max over PCIE_AER_LOG_MAX_LIMIT.
For the moment we get:
    qemu-system-x86_64: -device ioh3420,aer_log_max=0xfff: Device 
initialization failed

And I would suggest a more clear patch subject.

Thanks,
Marcel

diff --git a/include/hw/pci/pcie_aer.h b/include/hw/pci/pcie_aer.h
index c373591..31755ef 100644
--- a/include/hw/pci/pcie_aer.h
+++ b/include/hw/pci/pcie_aer.h
@@ -40,7 +40,7 @@ struct PCIEAERLog {
      * The specified value will be clipped down to PCIE_AER_LOG_MAX_LIMIT
      * to avoid unreasonable memory usage.
      * I bet that 128 log size would be big enough, otherwise too many errors
-     * for system to function normaly. But could consecutive errors occur?
+     * for system to function normally. But could consecutive errors occur?
      */
 #define PCIE_AER_LOG_MAX_DEFAULT        8
 #define PCIE_AER_LOG_MAX_LIM



reply via email to

[Prev in Thread] Current Thread [Next in Thread]