summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndy Shevchenko <andriy.shevchenko@linux.intel.com>2018-02-07 22:47:54 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2018-03-14 19:54:09 +0300
commit96edf5376e9250eb61d2bbc5432c13846878edb2 (patch)
tree292b41ffdfc35cfbda526ad9baf40eb34ced99c9
parentad8ce834bfec77c8ae2fbb3a0593ae87bdecebcb (diff)
downloadlinux-96edf5376e9250eb61d2bbc5432c13846878edb2.tar.xz
parport: Don't shadow error codes in ->probe()
When ->probe() calls helper functions return theirs error codes instead of shadowing them. Tested-by: Nikola Ciprich <nikola.ciprich@linuxbox.cz> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Signed-off-by: Sudip Mukherjee <sudipm.mukherjee@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--drivers/parport/parport_serial.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/drivers/parport/parport_serial.c b/drivers/parport/parport_serial.c
index 050eeb06913a..c222698410c2 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;