Re: [PATCH]dgrs - Fixes Warnings when CONFIG_ISA and CONFIG_PCI arenot enabled

From: Andrew Morton
Date: Sat Nov 05 2005 - 12:45:41 EST


Richard Knutsson <ricknu-0@xxxxxxxxxxxxxx> wrote:
>
> Richard Knutsson wrote:
>
> > Andrew Morton wrote:
> >
> >> Richard Knutsson <ricknu-0@xxxxxxxxxxxxxx> wrote:
> >>
> >>
> >>>> */
> >>>>
> >>>
> >>> > #ifdef CONFIG_EISA
> >>> >- eisacount = eisa_driver_register(&dgrs_eisa_driver);
> >>> >- if (eisacount < 0)
> >>> >- return eisacount;
> >>> >-#endif
> >>> >-#ifdef CONFIG_PCI
> >>> >- pcicount = pci_register_driver(&dgrs_pci_driver);
> >>> >- if (pcicount)
> >>> >- return pcicount;
> >>> >+ cardcount = eisa_driver_register(&dgrs_eisa_driver);
> >>> >+ if (cardcount < 0)
> >>> >+ return cardcount;
> >>> > #endif
> >>> >+ cardcount = pci_register_driver(&dgrs_pci_driver);
> >>> >+ if (cardcount)
> >>> >+ return cardcount;
> >>> > return 0;
> >>> > }
> >>> > >
> >>> I do not know what to think about this one:
> >>> * reduce one #ifdef: good
> >>> * check for something clearly stated not to: not so good
> >>>
> >>
> >>
> >> Well a nicer fix would be to provide a stub implementation of
> >> eisa_driver_register() if !CONFIG_EISA, just like
> >> pci_register_driver(). Then all the ifdefs go away and the compiler
> >> removes all the code for us,
> >> after checking that we typed it correctly.
> >>
> >>
> > Oh, sorry. Missed the stub implementation of the pci-driver. I "ack"
> > your patch.
> >
> > BTW, can anyone ack or is that up to the maintainers?
> > BTW #2, why not remove #ifdef CONFIG_PCI on dgrs_cleanup_module() at
> > the same time? Or maybe that should be in a "remove config_pci"-patch...
> >
> > /Richard
>
> Just realized; what happens if CONFIG_EISA && !CONFIG_PCI and
> eisa_driver_register() returns value > 0, then the if-statement for the
> pci-driver is going to return the value, instead of 0.

if !CONFIG_PCI, pci_register_driver() will return zero.
-
To unsubscribe from this list: send the line "unsubscribe linux-net" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html