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

[PATCH v4 3/8] xen/pci: Drop some checks that are always true



From: Uwe Kleine-König <u.kleine-koenig@xxxxxxxxxxxxxx>

pcifront_common_process() has a check at the start that exits early if
pcidev or pdidev->driver are NULL. So simplify the following code by not
checking these two again.

Reviewed-by: Boris Ostrovsky <boris.ostrovsky@xxxxxxxxxx>
Reviewed-by: Christoph Hellwig <hch@xxxxxx>
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@xxxxxxxxxxxxxx>
---
 drivers/pci/xen-pcifront.c | 57 +++++++++++++++++---------------------
 1 file changed, 25 insertions(+), 32 deletions(-)

diff --git a/drivers/pci/xen-pcifront.c b/drivers/pci/xen-pcifront.c
index 2156c632524d..f2d7f70a7a10 100644
--- a/drivers/pci/xen-pcifront.c
+++ b/drivers/pci/xen-pcifront.c
@@ -594,7 +594,6 @@ static pci_ers_result_t pcifront_common_process(int cmd,
        int devfn = pdev->sh_info->aer_op.devfn;
        int domain = pdev->sh_info->aer_op.domain;
        struct pci_dev *pcidev;
-       int flag = 0;
 
        dev_dbg(&pdev->xdev->dev,
                "pcifront AER process: cmd %x (bus:%x, devfn%x)",
@@ -609,40 +608,34 @@ static pci_ers_result_t pcifront_common_process(int cmd,
        }
        pdrv = pcidev->driver;
 
-       if (pdrv) {
-               if (pdrv->err_handler && pdrv->err_handler->error_detected) {
-                       pci_dbg(pcidev, "trying to call AER service\n");
-                       if (pcidev) {
-                               flag = 1;
-                               switch (cmd) {
-                               case XEN_PCI_OP_aer_detected:
-                                       result = pdrv->err_handler->
-                                                error_detected(pcidev, state);
-                                       break;
-                               case XEN_PCI_OP_aer_mmio:
-                                       result = pdrv->err_handler->
-                                                mmio_enabled(pcidev);
-                                       break;
-                               case XEN_PCI_OP_aer_slotreset:
-                                       result = pdrv->err_handler->
-                                                slot_reset(pcidev);
-                                       break;
-                               case XEN_PCI_OP_aer_resume:
-                                       pdrv->err_handler->resume(pcidev);
-                                       break;
-                               default:
-                                       dev_err(&pdev->xdev->dev,
-                                               "bad request in aer recovery "
-                                               "operation!\n");
-
-                               }
-                       }
+       if (pdrv->err_handler && pdrv->err_handler->error_detected) {
+               pci_dbg(pcidev, "trying to call AER service\n");
+               switch (cmd) {
+               case XEN_PCI_OP_aer_detected:
+                       result = pdrv->err_handler->
+                                error_detected(pcidev, state);
+                       break;
+               case XEN_PCI_OP_aer_mmio:
+                       result = pdrv->err_handler->
+                                mmio_enabled(pcidev);
+                       break;
+               case XEN_PCI_OP_aer_slotreset:
+                       result = pdrv->err_handler->
+                                slot_reset(pcidev);
+                       break;
+               case XEN_PCI_OP_aer_resume:
+                       pdrv->err_handler->resume(pcidev);
+                       break;
+               default:
+                       dev_err(&pdev->xdev->dev,
+                               "bad request in aer recovery "
+                               "operation!\n");
                }
+
+               return result;
        }
-       if (!flag)
-               result = PCI_ERS_RESULT_NONE;
 
-       return result;
+       return PCI_ERS_RESULT_NONE;
 }
 
 
-- 
2.30.2




 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.