Code: Difference between revisions

From KVM
Line 23: Line 23:
This kit converts a virtio-capable kernel into a package that can generate linux guest drivers for older kernels.                                                                                                 
This kit converts a virtio-capable kernel into a package that can generate linux guest drivers for older kernels.                                                                                                 


  git clone git://git.kernel.org/pub/scm/virt/kvm/kvm-guest-drivers-linux.git
  git clone git://git.kernel.org/pub/scm/virt/kvm/kvm-guest-drivers-linux.git
                                                                           


The corresponding kernel tree can found in the <code>virtio</code> branch of <code>kvm.git</code>.
The corresponding kernel tree can found in the <code>virtio</code> branch of <code>kvm.git</code>.

Revision as of 05:48, 5 February 2009

kernel git tree

The kvm kernel code is available through a git tree. To create a repository using git, type

git clone git://git.kernel.org/pub/scm/linux/kernel/git/avi/kvm.git

Alternatively, it is also accessible through the kernel.org gitweb interface: [1]

For subsequent upgrades use the command

git-pull

in the git working dir.

userspace git tree

The kvm userspace code (libkvm and qemu) is available through a git tree. To create a repository using git, type

git clone git://git.kernel.org/pub/scm/virt/kvm/kvm-userspace.git

Alternatively, it is also accessible through the kernel.org gitweb interface: [2]

linux guest drivers kit

This kit converts a virtio-capable kernel into a package that can generate linux guest drivers for older kernels.

git clone git://git.kernel.org/pub/scm/virt/kvm/kvm-guest-drivers-linux.git

The corresponding kernel tree can found in the virtio branch of kvm.git.

building an external module with older kernels

/!\ This only works for the x86 architecture.

If you wish to use a distribution kernel (or just some random kernel you like) with kvm, you can get both the userspace and kernel (via git). In the userspace toplevel directory, type

./configure
cd kernel
make sync LINUX=/path/to/kvm/git/tree
cd ..
make


There are three important directories in this scenario:

|| kvm-userspace || Already contains a "kernel" subdirectory from a kvm.git snapshot. The files in thisdirectory can be overwritten by make sync. ||
|| host kernel tree || Older kernel you want to use newer KVM modules with. Refer to it with configure --kerneldir. ||
|| kvm kernel tree (from git) || Used as the source of the KVM modules. Refer to it with LINUX=path in make sync. ||

release tags

kvm releases are tagged with kvm-nn where nn is the release number.

Binary Packages

CentOS / RHEL

Unofficial packages of latest releases can be found at http://www.lfarkas.org/linux/packages/centos/5/

nightly snapshots

Nightly snapshots, for those who are uncomfortable with git, are available. When reporting a problem with a snapshot, please quote the snapshot name (which includes the date) and the contents of the SOURCES file in the snapshot tarball.