Skip to contentSkip to conversation

compat-wireless-2.6.35-rc6 won't build

DISCUSSION Carlos Salvador Pérez Salgado 3 participants 9 messages Aug 31, 2010 – Sep 15, 2010

lore
Share & tools
lore
#0 lore raw
Quoted 47 lines · Luis R. Rodriguez

2010/8/31 Carlos Salvador Pérez Salgado<[email protected]>:

Quoted 46 lines

Greetings

I hope you can point me into the right direction.

I've already tried this patch
http://trac.pentoo.ch/browser/portage/trunk/net-wireless/compat-wireless/files/WEXT-EXT-nuts.patch

#make clean&& ./scripts/driver-select atheros&& make

make[1]: Entering directory `/media/disk/temp/linux-2.6.35.4' CLEAN /media/disk/temp/compat-wireless-2.6.35-rc6
CLEAN /media/disk/temp/compat-wireless-2.6.35-rc6/.tmp_versions make[1]: Leaving directory `/media/disk/temp/linux-2.6.35.4' Processing new driver-select request...
Backing up makefile: Makefile.bk
Backup exists: drivers/net/wireless/Makefile.bk
Backup exists: net/wireless/Makefile.bk
Backup exists: drivers/net/Makefile.bk
Backup exists: drivers/ssb/Makefile.bk
Backup exists: drivers/misc/eeprom/Makefile.bk ./scripts/gen-compat-autoconf.sh config.mk> include/linux/compat_autoconf.h make -C /lib/modules/2.6.35.4-k8/build M=/media/disk/temp/compat-wireless-2.6.35-rc6 modules
make[1]: Entering directory `/media/disk/temp/linux-2.6.35.4'
LD /media/disk/temp/compat-wireless-2.6.35-rc6/compat/built-in.o CC [M] /media/disk/temp/compat-wireless-2.6.35-rc6/compat/main.o

...

CC [M] /media/disk/temp/compat-wireless-2.6.35-rc6/net/wireless/core.o /media/disk/temp/compat-wireless-2.6.35-rc6/net/wireless/core.c: In function ‘cfg80211_netdev_notifier_call’:
/media/disk/temp/compat-wireless-2.6.35-rc6/net/wireless/core.c:703: error:
‘struct net_device’ has no member named ‘wireless_handlers’ /media/disk/temp/compat-wireless-2.6.35-rc6/net/wireless/core.c:704: error:
‘struct net_device’ has no member named ‘wireless_handlers’ make[3]: *** [/media/disk/temp/compat-wireless-2.6.35-rc6/net/wireless/core.o] Error 1 make[2]: *** [/media/disk/temp/compat-wireless-2.6.35-rc6/net/wireless] Error 2
make[1]: *** [_module_/media/disk/temp/compat-wireless-2.6.35-rc6] Error 2 make[1]: Leaving directory `/media/disk/temp/linux-2.6.35.4'
make: *** [modules] Error 2

Quoted 9 lines
Quoted 4 lines

Thanks.

I'm using ubuntu lucid, custom kernel 2.6.35.4 in an AMD Turion X2 64 bits. Using CFLAGS="-march=k8 -msse3 -O3"

Why are you building compat-wireless-2.6.35-rc6 when you already ahve 2.6.35.4? You realize this is 100% pointless, right?

Luis

Hi Luis.

Because atheros wireless card is not injecting packets using aircrack, and the power is lower comparing it with older kerneles. I use to install ath5k modules compiled from compat-wireless-2.6.32.11 when I was using linux-image-2.6.32-24-generic and that worked for me. Do you have a better idea of how can I fix that? I'll really appreciate it.
Thanks.

#1 lore raw

2010/8/31 Carlos Salvador Pérez Salgado <[email protected]>:

Quoted 1 line

Do you have a better idea of how can I fix that? I'll really appreciate it.

Yeah, try to compat-wireless-2.6.36-rc2 ...

Luis

#2 lore raw
Quoted 9 lines · Luis R. Rodriguez

2010/8/31 Carlos Salvador Pérez Salgado<[email protected]>:

Quoted 2 lines

Do you have a better idea of how can I fix that? I'll really appreciate it.

Yeah, try to compat-wireless-2.6.36-rc2 ...

Luis

Nope... the same error...

LD
/media/disk/temp/compat-wireless-2.6.36-rc2-1/net/rfkill/built-in.o
LD
/media/disk/temp/compat-wireless-2.6.36-rc2-1/net/wireless/built-in.o
CC [M] /media/disk/temp/compat-wireless-2.6.36-rc2-1/net/wireless/core.o
/media/disk/temp/compat-wireless-2.6.36-rc2-1/net/wireless/core.c: In function ‘cfg80211_netdev_notifier_call’:
/media/disk/temp/compat-wireless-2.6.36-rc2-1/net/wireless/core.c:705: error: ‘struct net_device’ has no member named ‘wireless_handlers’ /media/disk/temp/compat-wireless-2.6.36-rc2-1/net/wireless/core.c:706: error: ‘struct net_device’ has no member named ‘wireless_handlers’ make[3]: *** [/media/disk/temp/compat-wireless-2.6.36-rc2-1/net/wireless/core.o] Error 1
make[2]: *** [/media/disk/temp/compat-wireless-2.6.36-rc2-1/net/wireless] Error 2
make[1]: *** [_module_/media/disk/temp/compat-wireless-2.6.36-rc2-1] Error 2
make[1]: Leaving directory `/media/disk/temp/linux-2.6.35.4'
make: *** [modules] Error 2

That didn't help. I hope you can give me another idea. Thanks.

#3 lore raw
Quoted 25 lines · Carlos Salvador Pérez Salgado
Quoted 6 lines · Luis R. Rodriguez

2010/8/31 Carlos Salvador Pérez Salgado<[email protected]>:

Quoted 1 line

Do you have a better idea of how can I fix that? I'll really appreciate it.

Yeah, try to compat-wireless-2.6.36-rc2 ...

Luis

Nope... the same error...

LD
/media/disk/temp/compat-wireless-2.6.36-rc2-1/net/rfkill/built-in.o
LD
/media/disk/temp/compat-wireless-2.6.36-rc2-1/net/wireless/built-in.o
CC [M]
/media/disk/temp/compat-wireless-2.6.36-rc2-1/net/wireless/core.o /media/disk/temp/compat-wireless-2.6.36-rc2-1/net/wireless/core.c: In function ‘cfg80211_netdev_notifier_call’:
/media/disk/temp/compat-wireless-2.6.36-rc2-1/net/wireless/core.c:705: error: ‘struct net_device’ has no member named ‘wireless_handlers’ /media/disk/temp/compat-wireless-2.6.36-rc2-1/net/wireless/core.c:706: error: ‘struct net_device’ has no member named ‘wireless_handlers’ make[3]: *** [/media/disk/temp/compat-wireless-2.6.36-rc2-1/net/wireless/core.o] Error 1
make[2]: *** [/media/disk/temp/compat-wireless-2.6.36-rc2-1/net/wireless] Error 2
make[1]: *** [_module_/media/disk/temp/compat-wireless-2.6.36-rc2-1] Error 2
make[1]: Leaving directory `/media/disk/temp/linux-2.6.35.4'
make: *** [modules] Error 2

Quoted 2 lines

That didn't help. I hope you can give me another idea. Thanks.

So...? What should I do?

#4 lore raw

2010/9/1 Carlos Salvador Pérez Salgado <[email protected]>:

Quoted 36 lines · Carlos Salvador Pérez Salgado
Quoted 35 lines · Luis R. Rodriguez
Quoted 10 lines

2010/8/31 Carlos Salvador Pérez Salgado<[email protected]>:

Quoted 3 lines

Do you have a better idea of how can I fix that? I'll really appreciate it.

Yeah, try to compat-wireless-2.6.36-rc2 ...

  Luis

