- drivers/isdn/teles/mod.c defines "io" globally at 23
- drivers/char/wdt.c defines "io" and "irq" globally at 53 and 54
- drivers/isdn/pcbit/module.c defines "irq" and "mem" globally at 25
and 26
In all cases the solution is to mark these declarations static.
Recompilation shows that these identifiers are not referenced from any
other file.
The horror is realizing that I have only discovered the symbols that
are incorrectly globalized in two or more files -- ones globalized in
one file don't cause visible errors.
BTW, I notice that someone occasionally publishes a list of
multiply-defined symbols, incorrectly globalized symbols, and other
namespace pollution. Doesn't anyone *do* anything with that list?
Might it not be a good idea if Linus were to take that list and tell
the developers "Your code doesn't go into the kernel until it isn't on
this list!"
Anyway, could someone get these changes into the kernel?
Thanks!
Dale
-- Dale R. Worley Ariadne Internet Services Voice: +1 617-899-7949 Fax: +1 617-899-7946 E-mail: worley@ariadne.com "Internet-based electronic commerce solutions to real business problems."