[Click] Compile issues on RHEL 6.4 (2.6.32)

Eddie Kohler ekohler at gmail.com
Thu Mar 14 07:47:14 EDT 2013


I assume you mean 2.0.1, not 1.0.2!!
I'll try strip -g.
Eddie


On Thu, Mar 14, 2013 at 12:31 AM, Keith Schoenefeld
<keith at schoenefeld.org> wrote:
> My apologies for the extended delay in responding.  I ended up getting
> Click 1.0.2 to compile with some modifications, but get kernel crashes
> at install with some regularity.  As best I can tell, the crashes are
> actually caused by the igb driver, not Click.  If Click installs and
> doesn't crash within the first 5 seconds, it stays rock solid.
>
> Next time I need to restart Click on this server, I'll see if the
> latest repository works for me.  As for the memory issue, I have
> always had to run strip -g on the click.ko file in order to get it to
> install.
>
> -- KS
>
> On Fri, Mar 1, 2013 at 10:47 PM, Eddie Kohler <ekohler at gmail.com> wrote:
>> Hi Keith,
>>
>> I got a look at this. There were a couple problems with that kernel
>> that our rewriting, etc. tools could not handle. I were able to fix
>> them and get a pretty clean automatic compilation. These patches are
>> committed. However, an installation attempt fails with "out of
>> memory". I haven't debugged further. Have you gotten further?
>>
>> BTW, I didn't realize you were downloading the current tarball from
>> github. You did get the latest commit, but I'd strongly advise you to
>> install git, which will make it easier to update.
>> Eddie
>>
>>
>> On Sat, Feb 23, 2013 at 2:14 PM, Keith Schoenefeld
>> <keith at schoenefeld.org> wrote:
>>> I should have said "I grabbed the latest tarball from github".  More
>>> specifically, I downloaded the tarball provided at the URI
>>> "https://github.com/kohler/click/tarball/master".  Since the directory
>>> name created when I extracted the tarball (kohler-click-6aa1787)
>>> matches the latest commit, I assumed this matched what I could obtain
>>> using git clone.  Should I install git and run a git clone just to be
>>> sure?
>>>
>>> -- KS
>>>
>>> On Sat, Feb 23, 2013 at 12:25 PM, Eddie Kohler <ekohler at gmail.com> wrote:
>>>> Just to double check for a misunderstanding: You don't grab a tarball
>>>> from git. Are you using the click-2.0.1 release, or the current git
>>>> sources, which you can obtain by `git clone` from github.com?
>>>>
>>>>
>>>> On Sat, Feb 23, 2013 at 1:11 PM, Keith Schoenefeld
>>>> <keith at schoenefeld.org> wrote:
>>>>> - My understanding is that CentOS is built using the source RPMS for
>>>>> RHEL, so CentOS 6.x would be as close to identical as possible with
>>>>> RHEL 6.x.
>>>>> - I used the stock compiler that comes with RHEL 6.4
>>>>> - I grabbed the latest tarball from git and used that, yes.
>>>>>
>>>>> I will point out that in the last 30 minutes I realized that when I
>>>>> tried to insmod click.ko (with stock click 2.0.1, which I did finally
>>>>> get to compile) without first running insmod proclikefs.ks -- once I
>>>>> did things in the right order it seems to be working (I'm finalizing a
>>>>> config right now to test).  That said, the compile issues for the
>>>>> current git versions still exist, and I'd much rather be running up to
>>>>> date code than stock 2.0.1.  Thanks for the quick response.
>>>>>
>>>>> -- KS
>>>>>
>>>>> On Sat, Feb 23, 2013 at 11:34 AM, Eddie Kohler <ekohler at gmail.com> wrote:
>>>>>> Hi Keith, sorry for the errors.
>>>>>>
>>>>>> Some questions, since I don't have RHEL to test.
>>>>>> —Is there a Fedora/Centos version that corresponds?
>>>>>> —Specific compiler version?
>>>>>> —Most importantly, have you tried with current git?
>>>>>>
>>>>>> Eddie
>>>>>>
>>>>>>
>>>>>> On Fri, Feb 22, 2013 at 11:41 PM, Keith Schoenefeld
>>>>>> <keith at schoenefeld.org> wrote:
>>>>>>> I'm running RHEL 6.4 with a RedHat kernel.  I've worked through
>>>>>>> various compile issues working on the 2.0.1 release code, including
>>>>>>> having to recompile the kernel from source with NR_CPUS set to 8
>>>>>>> instead of 4096, adding the NETREG line to fixincludes.pl, etc.  I
>>>>>>> have 2.0.1 compiling now with no issues, but once I install and run
>>>>>>> insmod click.ko I get the error "insmod: error inserting 'click.ko':
>>>>>>> -1 Cannot allocate memory".  I tried running strip -g as suggested in
>>>>>>> another post, but then I get "insmod: error inserting 'click.ko': -1
>>>>>>> Unknown symbol in module".  I've also tried using the latest git
>>>>>>> repository.  Using the following configure command:
>>>>>>>
>>>>>>> ./configure --prefix=/opt/click-kohler-6aa1787 --disable-userlevel
>>>>>>> --enable-multithread
>>>>>>>
>>>>>>> I end up with the following errors (I ran make once to compile
>>>>>>> everything that would compile, then again to just get the list of
>>>>>>> errors):
>>>>>>>
>>>>>>>
>>>>>>> # make linuxmodule
>>>>>>> make[1]: Entering directory `/root/kohler-click-6aa1787/linuxmodule'
>>>>>>> make -C /lib/modules/2.6.32-358.el6.click.x86_64/build
>>>>>>> M=/root/kohler-click-6aa1787/linuxmodule  modules
>>>>>>> make[2]: Entering directory `/usr/src/kernels/2.6.32-358.el6.click.x86_64'
>>>>>>>   CXX [M] tohost.o
>>>>>>> In file included from
>>>>>>> /root/kohler-click-6aa1787/include/click-linuxmodule/include0/linux/tcp.h:186,
>>>>>>>                  from
>>>>>>> /root/kohler-click-6aa1787/include/click-linuxmodule/include0/linux/ipv6.h:220,
>>>>>>>                  from
>>>>>>> /root/kohler-click-6aa1787/include/click-linuxmodule/include0/net/ip.h:344,
>>>>>>>                  from
>>>>>>> /root/kohler-click-6aa1787/include/click-linuxmodule/include0/net/xfrm.h:23,
>>>>>>>                  from
>>>>>>> /root/kohler-click-6aa1787/linuxmodule/../elements/linuxmodule/tohost.cc:28:
>>>>>>> /root/kohler-click-6aa1787/include/click-linuxmodule/include0/net/inet_connection_sock.h:
>>>>>>> In function ‘void inet_csk_clear_xmit_timer(sock*, int)’:
>>>>>>> /root/kohler-click-6aa1787/include/click-linuxmodule/include0/net/inet_connection_sock.h:208:
>>>>>>> error: ‘DEBUG_HASH’ was not declared in this scope
>>>>>>> /root/kohler-click-6aa1787/include/click-linuxmodule/include0/net/inet_connection_sock.h:208:
>>>>>>> error: ‘DEBUG_HASH2’ was not declared in this scope
>>>>>>> /root/kohler-click-6aa1787/include/click-linuxmodule/include0/net/inet_connection_sock.h:208:
>>>>>>> error: too many initializers for ‘_ddebug’
>>>>>>> /root/kohler-click-6aa1787/include/click-linuxmodule/include0/net/inet_connection_sock.h:
>>>>>>> In function ‘void inet_csk_reset_xmit_timer(sock*, int, long unsigned
>>>>>>> int, long unsigned int)’:
>>>>>>> /root/kohler-click-6aa1787/include/click-linuxmodule/include0/net/inet_connection_sock.h:224:
>>>>>>> error: ‘DEBUG_HASH’ was not declared in this scope
>>>>>>> /root/kohler-click-6aa1787/include/click-linuxmodule/include0/net/inet_connection_sock.h:224:
>>>>>>> error: ‘DEBUG_HASH2’ was not declared in this scope
>>>>>>> /root/kohler-click-6aa1787/include/click-linuxmodule/include0/net/inet_connection_sock.h:224:
>>>>>>> error: too many initializers for ‘_ddebug’
>>>>>>> /root/kohler-click-6aa1787/include/click-linuxmodule/include0/net/inet_connection_sock.h:241:
>>>>>>> error: ‘DEBUG_HASH’ was not declared in this scope
>>>>>>> /root/kohler-click-6aa1787/include/click-linuxmodule/include0/net/inet_connection_sock.h:241:
>>>>>>> error: ‘DEBUG_HASH2’ was not declared in this scope
>>>>>>> /root/kohler-click-6aa1787/include/click-linuxmodule/include0/net/inet_connection_sock.h:241:
>>>>>>> error: too many initializers for ‘_ddebug’
>>>>>>>   CREATE /root/kohler-click-6aa1787/linuxmodule/ksyms.c
>>>>>>> nm: 'tohost.o': No such file
>>>>>>>   CC [M] ksyms.o
>>>>>>>   LD [M]  /root/kohler-click-6aa1787/linuxmodule/click.o
>>>>>>> ld: /root/kohler-click-6aa1787/linuxmodule/tohost.o: No such file: No
>>>>>>> such file or directory
>>>>>>> make[3]: *** [/root/kohler-click-6aa1787/linuxmodule/click.o] Error 1
>>>>>>> make[2]: *** [_module_/root/kohler-click-6aa1787/linuxmodule] Error 2
>>>>>>> make[2]: Leaving directory `/usr/src/kernels/2.6.32-358.el6.click.x86_64'
>>>>>>> make[1]: *** [all] Error 2
>>>>>>> make[1]: Leaving directory `/root/kohler-click-6aa1787/linuxmodule'
>>>>>>> make: *** [linuxmodule] Error 2
>>>>>>>
>>>>>>> I'm not sure where to go with the DEBUG_HASH, DEBUG_HASH2, etc. errors
>>>>>>> and google hasn't helped me at all.  Does anyone have any
>>>>>>> recommendations for getting this working?
>>>>>>>
>>>>>>> -- KS
>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> click mailing list
>>>>>>> click at amsterdam.lcs.mit.edu
>>>>>>> https://amsterdam.lcs.mit.edu/mailman/listinfo/click



More information about the click mailing list