Comment 1 for bug 2023570

Revision history for this message
Stefan Bader (smb) wrote :

This looks to be an odd interaction between binutils, the kernel, and the way dahdi gets built. The dahdi_echocan_oslec module depends on echo.ko and the reported symbols belong to that. This modules is part of the kernel. It used to be in drivers/staging but moved to drivers/misc. The required header "oslec.h" unfortunately is not exported but seems to match the copy in dahdi-linux.

The dahdi-dkms spec file got modified so it does not install echo.ko from the dahdi build, but the module gets built regardless whenever dahdi_echocan_oslec is built. I am guessing that in that case linkage prefers the external built module over the existing kernel module. Which seems to work sometimes but then there are the cases where things do not match up. So dahdi_echocan_oslec cannot be loaded and the test fails.

I was able to get a previously failing test to work by changing the /usr/src/dahdi-*/drivers/dahdi/Kbuild file the following way (additional comment):

ifneq (,$(wildcard $(src)/../staging/echo/echo.c))
obj-m += dahdi_echocan_oslec.o
#obj-m += ../staging/echo/echo.o
endif