Bugzilla – Bug 702
Compilation error with kernel 2.6.12 (final)
Last modified: 2005-07-14 12:15:02
You need to log in before you can comment on or make changes to this bug.
Compilation error with kernel 2.6.12 (final). Console output: make make -C /lib/modules/2.6.12/build SUBDIRS=/usr/src/modules/ipw2100-1.1.0 MODVERDIR=/usr/src/modules/ipw2100-1.1.0 modules make[1]: Entering directory `/usr/src/linux-2.6.12' CC [M] /usr/src/modules/ipw2100-1.1.0/ipw2100.o In file included from /usr/src/modules/ipw2100-1.1.0/ipw2100.h:43, from /usr/src/modules/ipw2100-1.1.0/ipw2100.c:167: /usr/src/modules/ipw2100-1.1.0/ieee80211.h:647: error: redefinition of `is_multicast_ether_addr' include/linux/etherdevice.h:67: error: `is_multicast_ether_addr' previously defined here make[2]: *** [/usr/src/modules/ipw2100-1.1.0/ipw2100.o] Error 1 make[1]: *** [_module_/usr/src/modules/ipw2100-1.1.0] Error 2 make[1]: Leaving directory `/usr/src/linux-2.6.12' make: *** [modules] Error 2
Created an attachment (id=426) [details] Patch to fix compile bug I had the same compilation error with the ipw2200. Since there appear to be two identical bug reports, I'm guessing one is supposed to be for the latter. I've built my patch and it appears to work, but I am mildly concerned that my solution, relying on the kernel's definition of is_broadcast_ether_addr, may not work in some cases. The kernel implemtation is simply this: return addr[0] & 0x01; whereas the old implementation in the ipw2200 header is: return ((addr[0] != 0xff) && (0x01 & addr[0]));
I have exactly the same error with the new 2.6.12 kernel. I've tried applying this patch, but it still doesn't seem to work: thread@thread:~/Desktop/ipw2200-1.0.4/net$ patch -p0 -i ../patch patching file ieee80211.h Hunk #1 succeeded at 728 with fuzz 2 (offset 81 lines). thread@thread:~/Desktop/ipw2200-1.0.4/net$ cd .. thread@thread:~/Desktop/ipw2200-1.0.4$ make make -C /lib/modules/2.6.12/build SUBDIRS=/home/thread/Desktop/ipw2200-1.0.4 MODVERDIR=/home/thread/Desktop/ipw2200-1.0.4 modules make[1]: Entering directory `/usr/src/linux-2.6.12' CC [M] /home/thread/Desktop/ipw2200-1.0.4/ipw2200.o In file included from /home/thread/Desktop/ipw2200-1.0.4/ipw2200.h:50, from /home/thread/Desktop/ipw2200-1.0.4/ipw2200.c:33: /home/thread/Desktop/ipw2200-1.0.4/net/ieee80211.h:722: error: redefinition of `is_multicast_ether_addr' include/linux/etherdevice.h:67: error: `is_multicast_ether_addr' previously defined here /home/thread/Desktop/ipw2200-1.0.4/net/ieee80211.h:727: error: redefinition of `is_multicast_ether_addr' /home/thread/Desktop/ipw2200-1.0.4/net/ieee80211.h:722: error: `is_multicast_ether_addr' previously defined here /home/thread/Desktop/ipw2200-1.0.4/net/ieee80211.h:732: error: redefinition of `is_multicast_ether_addr' /home/thread/Desktop/ipw2200-1.0.4/net/ieee80211.h:727: error: `is_multicast_ether_addr' previously defined here make[2]: *** [/home/thread/Desktop/ipw2200-1.0.4/ipw2200.o] Error 1 make[1]: *** [_module_/home/thread/Desktop/ipw2200-1.0.4] Error 2 make[1]: Leaving directory `/usr/src/linux-2.6.12' make: *** [modules] Error 2
Created an attachment (id=427) [details] Corrected Patch The previous patch was made backwards (i.e. 'diff -Nu ieee80211.h ieee80211.h.sav'). Here is the corrected patch that should apply correctly.
> The previous patch was made backwards (i.e. 'diff -Nu ieee80211.h > ieee80211.h.sav'). Here is the corrected patch that should apply correctly. Thanks for the correction... I had just altered the file locally and didn't actually apply the patch to the base code on my own system. Whoops...
Created an attachment (id=428) [details] fix patch appy with -p2
above patch has committed, mark as fixed
*** Bug 704 has been marked as a duplicate of this bug. ***
Since the patch is for ipw2200, mark product as ipw2200. Please refer to BUG703 for the same problem of ipw2100.
*** Bug 706 has been marked as a duplicate of this bug. ***
*** Bug 707 has been marked as a duplicate of this bug. ***
*** Bug 708 has been marked as a duplicate of this bug. ***
Verified with version 1.0.5 and 2.6.12 kernel (final.)