Features/virtio-scsi

= virtio-scsi =

Summary
A new storage architecture for KVM based on SCSI.

Owner

 * Name: Paolo Bonzini


 * Email: [mailto:pbonzini@redhat.com pbonzini@redhat.com]

Current status

 * Targeted release: Fedora 17
 * Last updated: 2011-02-07
 * Percentage of completion: 100%

Detailed Description
virtio-scsi improves the storage stack in terms of scalability (easily overcomes the current limit of ~30 freely hot-pluggable/unpluggable storage devices), flexibility (support features such as SCSI passthrough or persistent reservations), extensibility (exposing new features to the guest does not require updating drivers in both the host and the guest).

Benefit to Fedora
Fedora users will be able to use an industry-standard storage stack for their virtual machines.

Scope
The guest driver will be included as part of the distribution's kernel and as part of the seabios ROMs installed together with QEMU. The host drivers will be included in the qemu package. For Fedora 17, management tools based on libvirt will not support this yet.

How To Test

 * 1) Install the qemu-kvm package.
 * 2) Download an install image for this release of Fedora (network or DVD).
 * 3) Prepare a large file to be used as the disk for a Fedora virtual machine.
 * 4) Use the following command to install Fedora:.
 * 5) Reboot and test that the virtual machine can boot from the virtio-scsi hard disk.
 * 6) Use the following command to (re)install Fedora:  . The virtual machine will boot from the virtio-scsi image.

Dependencies
None.

Contingency Plan
Each piece (kernel, qemu, libvirt) can be included separately, so there is no need to revert partial changes.

Documentation
Since libvirt did not make the F17 deadline and documentation was supposed to be there, it still has to be written.

Release Notes
KVM supports a new advanced SCSI-based storage stack, virtio-scsi. Right now, virtio-scsi can be used on guests running Fedora 17. It will be included in the mainline kernel starting at release 3.4.

Comments and Discussion

 * See Talk:Features/virtio-scsi