[OE-core] [PATCH] perf: fail if src path does not exist

Martin Jansa martin.jansa at gmail.com
Sat Aug 11 12:58:37 UTC 2018


I think this will break support for older kernels added in:
http://git.openembedded.org/openembedded-core/commit/?id=19fb2d11a8bb3c6dfdd5edc1b9155d642dc0f5e0

kernel-source/tools/arch and kernel-source/tools/build are missing in 3.16
kernel even when it's not completely broken.

I'm not completely against this change, maybe just add to commit message
that for older kernels you need to add .bbappend which removes the
directories which really doesn't exist in your kernel version from PERF_SRC.

On Fri, Aug 10, 2018 at 4:55 PM Mikko Rapeli <mikko.rapeli at bmw.de> wrote:

> A missing src directory from a broken kernel recipe resulted
> only in a warning:
>
> WARNING: copyfile: stat of
> /home/builder/src/tmp-glibc/work-shared/target/kernel-source/tools/arch
> failed ([Errno 2] No such file or directory:
> '/home/builder/src/tmp-glibc/work-shared/target/kernel-source/tools/arch')
>
> With this change it's an error which can not be missed:
>
> ERROR: perf-1.0-r9 do_configure: Path does not exist:
> /home/builder/src/tmp-glibc/work-shared/target/kernel-source/tools/arch
> ERROR: perf-1.0-r9 do_configure: Function failed:
> copy_perf_source_from_kernel
> ERROR: Logfile of failure stored in:
> /home/builder/src/tmp-glibc/work/target-linux/perf/1.0-r9/temp/log.do_configure.21083
> NOTE: recipe perf-1.0-r9: task do_configure: Failed
> ERROR: Task (/home/builder/src/poky/meta/recipes-kernel/perf/perf.bb:do_configure)
> failed with exit code '1'
>
> Signed-off-by: Mikko Rapeli <mikko.rapeli at bmw.de>
> ---
>  meta/recipes-kernel/perf/perf.bb | 2 ++
>  1 file changed, 2 insertions(+)
>
> diff --git a/meta/recipes-kernel/perf/perf.bb b/meta/recipes-kernel/perf/
> perf.bb
> index 2c6bbb4..c07afeb 100644
> --- a/meta/recipes-kernel/perf/perf.bb
> +++ b/meta/recipes-kernel/perf/perf.bb
> @@ -147,6 +147,8 @@ python copy_perf_source_from_kernel() {
>      for s in sources:
>          src = oe.path.join(src_dir, s)
>          dest = oe.path.join(dest_dir, s)
> +        if not os.path.exists(src):
> +            bb.fatal("Path does not exist: %s" % src)
>          if os.path.isdir(src):
>              oe.path.copyhardlinktree(src, dest)
>          else:
> --
> 1.9.1
>
> --
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core at lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openembedded.org/pipermail/openembedded-core/attachments/20180811/13a0c120/attachment-0002.html>


More information about the Openembedded-core mailing list