[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [RFC 01/10] target-arm: protect cpu_exclusive_*.
From: |
Paolo Bonzini |
Subject: |
Re: [Qemu-devel] [RFC 01/10] target-arm: protect cpu_exclusive_*. |
Date: |
Tue, 03 Mar 2015 16:34:50 +0100 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.4.0 |
On 03/03/2015 16:33, Mark Burton wrote:
>
>> On 3 Mar 2015, at 16:32, Paolo Bonzini <address@hidden> wrote:
>>
>>
>>
>> On 03/03/2015 16:29, Mark Burton wrote:
>>>
>>> ps. on our bug - we believe somehow the STREX is being marked as
>>> failed, but actually succeeds to write something. There are only 3
>>> ways the strex can fail: 1/ the address doesn't match - in which case
>>> no ST will be attempted 2/ the value doesn't match - which means - no
>>> ST attempted 3/ the store starts, but causes a TLB fill/exception…
>>>
>>> The 3rd has 2 possibilities - the TLB is filled, and the store goes
>>> ahead totally normally - there should be no ‘fail’ - or an exception
>>> is generated in which case we will long jump away and never return.
>>
>> When do you release the lock?
>>
> (Thanks Paolo!)
>
> We release the lock in either
> a) the end of the strex
> or
> b) in the ‘raise_exception’
That seems right... Can you post the patch?
Paolo