kernel 2.6.29 gets rid of CONFIG_KMOD... a simple patch like this should work: CONFIG_CHECK="CRYPTO WIRELESS_EXT SYSCTL" kernel_is lt 2 6 29 && CONFIG_CHECK="${CONFIG_CHECK} KMOD"
Created attachment 185252 [details] ebuild for the latest version in portage with the fix just replaced the old CONFIG_CHECK line with a new two.
Please don't post full ebuilds but diffs showing the changes you did to the ebuild. That would be much more handy for our devs.
That alone won't solve all the problems. You'll probably also need the following patch (taken from the official madwifi-ng subversion repository) http://madwifi-project.org/changeset/3902?format=diff&new=3902 Note, I haven't tested this yet, so I dunno if it'll solve all the problems yet...
Created attachment 186153 [details] Error log for that patch
I got a different error, fuzzy patching at the start, with failed blocks from midway through to the end, but you're right the patch as it stands won't apply cleanly. I haven't had time to examine it further, and since 2.6.29 apparently supports hostapd through the mac80211 interface, I'm going to be spending my time on getting that going, rather than battling with the madwifi drivers. There will have been some changes in the subversion files between that patch (r3902) and the 0.9.4 tarball. I didn't think there were many, but obviously there were enough to cause problems. It might just be worth wrapping up the latest checkout and compiling off of that (some kind of madwifi-ng-0.9.4_r3902 type ebuild). It could either be based on subversion with a fixed revision, or a snapshot. Unfortunately, as I say, my time for this project is limited. Sorry...
Yeah, I just updated to 2.6.29 and got bit - for the moment ath5k works for me, although I do also apply the patch from aircrack-ng to be able to use monitor mode, I still prefer madwifi-ng - I'm looking in to it now, so I should get fixed soon, unless pva beats me to it :)
I'd thought monitor mode (and injection) worked fine for ath5k out of the box since 2.6.27_rc3 onwards, but fragmentation attacks under mac80211 needed a patch?
Created attachment 186313 [details, diff] <2.6.29 CHECK KMOD / >=2.6.29 patch r3907
Created attachment 186314 [details] upstream patch for 2.6.29 Here's the complete changeset for the 0.9.4 branch: http://madwifi-project.org/changeset/3907?format=diff&new=3907
Comment on attachment 186314 [details] upstream patch for 2.6.29 Patch applies, but I get compiler errors in ieee80211.c (In reply to comment #7) At least master mode doesn't work. That's whyt I need. (and the fixed sqlite performance bug in 2.6.29)
Tobias, thanks for the patches, I'll give them a go later on. You can't set it directly into master mode, no, but you should be able to run it as an access point using hostapd (which has been updated to use cfg80211 to do its stuff, see the wireless section of http://kernelnewbies.org/Linux_2_6_29). That's what I'm investigating at the moment...
Personally I'm still not getting a dickie-bird with ath5k, can't even connect in station mode, so I hope these fixes can make their way to portage soon.
With madwifi-ng-0.9.4-2.6.29-r3907.patch madiwfi-ng compiles and working fine, just add it to portage and fix ebuild ;) greets...
Created attachment 187820 [details, diff] Diff to use injection in madwifi with 0.9.4 with kernel 2.6.29
Created attachment 187822 [details, diff] Patch for injection for 2.6.29 patched sources
Comment on attachment 187820 [details, diff] Diff to use injection in madwifi with 0.9.4 with kernel 2.6.29 Using injection flag and the 2.6.29 patch ended in failure, i downloaded the new patch (r3925) and adapted it so it could fit along with the 2.6.29 patch
Created attachment 188087 [details, diff] Upstream patch with corrected paths Corrected paths in the upstream patch to be used from portage.
I confirm that unpacking ebuild madwifi-ng-0.9.4-r1.ebuild and manually patching with madwifi-ng-0.9.4-2.6.29-r3907.patch works for me (didn't try with USE="injection").
Sorry, forgot to add: Linux version 2.6.29-gentoo-r1 (root@hacktop) (gcc version 4.3.3 (Gentoo 4.3.3-r2 p1.1, pie-10.1.5) ) #4 SMP Mon Apr 13 22:45:39 CEST 2009
with gcc4.4 madwifi-ng doesn't compile... cc1: warnings being treated as errors /var/tmp/portage/net-wireless/madwifi-ng-0.9.4-r1/work/madwifi-0.9.4/net80211/ieee80211_linux.c: In function 'ieee80211_notify_sta_stats': /var/tmp/portage/net-wireless/madwifi-ng-0.9.4-r1/work/madwifi-0.9.4/net80211/ieee80211_linux.c:260: error: the frame size of 1060 bytes is larger than 1024 bytes make[2]: *** [/var/tmp/portage/net-wireless/madwifi-ng-0.9.4-r1/work/madwifi-0.9.4/net80211/ieee80211_linux.o] Error 1 make[2]: *** Waiting for unfinished jobs.... cc1: warnings being treated as errors /var/tmp/portage/net-wireless/madwifi-ng-0.9.4-r1/work/madwifi-0.9.4/net80211/ieee80211_wireless.c: In function 'ieee80211_ioctl_iwaplist': /var/tmp/portage/net-wireless/madwifi-ng-0.9.4-r1/work/madwifi-0.9.4/net80211/ieee80211_wireless.c:1468: error: the frame size of 1288 bytes is larger than 1024 bytes make[2]: *** [/var/tmp/portage/net-wireless/madwifi-ng-0.9.4-r1/work/madwifi-0.9.4/net80211/ieee80211_wireless.o] Error 1 make[1]: *** [_module_/var/tmp/portage/net-wireless/madwifi-ng-0.9.4-r1/work/madwifi-0.9.4/net80211] Error 2 make[1]: Leaving directory `/usr/src/linux-2.6.29-gentoo-r2' make: *** [all] Błąd 2 maybe needed some patch?
(In reply to comment #20) > with gcc4.4 madwifi-ng doesn't compile... > cc1: warnings being treated as errors > /var/tmp/portage/net-wireless/madwifi-ng-0.9.4-r1/work/madwifi-0.9.4/net80211/ieee80211_linux.c: > In function 'ieee80211_notify_sta_stats': > /var/tmp/portage/net-wireless/madwifi-ng-0.9.4-r1/work/madwifi-0.9.4/net80211/ieee80211_linux.c:260: > error: the frame size of 1060 bytes is larger than 1024 bytes > make[2]: *** > [/var/tmp/portage/net-wireless/madwifi-ng-0.9.4-r1/work/madwifi-0.9.4/net80211/ieee80211_linux.o] > Error 1 > make[2]: *** Waiting for unfinished jobs.... > cc1: warnings being treated as errors > /var/tmp/portage/net-wireless/madwifi-ng-0.9.4-r1/work/madwifi-0.9.4/net80211/ieee80211_wireless.c: > In function 'ieee80211_ioctl_iwaplist': > /var/tmp/portage/net-wireless/madwifi-ng-0.9.4-r1/work/madwifi-0.9.4/net80211/ieee80211_wireless.c:1468: > error: the frame size of 1288 bytes is larger than 1024 bytes > make[2]: *** > [/var/tmp/portage/net-wireless/madwifi-ng-0.9.4-r1/work/madwifi-0.9.4/net80211/ieee80211_wireless.o] > Error 1 > make[1]: *** > [_module_/var/tmp/portage/net-wireless/madwifi-ng-0.9.4-r1/work/madwifi-0.9.4/net80211] > Error 2 > make[1]: Leaving directory `/usr/src/linux-2.6.29-gentoo-r2' > make: *** [all] Błąd 2 > > maybe needed some patch? > Does it work with the patch I mentioned? (just add epatch line to the ebuild, digest it, stick the patch into its files directory and try to emerge it). From the backlog I got the impression this is already going upstream (portage or madwifi ?), is it not ?
I'm using funtoo and i send your patches to drobinns, he's added it, so i uses your patch. With gcc4.3.3-r2 madwifi-ng compiles fine, dunno where is the problem.
(In reply to comment #22) > I'm using funtoo and i send your patches to drobinns, he's added it, so i uses > your patch. With gcc4.3.3-r2 madwifi-ng compiles fine, dunno where is the > problem. > I see 'cc1: warnings being treated as errors'. Maybe it needs some option for less strict error checking (or code sanity check from maintainers) ? I think thats a probable thing to change with new version of gcc. I'm not good at this, experts opinion please ?
ping... 2.6.29 is planned to go stable on 23rd may, would be nice to see this fixed
(In reply to comment #23) > (In reply to comment #22) > > I'm using funtoo and i send your patches to drobinns, he's added it, so i uses > > your patch. With gcc4.3.3-r2 madwifi-ng compiles fine, dunno where is the > > problem. > > > > I see 'cc1: warnings being treated as errors'. Maybe it needs some option for > less strict error checking (or code sanity check from maintainers) ? I think > thats a probable thing to change with new version of gcc. I'm not good at this, > experts opinion please ? > (In reply to comment #23) > (In reply to comment #22) > > I'm using funtoo and i send your patches to drobinns, he's added it, so i uses > > your patch. With gcc4.3.3-r2 madwifi-ng compiles fine, dunno where is the > > problem. > > > > I see 'cc1: warnings being treated as errors'. Maybe it needs some option for > less strict error checking (or code sanity check from maintainers) ? I think > thats a probable thing to change with new version of gcc. I'm not good at this, > experts opinion please ? > Right after emerge unpacks package source to tmpdir, look into /var/tmp/portage/net-wireless/madwifi-ng-0.9.4-r1/work/madwifi-0.9.4/Makefile.inc. Find the line starting with COPTS and remove -Werror flag. Then resume compilation: compiler warning won't be treated as an error, and the package will be built correctly.
I tried patching 0.9.4-r1 by hand and adding in the 0.9.4-2.6.29-r3907 patch but I wasn't able to get it to properly compile. Jacob did you try patching the ebuild or did you just manually patch it and run ./configure make to test that it compiled?
(In reply to comment #26) > I tried patching 0.9.4-r1 by hand and adding in the 0.9.4-2.6.29-r3907 patch > but I wasn't able to get it to properly compile. Jacob did you try patching the > ebuild or did you just manually patch it and run ./configure make to test that > it compiled? > I added epatch line to ebuild I think. I had old gcc at that time, I think it had less strict error checking so it didn't die on some warnings. I'm pretty sure theres either some cflag or pragma macro to lessen strict level although fast google didn't turn up anything atm. Anyone who knows this off top of his head could shoot perhaps ?
Created attachment 192965 [details] final version of ebuild Compile and work with or without injection on 2.6.29 kernel.
This line: kernel_is lt 2 6 29 && CONFIG_CHECK="${CONFIG_CHECK} KMOD" in the posted madwifi-ng-0.9.4-r2 ebuild causes problems with Paludis. I posted in the Paludis Trac and received this reply from ciaranm: "The error occurs because the ebuild illegally displays information to stdout during the metadata phase. That, in turn, happens because linux-mod.eclass checks EBUILD_PHASE against 'depend' to see whether it should be quiet, but PMS doesn't guarantee that EBUILD_PHASE will be set to that. So the fix is either to stop calling horrible functions in global scope, or to fix qout in linux-mod. Or preferably both." Is there another way to do a CONFIG_CHECK conditionally dependant on kernel version?
Thank you all, guys for your work. I decided to avoid patching of 0.9.4 release to death and took upstream snapshot for 0.9.4 branch: madwifi-ng-0.9.4.4030.20090529.ebuild. It builds fine and seems to work. Please, test it ASAP as I'm going to request stabilization in one week. I'm most interested if injection works or not, since I've never used this feature. Leaving this bug open for stabilization...
(In reply to comment #30) > Thank you all, guys for your work. I decided to avoid patching of 0.9.4 release > to death and took upstream snapshot for 0.9.4 branch: > madwifi-ng-0.9.4.4030.20090529.ebuild. > > It builds fine and seems to work. Please, test it ASAP as I'm going to request > stabilization in one week. I'm most interested if injection works or not, since > I've never used this feature. Leaving this bug open for stabilization... > Forgive the inappropriate forum for asking, but the website confuses me somewhat: will the snapshot you're taking include the AR242x support? I dearly hope so, as ath5k support for this chipset is pitiful at present.
A BIG, BIG THANKS to Peter and others for their hard work ! Before today I couldn't upgrade to 2.6.29 + ath5k, because for me, the new 802.11 stack loses connection regularly. Most probably the stack's fault, since it happens with different 802.11 drivers (intel 3945) too. So, today madwifi compiles out of the box with 2.6.29, and runs great ! (I only had to disable the "injection" use flag, because a patch file was seemingly missing). Again, great work !
Works fine on my Acer Aspire 5610Z, Atheros AR2413 802.11bg NIC. This is a great improvement - just switched to kernel 2.6.29 today because of this! :)
AR5007 (Netgear WPN511 CardBus adapter): works AR2425 (MiniPCIe in Samsung NC10 netbook): does not work (I assume this answers my question above).
Hello, I'm having this problem using a 2.6.30 kernel (directly from kernel.org, not using Gentoo's one). Any news about it? Thanks.
Ok, sorry, my question was more about "do you have any plans to make madwifi-ng-0.9.4.4030.20090529.ebuild stable?". Thanks.
AR2413 Mini-PCI Access-Point - works fine with madwifi-ng-0.9.4.4030.20090529 and Vanilla-Kernel 2.6.30.1 Thank you!
For some reason madwifi-ng-0.9.4.4030.20090529 fails to compile against 2.6.30. The ebuild seems to figure out the kernel version correctly, but the actual build script cannot and aborts with an error.
This is still an issue with 2.6.33. Latest madwifi-ng packages in portage are 0.9.4.4030.20090529 and ~0.9.4.4100.20090929, both fail with the following error: ---8<--------- * Checking for suitable kernel configuration options... * madwifi-ng-0.9.4 requires CONFIG_WIRELESS_EXT selected by Wireless LAN drivers (non-hamradio) & Wireless Extensions * Please check to make sure these options are set correctly. * Failure to do so may cause unexpected problems. * Once you have satisfied these options, please try merging * this package again. * ERROR: net-wireless/madwifi-ng-0.9.4-r2 failed: * Incorrect kernel configuration options --->8--------- Which also does not appear to be present anymore: dafox@shogoki /usr/src/linux $ grep -i wireless .config .config:CONFIG_WIRELESS=y .config:CONFIG_WIRELESS_OLD_REGULATORY=y .config:CONFIG_WIRELESS_EXT_SYSFS=y
I just tried with net-wireless/madwifi-ng-0.9.4.4119.20100201 and it still fails. Is this being worked on?
So what is the status on this? I just updated my portage-tree and tried again with 0.9.4.4119.20100201 and an svn build, both failed. 0.9.4.4119.20100201 failed the same as last time, whereas svn fails with the following error halfway through: ---8<--------- * Preparing wlan module make -j2 HOSTCC=i686-pc-linux-gnu-gcc CROSS_COMPILE=i686-pc-linux-gnu- LDFLAGS= KERNELPATH=/lib/modules/2.6.33-ck1/build all make -C /lib/modules/2.6.33-ck1/build M=/var/tmp/portage/net-wireless/madwifi-ng-9999/work/madwifi-ng-9999/net80211 modules make[1]: Entering directory `/usr/src/linux-2.6.33' CC [M] /var/tmp/portage/net-wireless/madwifi-ng-9999/work/madwifi-ng-9999/net80211/if_media.o ... <snip> ... CC [M] /var/tmp/portage/net-wireless/madwifi-ng-9999/work/madwifi-ng-9999/net80211/ieee80211_linux.o /var/tmp/portage/net-wireless/madwifi-ng-9999/work/madwifi-ng-9999/net80211/ieee80211_wireless.c:5747: error: unknown field 'private' specified in initializer cc1: warnings being treated as errors /var/tmp/portage/net-wireless/madwifi-ng-9999/work/madwifi-ng-9999/net80211/ieee80211_wireless.c:5747: error: initialization from incompatible pointer type /var/tmp/portage/net-wireless/madwifi-ng-9999/work/madwifi-ng-9999/net80211/ieee80211_wireless.c:5748: error: unknown field 'num_private' specified in initializer /var/tmp/portage/net-wireless/madwifi-ng-9999/work/madwifi-ng-9999/net80211/ieee80211_wireless.c:5748: error: excess elements in struct initializer /var/tmp/portage/net-wireless/madwifi-ng-9999/work/madwifi-ng-9999/net80211/ieee80211_wireless.c:5748: error: (near initialization for 'ieee80211_iw_handler_def') /var/tmp/portage/net-wireless/madwifi-ng-9999/work/madwifi-ng-9999/net80211/ieee80211_wireless.c:5749: error: unknown field 'private_args' specified in initializer /var/tmp/portage/net-wireless/madwifi-ng-9999/work/madwifi-ng-9999/net80211/ieee80211_wireless.c:5749: error: excess elements in struct initializer /var/tmp/portage/net-wireless/madwifi-ng-9999/work/madwifi-ng-9999/net80211/ieee80211_wireless.c:5749: error: (near initialization for 'ieee80211_iw_handler_def') /var/tmp/portage/net-wireless/madwifi-ng-9999/work/madwifi-ng-9999/net80211/ieee80211_wireless.c:5750: error: unknown field 'num_private_args' specified in initializer /var/tmp/portage/net-wireless/madwifi-ng-9999/work/madwifi-ng-9999/net80211/ieee80211_wireless.c:5750: error: excess elements in struct initializer /var/tmp/portage/net-wireless/madwifi-ng-9999/work/madwifi-ng-9999/net80211/ieee80211_wireless.c:5750: error: (near initialization for 'ieee80211_iw_handler_def') /var/tmp/portage/net-wireless/madwifi-ng-9999/work/madwifi-ng-9999/net80211/ieee80211_wireless.c: In function 'ieee80211_ioctl_vattach': /var/tmp/portage/net-wireless/madwifi-ng-9999/work/madwifi-ng-9999/net80211/ieee80211_wireless.c:5838: error: 'struct net_device' has no member named 'wireless_handlers' make[2]: *** [/var/tmp/portage/net-wireless/madwifi-ng-9999/work/madwifi-ng-9999/net80211/ieee80211_wireless.o] Error 1 make[2]: *** Waiting for unfinished jobs.... make[1]: *** [_module_/var/tmp/portage/net-wireless/madwifi-ng-9999/work/madwifi-ng-9999/net80211] Error 2 make[1]: Leaving directory `/usr/src/linux-2.6.33' make: *** [all] Error 2 --->8--------- I had hoped that svn at least would build...
@Da Fox, see Bug #306851 for a workaround for the error you are getting, it's a different issue specific to >=2.6.33.
I think currently stable version should build on 2.6.29. This bug was fixed some time ago. /me wonders why I wasn't CCed to this bug...