Nope... the same error...

 LD /media/disk/temp/compat-wireless-2.6.36-rc2-1/net/rfkill/built-in.o LD /media/disk/temp/compat-wireless-2.6.36-rc2-1/net/wireless/built-in.o CC [M]  /media/disk/temp/compat-wireless-2.6.36-rc2-1/net/wireless/core.o /media/disk/temp/compat-wireless-2.6.36-rc2-1/net/wireless/core.c: In function ‘cfg80211_netdev_notifier_call’:
/media/disk/temp/compat-wireless-2.6.36-rc2-1/net/wireless/core.c:705:
error: ‘struct net_device’ has no member named ‘wireless_handlers’ /media/disk/temp/compat-wireless-2.6.36-rc2-1/net/wireless/core.c:706:
error: ‘struct net_device’ has no member named ‘wireless_handlers’ make[3]: *** [/media/disk/temp/compat-wireless-2.6.36-rc2-1/net/wireless/core.o] Error 1 make[2]: *** [/media/disk/temp/compat-wireless-2.6.36-rc2-1/net/wireless] Error 2
make[1]: *** [_module_/media/disk/temp/compat-wireless-2.6.36-rc2-1] Error 2
make[1]: Leaving directory `/media/disk/temp/linux-2.6.35.4'
make: *** [modules] Error 2

Quoted 4 lines
Quoted 2 lines

That didn't help. I hope you can give me another idea. Thanks.

So...? What should I do?

Sorry, I have not have had time to test compile against 2.6.35, but when I do I will let you know.

Luis

#5 lore raw

Am 02.09.2010 09:17, schrieb Luis R. Rodriguez:

Quoted 40 lines

2010/9/1 Carlos Salvador Pérez Salgado <[email protected]>:

Quoted 39 lines · Carlos Salvador Pérez Salgado
Quoted 37 lines · Luis R. Rodriguez
Quoted 10 lines

2010/8/31 Carlos Salvador Pérez Salgado<[email protected]>:

Quoted 3 lines

Do you have a better idea of how can I fix that? I'll really appreciate it.

Yeah, try to compat-wireless-2.6.36-rc2 ...

Luis

Nope... the same error...

LD /media/disk/temp/compat-wireless-2.6.36-rc2-1/net/rfkill/built-in.o LD /media/disk/temp/compat-wireless-2.6.36-rc2-1/net/wireless/built-in.o CC [M] /media/disk/temp/compat-wireless-2.6.36-rc2-1/net/wireless/core.o
/media/disk/temp/compat-wireless-2.6.36-rc2-1/net/wireless/core.c: In function ‘cfg80211_netdev_notifier_call’:
/media/disk/temp/compat-wireless-2.6.36-rc2-1/net/wireless/core.c:705:
error: ‘struct net_device’ has no member named ‘wireless_handlers’ /media/disk/temp/compat-wireless-2.6.36-rc2-1/net/wireless/core.c:706:
error: ‘struct net_device’ has no member named ‘wireless_handlers’ make[3]: *** [/media/disk/temp/compat-wireless-2.6.36-rc2-1/net/wireless/core.o] Error 1 make[2]: *** [/media/disk/temp/compat-wireless-2.6.36-rc2-1/net/wireless] Error 2
make[1]: *** [_module_/media/disk/temp/compat-wireless-2.6.36-rc2-1] Error 2
make[1]: Leaving directory `/media/disk/temp/linux-2.6.35.4'
make: *** [modules] Error 2

That didn't help. I hope you can give me another idea. Thanks.

Quoted 6 lines
Quoted 1 line

So...? What should I do?

Sorry, I have not have had time to test compile against 2.6.35, but when I do I will let you know.

Luis

Hi,

I was able to reproduce the problem. In the kernel configuration CONFIG_WIRELESS_EXT=n and CONFIG_CFG80211_WEXT=y are set. compat-wireless uses the old wireless_handlers attribute for the wext handlers interface, but this is only activated if CONFIG_WIRELESS_EXT=y is set.
We can not use the new interface through struct wiphy that cfg80211_wext normally uses. The struct is shipped by compat-wireless and changed ofter with different kernel versions, so the pointers do not point to the correct position when using two different versions of this strcut. compat-wireless should *always* deactivates CONFIG_CFG80211_WEXT if CONFIG_WIRELESS_EXT is not set. I got our compat_autoconf.h to overwirte the kernels autoconf.h by add it to LINUXINCLUDE, but I have not found a way how to disable CONFIG_WIRELESS_EXT in the makefile if it was set in the kernel because config.mk is pared before the kernel configuration is parsed. An other way would be to rename CONFIG_WIRELESS_EXT to something else in compat-wireless to prevent the kernel from overwriting this value.

