[Click] Doing some research
Joonwoo Park
joonwpark81 at gmail.com
Sun Jan 30 17:00:24 EST 2011
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
More information about the click
mailing list