Bugzilla – Bug 609
compile error / kernel 2.6.9
Last modified: 2005-10-08 03:43:55
You need to log in before you can comment on or make changes to this bug.
knecht:/usr/src/ipw2200-1.0.2# LANG=C make make -C /lib/modules/2.6.9-sws-dsdt-sm/build SUBDIRS=/usr/src/ipw2200-1.0.2 MODVERDIR=/usr/src/ipw2200-1.0.2 modules make[1]: Entering directory `/usr/src/kernel-source-2.6.9' CC [M] /usr/src/ipw2200-1.0.2/ipw2200.o /usr/src/ipw2200-1.0.2/ipw2200.c:7808:52: Makro »create_workqueue« erfordert 2 Argumente, aber nur 1 wurden angegeben /usr/src/ipw2200-1.0.2/ipw2200.c: In Funktion »ipw_setup_deferred_work«: /usr/src/ipw2200-1.0.2/ipw2200.c:7808: error: `create_workqueue' undeclared (first use in this function) /usr/src/ipw2200-1.0.2/ipw2200.c:7808: error: (Each undeclared identifier is reported only once /usr/src/ipw2200-1.0.2/ipw2200.c:7808: error: for each function it appears in.) make[2]: *** [/usr/src/ipw2200-1.0.2/ipw2200.o] Fehler 1 make[1]: *** [_module_/usr/src/ipw2200-1.0.2] Fehler 2 make[1]: Leaving directory `/usr/src/kernel-source-2.6.9' make: *** [modules] Fehler 2 knecht:/usr/src/ipw2200-1.0.2#
Looks like you have patched w/ suspend2 patch. Can you find if CONFIG_SOFTWARE_SUSPEND2_BUILTIN is defined in your kernel .config?
Thats right... mea culpa... Its patched with softwaresuspend / dsdt / supermount (and debian patchlevel). Is there a way to get around that problem? Lars
CONFIG_SOFTWARE_SUSPEND2_BUILTIN is intended to work with suspend2, but it seems it doesn't work for you. Can you attach your kernel .config?
Created an attachment (id=302) [details] kernel .config attached
Created an attachment (id=303) [details] fix patch Please try this patch.
Fixes the problem on my Asus M2N, debian testing, linux 2.6.9, tuxmobil.org config with swsusp2.
Compile works now... knecht:/usr/src/ipw2200-1.0.2# patch -p1 < patch.609 patching file ipw2200.c knecht:/usr/src/ipw2200-1.0.2# make make -C /lib/modules/2.6.9-sws-dsdt-sm/build SUBDIRS=/usr/src/ipw2200-1.0.2 MODVERDIR=/usr/src/ipw2200-1.0.2 modules make[1]: Entering directory `/usr/src/kernel-source-2.6.9' CC [M] /usr/src/ipw2200-1.0.2/ipw2200.o CC [M] /usr/src/ipw2200-1.0.2/ieee80211_module.o CC [M] /usr/src/ipw2200-1.0.2/ieee80211_tx.o CC [M] /usr/src/ipw2200-1.0.2/ieee80211_rx.o CC [M] /usr/src/ipw2200-1.0.2/ieee80211_wx.o LD [M] /usr/src/ipw2200-1.0.2/ieee80211.o CC [M] /usr/src/ipw2200-1.0.2/ieee80211_crypt.o CC [M] /usr/src/ipw2200-1.0.2/ieee80211_crypt_wep.o CC [M] /usr/src/ipw2200-1.0.2/ieee80211_crypt_ccmp.o CC [M] /usr/src/ipw2200-1.0.2/ieee80211_crypt_tkip.o Building modules, stage 2. MODPOST Warning: could not find versions for .tmp_versions/ipw2200.mod CC /usr/src/ipw2200-1.0.2/ieee80211.mod.o LD [M] /usr/src/ipw2200-1.0.2/ieee80211.ko CC /usr/src/ipw2200-1.0.2/ieee80211_crypt.mod.o LD [M] /usr/src/ipw2200-1.0.2/ieee80211_crypt.ko CC /usr/src/ipw2200-1.0.2/ieee80211_crypt_ccmp.mod.o LD [M] /usr/src/ipw2200-1.0.2/ieee80211_crypt_ccmp.ko CC /usr/src/ipw2200-1.0.2/ieee80211_crypt_tkip.mod.o LD [M] /usr/src/ipw2200-1.0.2/ieee80211_crypt_tkip.ko CC /usr/src/ipw2200-1.0.2/ieee80211_crypt_wep.mod.o LD [M] /usr/src/ipw2200-1.0.2/ieee80211_crypt_wep.ko CC /usr/src/ipw2200-1.0.2/ipw2200.mod.o LD [M] /usr/src/ipw2200-1.0.2/ipw2200.ko make[1]: Leaving directory `/usr/src/kernel-source-2.6.9' knecht:/usr/src/ipw2200-1.0.2#
log from scrub: crystal_ Bug 609 compile error / kernel 2.6.9 logics_sbux we need to stick that into ipw2200.h as a backward compatible #define such that the code uses the _BUILTIN define as the check crystal_ it is fixed :) chuyee seems suspend2 config keeps changing ... logics_sbux ie, #if !defined(CONFIG_SOFTWARE_SUSPEND2_BUILTIN) && (defined (CONFIG_SOFTWARE_SUSPEND2) || defined(CONFIG_SOFTWARE_SUSPEND2_MODULE)) logics_sbux #define CONFIG_SOFTWARE_SUSPEND2_BUILTIN logics_sbux #endif logics_sbux 1.0.2 changed from using the double if check (SUSPEND2 || SUSPEND2_MODULE) to using the new _BUILTIN define logics_sbux but the new _BUILTIN isn't in older kernels. chuyee do we need to support old kernels? or just let them use a separate patch? logics_sbux we should support as far back as the most recent OSD releases are pulling from logics_sbux 2.6.8 i think crystal_ that make sense. crystal_ ( Hope RF is not using the old kernel version) logics_sbux i try and support back to 2.6.4 logics_sbux since there are a lot of users running that logics_sbux basically, i try and make ipw2200.c use code that is using the latest kernel versions logics_sbux and then provide backward compat macros in ipw2200.h logics_sbux so it works on older kernel versions crystal_ cool, so assign this bug to you? logics_sbux if (x & y || x & z) is the same as (x & y) || (x & z), correct? logics_sbux (bitwise &, boolean ||) chuyee i think so crystal_ & has high priority than || logics_sbux ok (i'm just sanity checking why the LED code isn't defaulting to off in 1.0.2 like it should)
The bug is fixed in ipw2200 1.0.3. Lars, could you try ipw2200 1.0.3 in your system? If the bug is fixed, please mark it as verfied. Thanks.
Hi, with 1.0.3 I get new compile errors... But IMHO not the same. See below: ---8<--- knecht:/usr/src/ipw2200-1.0.3# make make -C /lib/modules/2.6.9-sws-dsdt-sm/build SUBDIRS=/usr/src/ipw2200-1.0.3 MODVERDIR=/usr/src/ipw2200-1.0.3 modules make[1]: Entering directory `/usr/src/kernel-source-2.6.9' CC [M] /usr/src/ipw2200-1.0.3/ipw2200.o In file included from include/asm/thread_info.h:16, from include/linux/thread_info.h:21, from include/linux/spinlock.h:12, from include/linux/capability.h:45, from include/linux/sched.h:7, from include/linux/module.h:10, from /usr/src/ipw2200-1.0.3/ipw2200.h:32, from /usr/src/ipw2200-1.0.3/ipw2200.c:33: include/asm/processor.h:68: error: `CONFIG_X86_L1_CACHE_SHIFT' undeclared here (not in a function) include/asm/processor.h:68: error: requested alignment is not a constant In file included from include/linux/list.h:7, from include/linux/wait.h:23, from include/asm/semaphore.h:41, from include/linux/sched.h:18, from include/linux/module.h:10, from /usr/src/ipw2200-1.0.3/ipw2200.h:32, from /usr/src/ipw2200-1.0.3/ipw2200.c:33: include/linux/prefetch.h: In Funktion »prefetch_range«: include/linux/prefetch.h:64: error: `CONFIG_X86_L1_CACHE_SHIFT' undeclared (first use in this function) include/linux/prefetch.h:64: error: (Each undeclared identifier is reported only once include/linux/prefetch.h:64: error: for each function it appears in.) In Datei, eingefügt von include/linux/module.h:23, von /usr/src/ipw2200-1.0.3/ipw2200.h:32, von /usr/src/ipw2200-1.0.3/ipw2200.c:33: include/asm/module.h:54:2: #error unknown processor family In file included from /usr/src/ipw2200-1.0.3/ipw2200.h:32, from /usr/src/ipw2200-1.0.3/ipw2200.c:33: include/linux/module.h: Auf höchster Ebene: include/linux/module.h:202: error: `CONFIG_X86_L1_CACHE_SHIFT' undeclared here (not in a function) include/linux/module.h:202: error: requested alignment is not a constant In file included from include/asm/hardirq.h:6, from include/linux/hardirq.h:6, from include/linux/interrupt.h:11, from include/linux/netdevice.h:516, from /usr/src/ipw2200-1.0.3/ipw2200.h:39, from /usr/src/ipw2200-1.0.3/ipw2200.c:33: include/linux/irq.h:68: error: `CONFIG_X86_L1_CACHE_SHIFT' undeclared here (not in a function) include/linux/irq.h:68: error: requested alignment is not a constant In file included from include/linux/hardirq.h:6, from include/linux/interrupt.h:11, from include/linux/netdevice.h:516, from /usr/src/ipw2200-1.0.3/ipw2200.h:39, from /usr/src/ipw2200-1.0.3/ipw2200.c:33: include/asm/hardirq.h:13: error: `CONFIG_X86_L1_CACHE_SHIFT' undeclared here (not in a function) include/asm/hardirq.h:13: error: requested alignment is not a constant /usr/src/ipw2200-1.0.3/ipw2200.c:8263:52: Makro »create_workqueue« erfordert 2 Argumente, aber nur 1 wurden angegeben /usr/src/ipw2200-1.0.3/ipw2200.c: In Funktion »ipw_setup_deferred_work«: /usr/src/ipw2200-1.0.3/ipw2200.c:8263: error: `create_workqueue' undeclared (first use in this function) /usr/src/ipw2200-1.0.3/ipw2200.c: In Funktion »ipw_pci_probe«: /usr/src/ipw2200-1.0.3/ipw2200.c:8700: Warnung: implicit declaration of function `pci_set_consistent_dma_mask' /usr/src/ipw2200-1.0.3/ipw2200.c:8708: Warnung: implicit declaration of function `pci_request_regions' /usr/src/ipw2200-1.0.3/ipw2200.c:8880: Warnung: implicit declaration of function `pci_release_regions' make[2]: *** [/usr/src/ipw2200-1.0.3/ipw2200.o] Fehler 1 make[1]: *** [_module_/usr/src/ipw2200-1.0.3] Fehler 2 make[1]: Leaving directory `/usr/src/kernel-source-2.6.9' make: *** [modules] Fehler 2 knecht:/usr/src/ipw2200-1.0.3# cat /proc/version Linux version 2.6.9-sws-dsdt-sm (root@knecht) (gcc-Version 3.3.5 (Debian 1:3.3.5-8)) #1 Thu Mar 17 17:42:14 CET 2005 knecht:/usr/src/ipw2200-1.0.3# ---8<---