Messages in this thread | | | Date | Tue, 11 Jan 2005 19:46:19 -0500 | From | Dave Jones <> | Subject | Re: [patch 03/11] arch/i386/pci/i386.c: Use new for_each_pci_dev macro |
| |
On Wed, Jan 12, 2005 at 12:34:58AM +0100, domen@coderock.org wrote:
> As requested by Christoph Hellwig I've created a new macro called > for_each_pci_dev. It is a wrapper for this common use of pci_get/find_device: > > (while ((dev = pci_get_device(PCI_ANY_ID, PCI_ANY_ID, dev)) != NULL)) > > This macro will return the pci_dev *for all pci devices. Here is the first patch I > used to test this macro with. Compiled and booted on my T23. There will be > 53 more patches using this new macro.
Which looks just like the pci_for_each_dev we used to have. That function got removed due some shortcoming or other that I never fully understood, but ISTR it had something to do with locking. (why it couldnt be hidden inside for_each_pci_dev is a mystery to me)
We've had lots of code in the kernel go from this..
pci_for_each_dev(loop_dev) {
to the disgustingly unreadable..
while ((loop_dev = pci_find_device(PCI_ANY_ID, PCI_ANY_ID, loop_dev)) != NULL) {
and now its going to ..
for_each_pci_dev(loop_dev) {
So,.. what has all this churn bought us, and where does it end ? With four words in the function name, we've enough possibilities for quite a few more iterations yet.
Dave
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |