Commit Graph

13 Commits

Author SHA1 Message Date
Nick Desaulniers
148cfe859f
Revert "ANDROID: Kbuild, LLVMLinux: allow overriding clang target triple"
This reverts commit e145f7b103.

AOSP's distribution of GNU binutils always had a curious target triple
prefix on the binaries.  Now that GNU binutils is deprecated for Android
Common Kernels, we can now remove this out of tree workaround. Now
building Android kernels with LLVM matches upstream (see
Documentation/kbuild/llvm.rst).

Bug: 118439987
Bug: 120440614
Bug: 141693040
Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
Change-Id: Iecaa3264a440f795f2f3a44bdf74fe28ad4ed1cc
2022-11-14 03:04:01 +02:00
Greg Kroah-Hartman
a35cf72836 ANDROID: GKI: Fix up "do not export symbol_get/put()" commit
When removing the export from symbol_get/put(), I disabled lots of
different drivers in the allmodconfig build file.

As some pointed out, that's not the nicest thing to do, as we really do
want the build coverage, so instead, "tweak" the Kconfig files to make
the problamatic modules be built-in to the kernel image.  That removes
the problem of the export going away and still gives us good build
testing coverage, without modifying any real-world device
configurations.

Note, 3 config options are "turned off" so they can not be selected, as
they could not be worked around in any semi-sane manner:
	VIDEO_CX23885
	DELL_LAPTOP
	SAMPLE_HW_BREAKPOINT
none of which affects any known Android devices.

Bug: 162613590
Fixes: 882b7ca141 ("ANDROID: GKI: do not export symbol_get/put()")
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: Ia28f73a64566438940b876a5d9c1a0137c6304d0
2020-08-01 14:28:51 +02:00
Greg Kroah-Hartman
882b7ca141 ANDROID: GKI: do not export symbol_get/put()
People keep trying to use these in Android kernels, and they should not
be used, use the correct, real, symbol name instead.

Turn off a number of things in the allmodconfig builds that were using
these symbols to not break the build.  That was for build-testing only,
no functional changes.

Bug: 157965270
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I13bf351b3ae59fa6dfed7bd41dfff8c8d521e3a4
2020-07-17 10:51:18 +02:00
Greg Kroah-Hartman
bafbd0599c ANDROID: add xfs back to allmodconfig build tests
clang is much newer now, it should be building properly.

Bug: 157965270
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: Ibdab0e4d91aeb90dc24a5d8894f05370c2fd34f1
2020-07-17 08:00:10 +02:00
Will McVicker
4aeb896054 ANDROID: fix allmodconfig build to use the right toolchain
Without these changes, the user will be prompted for config changes.

Signed-off-by: Will McVicker <willmcvicker@google.com>
Bug: 153934356
Test: BUILD_CONFIG=common/build.config.allmodconfig.aarch64 build/build.sh
Change-Id: Ib9ef72b217d1e0d78edf136cfe560058e3126d18
2020-04-14 15:39:56 +00:00
Quentin Perret
5bb8fedfb3 ANDROID: Don't base allmodconfig on gki_defconfig
The mandatory tweaks to allmodconfig are manually enforced during
post_defconfig, so using gki_defconfig as a base for allmodconfig is not
strictly necessary. While this helped finding bugs in code paths that
are unexplored by the vanilla allmodconfig, this is also misalgigned
with KernelCI, and doesn't prevent breakages there, which is one of the
original point of allmodconfig as a presubmit test.

Remove the KCONFIG_ALLCONFIG parameter for allmodconfig, and remove a
stale comment in the same file while at it.

Bug: 140224784
Test: compiled-tested allmodconfig for arm64 and x86
Change-Id: Idd33e25ce62e2a6a37d650844d8ae3033070f825
Signed-off-by: Quentin Perret <qperret@google.com>
2019-12-05 13:18:31 +00:00
Quentin Perret
3bff40a0c5 ANDROID: Disable UNWINDER_ORC for allmodconfig
CONFIG_UNWINDER_ORC needs a libelf-dev which we unfortunately can't
afford to have in the CI yet.

Switch to different stack unwinder for allmodconfig to work around the
problem temporarily.

Bug: 140224784
Test: allmodconfig build for x86
Change-Id: Id35c222e76cca35aa5e520c1a3d5d88e5cc1da8a
Signed-off-by: Quentin Perret <qperret@google.com>
2019-12-05 13:18:31 +00:00
Alistair Delva
a3b88509ac ANDROID: Remove KVM_INTEL allmodconfig workaround
This was blocked on upgrading clang for asm goto support, we can
re-enable this working driver.

Bug: 140224784
Change-Id: I715c3611b2aff2b8a898ae85e45cce1dc149deef
Signed-off-by: Alistair Delva <adelva@google.com>
2019-10-31 10:52:27 -07:00
Alistair Delva
dd88a4a1d5 ANDROID: Fix x86_64 allmodconfig build
The kernel is now being linked with ld.ldd, but this linker will discard
the __memcat_p symbol, even if it is exported, if there are no in-kernel
users. Since the STM driver and test code can be built as a module, they
will fail at modpost time.

While the solution to this bug is still being discussed, keep the
allmodconfig build going by suppressing these options.

Bug: 140224784
Link: https://github.com/ClangBuiltLinux/linux/issues/515
Test: make -j64 ARCH=x86_64 allmodconfig + tweaks
Change-Id: I2942e4b3443180e6bff9820a7c5174c03347ae8a
Signed-off-by: Alistair Delva <adelva@google.com>
2019-10-31 10:52:27 -07:00
Alistair Delva
bacc1ef596 ANDROID: Fix x86_64 allmodconfig build
CONFIG_KVM_INTEL depends on asm volatile goto which is about to be
supported in clang, but we haven't landed the upgraded compiler yet.
Suppress use of this kernel feature for now.

In file included from arch/x86/kvm/vmx/vmx.h:11:
arch/x86/kvm/vmx/ops.h:157:2: error: 'asm goto' constructs are not
supported yet
vmx_asm2(vmwrite, "r"(field), "rm"(value), field, value);
^

Change-Id: If21ca65a7bd1e43c5f66a93a6108cf8aa49a9c64
Signed-off-by: Alistair Delva <adelva@google.com>
2019-10-11 14:30:56 +00:00
Quentin Perret
099f0261d9 ANDROID: Fix arm64 allmodconfig build
Allmodconfig on arm64 enables CPU_BIG_ENDIAN=y, which causes issues with
ld.lld which doesn't support linking aarch64be-linux-gnu targets (see
https://reviews.llvm.org/D58655#1410281). However, it is very unlikely
that real android devices run with arm64 BE hardware in practice. So,
until we can find a better fix, let's simply force CPU_BIG_ENDIAN=n for
allmodconfig builds.

Bug: 141733632
Bug: 140224784
Signed-off-by: Quentin Perret <qperret@google.com>
Change-Id: Ic4693ae1f462144c8219b397463ca341f6fe08a1
2019-10-02 14:10:09 +01:00
Quentin Perret
bdac6faf2d ANDROID: allmodconfig: Force gki_defconfig as base
Allmodconfig enables as many options as it can to maximize the number of
modules it can build. While this is generally a good idea, this can also
lead to very convoluted configurations (such as CPU_BIG_ENDIAN=y on
arm64) which we don't necessarily want to support even if they break. On
the other hand, gki_defconfig already contains the set of core options
we definitely want to support, so it makes sense to use that as a base.

Point KCONFIG_ALLMODCONFIG to the relevant gki_defconfig file in order
to ensure a minimally sensible config that allconfig is not allowed to
modify.

Bug: 140224784
Signed-off-by: Quentin Perret <qperret@google.com>
Change-Id: Ib4cf3c9565f040a577ce3cec008293520be1af84
2019-09-30 16:54:18 +01:00
Matthias Maennich
884416f517 ANDROID: create build.configs for allmodconfig
Bug: 140224784
Change-Id: I920e8737ee596e1b80428ff9831981c775570070
Signed-off-by: Matthias Maennich <maennich@google.com>
2019-09-04 15:49:40 +00:00