[PATCH -next] net/sched: use min() macro instead of doing it manually

Subsystems: networking [general], tc subsystem, the rest

STALE1756d

3 messages, 3 authors, 2021-12-21 · open the first message on its own page

[PATCH -next] net/sched: use min() macro instead of doing it manually

From: Yang Li <hidden>
Date: 2021-12-21 01:15:03

Fix following coccicheck warnings:
./net/sched/cls_api.c:3333:17-18: WARNING opportunity for min()
./net/sched/cls_api.c:3389:17-18: WARNING opportunity for min()
./net/sched/cls_api.c:3427:17-18: WARNING opportunity for min()

Reported-by: Abaci Robot <redacted>
Signed-off-by: Yang Li <redacted>
---
 net/sched/cls_api.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/net/sched/cls_api.c b/net/sched/cls_api.c
index c93699ddae36..a53c72e6d944 100644
--- a/net/sched/cls_api.c
+++ b/net/sched/cls_api.c
@@ -3333,7 +3333,7 @@ int tc_setup_cb_add(struct tcf_block *block, struct tcf_proto *tp,
 	up_read(&block->cb_lock);
 	if (take_rtnl)
 		rtnl_unlock();
-	return ok_count < 0 ? ok_count : 0;
+	return min(ok_count, 0);
 }
 EXPORT_SYMBOL(tc_setup_cb_add);
 
@@ -3389,7 +3389,7 @@ int tc_setup_cb_replace(struct tcf_block *block, struct tcf_proto *tp,
 	up_read(&block->cb_lock);
 	if (take_rtnl)
 		rtnl_unlock();
-	return ok_count < 0 ? ok_count : 0;
+	return min(ok_count, 0);
 }
 EXPORT_SYMBOL(tc_setup_cb_replace);
 
@@ -3427,7 +3427,7 @@ int tc_setup_cb_destroy(struct tcf_block *block, struct tcf_proto *tp,
 	up_read(&block->cb_lock);
 	if (take_rtnl)
 		rtnl_unlock();
-	return ok_count < 0 ? ok_count : 0;
+	return min(ok_count, 0);
 }
 EXPORT_SYMBOL(tc_setup_cb_destroy);
 
-- 
2.20.1.7.g153144c

Re: [PATCH -next] net/sched: use min() macro instead of doing it manually

From: patchwork-bot+netdevbpf@kernel.org
Date: 2021-12-21 10:20:15

Hello:

This patch was applied to netdev/net-next.git (master)
by David S. Miller [off-list ref]:

On Tue, 21 Dec 2021 09:14:55 +0800 you wrote:
Fix following coccicheck warnings:
./net/sched/cls_api.c:3333:17-18: WARNING opportunity for min()
./net/sched/cls_api.c:3389:17-18: WARNING opportunity for min()
./net/sched/cls_api.c:3427:17-18: WARNING opportunity for min()

Reported-by: Abaci Robot <redacted>
Signed-off-by: Yang Li <redacted>

[...]
Here is the summary with links:
  - [-next] net/sched: use min() macro instead of doing it manually
    https://git.kernel.org/netdev/net-next/c/c48c94b0ab75

You are awesome, thank you!
-- 
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html

Re: [PATCH -next] net/sched: use min() macro instead of doing it manually

From: Joe Perches <joe@perches.com>
Date: 2021-12-21 10:47:51

On Tue, 2021-12-21 at 10:20 +0000, patchwork-bot+netdevbpf@kernel.org
wrote:
Hello:

This patch was applied to netdev/net-next.git (master)
by David S. Miller [off-list ref]:

On Tue, 21 Dec 2021 09:14:55 +0800 you wrote:
quoted
Fix following coccicheck warnings:
./net/sched/cls_api.c:3333:17-18: WARNING opportunity for min()
./net/sched/cls_api.c:3389:17-18: WARNING opportunity for min()
./net/sched/cls_api.c:3427:17-18: WARNING opportunity for min()

Reported-by: Abaci Robot <redacted>
Signed-off-by: Yang Li <redacted>

[...]
Here is the summary with links:
  - [-next] net/sched: use min() macro instead of doing it manually
    https://git.kernel.org/netdev/net-next/c/c48c94b0ab75

You are awesome, thank you!
The patch contained instances like:

---
diff --git a/net/sched/cls_api.c b/net/sched/cls_api.c
[]
@@ -3333,7 +3333,7 @@ int tc_setup_cb_add(struct tcf_block *block, struct tcf_proto *tp,
 	up_read(&block->cb_lock);
 	if (take_rtnl)
 		rtnl_unlock();
-	return ok_count < 0 ? ok_count : 0;
+	return min(ok_count, 0);
 }
---
I think all of these min uses are somewhat obfuscating and not the
typically used kernel pattern.

If count is negative, it's an error return.

I believe the code would be clearer and more typical if written as:

	if (ok_count < 0)
		return ok_count;

	return 0;
}

The compiler should produce the same object code.

Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help