]> code.ossystems Code Review - openembedded-core.git/commit
Revert "kernel/kernel-arch: Explicitly mapping between i386/x86_64 and x86 for kernel...
authorIoan-Adrian Ratiu <adrian.ratiu@ni.com>
Tue, 2 Feb 2016 09:01:56 +0000 (11:01 +0200)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Thu, 4 Feb 2016 23:35:05 +0000 (23:35 +0000)
commitbc02a478a5d4a5de7b3943ed809d5c22711f5b1f
treef64331610a2c94e0bf12c2eeec9f3dbcfeb14d8f
parentfd5749832960ad3b85697c2878490d6f008982a3
Revert "kernel/kernel-arch: Explicitly mapping between i386/x86_64 and x86 for kernel ARCH"

This reverts commit 8d310b24927d0f348fb431895f0583733db2aad0.

That commit completely breaks KBUILD_DEFCONFIG because it relies on
$ARCH to match between the target OE arch and the kernel subdirectory
containing the defconfigs. In the kernel all defconfigs for everything
x86-based (including x86_64) is stored in dir arch/x86/configs/

kernel-yocto.bbclass correctly searches for all the defconfigs inside
${S}/arch/${ARCH}/configs/${KBUILD_DEFCONFIG}

Commit 8d310b249 makes it search in wrong places and _only_ if you
define TARGET_ARCH = "athlon" will it search x86 which is nonsensical.

The commit further adds an if clause to hack the mungled kernel arches
back to their original values (ugh) in do_shared_workdir which is run
after do compile, but of course the build breaks before that in
do_kernel_metadata because of the KBUILD_DEFCONFIG mentioned above (so
that hack is useless).

Please fix that corner case bug in another way which does not completely
screw up the kernel arch mapping & defconfig logic. If 64bit configs are
generated in the kernel for 32bit machines because the host is asked,
then it it a bug in the kernel, it is of no use to hack around it in OE.

Signed-off-by: Ioan-Adrian Ratiu <adrian.ratiu@ni.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
meta/classes/kernel-arch.bbclass
meta/classes/kernel.bbclass