Em Mon, Feb 08, 2021 at 06:11:57PM +0000, Paul Cercueil escreveu:
ftw() has been obsolete for about 12 years now.
Fixes: bb1c15b60b98 ("perf stat: Support regex pattern in --for-each-cgroup") CC: stable@vger.kernel.org Signed-off-by: Paul Cercueil paul@crapouillou.net
Notes: NOTE: Not runtime-tested, I have no idea what I need to do in perf to test this. But at least it compiles now with my uClibc-based toolchain.
Seems safe from reading the nftw() man page, the only typeflag that this code is using is FTW_D and that is present in both ftw() and nftw().
Applying,
- Arnaldo
tools/perf/util/cgroup.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/tools/perf/util/cgroup.c b/tools/perf/util/cgroup.c index 5dff7e489921..f24ab4585553 100644 --- a/tools/perf/util/cgroup.c +++ b/tools/perf/util/cgroup.c @@ -161,7 +161,7 @@ void evlist__set_default_cgroup(struct evlist *evlist, struct cgroup *cgroup) /* helper function for ftw() in match_cgroups and list_cgroups */ static int add_cgroup_name(const char *fpath, const struct stat *sb __maybe_unused,
int typeflag)
int typeflag, struct FTW *ftwbuf __maybe_unused)
{ struct cgroup_name *cn; @@ -209,12 +209,12 @@ static int list_cgroups(const char *str) if (!s) return -1; /* pretend if it's added by ftw() */
ret = add_cgroup_name(s, NULL, FTW_D);
} else {ret = add_cgroup_name(s, NULL, FTW_D, NULL); free(s); if (ret) return -1;
if (add_cgroup_name("", NULL, FTW_D) < 0)
}if (add_cgroup_name("", NULL, FTW_D, NULL) < 0) return -1;
@@ -247,7 +247,7 @@ static int match_cgroups(const char *str) prefix_len = strlen(mnt); /* collect all cgroups in the cgroup_list */
- if (ftw(mnt, add_cgroup_name, 20) < 0)
- if (nftw(mnt, add_cgroup_name, 20, 0) < 0) return -1;
for (;;) { -- 2.30.0