Fwd: KLD: program.ko: depends of kernel - no avaiable
John Baldwin
jhb at freebsd.org
Wed Jan 28 12:41:04 PST 2009
On Wednesday 28 January 2009 10:40:20 am Jacky Oh wrote:
> hi everyone,
>
> the main goal of KLD are load code for executing as part of kernel at
> run-time, so, i don't think that rebuild the kernel are a good solution..
> In other way a try to load any dev/syscall example at
> /usr/share/examples/kld the result was the same..
> When i was thinking in S. Sedov reply about the undefined symbols i go to
> run objdump for my syscall.ko and i can find the following:
> # objdump -x syscall.ko
> ...
> 000019d4 l O .data 00000010 M_DIRP2_uninit_sys_uninit
> 0000094c l O set_sysinit_set 00000004
> __set_sysinit_set_sym_M_DIRP2_init_sys_init
> 000019e4 l O .data 00000010 M_DIRP2_init_sys_init
> 000019f4 l O .data 0000000c syscall_mod
> 00001a00 l O .data 0000000c _syscall_depend_on_kernel <------
> 00001a20 l O .data 00000028 syscall_syscall_mod
> 00001a48 l O .data 00000004 offset
> ...
> The result whit the examples also shows the same symbol
> (_syscall_depend_on_kernel), so, y disassemble this function:
>
> 00001a00 <_syscall_depend_on_kernel>:
> 1a00: 3c 35 cmp $0x35,%al
> 1a02: 0c 00 or $0x0,%al
> 1a04: 3c 35 cmp $0x35,%al
> 1a06: 0c 00 or $0x0,%al
> 1a08: 9f lahf
> 1a09: bb 0d 00 00 00 mov $0xd,%ebx
> ...
>
> lahf == load status flags (EFLAGS) on ah register
>
> so, my question is, why precompiled modules (as if_ipw.ko, for example)
> don't show this function?
That is a MODULE_DEPEND() data structure, not a function.
--
John Baldwin
More information about the freebsd-hackers
mailing list