Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 97397 - ieee80211, ipw2100, ipw2200: fails to compile against linux-2.6.13
Summary: ieee80211, ipw2100, ipw2200: fails to compile against linux-2.6.13
Status: RESOLVED UPSTREAM
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Unspecified (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Mobile Herd (OBSOLETE)
URL:
Whiteboard:
Keywords:
: 104225 104837 (view as bug list)
Depends on:
Blocks:
 
Reported: 2005-06-29 08:40 UTC by Marc Ballarin
Modified: 2005-10-28 19:43 UTC (History)
13 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
Use private includes instead of kernel version (ipw2200-1.0.4-local_include.patch,4.04 KB, patch)
2005-06-29 08:41 UTC, Marc Ballarin
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Marc Ballarin 2005-06-29 08:40:05 UTC
Hi,  
ipw2200 cannot compile against newest kernels because those contain an  
incompatible version of ieee80211.h.  
  
The simplest fix is to use the header file included in ipw2200. This is also  
what happens when building against older kernels, so this _should_ not cause  
any harm. 
 
Don't know if this is relevant for Gentoo ATM, but this fix might become 
necessary in the future. 
  

Reproducible: Always
Steps to Reproduce:
Comment 1 Marc Ballarin 2005-06-29 08:41:26 UTC
Created attachment 62237 [details, diff]
Use private includes instead of kernel version
Comment 2 Jakub Moc (RETIRED) gentoo-dev 2005-06-29 09:45:28 UTC

*** This bug has been marked as a duplicate of 96495 ***
Comment 3 Marc Ballarin 2005-06-29 10:36:23 UTC
This is a different issue than #96495. Different cause, different fix. 
This patch is not necessary for 2.6.12, only for 2.6.12-mm and 2.6.13-rc. 
Comment 4 Jakub Moc (RETIRED) gentoo-dev 2005-06-29 14:18:33 UTC
(In reply to comment #3)
> This patch is not necessary for 2.6.12, only for 2.6.12-mm and 2.6.13-rc. 

FYI, Gentoo does not support mm-sources. 
Comment 5 Henrik Brix Andersen 2005-06-29 14:31:32 UTC
Yeah, the ipw* drivers are not compatible with the version of ieee80211
subsystem which is present in -mm and 2.6.13-rc1. We're working with upstream to
solve this issue.

The patch wont do it.
Comment 6 Benoit Boissinot 2005-08-01 08:45:26 UTC
Setting IEEE80211_INC="/usr/include", changing the include for ieee80211 like
the patch above and the include of ipw2200 to /usr/include does the trick for
me. (2.6.13-rc4-mm1).

regards,

Benoit
Comment 7 Henrik Brix Andersen 2005-08-30 02:56:10 UTC
*** Bug 104225 has been marked as a duplicate of this bug. ***
Comment 8 Henrik Brix Andersen 2005-08-30 02:59:59 UTC
This is a problem with upstream not supporting the version of the ieee80211
subsystem which was merged in linux-2.6.13.

If you do not use the in-kernel orinoco driver, you can safely remove the
/usr/src/linux/include/net/ieee80211.h file from linux-2.6.13 -
ieee80211/ipw2x00 should then compile cleanly.

Hopefully this will be fixed in linux-2.6.14.

I'll leave this bug open for others to find, although it really is an UPSTREAM
problem...
Comment 9 Andreas Kotowicz 2005-08-30 06:34:30 UTC
I can confirm that removing /usr/src/linux/include/net/ieee80211.h makes ipw2x00
compile. 
Comment 10 Lee Trager 2005-08-31 00:16:13 UTC
Is there a way for the ebuild to do this automatically?
Comment 11 Lee Trager 2005-08-31 00:47:59 UTC
I just booted into the 2.6.13 kernel and saw that I was not connected to my WEP
network. I tried restarting a number of times but to no aval.
Comment 12 Henrik Brix Andersen 2005-08-31 02:10:39 UTC
(In reply to comment #10)
> Is there a way for the ebuild to do this automatically?

No. The ebuild can not modify the files belonging to another package.

Comment 13 Armando Di Cianno (RETIRED) gentoo-dev 2005-08-31 08:25:54 UTC
Using 2.6.13, removing in-kernel ieee80211.h (not using orinoco driver, so I
could), I could indeed compile ipw2200.  However, the driver now seems to not be
able to associate to the AP because it can't figure out what's going on wrt
encryption (as in comment #11).

I use wpa_supplicant -- is there any reason that would need to be recompiled as
well? (doubt it would be).
Comment 14 Henrik Brix Andersen 2005-08-31 08:31:45 UTC
If you use ipw2200 along with linux-2.6.13, it will be compiled with WE-18 support.

You will then need to run `wpa_supplicant -D wext ..." instead of
`wpa_supplicant -D ipw ...` as the older ioctls are not supported with WE-18.
Comment 15 Marc Ballarin 2005-08-31 08:50:04 UTC
Make sure you don't mix internal and external modules. External ipw2200 will  
not work with in-kernel ieee80211.  
If you have already built it, remove /lib/modules/<kernel>/kernel/net/ieee80211.
If necessary, re-emerge net-wireless/ieee80211. 
  
I haven't tested, but it should be possible to build ieee80211 and ipw2200
without touching the kernel tree.
Comment 16 Henrik Brix Andersen 2005-08-31 15:41:48 UTC
(In reply to comment #15)
> Make sure you don't mix internal and external modules. External ipw2200 will  
> not work with in-kernel ieee80211.
> If you have already built it, remove /lib/modules/<kernel>/kernel/net/ieee80211.
> If necessary, re-emerge net-wireless/ieee80211. 

Please stop adding to the confusion. There is not in-kernel ieee80211 module
(yet) - only a header file.
Comment 17 Brian Toovey 2005-08-31 16:32:34 UTC
Can someone define what the make errors are so the rest of us can compare notes?

root$ emerge info
Portage 2.0.51.22-r2 (default-linux/x86/2005.0, gcc-3.4.4, glibc-2.3.5-r1,
2.6.13-ck1 i686)
=================================================================
System uname: 2.6.13-ck1 i686 Intel(R) Pentium(R) M processor 1.80GHz
Gentoo Base System version 1.6.13
ccache version 2.4 [disabled]
dev-lang/python:     2.3.5, 2.4.1-r1
sys-apps/sandbox:    1.2.12
sys-devel/autoconf:  2.13, 2.59-r7
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6
sys-devel/binutils:  2.16.1
sys-devel/libtool:   1.5.18-r1
virtual/os-headers:  2.6.11-r2
ACCEPT_KEYWORDS="x86 ~x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O3 -march=pentium-m -fomit-frame-pointer -pipe -fno-delayed-branch
-fcaller-saves -freorder-blocks -freorder-functions -falign-jumps
-finline-functions -frename-registers -fweb -fno-trapping-math -falign-functions=64"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.4/env
/usr/kde/3.4/share/config /usr/kde/3.4/shutdown /usr/kde/3/share/config
/usr/lib/X11/xkb /usr/lib/mozilla/defaults/pref /usr/share/config
/var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/texmf/web2c /etc/env.d"
CXXFLAGS="-O3 -march=pentium-m -fomit-frame-pointer -pipe -fno-delayed-branch
-fcaller-saves -freorder-blocks -freorder-functions -falign-jumps
-finline-functions -frename-registers -fweb -fno-trapping-math -falign-functions=64"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig distlocks sandbox sfperms strict"
GENTOO_MIRRORS="http://mirror.datapipe.net/gentoo http://mirror.datapipe.net/gentoo"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="x86 X aalib aim alsa apache2 apm avi bash berkdb bitmap-fonts bootsplash
ccache cdr ck-plus crypt cups curl dba divx4linux dvd dvdread eds emboss encode
ethereal fam fbcon firefox flac foomaticdb fortran gd gdbm gif gnome gpm gps
gstreamer gtk gtk2 hal howl i-doc imagemagick imap imlib java joystick jpeg
junit kde ldap libg++ libwww mad mikmod mmx mmx2 motif mozilla mp3 mpeg mpeg4
mysql ncurses nls nntp ntpl nvidia ogg oggvorbis opengl pam pcmcia pda pdflib
perl php pkgcache png python qt quicktime readline real ruby sdl spell sse sse2
ssl svga tcltk tcpd tetex tiff truetype truetype-fonts type1-fonts vim
vim-with-x vorbis wifi win32codecs xemacs xine xinerama xml2 xmms xv yahoo zlib
userland_GNU kernel_linux elibc_glibc"
Unset:  ASFLAGS, CTARGET, LANG, LC_ALL, LDFLAGS, LINGUAS, MAKEOPTS

|/root/ | -- | localhost |

 * Found kernel source directory:
 *     /usr/src/linux
 * Found sources for kernel version:
 *     2.6.13-ck1
 * Checking for suitable kernel configuration options
>>> Unpacking source...
>>> Unpacking ipw2200-1.0.6.tgz to /var/tmp/portage/ipw2200-1.0.6-r1/work
 * Applying ipw2200-1.0.6-hwcrypt-wpa-fix4.patch ...                      [ ok ]
 * Applying ipw2200-1.0.6-suspend2.patch ...                              [ ok ]
>>> Source unpacked.
 *
 * You may safely ignore any errors from compilation that contain
 * warnings about undefined references to the ieee80211 subsystem.
 *
 * Preparing ipw2200 module
mkdir -p /var/tmp/portage/ipw2200-1.0.6-r1/work/ipw2200-1.0.6/tmp/.tmp_versions
cp /usr/include/*.mod
/var/tmp/portage/ipw2200-1.0.6-r1/work/ipw2200-1.0.6/tmp/.tmp_versions
cp: cannot stat `/usr/include/*.mod': No such file or directory
make: [modules] Error 1 (ignored)
make -C /usr/src/linux M=/var/tmp/portage/ipw2200-1.0.6-r1/work/ipw2200-1.0.6
MODVERDIR=/var/tmp/portage/ipw2200-1.0.6-r1/work/ipw2200-1.0.6/tmp/.tmp_versions
modules
make[1]: Entering directory `/usr/src/linux-2.6.13-ck1'
  CC [M]  /var/tmp/portage/ipw2200-1.0.6-r1/work/ipw2200-1.0.6/ipw2200.o
/var/tmp/portage/ipw2200-1.0.6-r1/work/ipw2200-1.0.6/ipw2200.c:66: error:
variable `def_qos_parameters_OFDM' has initializer but incomplete type
/var/tmp/portage/ipw2200-1.0.6-r1/work/ipw2200-1.0.6/ipw2200.c:68: error: extra
brace group at end of initializer
/var/tmp/portage/ipw2200-1.0.6-r1/work/ipw2200-1.0.6/ipw2200.c:68: error: (near
initialization for `def_qos_parameters_OFDM')
/var/tmp/portage/ipw2200-1.0.6-r1/work/ipw2200-1.0.6/ipw2200.c:68: warning:
excess elements in struct initializer
/var/tmp/portage/ipw2200-1.0.6-r1/work/ipw2200-1.0.6/ipw2200.c:68: warning:
(near initialization for `def_qos_parameters_OFDM')
/var/tmp/portage/ipw2200-1.0.6-r1/work/ipw2200-1.0.6/ipw2200.c:69: error: extra
brace group at end of initializer
/var/tmp/portage/ipw2200-1.0.6-r1/work/ipw2200-1.0.6/ipw2200.c:69: error: (near
initialization for `def_qos_parameters_OFDM')
/var/tmp/portage/ipw2200-1.0.6-r1/work/ipw2200-1.0.6/ipw2200.c:69: warning:
excess elements in struct initializer
/var/tmp/portage/ipw2200-1.0.6-r1/work/ipw2200-1.0.6/ipw2200.c:69: warning:
(near initialization for `def_qos_parameters_OFDM')
/var/tmp/portage/ipw2200-1.0.6-r1/work/ipw2200-1.0.6/ipw2200.c:70: error: extra
brace group at end of initializer
/var/tmp/portage/ipw2200-1.0.6-r1/work/ipw2200-1.0.6/ipw2200.c:70: error: (near
initialization for `def_qos_parameters_OFDM')

*
*
*

/var/tmp/portage/ipw2200-1.0.6-r1/work/ipw2200-1.0.6/ipw2200.c:7311: warning:
'ipw_send_qos_info_command' defined but not used
make[2]: *** [/var/tmp/portage/ipw2200-1.0.6-r1/work/ipw2200-1.0.6/ipw2200.o]
Error 1
make[1]: *** [_module_/var/tmp/portage/ipw2200-1.0.6-r1/work/ipw2200-1.0.6] Error 2
make[1]: Leaving directory `/usr/src/linux-2.6.13-ck1'
make: *** [modules] Error 2

!!! ERROR: net-wireless/ipw2200-1.0.6-r1 failed.
!!! Function linux-mod_src_compile, Line 460, Exitcode 2
!!! Unable to make                                  KSRC=/usr/src/linux
KSRC_OUTPUT=/usr/src/linux IEEE80211_INC=/usr/include all.
!!! If you need support, post the topmost build error, NOT this status messag
Comment 18 John Berry 2005-08-31 23:16:07 UTC
About the comment #14, I tried the manipulation, and if the association will
actually work (it doesn't with -Dipw, same problem as #11), my computer freezes
completely about one minute after I launched wpa_supplicant, regardless of what
I'm doing (just stay waiting on the console is sufficient). I'm using ipw2100
with a WPA-encrypted AP.
Comment 19 Valentin Longchamp 2005-09-02 02:03:25 UTC
it's the same for me with a 2.6.12 kernel (with patches : ck, software-suspend2,
reiser4, but nothing about the wireless !)

centrino net # emerge info
Portage 2.0.51.22-r2 (default-linux/x86/2005.0, gcc-3.4.4, glibc-2.3.5-r1,
2.6.12-cj4 i686)
=================================================================
System uname: 2.6.12-cj4 i686 Intel(R) Pentium(R) M processor 1600MHz
Gentoo Base System version 1.12.0_pre7
ccache version 2.4 [enabled]
dev-lang/python:     2.3.5, 2.4.1-r1
sys-apps/sandbox:    1.2.12
sys-devel/autoconf:  2.13, 2.59-r7
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6
sys-devel/binutils:  2.16.1
sys-devel/libtool:   1.5.20
virtual/os-headers:  2.6.11-r2
ACCEPT_KEYWORDS="x86 ~x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -march=pentium-m -fomit-frame-pointer"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config
/usr/lib/X11/xkb /usr/share/config /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/splash /etc/terminfo /etc/texmf/web2c
/etc/env.d"
CXXFLAGS="-O2 -march=pentium-m -fomit-frame-pointer"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig ccache distlocks sandbox sfperms strict"
GENTOO_MIRRORS="ftp://mirror.switch.ch/mirror/gentoo/          
ftp://ftp.solnet.ch/mirror/Gentoo"
LANG="fr_CH.UTF-8"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="x86 X acpi alsa apm aredmem avi berkdb bitmap-fonts cdr crd crypt cups curl
divx4linux dvd eds emboss encode esd fam foomaticdb fortran ftp gd gdbm gif
gnome gphoto2 gpm gstreamer gtk gtk2 hal icq imagemagick imlib ipv6 java jpeg
junit libg++ libwww mad mikmod mmx mp3 mpeg ncurses nls nptl nptlonly ogg
oggvorbis opengl oss pam pda pdflib perl png posix python quicktime readline
real samba sdl spell sse sse2 ssl tcpd tetex tiff truetype truetype-fonts
type1-fonts usb vorbis xml2 xv xvid zlib userland_GNU kernel_linux elibc_glibc"
Unset:  ASFLAGS, CTARGET, LC_ALL, LDFLAGS, LINGUAS, MAKEOPTS

centrino net # emerge -av ipw2100

These are the packages that I would merge, in order:

Calculating dependencies ...done!
[ebuild     U ] net-wireless/ipw2100-1.1.2-r2 [1.1.2-r1] -debug 0 kB

Total size of downloads: 0 kB

Do you want me to merge these packages? [Yes/No] y
>>> emerge (1 of 1) net-wireless/ipw2100-1.1.2-r2 to /
>>> md5 files   ;-) ipw2100-1.1.0.ebuild
>>> md5 files   ;-) ipw2100-1.0.5.ebuild
>>> md5 files   ;-) ipw2100-1.1.2-r1.ebuild
>>> md5 files   ;-) ipw2100-1.1.1.ebuild
>>> md5 files   ;-) ipw2100-1.1.2.ebuild
>>> md5 files   ;-) ipw2100-1.1.2-r2.ebuild
>>> md5 files   ;-) files/ipw2100-1.1.0-suspend2.patch
>>> md5 files   ;-) files/digest-ipw2100-1.1.0
>>> md5 files   ;-) files/ipw2100-1.0.5-suspend2.patch
>>> md5 files   ;-) files/digest-ipw2100-1.0.5
>>> md5 files   ;-) files/ipw2100-1.0.5-is_multicast_ether_addr.patch
>>> md5 files   ;-) files/ipw2100-1.1.0-is_multicast_ether_addr.patch
>>> md5 files   ;-) files/digest-ipw2100-1.1.1
>>> md5 files   ;-) files/digest-ipw2100-1.1.2
>>> md5 files   ;-) files/digest-ipw2100-1.1.2-r1
>>> md5 files   ;-) files/ipw2100-1.1.2-ieee80211-1.0.3.patch
>>> md5 files   ;-) files/digest-ipw2100-1.1.2-r2
>>> md5 files   ;-) files/ipw2100-1.1.2-suspend2.patch
>>> md5 src_uri ;-) ipw2100-1.1.2.tgz
 * Determining the location of the kernel source code
 * Found kernel source directory:
 *     /usr/src/linux
 * Found sources for kernel version:
 *     2.6.12-cj4
 * Checking for suitable kernel configuration options
>>> Unpacking source...
>>> Unpacking ipw2100-1.1.2.tgz to /var/tmp/portage/ipw2100-1.1.2-r2/work
 * Applying ipw2100-1.1.2-ieee80211-1.0.3.patch ...                            
                 [ ok ] * Applying ipw2100-1.1.2-suspend2.patch ...            
                                        [ ok ]>>> Source unpacked.
 *
 * You may safely ignore any errors from compilation that contain
 * warnings about undefined references to the ieee80211 subsystem.
 *
 * Preparing ipw2100 module
mkdir -p /var/tmp/portage/ipw2100-1.1.2-r2/work/ipw2100-1.1.2/tmp/.tmp_versions
cp /usr/include/*.mod
/var/tmp/portage/ipw2100-1.1.2-r2/work/ipw2100-1.1.2/tmp/.tmp_versions
cp: cannot stat `/usr/include/*.mod': No such file or directory
make: [modules] Error 1 (ignored)
make -C /usr/src/linux M=/var/tmp/portage/ipw2100-1.1.2-r2/work/ipw2100-1.1.2
MODVERDIR=/var/tmp/portage/ipw2100-1.1.2-r2/work/ipw2100-1.1.2/tmp/.tmp_versions
modules
make[1]: Entering directory `/usr/src/linux-2.6.12-cj4'
  CC [M]  /var/tmp/portage/ipw2100-1.1.2-r2/work/ipw2100-1.1.2/ipw2100.o
/var/tmp/portage/ipw2100-1.1.2-r2/work/ipw2100-1.1.2/ipw2100.c:6153:45: macro
"create_workqueue" requires 2 arguments, but only 1 given
/var/tmp/portage/ipw2100-1.1.2-r2/work/ipw2100-1.1.2/ipw2100.c: In function
`ipw2100_alloc_device':
/var/tmp/portage/ipw2100-1.1.2-r2/work/ipw2100-1.1.2/ipw2100.c:6153: error:
`create_workqueue' undeclared (first use in this function)
/var/tmp/portage/ipw2100-1.1.2-r2/work/ipw2100-1.1.2/ipw2100.c:6153: error:
(Each undeclared identifier is reported only once
/var/tmp/portage/ipw2100-1.1.2-r2/work/ipw2100-1.1.2/ipw2100.c:6153: error: for
each function it appears in.)
make[2]: *** [/var/tmp/portage/ipw2100-1.1.2-r2/work/ipw2100-1.1.2/ipw2100.o]
Error 1
make[1]: *** [_module_/var/tmp/portage/ipw2100-1.1.2-r2/work/ipw2100-1.1.2] Error 2
make[1]: Leaving directory `/usr/src/linux-2.6.12-cj4'
make: *** [modules] Error 2

!!! ERROR: net-wireless/ipw2100-1.1.2-r2 failed.
!!! Function linux-mod_src_compile, Line 460, Exitcode 2
!!! Unable to make                                  KSRC=/usr/src/linux
KSRC_OUTPUT=/usr/src/linux IEEE80211_INC=/usr/include all.
!!! If you need support, post the topmost build error, NOT this status message.
Comment 20 Valentin Longchamp 2005-09-02 02:07:52 UTC
(In reply to comment #19)
> it's the same for me with a 2.6.12 kernel (with patches : ck, software-suspend2,
> reiser4, but nothing about the wireless !)
> 

OOps, I found out that actually it comes from software-suspend2 :
http://lists.suspend2.net/lurker/message/20050226.011514.34b3709b.en.html

sorry about posting on that bug !
Comment 21 Lee Trager 2005-09-02 22:04:24 UTC
I just tried with the latest ebuild and I get the same thing. Has anyone solved
this yet?
Comment 22 Henrik Brix Andersen 2005-09-03 02:10:28 UTC
(In reply to comment #21)
> I just tried with the latest ebuild and I get the same thing. Has anyone solved
> this yet?

Please, we do not need anymore "me too"s on this bug report. It's a known
problem caused by upstream not wanting to compile against the ieee80211
subsystem included in linux-2.6.13, as already explained in comment #8 - which
also contains a work-around.
Comment 23 Lee Trager 2005-09-03 14:44:10 UTC
(In reply to comment #22)
> (In reply to comment #21)
> > I just tried with the latest ebuild and I get the same thing. Has anyone solved
> > this yet?
> 
> Please, we do not need anymore "me too"s on this bug report. It's a known
> problem caused by upstream not wanting to compile against the ieee80211
> subsystem included in linux-2.6.13, as already explained in comment #8 - which
> also contains a work-around.
umm this wasnt a me to. Your solution does NOT fix the problem all it does it
make it compile. Once you boot into 2.6.13 it will not connect to any network.
The only work around for that is to stay on 2.6.12.
Comment 24 Henrik Brix Andersen 2005-09-03 15:48:12 UTC
(In reply to comment #23)
> umm this wasnt a me to. Your solution does NOT fix the problem all it does it
> make it compile. Once you boot into 2.6.13 it will not connect to any network.
> The only work around for that is to stay on 2.6.12.

This is another bug, unrelated to this one. Did you try ipw2200-1.0.6-r2?

Comment 25 Jakub Moc (RETIRED) gentoo-dev 2005-09-04 13:37:56 UTC
*** Bug 104837 has been marked as a duplicate of this bug. ***
Comment 26 Alfredo J. Fabretti 2005-09-04 13:47:01 UTC
This solution doesn't work using ipw2200-1.0.6-r2

It compiles, but then doesn't work.

This is the output of emerge after removing the library from kernel 2.6.13 as
said for bug #97397

nyah linux # ACCEPT_KEYWORDS=~amd64 emerge  ipw2200
Calculating dependencies ...done!
>>> emerge (1 of 1) net-wireless/ipw2200-1.0.6-r2 to /
>>> md5 files   ;-) ipw2200-1.0.1.ebuild
>>> md5 files   ;-) ipw2200-1.0.6-r1.ebuild
>>> md5 files   ;-) ipw2200-1.0.5.ebuild
>>> md5 files   ;-) ipw2200-1.0.3.ebuild
>>> md5 files   ;-) ipw2200-1.0.4.ebuild
>>> md5 files   ;-) ipw2200-1.0.6.ebuild
>>> md5 files   ;-) ipw2200-1.0.6-r2.ebuild
>>> md5 files   ;-) files/ipw2200-1.0.1-suspend2.patch
>>> md5 files   ;-) files/digest-ipw2200-1.0.1
>>> md5 files   ;-) files/ipw2200-1.0.3-suspend2.patch
>>> md5 files   ;-) files/digest-ipw2200-1.0.3
>>> md5 files   ;-) files/digest-ipw2200-1.0.6-r1
>>> md5 files   ;-) files/digest-ipw2200-1.0.4
>>> md5 files   ;-) files/ipw2200-1.0.3-is_multicast_ether_addr.patch
>>> md5 files   ;-) files/ipw2200-1.0.4-is_multicast_ether_addr.patch
>>> md5 files   ;-) files/digest-ipw2200-1.0.5
>>> md5 files   ;-) files/digest-ipw2200-1.0.6
>>> md5 files   ;-) files/ipw2200-1.0.1-is_multicast_ether_addr.patch
>>> md5 files   ;-) files/ipw2200-1.0.6-hwcrypt-wpa-fix4.patch
>>> md5 files   ;-) files/ipw2200-1.0.6-suspend2.patch
>>> md5 files   ;-) files/digest-ipw2200-1.0.6-r2
>>> md5 files   ;-) files/ipw2200-1.0.6-broadcast.patch
>>> md5 src_uri ;-) ipw2200-1.0.6.tgz
 * Determining the location of the kernel source code
 * Found kernel source directory:
 *     /usr/src/linux
 * Found sources for kernel version:
 *     2.6.13-gentoo
 * Checking for suitable kernel configuration options
>>> Unpacking source...
>>> Unpacking ipw2200-1.0.6.tgz to /usr/tmp/portage/ipw2200-1.0.6-r2/work
 * Applying ipw2200-1.0.6-hwcrypt-wpa-fix4.patch ...                      [ ok ]
 * Applying ipw2200-1.0.6-suspend2.patch ...                              [ ok ]
 * Applying ipw2200-1.0.6-broadcast.patch ...                             [ ok ]
>>> Source unpacked.
 *
 * You may safely ignore any errors from compilation that contain
 * warnings about undefined references to the ieee80211 subsystem.
 *
 * Preparing ipw2200 module
mkdir -p /usr/tmp/portage/ipw2200-1.0.6-r2/work/ipw2200-1.0.6/tmp/.tmp_versions
cp /usr/include/*.mod
/usr/tmp/portage/ipw2200-1.0.6-r2/work/ipw2200-1.0.6/tmp/.tmp_versions
cp: cannot stat `/usr/include/*.mod': No such file or directory
make: [modules] Error 1 (ignored)
make -C /usr/src/linux M=/usr/tmp/portage/ipw2200-1.0.6-r2/work/ipw2200-1.0.6
MODVERDIR=/usr/tmp/portage/ipw2200-1.0.6-r2/work/ipw2200-1.0.6/tmp/.tmp_versions
modules
make[1]: Entering directory `/usr/src/linux-2.6.13-gentoo'
  CC [M]  /usr/tmp/portage/ipw2200-1.0.6-r2/work/ipw2200-1.0.6/ipw2200.o
  Building modules, stage 2.
  MODPOST
*** Warning: "free_ieee80211"
[/usr/tmp/portage/ipw2200-1.0.6-r2/work/ipw2200-1.0.6/ipw2200.ko] undefined!
*** Warning: "alloc_ieee80211"
[/usr/tmp/portage/ipw2200-1.0.6-r2/work/ipw2200-1.0.6/ipw2200.ko] undefined!
*** Warning: "ieee80211_wx_get_encode"
[/usr/tmp/portage/ipw2200-1.0.6-r2/work/ipw2200-1.0.6/ipw2200.ko] undefined!
*** Warning: "ieee80211_wx_set_encode"
[/usr/tmp/portage/ipw2200-1.0.6-r2/work/ipw2200-1.0.6/ipw2200.ko] undefined!
*** Warning: "ieee80211_wx_get_scan"
[/usr/tmp/portage/ipw2200-1.0.6-r2/work/ipw2200-1.0.6/ipw2200.ko] undefined!
*** Warning: "ieee80211_freq_to_channel"
[/usr/tmp/portage/ipw2200-1.0.6-r2/work/ipw2200-1.0.6/ipw2200.ko] undefined!
*** Warning: "ieee80211_rx_mgt"
[/usr/tmp/portage/ipw2200-1.0.6-r2/work/ipw2200-1.0.6/ipw2200.ko] undefined!
*** Warning: "ieee80211_rx"
[/usr/tmp/portage/ipw2200-1.0.6-r2/work/ipw2200-1.0.6/ipw2200.ko] undefined!
*** Warning: "ieee80211_channel_to_index"
[/usr/tmp/portage/ipw2200-1.0.6-r2/work/ipw2200-1.0.6/ipw2200.ko] undefined!
*** Warning: "ieee80211_wx_get_encodeext"
[/usr/tmp/portage/ipw2200-1.0.6-r2/work/ipw2200-1.0.6/ipw2200.ko] undefined!
*** Warning: "ieee80211_wx_set_encodeext"
[/usr/tmp/portage/ipw2200-1.0.6-r2/work/ipw2200-1.0.6/ipw2200.ko] undefined!
*** Warning: "ieee80211_get_geo"
[/usr/tmp/portage/ipw2200-1.0.6-r2/work/ipw2200-1.0.6/ipw2200.ko] undefined!
*** Warning: "ieee80211_txb_free"
[/usr/tmp/portage/ipw2200-1.0.6-r2/work/ipw2200-1.0.6/ipw2200.ko] undefined!
*** Warning: "ieee80211_is_valid_channel"
[/usr/tmp/portage/ipw2200-1.0.6-r2/work/ipw2200-1.0.6/ipw2200.ko] undefined!
  CC      /usr/tmp/portage/ipw2200-1.0.6-r2/work/ipw2200-1.0.6/ipw2200.mod.o
  LD [M]  /usr/tmp/portage/ipw2200-1.0.6-r2/work/ipw2200-1.0.6/ipw2200.ko
make[1]: Leaving directory `/usr/src/linux-2.6.13-gentoo'
>>> Test phase [not enabled]: net-wireless/ipw2200-1.0.6-r2

>>> Install ipw2200-1.0.6-r2 into /usr/tmp//portage/ipw2200-1.0.6-r2/image/
category net-wireless
 * Installing ipw2200 module
 * Preparing file for modules.d ...                                       [ ok ]
man:
prepallstrip:
strip: x86_64-pc-linux-gnu-strip --strip-unneeded
>>> Completed installing ipw2200-1.0.6-r2 into
/usr/tmp//portage/ipw2200-1.0.6-r2/image/

>>> Merging net-wireless/ipw2200-1.0.6-r2 to /
--- /lib/
--- /lib/modules/
--- /lib/modules/2.6.13-gentoo/
--- /lib/modules/2.6.13-gentoo/net/
--- /lib/modules/2.6.13-gentoo/net/wireless/
>>> /lib/modules/2.6.13-gentoo/net/wireless/ipw2200.ko
--- /etc/
--- /etc/modules.d/
>>> /etc/modules.d/ipw2200
--- /usr/
--- /usr/share/
--- /usr/share/doc/
--- /usr/share/doc/ipw2200-1.0.6-r2/
>>> /usr/share/doc/ipw2200-1.0.6-r2/README.ipw2200.gz
>>> /usr/share/doc/ipw2200-1.0.6-r2/CHANGES.gz
>>> /usr/share/doc/ipw2200-1.0.6-r2/ISSUES.gz
>>> Safely unmerging already-installed instance...
--- !mtime obj /usr/share/doc/ipw2200-1.0.6-r2/README.ipw2200.gz
--- !mtime obj /usr/share/doc/ipw2200-1.0.6-r2/ISSUES.gz
--- !mtime obj /usr/share/doc/ipw2200-1.0.6-r2/CHANGES.gz
--- cfgpro obj /lib/modules/2.6.13-gentoo/net/wireless/ipw2200.ko
--- cfgpro dir /lib/modules/2.6.13-gentoo/net/wireless
--- cfgpro dir /lib/modules/2.6.13-gentoo/net
--- cfgpro dir /lib/modules/2.6.13-gentoo
--- cfgpro obj /etc/modules.d/ipw2200
--- cfgpro dir /etc/modules.d
--- !empty dir /usr/share/doc/ipw2200-1.0.6-r2
--- !empty dir /usr/share/doc
--- !empty dir /usr/share
--- !empty dir /usr
--- !empty dir /lib/modules
--- !empty dir /lib
--- !empty dir /etc
 * Removing net-wireless/ipw2200-1.0.6-r2 from moduledb.
>>> original instance of package unmerged safely.
 * Updating module dependencies for 2.6.13-gentoo ...
WARNING: //lib/modules/2.6.13-gentoo/net/wireless/ipw2200.ko needs unknown
symbol ieee80211_wx_get_encodeext
WARNING: //lib/modules/2.6.13-gentoo/net/wireless/ipw2200.ko needs unknown
symbol ieee80211_wx_set_encode
WARNING: //lib/modules/2.6.13-gentoo/net/wireless/ipw2200.ko needs unknown
symbol ieee80211_wx_get_encode
WARNING: //lib/modules/2.6.13-gentoo/net/wireless/ipw2200.ko needs unknown
symbol ieee80211_txb_free
WARNING: //lib/modules/2.6.13-gentoo/net/wireless/ipw2200.ko needs unknown
symbol ieee80211_wx_set_encodeext
WARNING: //lib/modules/2.6.13-gentoo/net/wireless/ipw2200.ko needs unknown
symbol ieee80211_wx_get_scan
WARNING: //lib/modules/2.6.13-gentoo/net/wireless/ipw2200.ko needs unknown
symbol ieee80211_freq_to_channel
WARNING: //lib/modules/2.6.13-gentoo/net/wireless/ipw2200.ko needs unknown
symbol ieee80211_rx
WARNING: //lib/modules/2.6.13-gentoo/net/wireless/ipw2200.ko needs unknown
symbol ieee80211_channel_to_index
WARNING: //lib/modules/2.6.13-gentoo/net/wireless/ipw2200.ko needs unknown
symbol ieee80211_rx_mgt
WARNING: //lib/modules/2.6.13-gentoo/net/wireless/ipw2200.ko needs unknown
symbol ieee80211_get_geo
WARNING: //lib/modules/2.6.13-gentoo/net/wireless/ipw2200.ko needs unknown
symbol free_ieee80211
WARNING: //lib/modules/2.6.13-gentoo/net/wireless/ipw2200.ko needs unknown
symbol ieee80211_is_valid_channel
WARNING: //lib/modules/2.6.13-gentoo/net/wireless/ipw2200.ko needs unknown
symbol alloc_ieee80211                                                         [
ok ]
 * Adding module to moduledb.
>>> Regenerating /etc/ld.so.cache...
>>> net-wireless/ipw2200-1.0.6-r2 merged.

>>> clean: No packages selected for removal.

>>> Auto-cleaning packages ...

>>> No outdated packages were found on your system.


 * GNU info directory index is up-to-date.




Loading the module:

nyah linux # modprobe ipw2200
FATAL: Error inserting ipw2200
(/lib/modules/2.6.13-gentoo/net/wireless/ipw2200.ko): Unknown symbol in module,
or unknown parameter (see dmesg)



DMESG output:
ipw2200: Unknown symbol ieee80211_wx_get_encodeext
ipw2200: Unknown symbol ieee80211_wx_set_encode
ipw2200: Unknown symbol ieee80211_wx_get_encode
ipw2200: Unknown symbol ieee80211_txb_free
ipw2200: Unknown symbol ieee80211_wx_set_encodeext
ipw2200: Unknown symbol ieee80211_wx_get_scan
ipw2200: Unknown symbol ieee80211_freq_to_channel
ipw2200: Unknown symbol ieee80211_rx
ipw2200: Unknown symbol ieee80211_channel_to_index
ipw2200: Unknown symbol ieee80211_rx_mgt
ipw2200: Unknown symbol ieee80211_get_geo
ipw2200: Unknown symbol free_ieee80211
ipw2200: Unknown symbol ieee80211_is_valid_channel
ipw2200: Unknown symbol alloc_ieee80211
ipw2200: Unknown symbol ieee80211_wx_get_encodeext
ipw2200: Unknown symbol ieee80211_wx_set_encode
ipw2200: Unknown symbol ieee80211_wx_get_encode
ipw2200: Unknown symbol ieee80211_txb_free
ipw2200: Unknown symbol ieee80211_wx_set_encodeext
ipw2200: Unknown symbol ieee80211_wx_get_scan
ipw2200: Unknown symbol ieee80211_freq_to_channel
ipw2200: Unknown symbol ieee80211_rx
ipw2200: Unknown symbol ieee80211_channel_to_index
ipw2200: Unknown symbol ieee80211_rx_mgt
ipw2200: Unknown symbol ieee80211_get_geo
ipw2200: Unknown symbol free_ieee80211
ipw2200: Unknown symbol ieee80211_is_valid_channel
ipw2200: Unknown symbol alloc_ieee80211
Comment 27 Henrik Brix Andersen 2005-09-04 14:15:49 UTC
(In reply to comment #26)
> This solution doesn't work using ipw2200-1.0.6-r2
> 
> It compiles, but then doesn't work.

Please avoid cluttering this report with useless information. You likely forgot
to remerge net-wireless/ieee80211 after upgrading your kernel.
Comment 28 Lee Trager 2005-09-04 14:44:28 UTC
(In reply to comment #27)
> (In reply to comment #26)
> > This solution doesn't work using ipw2200-1.0.6-r2
> > 
> > It compiles, but then doesn't work.
> 
> Please avoid cluttering this report with useless information. You likely forgot
> to remerge net-wireless/ieee80211 after upgrading your kernel.
> 

No, this is the same problem I and my others have been having. While you can
compile it once you boot into 2.6.13 you can not connect to any network.
Comment 29 alex f 2005-09-06 02:04:26 UTC
With 2.6.14 still weeks away (and probably lots of -stable 2.6.13.x coming up) I
think the workaround is very weak. Please fix.
Comment 30 Doug Goldstein (RETIRED) gentoo-dev 2005-09-06 08:31:48 UTC
Alex: You've got to be kidding me. What kind of request is that? The issue is
that the kernel contains a file that is not compatible with this driver. What
exactly do you want the fix to be?

Lee: Brix's comment wasn't aimed at you. Notice how he replied to Alfredo?

EVERYONE ELSE!!

THE SOLUTION IS THE FOLLOWING:
If you do not use the in-kernel orinoco driver, you can safely remove the
/usr/src/linux/include/net/ieee80211.h file from linux-2.6.13 -
ieee80211/ipw2x00 should then compile cleanly.

THEN RE-COMPILE ieee80211 and ipw2200.

ANY other issues are a seperate bug. If people still insist on posting pointless
comments to this bug, I'll start eatting Bugzilla accounts for lunch.

End of debate. Last comment to this bug.
Comment 31 Henrik Brix Andersen 2005-09-06 08:34:46 UTC
Additionally, a check for this has been introduced in
net-wireless/ieee80211-1.0.3-r2. It will bail out if the in-kernel ieee80211.h
header file is found, instructing the user to remove it.

Closing as UPSTREAM.
Comment 32 Jakub Moc (RETIRED) gentoo-dev 2005-10-28 19:43:49 UTC
*** Bug 110762 has been marked as a duplicate of this bug. ***