Skip to content

Build fails linking dahdi_vpmadt032_loader.o #97

@Zippy-Dufus

Description

@Zippy-Dufus

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

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions