Messages in this thread | | | Date | Tue, 20 Nov 2018 12:56:04 -0300 | From | Arnaldo Carvalho de Melo <> | Subject | Re: [PATCH] perf tools: Restore proper cwd on return from mnt ns |
| |
Em Tue, Nov 20, 2018 at 11:56:18AM +0100, Jiri Olsa escreveu: > On Mon, Nov 19, 2018 at 08:10:06AM -0800, Arnaldo Carvalho de Melo wrote: > > Em Thu, Nov 01, 2018 at 06:00:01PM +0100, Jiri Olsa escreveu: > > > Adding the current working directory to be part of the cookie > > > and restoring it in the nsinfo__mountns_exit call. > > > > > diff --git a/tools/perf/util/namespaces.c b/tools/perf/util/namespaces.c > > > index cf8bd123cf73..fb0458b7e6aa 100644 > > > --- a/tools/perf/util/namespaces.c > > > +++ b/tools/perf/util/namespaces.c > > > > > @@ -199,9 +201,13 @@ void nsinfo__mountns_enter(struct nsinfo *nsi, > > > if (snprintf(curpath, PATH_MAX, "/proc/self/ns/mnt") >= PATH_MAX) > > > return; > > > > > + oldcwd = get_current_dir_name(); > > > > Breaks the build with bionic (Android), where get_current_dir_name() is > > not available: > > > > /tmp/build/perf/libperf.a(libperf-in.o):hist.c:function nsinfo__mountns_enter: error: undefined reference to 'get_current_dir_name' > > collect2: error: ld returned 1 exit status > > Makefile.perf:534: recipe for target '/tmp/build/perf/perf' failed > > make[2]: *** [/tmp/build/perf/perf] Error 1 > > Makefile.perf:206: recipe for target 'sub-make' failed > > make[1]: *** [sub-make] Error 2 > > Makefile:69: recipe for target 'all' failed > > make: *** [all] Error 2 > > make: Leaving directory '/git/linux/tools/perf' > > [root@seventh ~]# > > > > The container builds are ongoing, its possoble that this becomes an > > issue in uCLibc, wasn't on musl libc (Alpine Linux). > > will check, thanks
I fixed this already, by adding a test for that get_current_dir_name() function and a simple implementation based on strdup(getcwd(bf)), take a look at my perf/urgent branch
- Arnaldo
| |