mm/damon/core: remove duplicate list_empty quota->goals check

damos_set_effective_quota() checks quota contidions but there are some
duplicate checks for quota->goals inside.

This patch reduces one of if statement to simplify the esz calculation
logic by setting esz as ULONG_MAX by default.

Link: https://lkml.kernel.org/r/20241125184307.41746-1-sj@kernel.org
Signed-off-by: Honggyu Kim <honggyu.kim@sk.com>
Reviewed-by: SeongJae Park <sj@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
This commit is contained in:
Honggyu Kim 2025-01-12 21:38:07 -08:00 committed by Andrew Morton
parent 1eefba2d86
commit d7336be056

View File

@ -1550,7 +1550,7 @@ static unsigned long damos_quota_score(struct damos_quota *quota)
static void damos_set_effective_quota(struct damos_quota *quota) static void damos_set_effective_quota(struct damos_quota *quota)
{ {
unsigned long throughput; unsigned long throughput;
unsigned long esz; unsigned long esz = ULONG_MAX;
if (!quota->ms && list_empty(&quota->goals)) { if (!quota->ms && list_empty(&quota->goals)) {
quota->esz = quota->sz; quota->esz = quota->sz;
@ -1572,10 +1572,7 @@ static void damos_set_effective_quota(struct damos_quota *quota)
quota->total_charged_ns; quota->total_charged_ns;
else else
throughput = PAGE_SIZE * 1024; throughput = PAGE_SIZE * 1024;
if (!list_empty(&quota->goals)) esz = min(throughput * quota->ms, esz);
esz = min(throughput * quota->ms, esz);
else
esz = throughput * quota->ms;
} }
if (quota->sz && quota->sz < esz) if (quota->sz && quota->sz < esz)