2019-10-02 12:25:30

by Ivan Khoronzhuk

[permalink] [raw]
Subject: [PATCH bpf-next 0/2] selftest/bpf: remove warns for enable_all_controllers

This micro series fixes annoying warn described in patches
while samples/bpf build. Second patch fixes new warn that
comes after fixing warn of first patch, that was masked.

Ivan Khoronzhuk (2):
selftests/bpf: add static to enable_all_controllers()
selftests/bpf: correct path to include msg + path

tools/testing/selftests/bpf/cgroup_helpers.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

--
2.17.1


2019-10-02 12:28:01

by Ivan Khoronzhuk

[permalink] [raw]
Subject: [PATCH bpf-next 2/2] selftests/bpf: correct path to include msg + path

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 <[email protected]>
---
tools/testing/selftests/bpf/cgroup_helpers.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

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, "");

--
2.17.1

2019-10-02 12:28:08

by Ivan Khoronzhuk

[permalink] [raw]
Subject: [PATCH bpf-next 1/2] selftests/bpf: add static to enable_all_controllers()

Add static to enable_all_controllers() to get rid from annoying warn:

samples/bpf/../../tools/testing/selftests/bpf/cgroup_helpers.c:44:5:
warning: no previous prototype for ‘enable_all_controllers’
[-Wmissing-prototypes]
int enable_all_controllers(char *cgroup_path)

while samples/bpf build.

Signed-off-by: Ivan Khoronzhuk <[email protected]>
---
tools/testing/selftests/bpf/cgroup_helpers.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/testing/selftests/bpf/cgroup_helpers.c b/tools/testing/selftests/bpf/cgroup_helpers.c
index e95c33e333a4..4d74f3c4619b 100644
--- a/tools/testing/selftests/bpf/cgroup_helpers.c
+++ b/tools/testing/selftests/bpf/cgroup_helpers.c
@@ -41,7 +41,7 @@
*
* If successful, 0 is returned.
*/
-int enable_all_controllers(char *cgroup_path)
+static int enable_all_controllers(char *cgroup_path)
{
char path[PATH_MAX + 1];
char buf[PATH_MAX];
--
2.17.1

2019-10-02 16:28:30

by Song Liu

[permalink] [raw]
Subject: Re: [PATCH bpf-next 1/2] selftests/bpf: add static to enable_all_controllers()



> On Oct 2, 2019, at 5:04 AM, Ivan Khoronzhuk <[email protected]> wrote:
>
> Add static to enable_all_controllers() to get rid from annoying warn:
>
> samples/bpf/../../tools/testing/selftests/bpf/cgroup_helpers.c:44:5:
> warning: no previous prototype for ‘enable_all_controllers’
> [-Wmissing-prototypes]
> int enable_all_controllers(char *cgroup_path)
>
> while samples/bpf build.
>
> Signed-off-by: Ivan Khoronzhuk <[email protected]>

Acked-by: Song Liu <[email protected]>

2019-10-02 16:32:35

by Song Liu

[permalink] [raw]
Subject: Re: [PATCH bpf-next 2/2] selftests/bpf: correct path to include msg + path



> On Oct 2, 2019, at 5:04 AM, Ivan Khoronzhuk <[email protected]> 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 <[email protected]>


Acked-by: Song Liu <[email protected]>

2019-10-03 16:00:21

by Daniel Borkmann

[permalink] [raw]
Subject: Re: [PATCH bpf-next 0/2] selftest/bpf: remove warns for enable_all_controllers

On Wed, Oct 02, 2019 at 03:04:02PM +0300, Ivan Khoronzhuk wrote:
> This micro series fixes annoying warn described in patches
> while samples/bpf build. Second patch fixes new warn that
> comes after fixing warn of first patch, that was masked.
>
> Ivan Khoronzhuk (2):
> selftests/bpf: add static to enable_all_controllers()
> selftests/bpf: correct path to include msg + path
>
> tools/testing/selftests/bpf/cgroup_helpers.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)

Applied, thanks!