dkms does not remove module config lines it adds
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
dkms (Ubuntu) |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
Binary package hint: dkms
Description: Ubuntu 8.10
Release: 8.10
Platform: amd64
dkms:
Installed: 2.0.20.4-0ubuntu2
Candidate: 2.0.20.4-0ubuntu2
Version table:
*** 2.0.20.4-0ubuntu2 0
500 http://
100 /var/lib/
On an "ADD" event, dkms installs "MODULES_CONF" lines into /etc/modprobe.
However, it does not remove these on an "REMOVE" event, because the dkms script lacks a reference to /etc/modprobe.
The following snippets from /usr/sbin/dkms says it all:
--8<--
function moduleconfig_add ()
{
# $1 = kernel version
local temp_dir_
modconfig_
[ -e /etc/modprobe.
[ -e /etc/modules.conf ] && modconfig_
[ -e /etc/modprobe.conf ] && modconfig_
.conf"
--8<--
--8<--
function moduleconfig_remove ()
{
# $1 = kernel version
local temp_dir_
modconfig_
[ -e /etc/modules.conf ] && modconfig_
[ -e /etc/modprobe.conf ] && modconfig_
--8<--
As you can see, the moduleconfig_remove function doesn't do anything with /etc/modprobe.
By the way, if /etc/modules.conf exists, dkms is also completely forgotten about. I guess that for both functions, the following should be the best replacement code:
[ -e /etc/modprobe.
[ -e /etc/modules.conf ] && modconfig_
[ -e /etc/modprobe.conf ] && modconfig_
The bug is in the original and current dkms, I notified the dkms mailing list.