From: Andy Shevchenko <andriy.shevche...@linux.intel.com>

When ->probe() calls helper functions return theirs error codes
instead of shadowing them.

Tested-by: Nikola Ciprich <nikola.cipr...@linuxbox.cz>
Signed-off-by: Andy Shevchenko <andriy.shevche...@linux.intel.com>
Signed-off-by: Sudip Mukherjee <sudipm.mukher...@gmail.com>
---
 drivers/parport/parport_serial.c | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/drivers/parport/parport_serial.c b/drivers/parport/parport_serial.c
index 050eeb0..c222698 100644
--- a/drivers/parport/parport_serial.c
+++ b/drivers/parport/parport_serial.c
@@ -539,12 +539,10 @@ static int serial_register(struct pci_dev *dev, const 
struct pci_device_id *id)
        struct serial_private *serial;
 
        board = &pci_parport_serial_boards[id->driver_data];
-
        if (board->num_ports == 0)
                return 0;
 
        serial = pciserial_init_ports(dev, board);
-
        if (IS_ERR(serial))
                return PTR_ERR(serial);
 
@@ -630,14 +628,16 @@ static int parport_serial_pci_probe(struct pci_dev *dev,
        if (err)
                return err;
 
-       if (parport_register(dev, id))
-               return -ENODEV;
+       err = parport_register(dev, id);
+       if (err)
+               return err;
 
-       if (serial_register (dev, id)) {
+       err = serial_register(dev, id);
+       if (err) {
                int i;
                for (i = 0; i < priv->num_par; i++)
                        parport_pc_unregister_port (priv->port[i]);
-               return -ENODEV;
+               return err;
        }
 
        return 0;
-- 
2.7.4

Reply via email to