tools/mm: -Werror fixes in page-types/slabinfo
Subsystems (2)
PATCH 1/1 tools/mm: -Werror fixes in page-types/slabinfo
Commit e6d2c436ff693 ("tools/mm: allow users to provide additional cflags/ldflags") passes now CFLAGS to Makefile. With this, build systems with default -Werror enabled found:
slabinfo.c:1300:25: error: ignoring return value of 'chdir' declared with attribute 'warn_unused_result' [-Werror=unused-result] chdir("..");
^~~~~~~~~~~
page-types.c:397:35: error: format '%lu' expects argument of type 'long unsigned int', but argument 2 has type 'uint64_t' {aka 'long long unsigned int'} [-Werror=format=] printf("%lu\t", mapcnt0);
~~^ ~~~~~~~
..
Fix page-types by using PRIu64 for uint64_t prints and check in slabinfo for return code on chdir("..").
---
tools/mm/page-types.c | 9 +++++----
tools/mm/slabinfo.c | 3 ++-
2 files changed, 7 insertions(+), 5 deletions(-)
tools/mm/page-types.c +0 -0
@@ -22,6 +22,7 @@
#include <time.h>
#include <setjmp.h>
#include <signal.h>
+#include <inttypes.h>
#include <sys/types.h>
#include <sys/errno.h>
#include <sys/fcntl.h>
@@ -392,9 +393,9 @@ static void show_page_range(unsigned long voffset, unsigned long offset, if (opt_file)
printf("%lx\t", voff);
if (opt_list_cgroup)
- printf("@%llu\t", (unsigned long long)cgroup0);
+ printf("@%" PRIu64 "\t", cgroup0);
if (opt_list_mapcnt)
- printf("%lu\t", mapcnt0);
+ printf("%" PRIu64 "\t", mapcnt0);
printf("%lx\t%lx\t%s\n",
index, count, page_flag_name(flags0));
}
@@ -420,9 +421,9 @@ static void show_page(unsigned long voffset, unsigned long offset, if (opt_file)
printf("%lx\t", voffset);
if (opt_list_cgroup)
- printf("@%llu\t", (unsigned long long)cgroup);
+ printf("@%" PRIu64 "\t", cgroup);
if (opt_list_mapcnt)
- printf("%lu\t", mapcnt);
+ printf("%" PRIu64 "\t", mapcnt);
printf("%lx\t%s\n", offset, page_flag_name(flags));
}
tools/mm/slabinfo.c +0 -0
@@ -1297,7 +1297,8 @@ static void read_slab_dir(void)
slab->cpu_partial_free = get_obj("cpu_partial_free"); slab->alloc_node_mismatch = get_obj("alloc_node_mismatch"); slab->deactivate_bypass = get_obj("deactivate_bypass"); - chdir("..");
+ if (chdir(".."))
+ fatal("Unable to chdir from slab ../%s\n", slab->name); if (slab->name[0] == ':')
alias_targets++;
slab++;
Signature · 1 line
2.39.3.dirty
Andrew Morton
maintainerQuoted 15 lines · On Tue, 22 Oct 2024 19:21:13 +0200 Wladislav Wiebe <[email protected]>…
Commit
e6d2c436ff693("tools/mm: allow users to provide additional cflags/ldflags") passes now CFLAGS toMakefile. With this, build systems with default -Werror enabled found:slabinfo.c:1300:25: error: ignoring return value of 'chdir' declared with attribute '
warn_unused_result' [-Werror=unused-result]chdir("..");
^~~~~~~~~~~
page-types.c:397:35: error: format '%lu' expects argument of type 'long unsigned int', but argument 2 has type 'uint64_t' {aka 'long long unsigned int'} [-Werror=format=]printf("%lu\t", mapcnt0);
~~^ ~~~~~~~
..
Quoted 3 lines
Fix page-types by using PRIu64 for
uint64_tprints and check in slabinfo for return code onchdir("..").
Thanks.
Your email client messed this up in strange ways, so I basically typed it in again. I added the Fixes: target and a cc:stable.
Quoted 17 lines · Andrew Morton
Quoted 15 lines · On Tue, 22 Oct 2024 19:21:13 +0200 Wladislav Wiebe <[email protected]>…
Commit
e6d2c436ff693("tools/mm: allow users to provide additional cflags/ldflags") passes now CFLAGS toMakefile. With this, build systems with default -Werror enabled found:slabinfo.c:1300:25: error: ignoring return value of 'chdir' declared with attribute '
warn_unused_result' [-Werror=unused-result]chdir("..");
^~~~~~~~~~~
page-types.c:397:35: error: format '%lu' expects argument of type 'long unsigned int', but argument 2 has type 'uint64_t' {aka 'long long unsigned int'} [-Werror=format=]printf("%lu\t", mapcnt0);
~~^ ~~~~~~~
..
Quoted 7 lines
Quoted 3 lines
Fix page-types by using PRIu64 for
uint64_tprints and check in slabinfo for return code onchdir("..").Thanks.
Your email client messed this up in strange ways, so I basically typed it in again. I added the Fixes: target and a cc:stable.
thanks for the feedback, seems something went wrong after updating my mail client, I will fix it.