Messages in this thread | | | From | Rolf Eike Beer <> | Subject | Re: [PATCH] SCSI driver for VMware's virtual HBA. | Date | Mon, 31 Aug 2009 20:51:18 +0200 |
| |
Alok Kataria wrote: > Hi Eike,
> > > +static int __devinit pvscsi_probe(struct pci_dev *pdev, > > > + const struct pci_device_id *id) > > > +{ > > > + struct pvscsi_adapter *adapter; > > > + struct Scsi_Host *host; > > > + unsigned long base, i; > > > + int error; > > > + > > > + error = -ENODEV; > > > + > > > + if (pci_enable_device(pdev)) > > > + return error; > > > > As always I suggest having a look on devres (see Documentation/driver- > > model/devres.txt) which could simplify your error handling here and your > > release function a lot. You only need to make sure it doesn't hurt if all > > the PCI resources are freed after the scsi ones as you would end up > > cleaning the scsi ones by hand and afterwards devres would throw all it > > handles (which will probably be most of your PCI stuff) away itself. > > I took a quick look, but would prefer not to change this right now. Will > do this as a incremental change later. Hope that is fine.
Just a suggestion ;)
> > > + adapter->dev = pdev; > > > + adapter->host = host; > > > + > > > + spin_lock_init(&adapter->hw_lock); > > > + > > > + host->max_channel = 0; > > > + host->max_id = 16; > > > + host->max_lun = 1; > > > + > > > + pci_read_config_byte(pdev, PCI_CLASS_REVISION, &adapter->rev); > > > > That's in pdev->revision anyway, isn't it? > > Yep, though, its needed in pvscsi_info, so will keep this in adapter > too.
Yes, but you don't need to do pci_read_config_byte() but simply copying that over from pdev->revision.
Eike [unhandled content-type:application/pgp-signature] | |