Bug 556 - module install locations
: module install locations
Status: VERIFIED FIXED
: IPW2200
__UNSPECIFIED__
: 0.22
: All All
: P2 normal
Assigned To:
:
:
:
:
:
  Show dependency treegraph
 
Reported: 2005-01-29 09:03 by
Modified: 2005-10-06 15:21 (History)


Attachments


Note

You need to log in before you can comment on or make changes to this bug.


Description From 2005-01-29 09:03:16
Beginning with the update kernel 2.6.9-1.724, Fedora Core 3 kernels come with an
early version of the ipw2100, ipw2200, and ieee80211 modules. These modules are
installed in the directories

/lib/modules/<version./kernel/drivers/net/wireless/ieee80211
/lib/modules/<version./kernel/drivers/net/wireless/ipw2100
/lib/modules/<version./kernel/drivers/net/wireless/ipw2200

Users who are not aware of this change may install from source and end up with
two sets of modules installed. So far the solution has been to remove the above
listed directories, install from source, and reboot.

A better solution might be for the ipw2x00 developers to change the installation
directories used by these projects to conform to the above locations or else
file a bug with FC3 project requesting that the FC3 installation directories be
changed.

Beginning with the FC3 2.6.9-1.724 update kernels, these kernels are compiled
with the 

CONFIG_IEEE80211=m
# CONFIG_IEEE80211_DEBUG is not set
CONFIG_IEEE80211_CRYPT=m
CONFIG_IEEE80211_WPA=m
CONFIG_IEEE80211_CRYPT_CCMP=m
CONFIG_IEEE80211_CRYPT_TKIP=m
CONFIG_IPW2100=m
# CONFIG_IPW_DEBUG is not set
CONFIG_IPW2100_PROMISC=y
# CONFIG_IPW2100_LEGACY_FW_LOAD is not set
CONFIG_IPW2200=m

These settings seem shorted sighted. As a general rule, I suggest that debugging
be turned on and continue to be turned until a driver reaches sufficient
maturity. To allow the general user to help with debugging, it would be
preferable to use the configuration

CONFIG_IPW_DEBUG=y
# CONFIG_IPW2100_PROMISC is not set

until ipw2200 reaches the 1.0 level.

If you aggree, I suggest you file a bug with the FC3 project asking for this change.
------- Comment #1 From 2005-01-31 11:15:58 -------
External kernel modules should not install to /lib/modules/`uname -r`/kernel/ by
default - this is reserved for in-kernel modules.

The described problem exists everywhere in the *nix world. Take for instance
/usr/local/bin vs. /usr/bin.

I suggest closing this bug report as WONTFIX or INVALID since it, from a *nix
point of view, is a user error.
------- Comment #2 From 2005-02-01 08:43:50 -------
I am closing this bug. But if this is the rule, 

"External kernel modules should not install to /lib/modules/`uname -r`/kernel/
by default - this is reserved for in-kernel modules."

then a 'make install' is currently violating this rule.
------- Comment #3 From 2005-03-24 02:56:56 -------
Reopen the bug to get more input on the question asked by Bill Moss. 

------- Comment #4 From 2005-03-24 07:12:04 -------
Brix -- where should external modules install into?  Is there a "standardish"
location for them that is included in depmod paths?  Currently 'make install'
will install the modules into /lib/modules/`uname
-r`/kernel/drivers/net/wireless/  Is there a better location?

Thanks,
James
------- Comment #5 From 2005-03-24 07:49:54 -------
Setting to needsmoredata.
------- Comment #6 From 2005-03-25 08:08:02 -------
Well... it makes more sense to install them to /lib/modules/`uname
-r`/drivers/net/wireless/ as this path will not be overwritten when running
'make modules_install' in the kernel sources.

It's Gentoo policy to install in-kernel modules to /lib/modules/`uname
-r`/kernel/foo/ and all external kernel modules to /lib/modules/`uname -r`/foo/
------- Comment #7 From 2005-03-31 07:13:35 -------
Fixed in 1.0.3 w/ install location changed to /lib/modules/`uname
-r`/drivers/net/wireless
------- Comment #8 From 2005-04-11 00:52:54 -------
The bug is verified in ipw2200 1.0.3.
------- Comment #9 From 2005-04-13 19:36:43 -------
Install 1.0.3 to FC3 will cause 2 sets of ipw2200 drivers in /lib/modules/`uname
-r` and confuse depmod. The result is neither driver will be load by modprobe. I
suggest rolling back to /lib/modules/`uname -r`/kernel/drivers/net/wireless. If
you are building an external module, you're not going to use the old in-kernel
one. So just override it.
------- Comment #10 From 2005-04-14 06:50:43 -------
I would rather modify 'make install' to scan the depmod path looking for old
versions and warn the user than roll back.  Otherwise every time you do a 'make
modules_install' in your kernel tree you will lose the ipw* and ieee* drivers.
------- Comment #11 From 2005-04-17 09:22:08 -------
Marking this bug as fixed, and opened a new bug #636 to track comment #10.