[Click] Doing some research

Outback Dingo outbackdingo at gmail.com
Fri Feb 11 15:21:07 EST 2011


just for fun, ive added a System.map from a WRT build, which has now gotten
me to here

checking for Linux 2.6 compilation flags... ./configure: line 9895: call:
command not found
  -I/usr/builder/devel/click-wrt/build_dir/linux-ar71xx_generic/linux-2.6.32.27/include
 -I/usr/builder/devel/click-wrt/build_dir/linux-ar71xx_generic/linux-2.6.32.27/arch/x86/include
-include
/usr/builder/devel/click-wrt/build_dir/linux-ar71xx_generic/linux-2.6.32.27/include/linux/autoconf.h
-D__KERNEL__ -Wall -Wundef  -Wno-trigraphs -fno-strict-aliasing
-Wno-format-security -fno-delete-null-pointer-checks -Os -m64  -mno-red-zone
-mcmodel=kernel  -maccumulate-outgoing-args  -DCONFIG_AS_CFI_SIGNAL_FRAME=1
-pipe -Wno-sign-compare -fno-asynchronous-unwind-tables
-fomit-frame-pointer
configure: creating C++-safe versions of Linux kernel headers (may take a
while)
checking for C++-includable kernel header files... no
checking whether long and int64_t are the same type in the Linux kernel...
yes
checking whether long long and int64_t are the same type in the Linux
kernel... yes
checking whether uintptr_t is defined in the Linux kernel... no
checking whether struct sk_buff has a security member... no
checking whether struct sk_buff has an fclone member... no
checking whether skb_shinfo has a tso_size member... no
checking whether skb_shinfo has a gso_size member... no
checking whether skb_shinfo has a ufo_size member... no
checking whether skb_shinfo has an ip6_frag_id member... no
checking for device polling kernel extension... no
checking whether skb_dst_drop is declared... no
checking whether skb_recycle is declared... no
checking whether skb_linearize is declared... no
checking whether netif_receive_skb has been extended... no
checking whether net_enable_timestamp is declared... no
checking whether netif_tx_lock is declared... no
checking whether netdev_get_tx_queue is declared... no
checking whether netif_tx_queue_frozen is declared... no
checking whether netdev_uses_dsa_tags is declared... no
checking whether netdev_uses_trailer_tags is declared... no
configure: WARNING:
=========================================

Your Linux kernel header files cause errors when included by a C++ program,
so I won't try to compile the linuxmodule driver.

There are two common reasons for this error:
1. You have not applied the Linux kernel patch that comes with this
   distribution.  Apply the right patch and try again.  See the INSTALL
   file for more information.
2. Your Linux configuration enables some functionality that is not yet
   covered by our patches.  Turn off this functionality and try again,
   or fix the error and tell us how you did it.  See the config.log file
   for more detailed information on the error.

=========================================
checking for a BSD-compatible install... /usr/bin/install -c
checking whether install accepts -C... yes
checking for GNU make... make


On Fri, Feb 11, 2011 at 3:15 PM, Outback Dingo <outbackdingo at gmail.com>wrote:

