[PATCH] I2O: Bugfixes
- Removed some kmalloc's with __GFP_ZERO and replace it with memset() because it didn't work properly. - Fixed returned message frame in i2o_cfg_passthru() which caused raidutils to display wrong error message in case a disk was missing. - Fixed size of printk() in i2o_scsi.c. - Fixed get_device() and put_device() in probing of the I2O controller. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
committed by
Linus Torvalds
parent
24791bd48f
commit
dcceafe25a
@@ -339,7 +339,7 @@ static int __devinit i2o_pci_probe(struct pci_dev *pdev,
|
||||
pci_name(pdev));
|
||||
|
||||
c->pdev = pdev;
|
||||
c->device.parent = get_device(&pdev->dev);
|
||||
c->device.parent = &pdev->dev;
|
||||
|
||||
/* Cards that fall apart if you hit them with large I/O loads... */
|
||||
if (pdev->vendor == PCI_VENDOR_ID_NCR && pdev->device == 0x0630) {
|
||||
@@ -410,8 +410,6 @@ static int __devinit i2o_pci_probe(struct pci_dev *pdev,
|
||||
if ((rc = i2o_iop_add(c)))
|
||||
goto uninstall;
|
||||
|
||||
get_device(&c->device);
|
||||
|
||||
if (i960)
|
||||
pci_write_config_word(i960, 0x42, 0x03ff);
|
||||
|
||||
@@ -424,7 +422,6 @@ static int __devinit i2o_pci_probe(struct pci_dev *pdev,
|
||||
i2o_pci_free(c);
|
||||
|
||||
free_controller:
|
||||
put_device(c->device.parent);
|
||||
i2o_iop_free(c);
|
||||
|
||||
disable:
|
||||
@@ -454,7 +451,6 @@ static void __devexit i2o_pci_remove(struct pci_dev *pdev)
|
||||
|
||||
printk(KERN_INFO "%s: Controller removed.\n", c->name);
|
||||
|
||||
put_device(c->device.parent);
|
||||
put_device(&c->device);
|
||||
};
|
||||
|
||||
|
Reference in New Issue
Block a user