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

Re: [Xen-devel] Deadlocks by p2m_lock and event_lock


  • To: "Jan Beulich" <JBeulich@xxxxxxxx>
  • From: "Andres Lagar-Cavilla" <andres@xxxxxxxxxxxxxxxx>
  • Date: Wed, 14 Mar 2012 07:18:23 -0700
  • Cc: Keir Fraser <keir@xxxxxxx>, "xen-devel@xxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxx>, Xudong Hao <xudong.hao@xxxxxxxxx>, Xiantao Zhang <xiantao.zhang@xxxxxxxxx>, Tim Deegan <tim@xxxxxxx>
  • Delivery-date: Wed, 14 Mar 2012 14:18:45 +0000
  • Domainkey-signature: a=rsa-sha1; c=nofws; d=lagarcavilla.org; h=message-id :in-reply-to:references:date:subject:from:to:cc:reply-to :mime-version:content-type:content-transfer-encoding; q=dns; s= lagarcavilla.org; b=YoTzGbjoYmDURiHWAZSJQUX79BR+5lSi59yY89akAE8v K9Ld+mevn9il2pTw1WfRVMZpN99s5QBkMw7EtxBRCDDlA5ZWvuS9g9gxF3wkxMHY imZ9RMRxMqObOXvsSbqcj/5pbVf6ux+mxCzHJG5F48s5qXrGqerS+95qy5PDbMs=
  • List-id: Xen developer discussion <xen-devel.lists.xen.org>

>>>> On 13.03.12 at 19:26, "Andres Lagar-Cavilla" <andres@xxxxxxxxxxxxxxxx>
>>>> wrote:
>>>  Hi, Tim and Andres
>>> The patch fix part of this issue. In handle_mmio, function
>>> hvmemul_do_io()
>>> is called and p2m lock was held again by calling get_gfn_unshare(),
>>> still
>>> trigger a deadlocks.
>>
>> I have a question before I dive into lock untangling
>>
>> msix_capability_init ->
>> p2m_change_entry_type_global(dev->domain, p2m_mmio_direct,
>> p2m_mmio_direct);
>>
>> Huh? This achieves ... nothing. Almost. It flushes a bunch of TLBs, but
>> that can be done with significantly less effort. Am I missing something?
>
> Yes - the purpose of this isn't to flush any TLBs, but to enforce the
> immediately preceding addition to the mmio_ro_ranges range set.

Because p2m entries of type mmio_direct have their permissions
(re)computed as a function of rangesets. Got it. Thanks.

Andres
>
> Jan
>
>



_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

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