* Arnaldo Carvalho de Melo <a...@ghostprotocols.net> wrote:

> Em Wed, Oct 09, 2013 at 09:01:49AM +0200, Ingo Molnar escreveu:
> > Arnaldo,
> > 
> > Please pull the tools/perf/build git tree from:
> > 
> >    git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git 
> > tmp.tools/perf/build
> > 
> >    # HEAD: 165108a92fc554d51e73b143b69b77e7c278da78 tools/perf/build: Clean 
> > up feature_print_code()
> > 
> > This tree contains the build system speedup series described at:
> > 
> >    https://lkml.org/lkml/2013/10/7/199
> > 
> > Reviewed by David Ahern and Jiri Olsa (thanks guys!).
> 
> One problem I just noticed, and that is not preventing me from merging
> this now, as it has a (obvious) workaround:
> 
> If I try using O= I better make sure the directory it points to exists:
> 
> [acme@sandy linux]$ ls -la tools/perf/*.o tools/perf/util/*.o
> ls: cannot access tools/perf/*.o: No such file or directory
> ls: cannot access tools/perf/util/*.o: No such file or directory
> [acme@sandy linux]$ mkdir -p /tmp/build/perf/
> [acme@sandy linux]$ time make O=/tmp/build/perf -C tools/perf/ install-bin
> make: Entering directory `/home/acme/git/linux/tools/perf'
>     BUILD: Doing 'make -j8' parallel build
> 
> Auto-detecting system features:
> ...                     backtrace: [ on  ]
> ...                         dwarf: [ on  ]
> <SNIP>
> make: Leaving directory `/home/acme/git/linux/tools/perf'
> 
> real  0m2.751s
> user  0m4.270s
> sys   0m1.240s
> [acme@sandy linux]$ ls -la tools/perf/*.o tools/perf/util/*.o
> ls: cannot access tools/perf/*.o: No such file or directory
> ls: cannot access tools/perf/util/*.o: No such file or directory
> [acme@sandy linux]$ ls -la /tmp/build/perf/perf
> -rwxrwxr-x. 1 acme acme 9791281 Oct  9 11:32 /tmp/build/perf/perf
> [acme@sandy linux]$
> 
> ---------------------------------------------------------------------------------
> 
> Works as expected, but if I do:
> 
> [acme@sandy linux]$ rm -rf /tmp/build
> [acme@sandy linux]$ time make O=/tmp/build/perf -C tools/perf/ install-bin
> make: Entering directory `/home/acme/git/linux/tools/perf'
>     BUILD: Doing 'make -j8' parallel build
> 
> Auto-detecting system features:
> ...                     backtrace: [ on  ]
> <SNIP>
> make: Leaving directory `/home/acme/git/linux/tools/perf'
> 
> real  0m2.715s
> user  0m4.118s
> sys   0m1.204s
> [acme@sandy linux]$ ls -la tools/perf/*.o tools/perf/util/*.o | wc -l
> 94
> [acme@sandy linux]$ ls -la /tmp/build
> ls: cannot access /tmp/build: No such file or directory
> [acme@sandy linux]$
> 
> ---------------------------------------------------------------------------------
> 
> It silently ignores the O= target, as it doesn't exists.
> 
> Previous, expected behaviour is for the build process to stop, 
> complaining that the target directory doesn't exists.

Yeah. So the reproducer for me is:

 rm -rf /tmp/build
 mkdir -p /tmp/build/perf
 make O=/tmp/build/perf -C tools/perf/ install-bin
 rm -rf /tmp/build
 make O=/tmp/build/perf -C tools/perf/ install-bin

the second install-bin should fail, and on the old tree it fails correctly 
- but with the new tree it pretends that it succeeds.

Looking into it.

Thanks,

        Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to