Re: drivers/scsi/advansys.c - ld error ( Re: 2.6.23-rc3-mm1 )

From: Matthew Wilcox
Date: Wed Aug 22 2007 - 12:28:24 EST


On Wed, Aug 22, 2007 at 06:15:14PM +0200, Gabriel C wrote:
> advansys.c:(.init.text+0x38ea): undefined reference to `isa_register_driver'
> I guess advansys_{init,exit} is missing some #ifdef's ..

That's one conclusion. I prefer to think that the ISA support should
behave the same as the PCI and EISA support:

----

When CONFIG_ISA is disabled, the isa_driver support will not be compiled
in. Define stubs so that we don't get link-time errors.

Signed-off-by: Matthew Wilcox <matthew@xxxxxx>

diff --git a/include/linux/isa.h b/include/linux/isa.h
index 1b85533..b0270e3 100644
--- a/include/linux/isa.h
+++ b/include/linux/isa.h
@@ -22,7 +22,18 @@ struct isa_driver {

#define to_isa_driver(x) container_of((x), struct isa_driver, driver)

+#ifdef CONFIG_ISA
int isa_register_driver(struct isa_driver *, unsigned int);
void isa_unregister_driver(struct isa_driver *);
+#else
+static inline int isa_register_driver(struct isa_driver *d, unsigned int i)
+{
+ return 0;
+}
+
+static inline void isa_unregister_driver(struct isa_driver *d)
+{
+}
+#endif

#endif /* __LINUX_ISA_H */

--
"Bill, look, we understand that you're interested in selling us this
operating system, but compare it to ours. We can't possibly take such
a retrograde step."
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/