a64_exclusive_monitor: Loosen memory ordering requirements

It is not necessary to be as strict as it was.
This commit is contained in:
MerryMage 2018-09-27 16:21:56 +01:00
parent 6e3e251031
commit 7c0378f56d

View file

@ -30,11 +30,11 @@ void ExclusiveMonitor::Mark(size_t processor_id, VAddr address, size_t size) {
}
void ExclusiveMonitor::Lock() {
while (is_locked.test_and_set()) {}
while (is_locked.test_and_set(std::memory_order_acquire)) {}
}
void ExclusiveMonitor::Unlock() {
is_locked.clear();
is_locked.clear(std::memory_order_release);
}
bool ExclusiveMonitor::CheckAndClear(size_t processor_id, VAddr address, size_t size) {