From: "George P Nychis" <gnychis@cmu.edu>
To: "Randy.Dunlap" <rdunlap@xenotime.net>
Cc: linux-kernel@vger.kernel.org, netdev@vger.kernel.org
Subject: Re: 2.4.32: unresolved symbol unregister_qdisc
Date: Mon, 10 Apr 2006 01:03:05 -0400 (EDT) [thread overview]
Message-ID: <2841.128.2.140.234.1144645385.squirrel@128.2.140.234> (raw)
In-Reply-To: <20060409202912.22d496e7.rdunlap@xenotime.net>
> On Sun, 9 Apr 2006 23:20:01 -0400 (EDT) George P Nychis wrote:
>
>>
>>> On Sun, 9 Apr 2006 22:49:50 -0400 (EDT) George P Nychis wrote:
>>>
>>>>
>>>>> On Sun, 9 Apr 2006 22:05:33 -0400 (EDT) George P Nychis wrote:
>>>>>
>>>>>>
>>>>>>> On Sun, 9 Apr 2006 13:37:25 -0400 (EDT) George P Nychis
>>>>>>> wrote:
>>>>>>>
>>>>>>>> Thanks for the help.
>>>>>>>>
>>>>>>>> Here is the makefile:
>>>>>>>> http://rafb.net/paste/results/auchPH75.html
>>>>>>>>
>>>>>>>> And here is the full errors I receive:
>>>>>>>> http://rafb.net/paste/results/Qplpqw74.html
>>>>>>>>
>>>>>>>> Greatly appreciate it
>>>>>>>>
>>>>>>>> - George
>>>>>>>
>>>>>>> [repeat: please don't top-post]
>>>>>>>
>>>>>>> I don't know how much I can help you. It's been a long time
>>>>>>> since I've built external modules on 2.4.x.
>>>>>>>
>>>>>>> Problems that I see: - the Makefile does not use the expected
>>>>>>> 2.4 kernel build infrastructure; - kernel Makefile uses
>>>>>>> -nostdinc to prevent use of userspace headers; - Makefile is
>>>>>>> trying to include userspace headers instead of kernel headers,
>>>>>>> e.g.: In file included from /usr/include/linux/if_ether.h:107,
>>>>>>> from /usr/include/linux/netdevice.h:29, from sch_xcp.c:8: -
>>>>>>> this specified include directory is only in 2.6.x, not 2.4.x:
>>>>>>> -I/lib/modules/`uname -r`/build/include/asm/mach-default
>>>>>>>
>>>>>>> It's not clear to me how this makefile could work with 2.4.x
>>>>>>> at all. Is it supposed to, or that's just what you want to see
>>>>>>> it do?
>>>>>>>
>>>>>>>
>>>>>>> You could try to fix the Makefile based on makefile-changes
>>>>>>> articles at lwn.net. E.g.: http://lwn.net/Articles/151784/
>>>>>>> http://lwn.net/Articles/79984/ http://lwn.net/Articles/74767/
>>>>>>> http://lwn.net/Articles/69148/
>>>>>>> http://lwn.net/Articles/21823/
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>> On Sat, 8 Apr 2006 19:18:47 -0400 (EDT) George P Nychis
>>>>>>>>> wrote:
>>>>>>>>>
>>>>>>>>>> Yeah, this module is unfortunately not under the GPL,
>>>>>>>>>> it was made for research and i am not the author, I was
>>>>>>>>>> only given the code for my own research.
>>>>>>>>>>
>>>>>>>>>> I enabled that support in the kernel, and then tried to
>>>>>>>>>> recompile and get tons of errors/warnings... so maybe
>>>>>>>>>> I am missing something else to be enabled in the
>>>>>>>>>> kernel... here are a few examples of errors:
>>>>>>>>>> /usr/include/linux/skbuff.h:30:26: net/checksum.h: No
>>>>>>>>>> such file or directory /usr/include/asm/irq.h:16:25:
>>>>>>>>>> irq_vectors.h: No such file or directory
>>>>>>>>>> /usr/include/linux/irq.h:72: error: `NR_IRQS'
>>>>>>>>>> undeclared here (not in a function)
>>>>>>>>>> /usr/include/asm/hw_irq.h:28: error: `NR_IRQ_VECTORS'
>>>>>>>>>> undeclared here (not in a function)
>>>>>>>>>>
>>>>>>>>>> I think those are the top most errors, so if i can fix
>>>>>>>>>> those hopefully the rest shall vanish!
>>>>>>>>>
>>>>>>>>> Looks like a Makefile problem then. Can you post the
>>>>>>>>> Makefile? Hopefully it is using a Makefile and not just
>>>>>>>>> an elaborate gcc command line.
>>>>>>>>>
>>>>>>>>> [and please don't top-post]
>>>>>>>>>
>>>>>>>>>> - George
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>> From: "George P Nychis" <gnychis@cmu.edu> Date: Sat,
>>>>>>>>>>> 8 Apr 2006 18:47:34 -0400 (EDT)
>>>>>>>>>>>
>>>>>>>>>>>> Hey,
>>>>>>>>>>>>
>>>>>>>>>>>> I have a kernel module that uses unregister_qdisc
>>>>>>>>>>>> and register_qdisc, whenever i try to insert the
>>>>>>>>>>>> module I get:
>>>>>>>>>>>> /lib/modules/2.4.32/kernel/net/sched/sch_xcp.o:
>>>>>>>>>>>> /lib/modules/2.4.32/kernel/net/sched/sch_xcp.o:
>>>>>>>>>>>> unresolved symbol unregister_qdisc
>>>>>>>>>>>> /lib/modules/2.4.32/kernel/net/sched/sch_xcp.o:
>>>>>>>>>>>> /lib/modules/2.4.32/kernel/net/sched/sch_xcp.o:
>>>>>>>>>>>> unresolved symbol register_qdisc
>>>>>>>>>>>>
>>>>>>>>>>>> Am i missing some sort of support in the kernel?
>>>>>>>>>>>
>>>>>>>>>>> Make sure CONFIG_NET_SCHED is enabled and that you
>>>>>>>>>>> compiled your module against that kernel.
>>>>>>>>>>>
>>>>>>>>>>> Where does this sch_xcp come from? It's not in the
>>>>>>>>>>> vanilla sources.
>>>>>>>>>>>
>>>>>>>>>>> Also, please direct networking questions to the
>>>>>>>>>>> netdev@vger.kernel.org mailing list which I have
>>>>>>>>>>> added to the CC:.
>>>>>>>
>>>>>>> --- ~Randy
>>>>>>>
>>>>>>>
>>>>>>
>>>>>> By the way, if I add -I/usr/src/linux/include to the compile
>>>>>> line, it successfully compiles, however, i am back to the start:
>>>>>> lanthanum-ini src-1.0.1 # insmod sch_xcp Using
>>>>>> /lib/modules/2.4.32/kernel/net/sched/sch_xcp.o
>>>>>> /lib/modules/2.4.32/kernel/net/sched/sch_xcp.o:
>>>>>> /lib/modules/2.4.32/kernel/net/sched/sch_xcp.o: unresolved
>>>>>> symbol unregister_qdisc
>>>>>> /lib/modules/2.4.32/kernel/net/sched/sch_xcp.o:
>>>>>> /lib/modules/2.4.32/kernel/net/sched/sch_xcp.o: unresolved
>>>>>> symbol register_qdisc
>>>>>
>>>>> Yet your 2.4.32 kernel image file does have those symbols in it?
>>>>> Can you verify that by using 'nm' on the kernel image file?
>>>>>
>>>>> If so, then I suppose that you'll need to make a small module
>>>>> test case that exhibits this behavior, or just tell us where to
>>>>> get the sch_xcp files...
>>>>>
>>>>> (re-added cc: for netdev)
>>>>>
>>>>> --- ~Randy
>>>>>
>>>>>
>>>>
>>>> By kernel image, do you mean /usr/src/linux/vmlinux ? if so,
>>>> lanthanum-ini linux # nm vmlinux | grep register_qdisc c0399200 R
>>>> __kstrtab_register_qdisc c0399240 R __kstrtab_unregister_qdisc
>>>> c039ebc8 R __ksymtab_register_qdisc c039ebd0 R
>>>> __ksymtab_unregister_qdisc c02eda40 T register_qdisc c02edaf0 T
>>>> unregister_qdisc
>>>
>>> Yes. That's good, then.
>>>
>>> --- ~Randy
>>>
>>>
>>
>> *sigh* ... still getting the unresolved symbols, i totally don't get
>> it, my /usr/src/linux/vmlinux says that the symbols exist, i install
>> the kernel, reboot, and still get the same errors
>
> Yes, I understood that.
>
>> Any other way of doing this or reason i can find out whats causing
>> this?
>
> Well, one of the makefile gods can step in and spot the problem, or you
> can create a test case so that others can try to help out with it. Or
> tell us where to get the code that you are using.
>
>> thanks for your help
>
> --- ~Randy
>
>
Got it working!
Ian's suggestion worked.... i had to make clean, make mrproper, and completely build from scratch
Bahhh 2.4
Thanks for your help Randy also, and all others who responded
prev parent reply other threads:[~2006-04-10 5:03 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-04-08 22:47 George P Nychis
2006-04-08 22:54 ` David S. Miller
2006-04-08 23:18 ` George P Nychis
2006-04-08 23:37 ` Randy.Dunlap
2006-04-09 17:37 ` George P Nychis
2006-04-09 20:03 ` Randy.Dunlap
2006-04-09 20:06 ` George P Nychis
2006-04-10 2:05 ` George P Nychis
2006-04-10 2:29 ` Randy.Dunlap
2006-04-10 2:49 ` George P Nychis
2006-04-10 2:59 ` Randy.Dunlap
2006-04-10 3:20 ` George P Nychis
2006-04-10 3:29 ` Randy.Dunlap
2006-04-10 4:24 ` Willy Tarreau
2006-04-10 5:03 ` George P Nychis [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=2841.128.2.140.234.1144645385.squirrel@128.2.140.234 \
--to=gnychis@cmu.edu \
--cc=linux-kernel@vger.kernel.org \
--cc=netdev@vger.kernel.org \
--cc=rdunlap@xenotime.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®