2009-09-29 08:57:40

by Hin-Tak Leung

[permalink] [raw]
Subject: compat-wireless tracepoint error Re: [Ndiswrapper-general] Need help to create driver for Netgear WN111v2


--- On Tue, 29/9/09, Malte Gell <[email protected]> wrote:

> "Hin-Tak Leung" <[email protected]>
> wrote
>
> > --- On Tue, 29/9/09, Malte Gell <[email protected]>
> wrote:
> > > I prefer to wait ;-) This way I can stick with
> kernel
> > > 2.6.27 and just install
> > > this package, otherwise I would have to upgrade
> my kernel,
> > > because ar9170
> > > needs kernel >= 2.6.29 as far as I know. And i
> always
> > > fear, a kernel update
> > > could break other things,
>
> > Where did you learn this from? It says bleeding-edge
> compat-wireless
> > (http://linuxwireless.org/en/users/Download#Compat-wireless_release_types)
> > requires Kernel >= 2.6.27 . and it is not a *full*
> kernel update -
>
> Yes, compat-wirless-2.6 needs kernel 2.6.27, but, the
> ar9170 driver requires
> kernel 2.6.29, below you can see the "make" output when
> building compat-
> wireless-2.6 from today on kernel 2.6.27. It is this
> tracepoint issue that
> requires kernel 2.6.29
>
> Regards
> Malte

Hmm, I see you have already posted to linux-wireless and already got your answers. Hauke has already given you the answer - your kernel tree is *not* 2.6.27(.0), and as it is obvious that you have 2.6.27.29-0.1, which is 2.6.27.29 + suse-patches. Even 2.6.27.29 is not 2.6.27(.0), but somewhat closer to 2.6.28. And you really have already had your answer - your tree is somewhat between 2.6.27 and 2.6.28, and *neither*.

My suggestion would be simply to delete all the 'error: redefinition' parts from net/compat-2.6.28.h , because you already have them in the suse tree.
You may also need to delete something from net/compat-2.6.28.c, but that will happen during the linking stage (much later).

>
>
> ./scripts/driver-select ar9170
>
> make
>
> ./scripts/gen-compat-autoconf.sh config.mk >
> include/linux/compat_autoconf.h
> make -C /lib/modules/2.6.27.29-0.1-k7/build
> M=/home/malte_gell/download/src/wifi/compat-wireless-2009-09-29
> modules
> make[1]: Entering directory `/usr/src/linux-2.6.27.29-0.1'
> LD
> /home/malte_gell/download/src/wifi/compat-
> wireless-2009-09-29/drivers/net/wireless/ath/built-in.o
> CC [M]
> /home/malte_gell/download/src/wifi/compat-
> wireless-2009-09-29/drivers/net/wireless/ath/main.o
> In file included from
> /home/malte_gell/download/src/wifi/compat-
> wireless-2009-09-29/include/net/compat.h:19,
>
> from <command-line>:0:
> /home/malte_gell/download/src/wifi/compat-
> wireless-2009-09-29/include/net/compat-2.6.28.h:152: error:
> redefinition of
> ‘struct tracepoint’
> In file included from
> /home/malte_gell/download/src/wifi/compat-
> wireless-2009-09-29/include/net/compat.h:19,
>
> from <command-line>:0:
> /home/malte_gell/download/src/wifi/compat-
> wireless-2009-09-29/include/net/compat-2.6.28.h:182:1:
> warning: "DEFINE_TRACE"
> redefined
> In file included from include/linux/module.h:19,
>
> from include/linux/textsearch.h:7,
>
> from include/linux/skbuff.h:26,
>
> from
> /home/malte_gell/download/src/wifi/compat-
> wireless-2009-09-29/include/net/compat-2.6.28.h:10,
>
> from
> /home/malte_gell/download/src/wifi/compat-
> wireless-2009-09-29/include/net/compat.h:19,
>
> from <command-line>:0:
> include/linux/tracepoint.h:86:1: warning: this is the
> location of the previous
> definition
> /home/malte_gell/download/src/wifi/compat-
> wireless-2009-09-29/include/net/compat-2.6.28.h:186: error:
> redefinition of
> ‘tracepoint_update_probe_range’
> include/linux/tracepoint.h:100: error: previous definition
> of
> ‘tracepoint_update_probe_range’ was here
> make[4]: *** [/home/malte_gell/download/src/wifi/compat-
> wireless-2009-09-29/drivers/net/wireless/ath/main.o] Fehler
> 1
> make[3]: *** [/home/malte_gell/download/src/wifi/compat-
> wireless-2009-09-29/drivers/net/wireless/ath] Fehler 2
> make[2]: *** [/home/malte_gell/download/src/wifi/compat-
> wireless-2009-09-29/drivers/net/wireless] Fehler 2
> make[1]: ***
> [_module_/home/malte_gell/download/src/wifi/compat-
> wireless-2009-09-29] Fehler 2
> make[1]: Leaving directory `/usr/src/linux-2.6.27.29-0.1'
> make: *** [modules] Fehler 2
>
>





2009-09-30 00:57:43

by Hin-Tak Leung

[permalink] [raw]
Subject: Re: compat-wireless tracepoint error Re: [Ndiswrapper-general] Need help to create driver for Netgear WN111v2

On Tue, Sep 29, 2009 at 11:17 PM, Malte Gell <[email protected]> wrote:
>
> "Hin-Tak Leung" <[email protected]> wrote
>
>>
>> Argh... try changing this line in config.mk
>>
>> ifndef CONFIG_COMPAT_WIRELESS_28
>>
>> to ...27.
>
> Hello,
>
> it was a pain with my Kernel 2.6.27.29 I now updated to kernel 2.6.31-44 (from
> openSUSE) and voila, it now works like a charm! I compiled the bleeding edge
> compat-wireless and it just works fine now! As I initially suspected, 2.6.27
> only made trouble.
>
> Regards
> Malte
>

Glad to hear.

Hin-Tak

2009-09-29 09:06:55

by Hin-Tak Leung

[permalink] [raw]
Subject: Re: compat-wireless tracepoint error Re: [Ndiswrapper-general] Need help to create driver for Netgear WN111v2

On Tue, Sep 29, 2009 at 9:58 AM, Malte Gell <[email protected]> wrote:
>
> "Hin-Tak Leung" <[email protected]> wrote
>
>> Hmm, I see you have already posted to linux-wireless and already got your
>> answers. Hauke has already given you the answer - your kernel tree is
>> *not* 2.6.27(.0), and as it is obvious that you have 2.6.27.29-0.1, which
>> is 2.6.27.29 + suse-patches. Even 2.6.27.29 is not 2.6.27(.0), but
>> somewhat closer to 2.6.28. And you really have already had your answer -
>> your tree is somewhat between 2.6.27 and 2.6.28, and *neither*.
>>
>> My suggestion would be simply to delete all the 'error: redefinition' parts
>> from net/compat-2.6.28.h , because you already have them in the suse tree.
>
> Thanx for your efforts. By the way, do I need to set CONFIG_TRACEPOINTS in the
> kernel? I just see it is _not_ set in openSUSE 11.1.

No, do *not* modify any kernel config files. You should not do that,
as the compat modules should be compiled against a correct config, as
in a config that corresponds to how your kernel was built.

>> You may also need to delete something from net/compat-2.6.28.c, but that
>> will happen during the linking stage (much later).
>
> So, no need to modify compat-2.6.28.c? Does it automatically happen?

You may or may not see any errors at the linker stage (the LD part in
stage 2). If you get to that point without further error, then, well,
count yourself lucky and just give "make install ; make unload;
modprobe -v ar9170" a go.

2009-09-29 11:07:02

by Malte Gell

[permalink] [raw]
Subject: Re: compat-wireless tracepoint error Re: [Ndiswrapper-general] Need help to create driver for Netgear WN111v2


"Hin-Tak Leung" <[email protected]> wrote

> CONFIG_COMPAT_WIRELESS_28
>

Jep, changed to 27, but, did not compile......:

/home/malte_gell/download/src/wifi/compat-
wireless-2009-09-29/drivers/net/wireless/ath/ar9170/usb.c: In function
‘ar9170_usb_cancel_urbs’:
/home/malte_gell/download/src/wifi/compat-
wireless-2009-09-29/drivers/net/wireless/ath/ar9170/usb.c:380: error: implicit
declaration of function ‘usb_poison_anchored_urbs’
make[5]: *** [/home/malte_gell/download/src/wifi/compat-
wireless-2009-09-29/drivers/net/wireless/ath/ar9170/usb.o] Fehler 1
make[4]: *** [/home/malte_gell/download/src/wifi/compat-
wireless-2009-09-29/drivers/net/wireless/ath/ar9170] Fehler 2
make[3]: *** [/home/malte_gell/download/src/wifi/compat-
wireless-2009-09-29/drivers/net/wireless/ath] Fehler 2
make[2]: *** [/home/malte_gell/download/src/wifi/compat-
wireless-2009-09-29/drivers/net/wireless] Fehler 2
make[1]: *** [_module_/home/malte_gell/download/src/wifi/compat-
wireless-2009-09-29] Fehler 2
make[1]: Leaving directory `/usr/src/linux-2.6.27.29-0.1'
make: *** [modules] Fehler 2


2009-09-29 10:28:07

by Hin-Tak Leung

[permalink] [raw]
Subject: Re: compat-wireless tracepoint error Re: [Ndiswrapper-general] Need help to create driver for Netgear WN111v2

On Tue, Sep 29, 2009 at 10:45 AM, Malte Gell <[email protected]> wrote:
>
> "Hin-Tak Leung" <[email protected]> wrote
>
>> > So, no need to modify compat-2.6.28.c? Does it automatically happen?
>>
>> You may or may not see any errors at the linker stage (the LD part in
>> stage 2). If you get to that point without further error, then, well,
>> count yourself lucky and just give "make install ; make unload;
>> modprobe -v ar9170" a go.
>
> Ho ho ;-) I got a lot of warnings like this:
>
> include/linux/tracepoint.h:86:1: warning: this is the location of the
> previous definition
>
> But, it DID compile! Thanx a lot.
>
> To be sure I did a find . -name "*.ko" and got these modules:
>
> ./drivers/net/wireless/ath/ath.ko
> ./net/rfkill/rfkill_backport.ko
> ./net/wireless/cfg80211.ko
> ./net/mac80211/mac80211.ko
>
> I just wonder, where is ar9170usb !? I did ./scripts/driver-select ar9170
>
> Malte
>

Argh... try changing this line in config.mk

ifndef CONFIG_COMPAT_WIRELESS_28

to ...27.

apparently it is disabled below 2.6.28. but then, yours is somewhere between.
------------
commit 13e9384e59b2cadaef7468f1417b9a1327419c89
Author: Luis R. Rodriguez <[email protected]>
Date: Tue Jul 21 14:43:15 2009 -0700

ar9170 works needs more compat work for 2.6.27

We leave it only enabled for >= 2.6.28,
usb_hcd_unlink_urb() is used within usb_poison_urb()
and although it is available on 2.6.27 its not exported
and cannot be re-implemented. If we figure out a way
to drop the urb from the hardware queue as usb_hcd_unlink_urb()
does then we can backport this.

Also I think we need to backport usb_kill_urb_queue().

Signed-off-by: Luis R. Rodriguez <[email protected]>
------------

2009-09-29 09:45:35

by Malte Gell

[permalink] [raw]
Subject: Re: compat-wireless tracepoint error Re: [Ndiswrapper-general] Need help to create driver for Netgear WN111v2


"Hin-Tak Leung" <[email protected]> wrote

> > So, no need to modify compat-2.6.28.c? Does it automatically happen?
>
> You may or may not see any errors at the linker stage (the LD part in
> stage 2). If you get to that point without further error, then, well,
> count yourself lucky and just give "make install ; make unload;
> modprobe -v ar9170" a go.

Ho ho ;-) I got a lot of warnings like this:

include/linux/tracepoint.h:86:1: warning: this is the location of the
previous definition

But, it DID compile! Thanx a lot.

To be sure I did a find . -name "*.ko" and got these modules:

./drivers/net/wireless/ath/ath.ko
./net/rfkill/rfkill_backport.ko
./net/wireless/cfg80211.ko
./net/mac80211/mac80211.ko

I just wonder, where is ar9170usb !? I did ./scripts/driver-select ar9170

Malte

2009-09-29 08:58:43

by Malte Gell

[permalink] [raw]
Subject: Re: compat-wireless tracepoint error Re: [Ndiswrapper-general] Need help to create driver for Netgear WN111v2


"Hin-Tak Leung" <[email protected]> wrote

> Hmm, I see you have already posted to linux-wireless and already got your
> answers. Hauke has already given you the answer - your kernel tree is
> *not* 2.6.27(.0), and as it is obvious that you have 2.6.27.29-0.1, which
> is 2.6.27.29 + suse-patches. Even 2.6.27.29 is not 2.6.27(.0), but
> somewhat closer to 2.6.28. And you really have already had your answer -
> your tree is somewhat between 2.6.27 and 2.6.28, and *neither*.
>
> My suggestion would be simply to delete all the 'error: redefinition' parts
> from net/compat-2.6.28.h , because you already have them in the suse tree.

Thanx for your efforts. By the way, do I need to set CONFIG_TRACEPOINTS in the
kernel? I just see it is _not_ set in openSUSE 11.1.

> You may also need to delete something from net/compat-2.6.28.c, but that
> will happen during the linking stage (much later).

So, no need to modify compat-2.6.28.c? Does it automatically happen?

Regards
Malte

2009-09-29 22:17:20

by Malte Gell

[permalink] [raw]
Subject: Re: compat-wireless tracepoint error Re: [Ndiswrapper-general] Need help to create driver for Netgear WN111v2


"Hin-Tak Leung" <[email protected]> wrote

>
> Argh... try changing this line in config.mk
>
> ifndef CONFIG_COMPAT_WIRELESS_28
>
> to ...27.

Hello,

it was a pain with my Kernel 2.6.27.29 I now updated to kernel 2.6.31-44 (from
openSUSE) and voila, it now works like a charm! I compiled the bleeding edge
compat-wireless and it just works fine now! As I initially suspected, 2.6.27
only made trouble.

Regards
Malte