Re: [RFC][PATCH 0/2] Fix guest shared interrupt with in-kernel irqchip

2008-10-10 Thread Amit Shah
* On Friday 03 Oct 2008 16:07:54 Sheng Yang wrote: > @@ -319,15 +319,23 @@ static int kvm_vm_ioctl_assign_device(struct kvm > *kvm, > > list_add(&match->list, &kvm->arch.assigned_dev_head); > > + r = kvm_request_irq_source_id(kvm); This should be done in the kvm_vm_ioctl_assign_irq call

Re: [RFC][PATCH 0/2] Fix guest shared interrupt with in-kernel irqchip

2008-10-08 Thread Sheng Yang
On Friday 03 October 2008 15:36:53 Amit Shah wrote: > * On Thursday 02 Oct 2008 22:15:59 Sheng Yang wrote: > > /* This should be called with the kvm->lock mutex held */ > > -void kvm_set_irq(struct kvm *kvm, int irq, int level) > > +void kvm_set_irq(struct kvm *kvm, int irq, int level, int irq_sou

Re: [RFC][PATCH 0/2] Fix guest shared interrupt with in-kernel irqchip

2008-10-05 Thread Sheng Yang
On Mon, 2008-10-06 at 14:23 +0800, Sheng Yang wrote: > On Sat, 2008-10-04 at 11:47 +0300, Avi Kivity wrote: > > Sheng Yang wrote: > >> Derived from Avi's suggestion, now every call of kvm_set_irq() should offer > >> a irq_source_id, which is allocated by kvm_allocate_irq_sources(). We based > >> on

Re: [RFC][PATCH 0/2] Fix guest shared interrupt with in-kernel irqchip

2008-10-05 Thread Sheng Yang
On Sat, 2008-10-04 at 11:47 +0300, Avi Kivity wrote: > Sheng Yang wrote: >> Derived from Avi's suggestion, now every call of kvm_set_irq() should offer >> a irq_source_id, which is allocated by kvm_allocate_irq_sources(). We based >> on irq_source_id to identify irq source and implement logical OR

Re: [RFC][PATCH 0/2] Fix guest shared interrupt with in-kernel irqchip

2008-10-04 Thread Avi Kivity
Sheng Yang wrote: Derived from Avi's suggestion, now every call of kvm_set_irq() should offer a irq_source_id, which is allocated by kvm_allocate_irq_sources(). We based on irq_source_id to identify irq source and implement logical OR for shared level interrupts. The allocated irq_source_id can

Re: [RFC][PATCH 0/2] Fix guest shared interrupt with in-kernel irqchip

2008-10-04 Thread Avi Kivity
Sheng Yang wrote: Derived from Avi's suggestion, now every call of kvm_set_irq() should offer a irq_source_id, which is allocated by kvm_allocate_irq_sources(). We based on irq_source_id to identify irq source and implement logical OR for shared level interrupts. The allocated irq_source_id can

Re: [RFC][PATCH 0/2] Fix guest shared interrupt with in-kernel irqchip

2008-10-03 Thread Amit Shah
* On Friday 03 Oct 2008 16:07:54 Sheng Yang wrote: > > Just one thing: can you make the irq_source_id argument the 3rd one and > > the 'level' as the last one? It's clearer to think of it that way. > > Yeah, put the irq_source_id at the end of parameter list is a little ugly. > But I think it's bet

Re: [RFC][PATCH 0/2] Fix guest shared interrupt with in-kernel irqchip

2008-10-03 Thread Sheng Yang
On Fri, Oct 03, 2008 at 01:06:53PM +0530, Amit Shah wrote: > * On Thursday 02 Oct 2008 22:15:59 Sheng Yang wrote: > > > /* This should be called with the kvm->lock mutex held */ > > -void kvm_set_irq(struct kvm *kvm, int irq, int level) > > +void kvm_set_irq(struct kvm *kvm, int irq, int level, i

Re: [RFC][PATCH 0/2] Fix guest shared interrupt with in-kernel irqchip

2008-10-03 Thread Amit Shah
* On Thursday 02 Oct 2008 22:15:59 Sheng Yang wrote: > /* This should be called with the kvm->lock mutex held */ > -void kvm_set_irq(struct kvm *kvm, int irq, int level) > +void kvm_set_irq(struct kvm *kvm, int irq, int level, int irq_source_id) Just one thing: can you make the irq_source_id arg

Re: [RFC][PATCH 0/2] Fix guest shared interrupt with in-kernel irqchip

2008-10-02 Thread Sheng Yang
How about this one? Still untested. -- From: Sheng Yang <[EMAIL PROTECTED]> Date: Fri, 3 Oct 2008 00:07:20 +0800 Subject: [PATCH 1/1] KVM: Fix guest shared interrupt with in-kernel irqchip Derived from Avi's suggestion, now every call of kvm_set_irq() should offer a irq_source_id, which is alloca

Re: [RFC][PATCH 0/2] Fix guest shared interrupt with in-kernel irqchip

2008-10-02 Thread Sheng Yang
On Thu, Oct 02, 2008 at 04:27:18PM +0300, Avi Kivity wrote: > Yang, Sheng wrote: >> To deal with guest shared interrupt bug in in-kernel irqchip, we should: >> >> 1. Identify each level trig interrupt source. >> 2. Implement logical OR on the same IRQ line for each interrupt source. >> >> Here I ch

Re: [RFC][PATCH 0/2] Fix guest shared interrupt with in-kernel irqchip

2008-10-02 Thread Avi Kivity
Yang, Sheng wrote: To deal with guest shared interrupt bug in in-kernel irqchip, we should: 1. Identify each level trig interrupt source. 2. Implement logical OR on the same IRQ line for each interrupt source. Here I chose a simple method: the caller of kvm_set_irq() has responsiblity to identi

[RFC][PATCH 0/2] Fix guest shared interrupt with in-kernel irqchip

2008-10-02 Thread Yang, Sheng
To deal with guest shared interrupt bug in in-kernel irqchip, we should: 1. Identify each level trig interrupt source. 2. Implement logical OR on the same IRQ line for each interrupt source. Here I chose a simple method: the caller of kvm_set_irq() has responsiblity to identify interrupt sources,