qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [big lock] Discussion about the convention of device's


From: liu ping fan
Subject: Re: [Qemu-devel] [big lock] Discussion about the convention of device's DMA each other after breaking down biglock
Date: Wed, 19 Sep 2012 17:19:48 +0800

On Wed, Sep 19, 2012 at 5:14 PM, Paolo Bonzini <address@hidden> wrote:
> Il 19/09/2012 11:11, liu ping fan ha scritto:
>>> > Why not? devA will drop its local lock, devX will retake the big lock
>>> > recursively, devB will take its local lock.  In the end, we have biglock
>>> > -> devB.
>>> >
>> But when adopting local lock, we assume take local lock, then biglock.
>
> No, because the local lock will be dropped before taking the biglock.
> The order must always be coarse->fine.
>
But if we takes coarse firstly, then the mmio-dispatcher will still
contend for the big lock against each other.

> I don't know if the front-end (device) lock should come before or after
> the back-end (e.g. netdev) lock in the hierarchy, but that's another story.
>
I think fine->coarse may be the rule, since for some code path, it is
not necessary to take coarse lock.

Thanks and regards,
pingfan
> Paolo
>
>> Otherwise another thread will take biglock then local lock, which
>> cause the possibility of deadlock.
>>
>



reply via email to

[Prev in Thread] Current Thread [Next in Thread]