aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorAntoine Tenart <atenart@kernel.org>2024-10-17 17:24:18 +0200
committerPaolo Abeni <pabeni@redhat.com>2024-10-23 10:28:19 +0200
commita8cc8fa14541d6f8f1fbe78607a096e97c80179e (patch)
tree5170ada6a0e84f4bc762b943b20d805956d160ae
parentnet: sysctl: remove always-true condition (diff)
downloadwireguard-linux-a8cc8fa14541d6f8f1fbe78607a096e97c80179e.tar.xz
wireguard-linux-a8cc8fa14541d6f8f1fbe78607a096e97c80179e.zip
net: sysctl: do not reserve an extra char in dump_cpumask temporary buffer
When computing the length we'll be able to use out of the buffers, one char is removed from the temporary one to make room for a newline. It should be removed from the output buffer length too, but in reality this is not needed as the later call to scnprintf makes sure a null char is written at the end of the buffer which we override with the newline. Signed-off-by: Antoine Tenart <atenart@kernel.org> Signed-off-by: Paolo Abeni <pabeni@redhat.com>
-rw-r--r--net/core/sysctl_net_core.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/net/core/sysctl_net_core.c b/net/core/sysctl_net_core.c
index e7c0121dfaa1..8dc07f7b1772 100644
--- a/net/core/sysctl_net_core.c
+++ b/net/core/sysctl_net_core.c
@@ -62,7 +62,7 @@ static void dump_cpumask(void *buffer, size_t *lenp, loff_t *ppos,
return;
}
- len = min(sizeof(kbuf) - 1, *lenp);
+ len = min(sizeof(kbuf), *lenp);
len = scnprintf(kbuf, len, "%*pb", cpumask_pr_args(mask));
if (!len) {
*lenp = 0;