There will be no way to support cfg80211_wext without a kernel configured with CONFIG_CFG80211_WEXT=y.

Hauke

#6 lore raw
Quoted 70 lines · Hauke Mehrtens

Am 02.09.2010 09:17, schrieb Luis R. Rodriguez:

Quoted 42 lines

2010/9/1 Carlos Salvador Pérez Salgado<[email protected]>:

Quoted 40 lines · Carlos Salvador Pérez Salgado
Quoted 39 lines · Luis R. Rodriguez
Quoted 11 lines

2010/8/31 Carlos Salvador Pérez Salgado<[email protected]>:

Quoted 3 lines

Do you have a better idea of how can I fix that? I'll really appreciate it.

Yeah, try to compat-wireless-2.6.36-rc2 ...

Luis

Nope... the same error...

LD /media/disk/temp/compat-wireless-2.6.36-rc2-1/net/rfkill/built-in.o LD /media/disk/temp/compat-wireless-2.6.36-rc2-1/net/wireless/built-in.o CC [M] /media/disk/temp/compat-wireless-2.6.36-rc2-1/net/wireless/core.o
/media/disk/temp/compat-wireless-2.6.36-rc2-1/net/wireless/core.c: In function ‘cfg80211_netdev_notifier_call’:
/media/disk/temp/compat-wireless-2.6.36-rc2-1/net/wireless/core.c:705:
error: ‘struct net_device’ has no member named ‘wireless_handlers’ /media/disk/temp/compat-wireless-2.6.36-rc2-1/net/wireless/core.c:706:
error: ‘struct net_device’ has no member named ‘wireless_handlers’ make[3]: *** [/media/disk/temp/compat-wireless-2.6.36-rc2-1/net/wireless/core.o] Error 1 make[2]: *** [/media/disk/temp/compat-wireless-2.6.36-rc2-1/net/wireless] Error 2
make[1]: *** [_module_/media/disk/temp/compat-wireless-2.6.36-rc2-1] Error 2
make[1]: Leaving directory `/media/disk/temp/linux-2.6.35.4'
make: *** [modules] Error 2

That didn't help. I hope you can give me another idea. Thanks.

Quoted 7 lines
Quoted 2 lines

So...? What should I do?

Sorry, I have not have had time to test compile against 2.6.35, but when I do I will let you know.

Luis

Hi,

I was able to reproduce the problem. In the kernel configuration CONFIG_WIRELESS_EXT=n and CONFIG_CFG80211_WEXT=y are set. compat-wireless uses the old wireless_handlers attribute for the wext handlers interface, but this is only activated if CONFIG_WIRELESS_EXT=y is set.
We can not use the new interface through struct wiphy that cfg80211_wext normally uses. The struct is shipped by compat-wireless and changed ofter with different kernel versions, so the pointers do not point to the correct position when using two different versions of this strcut. compat-wireless should *always* deactivates CONFIG_CFG80211_WEXT if CONFIG_WIRELESS_EXT is not set. I got our compat_autoconf.h to overwirte the kernels autoconf.h by add it to LINUXINCLUDE, but I have not found a way how to disable CONFIG_WIRELESS_EXT in the makefile if it was set in the kernel because config.mk is pared before the kernel configuration is parsed. An other way would be to rename CONFIG_WIRELESS_EXT to something else in compat-wireless to prevent the kernel from overwriting this value.

Quoted 6 lines

There will be no way to support cfg80211_wext without a kernel configured with CONFIG_CFG80211_WEXT=y.

Hauke

So, as far as I got it, it won't work until a patch is submitted in compat-wireless? I'll try to build my kernel using the config you suggested and I'll tell you how does it goes. Thanks.

#7 lore raw
In reply to Hauke Mehrtens
Quoted 70 lines · Hauke Mehrtens

Am 02.09.2010 09:17, schrieb Luis R. Rodriguez:

Quoted 42 lines

2010/9/1 Carlos Salvador Pérez Salgado<[email protected]>:

Quoted 40 lines · Carlos Salvador Pérez Salgado
Quoted 39 lines · Luis R. Rodriguez
Quoted 11 lines

2010/8/31 Carlos Salvador Pérez Salgado<[email protected]>:

Quoted 3 lines

Do you have a better idea of how can I fix that? I'll really appreciate it.

Yeah, try to compat-wireless-2.6.36-rc2 ...

Luis

Nope... the same error...

LD /media/disk/temp/compat-wireless-2.6.36-rc2-1/net/rfkill/built-in.o LD /media/disk/temp/compat-wireless-2.6.36-rc2-1/net/wireless/built-in.o CC [M] /media/disk/temp/compat-wireless-2.6.36-rc2-1/net/wireless/core.o
/media/disk/temp/compat-wireless-2.6.36-rc2-1/net/wireless/core.c: In function ‘cfg80211_netdev_notifier_call’:
/media/disk/temp/compat-wireless-2.6.36-rc2-1/net/wireless/core.c:705:
error: ‘struct net_device’ has no member named ‘wireless_handlers’ /media/disk/temp/compat-wireless-2.6.36-rc2-1/net/wireless/core.c:706:
error: ‘struct net_device’ has no member named ‘wireless_handlers’ make[3]: *** [/media/disk/temp/compat-wireless-2.6.36-rc2-1/net/wireless/core.o] Error 1 make[2]: *** [/media/disk/temp/compat-wireless-2.6.36-rc2-1/net/wireless] Error 2
make[1]: *** [_module_/media/disk/temp/compat-wireless-2.6.36-rc2-1] Error 2
make[1]: Leaving directory `/media/disk/temp/linux-2.6.35.4'
make: *** [modules] Error 2

