Hello,

I'm trying to find out what could be the cause of a kldload problem I'm
facing. Here is the context detail --


1. I'm building two ko module. And it has a dependency order, so when I
load the first module, it loads, and a function symbol ( F ) is defined
into kernel variable space sysctl -b kern.function_list | tr '\0' '\n' |
grep symname.
2. Now trying to load the 2nd module, and link_elf_obj flags error and
symbol undefined when freebsd10.1 is being used.
3. If I probe using the same sysctl as in step 1, I still the symbol is
defined.

/var/log/messages shows -
kernel: link_elf_obj: symbol pan_sys_once undefined
kernel: linker_load_file: Unsupported file type

The same two modules when complied using freebsd7.2, we don't see the
problem.


The question is - Is there changes along the elf formats ( in both case it
64bit), also is there any changes
In the API between those two OS version, that I need to aware of ( and
possible flags I need to set).

Using objdump -t  modone.ko
00000000000fb940 g     F .text  0000000000000062 pan_sys_once



In modtwo.ko it is undefined
0000000000000000         *UND*  0000000000000000 pan_sys_once


Note the objdump on freebsd 7.2, is identical. So it is defined in the
module1 as F(function), and undefined(UND) in module two.

Any suggestion, please ?

Thanks,
-prokash


_______________________________________________
freebsd-toolchain@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-toolchain
To unsubscribe, send any mail to "freebsd-toolchain-unsubscr...@freebsd.org"

Reply via email to