[Click] Doing some research

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


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