STREX always clears the exclusive access tag

Hello everybody,

Section 18.8 Exclusive access of Cortex-A Series Programmer's Guide says the following:

STREX can be considered as a conditional store. The store is performed only if the physical address is still marked as exclusive access (this means it was previously tagged by this core and no other core has since written to it). STREX returns a status value showing if the store succeeded. STREX always clears the exclusive access tag.

So my question is:


Could it be possible that STREX clears the exclusive access tag even when (for any reason) the operation did not succeed?


Thanks in advance!

More questions in this forum