Re: [PATCH] net-sysfs: Slightly optimize 'xps_queue_show()'

From: Christophe JAILLET
Date: Mon Nov 22 2021 - 14:11:01 EST


Le 22/11/2021 à 16:23, Xin Long a écrit :
On Sun, Nov 21, 2021 at 2:38 PM Christophe JAILLET
<christophe.jaillet@xxxxxxxxxx> wrote:

The 'mask' bitmap is local to this function. So the non-atomic
'__set_bit()' can be used to save a few cycles.

Signed-off-by: Christophe JAILLET <christophe.jaillet@xxxxxxxxxx>
---
net/core/net-sysfs.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/net/core/net-sysfs.c b/net/core/net-sysfs.c
index 9c01c642cf9e..3be3f4a6add3 100644
--- a/net/core/net-sysfs.c
+++ b/net/core/net-sysfs.c
@@ -1452,7 +1452,7 @@ static ssize_t xps_queue_show(struct net_device *dev, unsigned int index,

for (i = map->len; i--;) {
if (map->queues[i] == index) {
- set_bit(j, mask);
+ __set_bit(j, mask);
break;
}
}
--
2.30.2

The similar optimization can seem to be done in br_vlan.c and br_if.c as well.


Hi,

br_if.c should be fixed in cc0be1ad686f.

br_vlan.c was not spotted by my heuristic (a set of grep, while looking at something else). So, thanks for your feedback.

Feel free to propose a patch for it, it was not part of my todo list :)

If you prefer, I can also send a patch. Let me know.

CJ