On 18.11.2013, at 16:32, Alexander Graf <ag...@suse.de> wrote:

> 
> On 16.11.2013, at 01:55, Paul Mackerras <pau...@samba.org> wrote:
> 
>> On Fri, Nov 15, 2013 at 04:35:00PM +0800, Liu Ping Fan wrote:
>>> Since kvmppc_hv_find_lock_hpte() is called from both virtmode and
>>> realmode, so it can trigger the deadlock.
>>> 
>>> Suppose the following scene:
>>> 
>>> Two physical cpuM, cpuN, two VM instances A, B, each VM has a group of
>>> vcpus.
>>> 
>>> If on cpuM, vcpu_A_1 holds bitlock X (HPTE_V_HVLOCK), then is switched
>>> out, and on cpuN, vcpu_A_2 try to lock X in realmode, then cpuN will be
>>> caught in realmode for a long time.
>>> 
>>> What makes things even worse if the following happens,
>>> On cpuM, bitlockX is hold, on cpuN, Y is hold.
>>> vcpu_B_2 try to lock Y on cpuM in realmode
>>> vcpu_A_2 try to lock X on cpuN in realmode
>>> 
>>> Oops! deadlock happens
>>> 
>>> Signed-off-by: Liu Ping Fan <pingf...@linux.vnet.ibm.com>
>> 
>> Reviewed-by: Paul Mackerras <pau...@samba.org>
> 
> Thanks, applied to kvm-ppc-queue.

Actually, I've changed my mind and moved the patch to the for-3.13 branch 
instead. Please make sure to CC kvm@vger on all patches you submit though.


Alex

_______________________________________________
Linuxppc-dev mailing list
Linuxppc-dev@lists.ozlabs.org
https://lists.ozlabs.org/listinfo/linuxppc-dev

Reply via email to