That didn't help. I hope you can give me another idea. Thanks.

Quoted 7 lines
Quoted 2 lines

So...? What should I do?

Sorry, I have not have had time to test compile against 2.6.35, but when I do I will let you know.

Luis

Hi,

I was able to reproduce the problem. In the kernel configuration CONFIG_WIRELESS_EXT=n and CONFIG_CFG80211_WEXT=y are set. compat-wireless uses the old wireless_handlers attribute for the wext handlers interface, but this is only activated if CONFIG_WIRELESS_EXT=y is set.
We can not use the new interface through struct wiphy that cfg80211_wext normally uses. The struct is shipped by compat-wireless and changed ofter with different kernel versions, so the pointers do not point to the correct position when using two different versions of this strcut. compat-wireless should *always* deactivates CONFIG_CFG80211_WEXT if CONFIG_WIRELESS_EXT is not set. I got our compat_autoconf.h to overwirte the kernels autoconf.h by add it to LINUXINCLUDE, but I have not found a way how to disable CONFIG_WIRELESS_EXT in the makefile if it was set in the kernel because config.mk is pared before the kernel configuration is parsed. An other way would be to rename CONFIG_WIRELESS_EXT to something else in compat-wireless to prevent the kernel from overwriting this value.

Quoted 6 lines

There will be no way to support cfg80211_wext without a kernel configured with CONFIG_CFG80211_WEXT=y.

Hauke

After searching over the web I found this...
http://bugs.gentoo.org/show_bug.cgi?format=multiple&id=332817 <http://bugs.gentoo.org/show_bug.cgi?format=multiple&id=332817>
and now I was able to build the compat driver.

But... It did not solved my problem, even with the new compat drivers I got fixed channel -1 on mon0 using aircrack. Is there a patch for this newer versions that fixes this?

#8 lore raw
Quoted 68 lines · Carlos Salvador Pérez Salgado
Quoted 67 lines · Hauke Mehrtens

Am 02.09.2010 09:17, schrieb Luis R. Rodriguez:

