diff mbox series

mm: memcontrol: simplify value comparison between count and limit

Message ID 1587479661-27237-1-git-send-email-kaixuxia@tencent.com (mailing list archive)
State New, archived
Headers show
Series mm: memcontrol: simplify value comparison between count and limit | expand

Commit Message

Kaixu Xia April 21, 2020, 2:34 p.m. UTC
From: Kaixu Xia <kaixuxia@tencent.com>

When the variables count and limit have the same value(count == limit),
the result of min(margin, limit - count) statement should be 0 and the
variable margin is set to 0. So in this case, the min() statement is not
necessary and we can directly set the variable margin to 0.

Signed-off-by: Kaixu Xia <kaixuxia@tencent.com>
---
 mm/memcontrol.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Michal Hocko April 21, 2020, 2:59 p.m. UTC | #1
On Tue 21-04-20 22:34:21, xiakaixu1987@gmail.com wrote:
> From: Kaixu Xia <kaixuxia@tencent.com>
> 
> When the variables count and limit have the same value(count == limit),
> the result of min(margin, limit - count) statement should be 0 and the
> variable margin is set to 0. So in this case, the min() statement is not
> necessary and we can directly set the variable margin to 0.

I expect that the compiler would generate the same code but there is no
reason to differ in memsw branch from the main limit check so the patch
looks ok to me.

> Signed-off-by: Kaixu Xia <kaixuxia@tencent.com>

 Acked-by: Michal Hocko <mhocko@suse.com>

> ---
>  mm/memcontrol.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/mm/memcontrol.c b/mm/memcontrol.c
> index 5beea03dd58a..fedc5afdc482 100644
> --- a/mm/memcontrol.c
> +++ b/mm/memcontrol.c
> @@ -1314,7 +1314,7 @@ static unsigned long mem_cgroup_margin(struct mem_cgroup *memcg)
>  	if (do_memsw_account()) {
>  		count = page_counter_read(&memcg->memsw);
>  		limit = READ_ONCE(memcg->memsw.max);
> -		if (count <= limit)
> +		if (count < limit)
>  			margin = min(margin, limit - count);
>  		else
>  			margin = 0;
> -- 
> 2.20.0
diff mbox series

Patch

diff --git a/mm/memcontrol.c b/mm/memcontrol.c
index 5beea03dd58a..fedc5afdc482 100644
--- a/mm/memcontrol.c
+++ b/mm/memcontrol.c
@@ -1314,7 +1314,7 @@  static unsigned long mem_cgroup_margin(struct mem_cgroup *memcg)
 	if (do_memsw_account()) {
 		count = page_counter_read(&memcg->memsw);
 		limit = READ_ONCE(memcg->memsw.max);
-		if (count <= limit)
+		if (count < limit)
 			margin = min(margin, limit - count);
 		else
 			margin = 0;