diff mbox series

[bpf-next,2/2] selftests/bpf: correct path to include msg + path

Message ID 20191002120404.26962-3-ivan.khoronzhuk@linaro.org (mailing list archive)
State Mainlined
Commit c588146378962786ddeec817f7736a53298a7b01
Headers show
Series selftest/bpf: remove warns for enable_all_controllers | expand

Commit Message

Ivan Khoronzhuk Oct. 2, 2019, 12:04 p.m. UTC
The "path" buf is supposed to contain path + printf msg up to 24 bytes.
It will be cut anyway, but compiler generates truncation warns like:

"
samples/bpf/../../tools/testing/selftests/bpf/cgroup_helpers.c: In
function ‘setup_cgroup_environment’:
samples/bpf/../../tools/testing/selftests/bpf/cgroup_helpers.c:52:34:
warning: ‘/cgroup.controllers’ directive output may be truncated
writing 19 bytes into a region of size between 1 and 4097
[-Wformat-truncation=]
snprintf(path, sizeof(path), "%s/cgroup.controllers", cgroup_path);
				  ^~~~~~~~~~~~~~~~~~~
samples/bpf/../../tools/testing/selftests/bpf/cgroup_helpers.c:52:2:
note: ‘snprintf’ output between 20 and 4116 bytes into a destination
of size 4097
snprintf(path, sizeof(path), "%s/cgroup.controllers", cgroup_path);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
samples/bpf/../../tools/testing/selftests/bpf/cgroup_helpers.c:72:34:
warning: ‘/cgroup.subtree_control’ directive output may be truncated
writing 23 bytes into a region of size between 1 and 4097
[-Wformat-truncation=]
snprintf(path, sizeof(path), "%s/cgroup.subtree_control",
				  ^~~~~~~~~~~~~~~~~~~~~~~
cgroup_path);
samples/bpf/../../tools/testing/selftests/bpf/cgroup_helpers.c:72:2:
note: ‘snprintf’ output between 24 and 4120 bytes into a destination
of size 4097
snprintf(path, sizeof(path), "%s/cgroup.subtree_control",
cgroup_path);
"

In order to avoid warns, lets decrease buf size for cgroup workdir on
24 bytes with assumption to include also "/cgroup.subtree_control" to
the address. The cut will never happen anyway.

Signed-off-by: Ivan Khoronzhuk <ivan.khoronzhuk@linaro.org>
---
 tools/testing/selftests/bpf/cgroup_helpers.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Song Liu Oct. 2, 2019, 4:28 p.m. UTC | #1
> On Oct 2, 2019, at 5:04 AM, Ivan Khoronzhuk <ivan.khoronzhuk@linaro.org> wrote:
> 
> The "path" buf is supposed to contain path + printf msg up to 24 bytes.
> It will be cut anyway, but compiler generates truncation warns like:
> 
> "
> samples/bpf/../../tools/testing/selftests/bpf/cgroup_helpers.c: In
> function ‘setup_cgroup_environment’:
> samples/bpf/../../tools/testing/selftests/bpf/cgroup_helpers.c:52:34:
> warning: ‘/cgroup.controllers’ directive output may be truncated
> writing 19 bytes into a region of size between 1 and 4097
> [-Wformat-truncation=]
> snprintf(path, sizeof(path), "%s/cgroup.controllers", cgroup_path);
> 				  ^~~~~~~~~~~~~~~~~~~
> samples/bpf/../../tools/testing/selftests/bpf/cgroup_helpers.c:52:2:
> note: ‘snprintf’ output between 20 and 4116 bytes into a destination
> of size 4097
> snprintf(path, sizeof(path), "%s/cgroup.controllers", cgroup_path);
> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> samples/bpf/../../tools/testing/selftests/bpf/cgroup_helpers.c:72:34:
> warning: ‘/cgroup.subtree_control’ directive output may be truncated
> writing 23 bytes into a region of size between 1 and 4097
> [-Wformat-truncation=]
> snprintf(path, sizeof(path), "%s/cgroup.subtree_control",
> 				  ^~~~~~~~~~~~~~~~~~~~~~~
> cgroup_path);
> samples/bpf/../../tools/testing/selftests/bpf/cgroup_helpers.c:72:2:
> note: ‘snprintf’ output between 24 and 4120 bytes into a destination
> of size 4097
> snprintf(path, sizeof(path), "%s/cgroup.subtree_control",
> cgroup_path);
> "
> 
> In order to avoid warns, lets decrease buf size for cgroup workdir on
> 24 bytes with assumption to include also "/cgroup.subtree_control" to
> the address. The cut will never happen anyway.
> 
> Signed-off-by: Ivan Khoronzhuk <ivan.khoronzhuk@linaro.org>


Acked-by: Song Liu <songliubraving@fb.com>
diff mbox series

Patch

diff --git a/tools/testing/selftests/bpf/cgroup_helpers.c b/tools/testing/selftests/bpf/cgroup_helpers.c
index 4d74f3c4619b..0fb910df5387 100644
--- a/tools/testing/selftests/bpf/cgroup_helpers.c
+++ b/tools/testing/selftests/bpf/cgroup_helpers.c
@@ -98,7 +98,7 @@  static int enable_all_controllers(char *cgroup_path)
  */
 int setup_cgroup_environment(void)
 {
-	char cgroup_workdir[PATH_MAX + 1];
+	char cgroup_workdir[PATH_MAX - 24];
 
 	format_cgroup_path(cgroup_workdir, "");