[Click] linking issues
Eddie Kohler
kohler at cs.ucla.edu
Mon Sep 17 16:58:48 EDT 2007
I have checked in a potential fix to this linking issue. Can people
test it to see if it works? Also please test a package, such as
etc/samplepackage, to see if that compiles.
Thanks Adam especially.
Eddie
Eddie Kohler wrote:
> Later versions of Linux appear to apply some funky code rewriting to SMP
> locks. The SMP LOCK_PREFIX compiles to not only the "lock" instruction, but
> also a special reference in the ".smp_locks" section that points to that
> instruction. When running on a uniprocessor, Linux will dynamically replace
> that "lock" byte with some sort of noop.
>
> Probably the solution is for Click to replace Linux's LOCK_PREFIX with its own
> version for its own code.
>
> Eddie
>
>
> Adam Greenhalgh wrote:
>> linux-2.6.19.2/include/asm-x86_64/alternative.h line 120 ish... is
>> what we think is causing this . I think there is an i386 version too.
>>
>> Adam
>>
>> On 9/14/07, Eddie Kohler <kohler at cs.ucla.edu> wrote:
>>> I just do not get this message ever.
>>>
>>> Help!!
>>>
>>> Eddie
>>>
>>>
>>> Roman Chertov wrote:
>>>> Hi Eddie,
>>>> I now seem to get the warning all the time. I also tried to build
>>>> with --with-linux=/lib/modules/2.6.19/build and I got the same result. I
>>>> did the usual ./configure opts, make clean, make sequence.
>>>>
>>>> Roman
>>>>
>>>> Eddie Kohler wrote:
>>>>> Hi Roman,
>>>>>
>>>>> How frustrating that you only get the warnings sometimes!
>>>>>
>>>>> So my ./configure line refers to a Linux build tree under
>>>>> /lib/modules. Have you tried a --with-linux line like that? e.g.
>>>>> --with-linux=/lib/modules/2.6.19.2-whatever/build ?
>>>>>
>>>>> Eddie
>>>>>
>>>>>
>>>>> rchertov at purdue.edu wrote:
>>>>>> Quoting Eddie Kohler <kohler at cs.ucla.edu>:
>>>>>>
>>>>>>> Hi Roman,
>>>>>>>
>>>>>>> I should have resolved this last night by adding Linux's $(CPPFLAGS)
>>>>>>> to the link line; at least it worked for Adam. Are you at HEAD?
>>>>>>> (git pull) Have you "make clean"ed?
>>>>>> Just did the git pull, make clean, and make and got the warnings.
>>>>>> Although
>>>>>> sometimes I don't get them.
>>>>>>
>>>>>> This is my config line just in case.
>>>>>> ./configure --prefix=/home/rchertov/ \
>>>>>> --with-linux=/scratch/rchertov/linux-2.6.19.2/ \
>>>>>> --enable-intel-cpu --enable-multithread=8 \
>>>>>> --disable-userlevel --enable-experimental
>>>>>>
>>>>>> Roman
>>>>>>
>>>>>>> E
>>>>>>>
>>>>>>>
>>>>>>> rchertov at purdue.edu wrote:
>>>>>>>> Hello,
>>>>>>>> I got the latest Click with git today and I am having some
>>>>>>>> interesting
>>>>>>>> messages during linking. I am not too strong on linking but these
>>>>>>> messages
>>>>>>>> imply that not all is well in the linking land. Any idea what this
>>>>>>>> could
>>>>>>> be?
>>>>>>>> CC [M] ksyms.o
>>>>>>>> LD [M] /home/rchertov/click-1.6/linuxmodule/click.o
>>>>>>>> LD [M] /home/rchertov/click-1.6/linuxmodule/proclikefs.o
>>>>>>>> ld: `.gnu.linkonce.t._ZN19ContextErrorHandlerD1Ev' referenced in
>>>>>>>> section
>>>>>>>> `.smp_locks' of /home/rchertov/click-1.6/linuxmodule/confparse.o:
>>>>>>>> defined
>>>>>>> in
>>>>>>>> discarded section `.gnu.linkonce.t._ZN19ContextErrorHandlerD1Ev' of
>>>>>>>> /home/rchertov/click-1.6/linuxmodule/confparse.o
>>>>>>>>
>>>>>>>> ld: `.gnu.linkonce.t._ZN6VectorI6StringED1Ev' referenced in section
>>>>>>> `.smp_locks'
>>>>>>>> of /home/rchertov/click-1.6/linuxmodule/lexer.o: defined in discarded
>>>>>>> section
>>>>>>>> `.gnu.linkonce.t._ZN6VectorI6StringED1Ev' of
>>>>>>>> /home/rchertov/click-1.6/linuxmodule/lexer.o
>>>>>>>>
>>>>>>>>
>>>>>>>> Thanks,
>>>>>>>>
>>>>>>>> Roman
>>>>>>>> _______________________________________________
>>>>>>>> click mailing list
>>>>>>>> click at amsterdam.lcs.mit.edu
>>>>>>>> https://amsterdam.lcs.mit.edu/mailman/listinfo/click
>>> _______________________________________________
>>> click mailing list
>>> click at amsterdam.lcs.mit.edu
>>> https://amsterdam.lcs.mit.edu/mailman/listinfo/click
>>>
> _______________________________________________
> click mailing list
> click at amsterdam.lcs.mit.edu
> https://amsterdam.lcs.mit.edu/mailman/listinfo/click
More information about the click
mailing list