Address Feedback.

This commit is contained in:
Fernando Sahmkow 2020-04-22 11:14:40 -04:00
parent 39e5b72948
commit 4e37f1b113
3 changed files with 18 additions and 24 deletions

View file

@ -153,8 +153,8 @@ public:
bool MustFlushRegion(VAddr addr, std::size_t size) {
std::lock_guard lock{mutex};
std::vector<MapInterval> objects = GetMapsInRange(addr, size);
return std::any_of(objects.begin(), objects.end(), [](const MapInterval& map) {
const std::vector<MapInterval> objects = GetMapsInRange(addr, size);
return std::any_of(objects.cbegin(), objects.cend(), [](const MapInterval& map) {
return map->IsModified() && map->IsRegistered();
});
}
@ -176,7 +176,7 @@ public:
for (const auto& object : GetMapsInRange(addr, size)) {
if (object->IsMemoryMarked() && object->IsRegistered()) {
Unmark(object);
UnmarkMemory(object);
object->SetSyncPending(true);
marked_for_unregister.emplace_back(object);
}
@ -217,10 +217,7 @@ public:
}
bool ShouldWaitAsyncFlushes() const {
if (committed_flushes.empty()) {
return false;
}
return committed_flushes.front() != nullptr;
return !committed_flushes.empty() && committed_flushes.front() != nullptr;
}
bool HasUncommittedFlushes() const {
@ -294,7 +291,7 @@ protected:
}
}
void Unmark(const MapInterval& map) {
void UnmarkMemory(const MapInterval& map) {
if (!map->IsMemoryMarked()) {
return;
}
@ -305,7 +302,7 @@ protected:
/// Unregisters an object from the cache
void Unregister(const MapInterval& map) {
Unmark(map);
UnmarkMemory(map);
map->MarkAsRegistered(false);
if (map->IsSyncPending()) {
marked_for_unregister.remove(map);