From mboxrd@z Thu Jan 1 00:00:00 1970 From: Avi Kivity Subject: [PATCH 0/1] IRQ Routing Date: Tue, 13 Jan 2009 22:02:29 +0200 Message-ID: <1231876950-10092-1-git-send-email-avi@redhat.com> Cc: Marcelo Tosatti , kvm@vger.kernel.org To: Sheng Yang , Xiantao Zhang Return-path: Received: from mx2.redhat.com ([66.187.237.31]:48043 "EHLO mx2.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755731AbZAMUCe (ORCPT ); Tue, 13 Jan 2009 15:02:34 -0500 Sender: kvm-owner@vger.kernel.org List-ID: Following is my alternative to irq routing. The differences compared to Sheng's version are: - A single ioctl to replace the entire routing table, instead of add/remove ioctls for individual routing entries. Routing changes are rare, and we need to track the entire table in userspace anyway (for save/restore, and for user irqchip). As a side effect changes are atomic. - Interrupt numbers are allocated by userspace, instead of the kernel - I implemented irqchip routings rather then MSIs, it should be easy to add MSIs later on. Please review and comment. Avi Kivity (1): KVM: Userspace controlled irq routing arch/ia64/kvm/kvm-ia64.c | 5 ++ arch/x86/kvm/x86.c | 6 ++ include/linux/kvm.h | 33 +++++++++ include/linux/kvm_host.h | 31 +++++++++ virt/kvm/irq_comm.c | 168 ++++++++++++++++++++++++++++++++++++++++++++- virt/kvm/kvm_main.c | 25 +++++++ 6 files changed, 264 insertions(+), 4 deletions(-)