-
Notifications
You must be signed in to change notification settings - Fork 71
Open
Description
Dahdi Linux version: 3.4.0 (cloned from here)
Linux: Fedora Linux 6.15.6-200.fc42.x86_64
Related issues: #94 #93
I believe that the problem is in the vpmadt032_x86_64.o_shipped
. See the output of nm
below.
Functions __vpmadt032_cleanup
and __vpmadt032_init
in the firmware's source code needs some maintenance similar to the snippet from my patch to dahdi_dummy.c
patch shown below.
Note: I am not an expert C coder, kernel programmer, or Dahdi programmer so my patch needs to be reviewed and tested carefully. I have been using a small subset of the Dahdi functionality for a simple answering machine for over 10 years.
Error output from make
:
CC [M] vpmadt032_loader/dahdi_vpmadt032_loader.o
COPY vpmadt032_loader/vpmadt032_x86_64.o
LD [M] dahdi_vpmadt032_loader.o
dahdi_vpmadt032_loader.o: warning: objtool: .text+0x444a: unannotated intra-function call
make[4]: *** [/usr/src/kernels/6.15.6-200.fc42.x86_64/scripts/Makefile.build:408: dahdi_vpmadt032_loader.o] Error 255
make[4]: *** Deleting file 'dahdi_vpmadt032_loader.o'
make[3]: *** [/usr/src/kernels/6.15.6-200.fc42.x86_64/Makefile:2043: .] Error 2
make[2]: *** [/usr/src/kernels/6.15.6-200.fc42.x86_64/Makefile:260: __sub-make] Error 2
make[2]: Leaving directory '/home/zippy/tmp/dahdi-linux.3.4.0/drivers/dahdi'
make[1]: *** [Makefile:260: __sub-make] Error 2
make[1]: Leaving directory '/usr/src/kernels/6.15.6-200.fc42.x86_64'
make: *** [Makefile:74: modules] Error 2
Output from nm
:
$ nm vpmadt032_x86_64.o_shipped
000000000000630e T __vpmadt032_cleanup
0000000000006283 T __vpmadt032_done
000000000000433e T __vpmadt032_init
0000000000000000 D __vpmadt032_loader_version
000000000000497f T __vpmadt032_receive
0000000000004907 T __vpmadt032_start_load
0000000000006185 T __vpmadt032_transmit
Snippet from dahdi_dummy.c
patch
-int init_module(void)
+static int __init dahdi_dummy_init(void)
-void cleanup_module(void)
+static void __exit dahdi_dummy_cleanup_module(void)
+module_init(dahdi_dummy_init);
+module_exit(dahdi_dummy_cleanup_module);
Metadata
Metadata
Assignees
Labels
No labels