> Part of the problem is that, the kernel itself, or System.map arent created
> as of package building time on OpenWRT
> It would seem a futile process to get a linux kernel module built using
> click on OpenWRT, id think unless doing a native
> build under OpenWRT itself.....
>
>
> On Fri, Feb 11, 2011 at 2:08 PM, Bobby Longpocket <
> bobbylongpocket at yahoo.com> wrote:
>
>> Dingo:
>>
>> I have no idea whether this will get you anywhere useful, but...
>>
>> I think Click is just using the System.map file to figure out what
>> features are supported in your kernel.  Linux makes this file by running
>> 'nm' on the vmlinux file, which you can see in scripts/mksysmap.
>>
>> nm -n <your-vmlinux-file> | grep -v '\( [aUw] \)\|\(__crc_\)\|\(
>> \$[adt]\)' > System.map
>>
>>
>> --- On Thu, 2/10/11, Outback Dingo <outbackdingo at gmail.com> wrote:
>>
>> From: Outback Dingo <outbackdingo at gmail.com>
>> Subject: Re: [Click] Doing some research
>> To: "Joonwoo Park" <joonwpark81 at gmail.com>
>> Cc: "Bobby Longpocket" <bobbylongpocket at yahoo.com>,
>> click at pdos.csail.mit.edu
>> Date: Thursday, February 10, 2011, 3:19 PM
>>
>> Okay, have actually gotten further, however on the mips target i am
>> working there is no System.map
>> Can't find Linux System.map file /nonexistent_file, (You may need the
>> --with-linux=DIR and/or --with-linux-map=MAP options.) ok closer
>>
>> userand builds and works fine, however we want kernel module capabilities,
>> any ideas around this?
>>
>> On Sun, Jan 30, 2011 at 11:32 PM, Joonwoo Park <joonwpark81 at gmail.com>
>> wrote:
>>
>> Hi Bobby,
>>
>>
>>
>> Ah... my bad.  Yours were right.
>>
>> For some reason I got an impression that 'pslot' is being passed to
>>
>> rcuupdate not '*pslot'.
>>
>> Thanks for correcting me.
>>
>>
>>
>> Joonwoo
>>
>>
>>
>> On Sun, Jan 30, 2011 at 6:25 PM, Bobby Longpocket
>>
>> <bobbylongpocket at yahoo.com> wrote:
>>
>> > No, that's not the correct fix.  The original fix was just a cast and
>> had no effect other than to appease the compiler.  Your proposed fix makes
>> the code do something different.
>>
>> >
>>
>> >
>>
>> > --- On Sun, 1/30/11, Joonwoo Park <joonwpark81 at gmail.com> wrote:
>>
>> >
>>
>> >> From: Joonwoo Park <joonwpark81 at gmail.com>
>>
>> >> Subject: Re: [Click] Doing some research
>>
>> >> To: "Bobby Longpocket" <bobbylongpocket at yahoo.com>, "Outback Dingo" <
>> outbackdingo at gmail.com>
>>
>>
>> >> Cc: click at pdos.csail.mit.edu
>>
>> >> Date: Sunday, January 30, 2011, 2:00 PM
>>
>> >> Hi,
>>
>> >>
>>
>> >> Presumably this wouldn't affect to anything as radix tree
>>
>> >> is not being used anyware from click.  But it seems to
>>
>> >> me below is correct fix.
>>
>> >> 150c150
>>
>> >> <       return
>>
>> >> rcu_dereference(*pslot);
>>
>> >> ---
>>
>> >> >       return (void
>>
>> >> *)rcu_dereference(*(int **)&pslot);
>>
>> >> 176c176
>>
>> >> <
>>
>> >>    rcu_assign_pointer(*pslot, item);
>>
>> >> ---
>>
>> >> >
>>
>> >>    rcu_assign_pointer(*(int **)&pslot,
>>
>> >> (int *)item);
>>
>> >>
>>
>> >> Dingo, if you have chance, please try patch serise that I
>>
>> >> posted yesterday.  It should work with linux 2.6.37.
>>
>> >>
>>
>> >> Joonwoo
>>
>> >>
>>
>> >> On Mon, Jan 24, 2011 at 10:33:57PM -0800, Bobby Longpocket
>>
>> >> wrote:
>>
>> >> > Dingo:
>>
>> >> >
>>
>> >> > Click patchless has a problem with 2.6.37.  In
>>
>> >> radix-tree.h there's a call to a macro that ends up trying
>>
>> >> to dereference a void*.  The C++ compiler doesn't like
>>
>> >> this.  You can apply the following changes to
>>
>> >> click/include/click-linuxmodule/include1/linux/radix-tree.h
>>
>> >> to make more progress with your compilation:
>>
>> >> >
>>
>> >> > 150c150
>>
>> >> > <     return
>>
>> >> rcu_dereference(*pslot);
>>
>> >> > ---
>>
>> >> > >     return (void
>>
>> >> *)rcu_dereference(*(int **)pslot);
>>
>> >> > 176c176
>>
>> >> > <     rcu_assign_pointer(*pslot,
>>
>> >> item);
>>
>> >> > ---
>>
>> >> > >     rcu_assign_pointer(*(int
>>
>> >> **)pslot, (int *)item);
>>
>> >> >
>>
>> >> >
>>
>> >> >
>>
>> >> > ----------------
>>
>> >> > as for linux-2.6.37, any ideas ? and another note how
>>
>> >> does one enable
>>
>> >> > elements --enable-wifi (./configure --fix-includes
>>
>> >> --enable-wifi ) ??
>>
>> >> >
>>
>> >> > today i cloned latest source from https://github.com/kohler/click
>>
>> >> >
>>
>> >> > cd click
>>
>> >> > ./configure --fix-includes
>>
>> >> >
>>
>> >> > all seems fine
>>
>> >> >
>>
>> >> > make
>>
>> >> > --------snip----------
>>
>> >> > In file included from
>>
>> >> >
>>
>> >>
>> /usr/builder/devel/click/include/click-linuxmodule/include1/linux/fs.h:392:0,
>>
>> >> >
>>
>> >>   from
>>
>> >> /usr/builder/devel/click/linuxmodule/../lib/ino.cc:30:
>>
>> >> >
>>
>> >>
>> /usr/builder/devel/click/include/click-linuxmodule/include1/linux/radix-tree.h:
>>
>> >> > In function ‘void*
>>
>> >> radix_tree_deref_slot(void**)’:
>>
>> >> >
>>
>> >>
>> /usr/builder/devel/click/include/click-linuxmodule/include1/linux/radix-tree.h:150:9:
>>
>> >> > error: ‘void*’ is not a pointer-to-object type
>>
>> >> >
>>
>> >>
>> /usr/builder/devel/click/include/click-linuxmodule/include1/linux/radix-tree.h:150:9:
>>
>> >> > error: invalid type in declaration before ‘=’
>>
>> >> token
>>
>> >> >
>>
>> >> >
>>
>> >> >
>>
>> >> >
>>
>> >> >
>>
>> >> > _______________________________________________
>>
>> >> > click mailing list
>>
>> >> > click at amsterdam.lcs.mit.edu
>>
>> >> > https://amsterdam.lcs.mit.edu/mailman/listinfo/click
>>
>> >>
>>
>> >
>>
>> >
>>
>> >
>>
>> >
>>
>>
>>
>>
>>
>>
>>
>>
>> ____________________________________________________________________________________
>> Food fight? Enjoy some healthy debate
>> in the Yahoo! Answers Food & Drink Q&A.
>> http://answers.yahoo.com/dir/?link=list&sid=396545367
>>
>
>


More information about the click mailing list