Merge pull request #4010 from ogniK5377/reserve-always-break

kernel: ResourceLimit::Reserve remove useless while loop
This commit is contained in:
bunnei 2020-06-12 22:30:19 -04:00 committed by GitHub
commit e1911e5c8b
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -24,13 +24,9 @@ bool ResourceLimit::Reserve(ResourceType resource, s64 amount, u64 timeout) {
const std::size_t index{ResourceTypeToIndex(resource)}; const std::size_t index{ResourceTypeToIndex(resource)};
s64 new_value = current[index] + amount; s64 new_value = current[index] + amount;
while (new_value > limit[index] && available[index] + amount <= limit[index]) { if (new_value > limit[index] && available[index] + amount <= limit[index]) {
// TODO(bunnei): This is wrong for multicore, we should wait the calling thread for timeout // TODO(bunnei): This is wrong for multicore, we should wait the calling thread for timeout
new_value = current[index] + amount; new_value = current[index] + amount;
if (timeout >= 0) {
break;
}
} }
if (new_value <= limit[index]) { if (new_value <= limit[index]) {