On Wed, 2009-06-24 at 22:13 -0700, Joe Perches wrote: > Signed-off-by: Joe Perches <joe@xxxxxxxxxxx> OK, so there's no description whatsoever how am I supposed to divine the reasons for doing this? Because if I look at an example: > --- a/drivers/scsi/3w-9xxx.c > +++ b/drivers/scsi/3w-9xxx.c > @@ -2278,14 +2278,10 @@ out_disable_device: > > /* PCI Devices supported by this driver */ > static struct pci_device_id twa_pci_tbl[] __devinitdata = { > - { PCI_VENDOR_ID_3WARE, PCI_DEVICE_ID_3WARE_9000, > - PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0}, > - { PCI_VENDOR_ID_3WARE, PCI_DEVICE_ID_3WARE_9550SX, > - PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0}, > - { PCI_VENDOR_ID_3WARE, PCI_DEVICE_ID_3WARE_9650SE, > - PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0}, > - { PCI_VENDOR_ID_3WARE, PCI_DEVICE_ID_3WARE_9690SA, > - PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0}, > + { PCI_VDEVICE(3WARE, PCI_DEVICE_ID_3WARE_9000), 0}, > + { PCI_VDEVICE(3WARE, PCI_DEVICE_ID_3WARE_9550SX), 0}, > + { PCI_VDEVICE(3WARE, PCI_DEVICE_ID_3WARE_9650SE), 0}, > + { PCI_VDEVICE(3WARE, PCI_DEVICE_ID_3WARE_9690SA), 0}, It appears to take PCI matching on vendor device with any subvendor, device and reproduce the results with a macro, which, for good measure pastes PCI_VENDOR_ID on to the first argument but *doesn't* paste PCI_DEVICE_ID on to the second? So it transforms a relatively opaque initialiser which most people would have to look up in pci.h into another relatively opaque initialiser indirected via a macro, so now I have to look up both the structure and the macro to figure out what's going on. If that's all it does, I'm having a hard time seeing any actual improvement here. James -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html