Bug 383921

Summary: kvm and kvm_* modules ignore blacklisting.
Product: [Fedora] Fedora Reporter: Paul Robinson <me>
Component: kvmAssignee: Glauber Costa <gcosta>
Status: CLOSED NEXTRELEASE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: low Docs Contact:
Priority: low    
Version: 8CC: berrange, lkundrak, mick.saunders, redhat-bugzilla
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: qemu-0.10.91-0.6.rc1.fc12 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2009-01-09 00:13:01 EST Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Description Paul Robinson 2007-11-14 23:12:10 EST
Description of problem:
On a machine with the kvm package loaded, adding the kvm modules to the
/etc/modprobe.d/blacklist file doesn't blacklist the kvm modules.


Version-Release number of selected component (if applicable):
happened in all version from f7 and i currently have version 36 kvm package.


How reproducible:
100%

Steps to Reproduce:
1. you need a machine with either pacifica or vanderpool hardware virtualization
extensions.
2. install the kvm package
3. insert the appropriate lines for kvm, kvm_intel (kvm-intel?), kvm_amd
(kvm-amd?) into /etc/modprobe.d/blacklist
4. reboot
5. lsmod |grep kvm should show kvm modules loaded into the kernel.
  
Actual results:
[root@radon ~]# lsmod |grep kvm
kvm_intel              21333  0 
kvm                    56565  1 kvm_intel


Expected results:
[root@radon ~]# lsmod |grep kvm
[root@radon ~]# 


Additional info:
I know that removing the kvm package will solve the issue - however it would be
nice to keep both kvm and vmware on the same machine in the same kernel and just
load the one that is needed.

Usually if i forget kvm is loaded and start a vmware vm, the machine will hang
(for obvious reasons). but the reverse isnt true so long as a vmware vm isnt
running.
Comment 1 Nathan G. Grennan 2008-05-29 16:05:50 EDT
I have the same problem on Fedora 9. I found the culprit.

/etc/sysconfig/modules/kvm.modules:

#!/bin/sh

if [ $(grep -c vmx /proc/cpuinfo) -ne 0 ]; then 
    modprobe kvm-intel >/dev/null 2>&1
fi

if [ $(grep -c svm /proc/cpuinfo) -ne 0 ]; then 
    modprobe kvm-amd >/dev/null 2>&1
fi
Comment 2 Glauber Costa 2008-05-30 10:32:40 EDT
A possible way would be to check for blacklisting in this script, since we're
not using any other kind of automatic loading beside this one.

Anyone see any cons of it ?
Comment 3 Daniel Berrange 2008-05-30 10:38:42 EDT
It is modprobe's job to check the blacklists - we shouldn't be duplicating that
functionality. modprobe should be fixed.
Comment 4 Nathan G. Grennan 2008-05-30 13:18:55 EDT
I think the blacklist is supposed to only be for auto-loading. Hence why
modprobe still works. Instead of let it be done automatically, it is done by
this script.
Comment 5 Bug Zapper 2008-11-26 03:26:43 EST
This message is a reminder that Fedora 8 is nearing its end of life.
Approximately 30 (thirty) days from now Fedora will stop maintaining
and issuing updates for Fedora 8.  It is Fedora's policy to close all
bug reports from releases that are no longer maintained.  At that time
this bug will be closed as WONTFIX if it remains open with a Fedora 
'version' of '8'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version' 
to a later Fedora version prior to Fedora 8's end of life.

Bug Reporter: Thank you for reporting this issue and we are sorry that 
we may not be able to fix it before Fedora 8 is end of life.  If you 
would still like to see this bug fixed and are able to reproduce it 
against a later version of Fedora please change the 'version' of this 
bug to the applicable version.  If you are unable to change the version, 
please add a comment here and someone will do it for you.

Although we aim to fix as many bugs as possible during every release's 
lifetime, sometimes those efforts are overtaken by events.  Often a 
more recent Fedora release includes newer upstream software that fixes 
bugs or makes them obsolete.

The process we are following is described here: 
http://fedoraproject.org/wiki/BugZappers/HouseKeeping
Comment 6 Bug Zapper 2009-01-09 00:13:01 EST
Fedora 8 changed to end-of-life (EOL) status on 2009-01-07. Fedora 8 is 
no longer maintained, which means that it will not receive any further 
security or bug fix updates. As a result we are closing this bug.

If you can reproduce this bug against a currently maintained version of 
Fedora please feel free to reopen this bug against that version.

Thank you for reporting this bug and we are sorry it could not be fixed.
Comment 7 Mick Saunders 2009-03-03 21:01:49 EST
I've reproduced this bug on Fedora 10. I have VMWare 2.0.x installed and have kqemu installed. On boot the /etc/sysconfig/modules/kvm.modules script loads the kvm_intel module if the CPU supports it. Unfortunately this interferes with VMs starting under VMWare on my system so I tried to blacklist it by adding the following to /etc/modprobe.d/blacklist:
#Blacklist KVM and KQEMU as we have vmware installed
blacklist kvm
blacklist kvm_intel
blacklist kqemu

Unfortunately since these modules are loaded by the kvm.modules script this blacklist is ignored.

Looking around on google I've noticed this bug has been around since FC5 as the parport module was loaded through a /etc/sysconfig/modules script and couldn't be blacklisted normally.

Why do these modules need to be loaded through an external script anyway?
Comment 8 Lubomir Rintel 2009-08-16 23:27:29 EDT
Fixed in qemu-0.10.91-0.6.rc1.fc12.