Quoted 37 lines

2010/9/1 Carlos Salvador Pérez Salgado<[email protected]>:

Quoted 36 lines · Carlos Salvador Pérez Salgado
Quoted 35 lines · Luis R. Rodriguez
Quoted 7 lines

2010/8/31 Carlos Salvador Pérez Salgado<[email protected]>:

Quoted 2 lines

Do you have a better idea of how can I fix that? I'll really appreciate it.

Yeah, try to compat-wireless-2.6.36-rc2 ...

Luis

Nope... the same error...

LD /media/disk/temp/compat-wireless-2.6.36-rc2-1/net/rfkill/built-in.o LD

/media/disk/temp/compat-wireless-2.6.36-rc2-1/net/wireless/built-in.o
CC [M]
/media/disk/temp/compat-wireless-2.6.36-rc2-1/net/wireless/core.o /media/disk/temp/compat-wireless-2.6.36-rc2-1/net/wireless/core.c: In function ‘cfg80211_netdev_notifier_call’:
/media/disk/temp/compat-wireless-2.6.36-rc2-1/net/wireless/core.c:705:

error: ‘struct net_device’ has no member named ‘wireless_handlers’ /media/disk/temp/compat-wireless-2.6.36-rc2-1/net/wireless/core.c:706:

error: ‘struct net_device’ has no member named ‘wireless_handlers’ make[3]: *** [/media/disk/temp/compat-wireless-2.6.36-rc2-1/net/wireless/core.o] Error 1 make[2]: *** [/media/disk/temp/compat-wireless-2.6.36-rc2-1/net/wireless] Error 2
make[1]: *** [_module_/media/disk/temp/compat-wireless-2.6.36-rc2-1] Error 2
make[1]: Leaving directory `/media/disk/temp/linux-2.6.35.4'
make: *** [modules] Error 2

Quoted 7 lines
Quoted 3 lines
Quoted 2 lines

That didn't help. I hope you can give me another idea. Thanks.

So...? What should I do?

Sorry, I have not have had time to test compile against 2.6.35, but when I do I will let you know.

Luis

Hi,

I was able to reproduce the problem. In the kernel configuration CONFIG_WIRELESS_EXT=n and CONFIG_CFG80211_WEXT=y are set. compat-wireless uses the old wireless_handlers attribute for the wext handlers interface, but this is only activated if CONFIG_WIRELESS_EXT=y is set.
We can not use the new interface through struct wiphy that cfg80211_wext normally uses. The struct is shipped by compat-wireless and changed ofter with different kernel versions, so the pointers do not point to the correct position when using two different versions of this strcut. compat-wireless should *always* deactivates CONFIG_CFG80211_WEXT if CONFIG_WIRELESS_EXT is not set. I got our compat_autoconf.h to overwirte the kernels autoconf.h by add it to LINUXINCLUDE, but I have not found a way how to disable CONFIG_WIRELESS_EXT in the makefile if it was set in the kernel because config.mk is pared before the kernel configuration is parsed. An other way would be to rename CONFIG_WIRELESS_EXT to something else in compat-wireless to prevent the kernel from overwriting this value.

There will be no way to support cfg80211_wext without a kernel configured with CONFIG_CFG80211_WEXT=y.

Quoted 7 lines
Quoted 2 lines

Hauke

After searching over the web I found this...
http://bugs.gentoo.org/show_bug.cgi?format=multiple&id=332817 <http://bugs.gentoo.org/show_bug.cgi?format=multiple&id=332817>
and now I was able to build the compat driver.

But... It did not solved my problem, even with the new compat drivers I got fixed channel -1 on mon0 using aircrack. Is there a patch for this newer versions that fixes this?

I found it... here
cw.fixed.chan.patch <http://forum.aircrack-ng.org/index.php?PHPSESSID=8jcjg63uoaei3vsrpj2pt8sdd0&action=dlattach;topic=8373.0;id=733>
http://forum.aircrack-ng.org/index.php?action=dlattach;topic=8373.0;id=733
It solved my problem. Greetings.