ISDN PCBIT: #ifdef MODULE some code
PATCH 1/1 ISDN PCBIT: #ifdef MODULE some code
I got the following error at the final linkage of 2.6.0-test2 if CONFIG_ISDN_DRV_PCBIT is compiled statically:
<-- snip -->
...
LD .tmp_vmlinux1
...
drivers/built-in.o(.exit.text+0xe183): In function `pcbit_exit':
: undefined reference to `pcbit_terminate'
make: *** [.tmp_vmlinux1] Error 1
<-- snip -->
I don't know whether the following patch is the best solution, but it solves the problem:
drivers/isdn/pcbit/module.c renamed from drivers/isdn/pcbit/module.c.tmp +2 -0
@@ -82,12 +82,14 @@ static void __exit pcbit_exit(void) { +#ifdef MODULE int board;for (board =0 ; board < num_boards; board++)pcbit_terminate (board);printk (KERN_NOTICE "PCBIT-D module unloaded\n" ); +#endif }#ifndef MODULE
cu
Adrian
Signature · 4 lines
"Is there not promise of rain?" Ling Tan asked suddenly out
of the darkness. There had been need of rain for many days.
"Only a promise," Lao Er said.
Pearl S. Buck - Dragon SeedIn message <[email protected]> you write:
Quoted 11 lines
I got the following error at the final linkage of 2.6.0-test2 if
CONFIG_ISDN_DRV_PCBITis compiled statically:<-- snip -->
...
LD .tmp_vmlinux1
...
drivers/built-in.o(.exit.text+0xe183): In function `pcbit_exit':
: undefined reference to `pcbit_terminate'
make: *** [.tmp_vmlinux1] Error 1
AFAICT This is also broken in 2.4.22-rc2, which makes me wonder if anyone actually cares about this driver?
Taken anyway, for both.
Rusty.
--
Anyone who quotes me in their sig is an idiot. -- Rusty Russell.
Quoted 13 lines · Rusty Russell
In message <[email protected]> you write:
Quoted 11 lines
I got the following error at the final linkage of 2.6.0-test2 if
CONFIG_ISDN_DRV_PCBITis compiled statically:<-- snip -->
...
LD .tmp_vmlinux1
...
drivers/built-in.o(.exit.text+0xe183): In function `pcbit_exit':
: undefined reference to `pcbit_terminate'
make: *** [.tmp_vmlinux1] Error 1
Quoted 2 lines
AFAICT This is also broken in 2.4.22-rc2, which makes me wonder if anyone actually cares about this driver?
It doesn't cause a compile error in 2.4.
This is inside an __exit function and in 2.4 __exit functions are discarded at link time when compiling a driver statically.
Due to changes Andi Kleen did in 2.6 __exit functions are no longer discarded at link time when compiling a driver statically (they are discarded at runtime).
Quoted 2 lines
Taken anyway, for both.
Rusty.
cu
Adrian
Signature · 4 lines
"Is there not promise of rain?" Ling Tan asked suddenly out
of the darkness. There had been need of rain for many days.
"Only a promise," Lao Er said.
Pearl S. Buck - Dragon SeedQuoted 13 lines · Rusty Russell
In message <[email protected]> you write:
Quoted 11 lines
I got the following error at the final linkage of 2.6.0-test2 if
CONFIG_ISDN_DRV_PCBITis compiled statically:<-- snip -->
...
LD .tmp_vmlinux1
...
drivers/built-in.o(.exit.text+0xe183): In function `pcbit_exit':
: undefined reference to `pcbit_terminate'
make: *** [.tmp_vmlinux1] Error 1
Quoted 4 lines
AFAICT This is also broken in 2.4.22-rc2, which makes me wonder if anyone actually cares about this driver?
Taken anyway, for both.
It is used, I got some reports last year (but this card is only sold in Portugal and is expensiv so far I know and so not so much people using this card and linux).
Here 2 reasons why such thinks don't matter today:
1. 99% compile the ISDN stuff as module (and some parts are only work as modules)
2. In 2.4 the exit function is removed at compile time, if not compiled as modul.
I preparing lot of bugfixes for ISDN and 2.6, but testing needs much time and many things are broken not only at compile time.
Signature · 3 lines
Karsten Keil SuSE Labs ISDN development