[rt2x00-users] Unknown Symbol!

Ivo Van Doorn ivdoorn at gmail.com
Tue Jul 20 02:20:38 AEST 2010


On Mon, Jul 19, 2010 at 6:13 PM, Mohammad Abdelhadi <moh.jaser at ieee.org> wrote:
>
>
> On Sun, Jul 18, 2010 at 8:03 PM, Ivo Van Doorn <ivdoorn at gmail.com> wrote:
>>
>> Hi,
>> > On Sun, Jul 18, 2010 at 7:45 PM, Ivo Van Doorn <ivdoorn at gmail.com>
>> > wrote:
>> >>
>> >> > I am trying to call the function ( EnqueueChSwAnn ) which is written
>> >> > in
>> >> > the
>> >> > file ~/common/spectrum.c. I am trying to call it from my code that is
>> >> > written in different module in ~/common/rtmp_init.c. But, when I do
>> >> > (modprobe rt3572sta), i always get " Unknown Symbol : EnqueueChSwAnn.
>> >> > I
>> >> > also
>> >> > tried to call it using function pointers method, but that also didn't
>> >> > work!
>> >> > (I am using 2010_06_25_RT3572_Linux_STA_v2.4.0.0 driver).
>>
>> All functions which you want to be available in different modules must
>> never
>> be staticly defined. Secondly the symbol must be exported to be available.
>> In the kernel there is a macro which handles it for you:
>> EXPORT_SYMBOL
>>
>> To export a function called EnqueueChSwAnn you have to add:
>>
>> EXPORT_SYMBOL(EnqueueChSwAnn);
>>
>> in the ralink module.
>>
>> Ivo
>
>
> Hi Ivo,
>
> Thanks for your kindest reply, well I did export the symbol after I made
> sure that the function is not staticly defined but unfortunately this way
> didn't work, I even tried to call that function using a function pointer but
> that didn't work too. So, do you have any further ideas about how to solve
> this case?
>
> Thank you in advance...

How are you compiling your module?
Check the Ralink Makefile to see how to compile against the kernel
(and its modules).

Ivo




More information about the users mailing list