--- linux-source-2.6.12-2.6.12/drivers/parport/parport_serial.c 2005-06-17 21:48:29.000000000 +0200 @@ -418,10 +419,13 @@ return err; } - if (parport_register (dev, id)) { + err = parport_register (dev, id); + if (err < 0) { pci_set_drvdata (dev, NULL); kfree (priv); return -ENODEV; + } else if (err) { + priv->num_par = 0; } if (serial_register (dev, id)) {