Description of problem:
If a KVM guest is booted from a virtio disk, specified with "scsi_controller virtio_blk" in /etc/modprobe.conf, then mkinitrd should make sure virtio_pci is also loaded.
The kernel module virtio_blk cannot depend on virtio_pci because it can also work with the alternatives virtio_s390 (for s390 kvm) or virtio_lguest (for lguest). However, RHEL only supports KVM on x86-64, so it would be nice to make it work by default.
Steps to Reproduce:
1. install a KVM guest
2. configure the guest to use virtio, both on the host side and with "scsi_controller virtio_blk" in the guest
3. watch the guest fail to boot
It would be really nice if it just worked.
mkinitrd by default does not let the initrd rescan the block devices for the LVM VGs, so changing the block device from emulated IDE to virtio will also break a RHEL 5 guest in other ways. I'm filing another bug on that now :)
This request was evaluated by Red Hat Product Management for inclusion in a Red
Hat Enterprise Linux maintenance release. Product Management has requested
further review of this request by Red Hat Engineering, for potential
inclusion in a Red Hat Enterprise Linux Update release for currently deployed
products. This request is not yet committed for inclusion in an Update
can you be more verbose?
With RHEL5.5 and default install on RHEL6 KVM host the guesat is configured to use virtio by default. The modprobe.conf looks like:
alias scsi_hostadapter ata_piix
alias scsi_hostadapter1 virtio_blk
and the system boots successfully.
OK, then I guess we fixed the bug between then and now.