forked from ShuriZma/suyu
Merge pull request #4010 from ogniK5377/reserve-always-break
kernel: ResourceLimit::Reserve remove useless while loop
This commit is contained in:
commit
e1911e5c8b
|
@ -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]) {
|
||||||
|
|
Loading…
Reference in New Issue