[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] hvm_set_callback_irq_level() deadlock?


  • To: Akio Takebe <takebe_akio@xxxxxxxxxxxxxx>
  • From: Keir Fraser <keir.fraser@xxxxxxxxxxxxx>
  • Date: Wed, 07 Jan 2009 10:31:20 +0000
  • Cc: xen-devel <xen-devel@xxxxxxxxxxxxxxxxxxx>
  • Delivery-date: Wed, 07 Jan 2009 02:31:34 -0800
  • List-id: Xen developer discussion <xen-devel.lists.xensource.com>
  • Thread-index: AclwsxRfMNLdJ+kpd0aaVJxwv0gtQQ==
  • Thread-topic: [Xen-devel] hvm_set_callback_irq_level() deadlock?

On 07/01/2009 10:22, "Akio Takebe" <takebe_akio@xxxxxxxxxxxxxx> wrote:

>> Doesn't vioapic_irq_positive_edge() clearly expect to be called with that
>> lock held?
> I concern about that vioapic_deliver() calls vcpu_kick(). If vcpu0 has the
> lock and
> vcpu1 cannot get lock and spin then vcpu0 sleep in another function,
> it may cause deadlock because vioapic_irq_positive_edge() may call
> vcpu_kick().
> For example, the following function is OK?

I still don't see the problem. You'll have to spell out a concrete example,
explaining where the two CPUs would be spinning and what state they're in
(i.e, why they are depending on each other, and why no progress can be
made).

 -- Keir



_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.