17 Dec, 2020

1 commit

  • With LTO, upstream prefers to generate __mcount_loc sections with
    objtool, which depends on libelf-dev that's not available in the CI.
    Disable DYNAMIC_FTRACE from allmodconfig builds temporarily to work
    around the problem.

    Bug: 140224784
    Bug: 145210207
    Change-Id: I42ae99ab0a32ca3e7dcec6eae5a3e5df4b23f0d3
    Signed-off-by: Sami Tolvanen

    Sami Tolvanen
     

08 Dec, 2020

1 commit


11 Nov, 2020

1 commit

  • This reverts commit e145f7b10374662f03889c2dea0fdc14df7f1371.

    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
    Change-Id: Iecaa3264a440f795f2f3a44bdf74fe28ad4ed1cc

    Nick Desaulniers
     

10 Nov, 2020

1 commit

  • Enable the use of the hermetic toolchain across all builds of this
    branch. For allmodconfig builds, also allow the use of openssl from the
    host.

    Bug: 157507870
    Change-Id: Iabb1fe4f760f9821df0318934942302ffffade7c
    Signed-off-by: Matthias Maennich

    Matthias Maennich
     

17 Apr, 2020

1 commit


14 Apr, 2020

2 commits

  • Without these changes, the user will be prompted for config changes.

    Signed-off-by: Will McVicker
    Bug: 153934356
    Test: BUILD_CONFIG=common/build.config.allmodconfig.aarch64 build/build.sh
    Change-Id: Ib9ef72b217d1e0d78edf136cfe560058e3126d18

    Will McVicker
     
  • It was disabled due to ld.lld discarding the __memcat_p symbol even
    though it was exported -- see [1]. However, this issue has now been
    fixed upstream in 7273ad2b08f8 ("kbuild: link lib-y objects to
    vmlinux forcibly when CONFIG_MODULES=y"), so CONFIG_STM can now be
    enabled safely.

    [1] https://github.com/ClangBuiltLinux/linux/issues/515

    Bug: 140224784
    Fixes: dd88a4a1d578 ("ANDROID: Fix x86_64 allmodconfig build")
    Signed-off-by: Quentin Perret
    Change-Id: Ic0dede721f67a0f2ff80ba27cb2a2aa9c7c03db3

    Quentin Perret
     

26 Mar, 2020

1 commit

  • It appears that the clang version we were using when we first introduced
    build.config.allmodconfig had issues with XFS_FS, so 884416f5176a
    ("ANDROID: create build.configs for allmodconfig") made sure to disable
    it.

    Now that ACK uses an updated clang, attempt to re-enable that option.

    Bug: 140224784
    Bug: 140490203
    Test: allmodconfig build for x86_64 and arm64
    Fixes: 884416f5176a ("ANDROID: create build.configs for allmodconfig")
    Signed-off-by: Quentin Perret
    Change-Id: Iffdaaedb67162515af3b60ec62efd8f947ce17f2

    Quentin Perret
     

05 Dec, 2019

2 commits

  • 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

    Quentin Perret
     
  • 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

    Quentin Perret
     

01 Nov, 2019

2 commits

  • 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

    Alistair Delva
     
  • 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

    Alistair Delva
     

11 Oct, 2019

1 commit

  • 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

    Alistair Delva
     

02 Oct, 2019

1 commit

  • 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
    Change-Id: Ic4693ae1f462144c8219b397463ca341f6fe08a1

    Quentin Perret
     

30 Sep, 2019

1 commit

  • 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
    Change-Id: Ib4cf3c9565f040a577ce3cec008293520be1af84

    Quentin Perret
     

04 Sep, 2019

1 commit