Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 167106 - gentoo-sources-2.6.19-r4 - wep without module autoload is confusing
Summary: gentoo-sources-2.6.19-r4 - wep without module autoload is confusing
Status: RESOLVED INVALID
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Core system (show other bugs)
Hardware: x86 Linux
: High trivial (vote)
Assignee: Gentoo Kernel Bug Wranglers and Kernel Maintainers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2007-02-15 19:56 UTC by Daniel Barkalow
Modified: 2007-02-24 17:58 UTC (History)
3 users (show)

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


Attachments
.config (config-2.6.19-r5,39.40 KB, text/plain)
2007-02-16 04:00 UTC, Daniel Barkalow
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Daniel Barkalow 2007-02-15 19:56:08 UTC
I'm using ipw3945-1.2.0 and kernel 2.6.19-r4 (ieee80211 external module never applied to this set of kernel source). I enabled all of the options that ipw3945-1.2.0 demanded, and it worked for connecting to unencrypted networks (aside from ipw3945d-1.7.22-r4 not working for me, reported in a separate bug), but it claims that the network device doesn't support setting a WEP key. I then build the kernel module for WEP support, installed it, and rebooted, but I still don't get WEP support. I think I also tried rebuilding ipw3945-1.2.0 with the WEP option enabled in the kernel, but I'm not sure I got that far, because ipw3945d breakage may have sidetracked me from testing this effectively.

I then completely messed up my 2.6.19-r4 source trying to get the older ipw3945 to work with it, and then went back to older versions of everything for the night and so I could get network, so I'll be starting from scratch in my next attempt.

Reproducible: Always

Steps to Reproduce:
Comment 1 Jakub Moc (RETIRED) gentoo-dev 2007-02-15 21:22:15 UTC
Reopen with some logs output and kernel .config, we really can't guess.
Comment 2 Daniel Barkalow 2007-02-16 04:00:13 UTC
In dmesg I get:

 ieee80211_crypt_wep: could not allocate crypto API arc4
 wireless: could not initialize WEP: load module ieee80211_crypt_wep

From /etc/init.d/net.wireless start:

 Error for wireless request "Set Encode" (8B2A) :
     SET failed on device wireles ; Operation not supported.
  *   wireless does not support setting keys
  *   or the parameter "mac_key_newWLAN" and "key_newWLAN" is incorrect

Comment 3 Daniel Barkalow 2007-02-16 04:00:52 UTC
Created attachment 110355 [details]
.config
Comment 4 Daniel Barkalow 2007-02-17 18:12:50 UTC
It turns out that the crypto API module auto-loading support is defective. It works if I load "cryptomgr" and "ecb" (I already had arc4 loaded, so I don't know if it handles that). I'm reporting this upstream, but a workaround or at least a note to users would be helpful to future people with this issue.
Comment 5 Daniel Barkalow 2007-02-23 22:31:31 UTC
Turns out that I didn't have CONFIG_KMOD enabled, and module dependancies and udev were taking care of so much that I didn't realize that the kernel wasn't autoloading anything at all. It really comes down to confusing messages and comments for this case: the message from wep only mentions arc4, when it needs other things as well (which I think used to be inherent to the crypto system), and the core stuff doesn't give any feedback that it needs some particular module and autoloading isn't enabled.

It's also kind of confusing that wep selects ecb and cryptomgr in kbuild, but doesn't depend on them in depmod, and doesn't select KMOD, so you've got these modules installed because of wep, but they're still not available to wep.
Comment 6 Daniel Drake (RETIRED) gentoo-dev 2007-02-24 17:58:13 UTC
Thanks for the report, although as you have observed, this isn't a bug. You wouldn't have had this problem if you had compiled the items into your kernel as opposed to as modules. Users are commonly hit by unexpected behaviour when dealing with modules since the kernel really doesn't effort to load them for you (with a couple of exceptions such as this case in part) and it is not designed to either. The kernel configuration guide has some notes on this.