lkml.org 
[lkml]   [2008]   [Dec]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
Subject[PATCH 0/12] Factor VT-d KVM functions into a generic API (with multiple device assignment support)
Date
Hi,

this patch series makes the current KVM device passthrough code generic
enough so that other IOMMU implementation can also plug into this code.
It works by factoring the functions Vt-d code exports to KVM into a
generic interface which allows different backends.

This is the second version of the patchset. The most important change to
the previous version is that this patchset was rebased to the improved
API from Han Weidong which supports multiple devices per IOMMU domain.

For completeness, this series also includes the patches from Han with
some cleanups. So this patchset can be applied on current avi/master
tree.

For testing this code can also be pulled against avi/master tree from

git://git.kernel.org/pub/scm/linux/kernel/git/joro/linux-2.6-iommu.git iommu-api

This a basic implementation of a generic interface. It can and should be
improved later to support more types of hardware IOMMUs then VT-d and
AMD IOMMU.

Since I have no VT-d hardware available these patches are only compile
tested for now.

Please review, comment and test these patches.

Thanks,

Joerg

diffstat:

arch/ia64/Kconfig | 3 +
arch/ia64/kvm/Makefile | 4 +-
arch/x86/Kconfig | 3 +
arch/x86/include/asm/kvm_host.h | 3 +-
arch/x86/kvm/Makefile | 4 +-
drivers/base/Makefile | 1 +
drivers/base/iommu.c | 100 ++++++
drivers/pci/dmar.c | 15 +-
drivers/pci/intel-iommu.c | 738 +++++++++++++++++++++++++++++++++------
include/linux/dma_remapping.h | 21 +-
include/linux/dmar.h | 2 +
include/linux/intel-iommu.h | 13 +-
include/linux/iommu.h | 109 ++++++
include/linux/kvm.h | 5 +
include/linux/kvm_host.h | 23 +-
virt/kvm/{vtd.c => iommu.c} | 131 +++++---
virt/kvm/kvm_main.c | 49 +++-






\
 
 \ /
  Last update: 2008-12-02 14:09    [W:0.060 / U:3.492 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site