Thread (12 messages) flat view 12 messages, 3 authors, 2005-11-05

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

From: Andrew Morton <hidden>
Date: 2005-11-05 17:46:05
Also in: lkml

Richard Knutsson [off-list ref] wrote:
Richard Knutsson wrote:
quoted
Andrew Morton wrote:
quoted
Richard Knutsson [off-list ref] wrote:
 
quoted
quoted
     */
    
quoted
#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.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help