[Click] linking issues

Roman Chertov rchertov at purdue.edu
Mon Sep 17 17:32:44 EDT 2007


Hello,
  I just did git pull, make clean, configure opts, make and got same 
warnings as before.

Roman

Eddie Kohler wrote:
> 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
> _______________________________________________
> click mailing list
> click at amsterdam.lcs.mit.edu
> https://amsterdam.lcs.mit.edu/mailman/listinfo/click
> 



More information about the click mailing list