05 Feb, 2021

1 commit


27 Jan, 2021

1 commit

  • DMA_VIRTUAL_CHANNELS depends on DMADEVICES and DMA_VIRTUAL_CHANNELS
    is selected by GKI_HIDDEN_SND_SOC_CONFIGS.

    To fix unmet dependency in x86_64, select DMADEVICES under
    GKI_HIDDEN_SND_SOC_CONFIGS.

    Also, drop CONFIG_DMADEVICES=y in arch/arm64/configs/gki_defconfig.

    WARNING: unmet direct dependencies detected for DMA_VIRTUAL_CHANNELS
    Depends on [n]: DMADEVICES [=n]
    Selected by [y]:
    - GKI_HIDDEN_SND_SOC_CONFIGS [=y]

    Bug: 174628645
    Signed-off-by: Miles Chen
    Change-Id: I1de491c10542f1b7c9c8754c65415b028d3bc922

    Miles Chen
     

13 Jan, 2021

1 commit

  • Enable the KUNIT core, which has a small ABI impact, and also the
    DEBUGFS feature so that results can be reaped. This change does not
    actually enable any KUNIT tests or the internal selftests, those must be
    enabled by downstream builds.

    Bug: 176228452
    Change-Id: I2817cb1495fe7bf0485e63f877a68b1971e26cc5
    Signed-off-by: Alistair Delva

    Alistair Delva
     

12 Jan, 2021

1 commit


09 Jan, 2021

1 commit

  • CONFIG_MEMCG introduces overhead both in terms of memory usage as well
    as in the minor page fault path and after moving to PSI it is currently
    unused on non-Android Go devices. Disable it in GKI to avoid the overhead.

    Bug: 169443770
    Bug: 172296409
    Signed-off-by: Suren Baghdasaryan
    Change-Id: I717c2a1bde6264285b86d583ae1a1007c36be223

    Suren Baghdasaryan
     

08 Jan, 2021

1 commit

  • To enable bfq i/o group scheduling for separating i/o groups to
    foreground and background i/o groups, we need to set CONFIG_IOSCHED_BFQ
    and CONFIG_BFQ_GROUP_IOSCHED to "y".

    Bug: 171739280
    Bug: 172520400
    Signed-off-by: Daeho Jeong
    Change-Id: If9b5664ecfc8f78d9792d7ee5d3ea5a88a50b9d7

    Daeho Jeong
     

07 Jan, 2021

1 commit


06 Jan, 2021

1 commit


23 Dec, 2020

2 commits

  • CRYPTO_MD5 is needed to guarantee legacy compatibility with 3gpp
    infrastructure. This compat is guaranteed by the vts net tests
    which are currently failing due to this missing config.

    Bug: 171462501
    Signed-off-by: Ram Muthiah
    Change-Id: Ibb5bff947595058a0970ae8bbd64c5f5eab8ba7d

    Ram Muthiah
     
  • Unset CONFIG_DMABUF_HEAPS_SYSTEM from gki_defconfig
    so that it can be enabled as a vendor module.

    This change is intended to allow partners to continue using
    device/SoC-specific optimizations in their system heap implementations
    when they switch from ION to DMA-BUF heaps. The ION system heap was
    built-in and partners were asked to override the system heap ID with
    their own if they wanted to override the GKI system heap. This
    per-vendor approach to override system heap will no longer be possible
    with DMA-BUF heaps since Android S aims to restrict framework access to
    DMA-BUF vendor heaps by only letting it access ABI-defined vendor heaps.

    VTS tests will be created to ensure that the system heap is present
    at /dev/dma_heap/system and behaves as expected of the system heap.

    Bug: 175697666
    Bug: 155218010
    Bug: 172527615

    Signed-off-by: Hridya Valsaraju
    Change-Id: Id97ed4814517339c69b99f8135e9a66e59d951a9

    Hridya Valsaraju
     

18 Dec, 2020

1 commit


17 Dec, 2020

2 commits


16 Dec, 2020

1 commit


15 Dec, 2020

1 commit


12 Dec, 2020

1 commit

  • Moving to LLVM_IAS=1 allows for us to now emit instructions making use
    of the ARMv8.3 extension Pointer Authentication (PAC), which is enabled
    by default by Kconfig if the tooling supports it.

    PAC has implications for DWARF based unwinders, see section 4.1.8 of
    https://github.com/ARM-software/abi-aa/blob/master/aadwarf64/aadwarf64.rst#dwarf-register-names.

    Disable PAC for now until all of our DWARF based unwinders support
    unwinding kernels built with PAC, particularly third party utilties that
    assist with ramdump parsing.

    Bug: 173653853
    Bug: 174803347
    Signed-off-by: Nick Desaulniers
    Change-Id: I4c7d9f37da7e3901de27f20bbfad4722cdb8a423

    Nick Desaulniers
     

10 Dec, 2020

2 commits


27 Nov, 2020

3 commits


26 Nov, 2020

1 commit

  • Thread ID and CPU ID is useful to distinguish printk
    callers from different threads/cpus. Enable config
    to prepend the information to printk statements.

    Bug: 171425082
    Bug: 170888438
    Signed-off-by: Jonglin Lee
    Change-Id: Ia5b3396971c689618ae8235b9c75a9f8d07774f2
    (cherry picked from commit db79bb68e2955f8d3974823e6a6391934bfd443d)
    Signed-off-by: Will McVicker

    Jonglin Lee
     

24 Nov, 2020

4 commits


23 Nov, 2020

2 commits

  • A bunch of HID config options are recommented to be =y in the default
    android configuration, and vendors are using them, so enable them in the
    GKI kernels as well to reduce the abi footprint.

    The options enabled are:
    CONFIG_HID_WACOM
    CONFIG_HID_LOGITECH
    CONFIG_HID_LOGITECH_DJ
    CONFIG_HID_ROCCAT
    CONFIG_HID_PRODIKEYS
    CONFIG_HID_PICOLCD
    CONFIG_HID_UCLOGIC
    CONFIG_HID_WIIMOTE

    Bug: 157965270
    Signed-off-by: Greg Kroah-Hartman
    Change-Id: Idc8eae67ec81b5dd925c09db2f3600633c55d0c4

    Greg Kroah-Hartman
     
  • Almost all systems support the USB XHCI controller these days, so build
    it into the kernel so that everyone can share the same codebase.

    If platform-specific XHCI changes are needed, do it in a
    platform-specific XHCI driver using the provided api for that.

    Bug: 157965270
    Signed-off-by: Greg Kroah-Hartman
    Change-Id: I6e8b5d1fbcde86415f43d942aad0f828ab346928

    Greg Kroah-Hartman
     

21 Nov, 2020

2 commits


20 Nov, 2020

1 commit

  • Allwinner's SoC timer driver (timer-sun4i.c) has to be built-in rather
    than modularized for the following limitations in linux timer framework:
    1. tick broadcast installed by insmod cannot switch to oneshot mode
    correctly
    2. cpus cannot enter cpuidle state due to the issue above.
    3. rcu warnings will appear if we forcibly re-enable tick-broadcast
    for each cpu when new tick broadcast device is installed by insmod
    (timer-sun4i.c in our case)

    Bug: 173667601
    Change-Id: If077db348c027ec02549e25eee3e17c2cc429644
    Signed-off-by: Martin Wu

    Martin Wu
     

12 Nov, 2020

1 commit

  • By default, enabling RANDOMIZE_BASE on arm64 randomizes not just the
    kernel base address, but also the module region independently from the
    kernel, over a 4GiB range. As a consequence, modules can be out of
    reach for direct branches from/to the kernel, hence creating the need to
    resolve function calls via veneers in the module PLT.

    While this is good for security, this also introduces a non-negligible
    overhead in some benchmarks when parts of the scheduler policy is
    factored out in modules, as is the cases with GKI 2.0 on some devices.

    To get the performance back, disable RANDOMIZE_MODULE_REGION_FULL, which
    limits the range of randomization for the module area to remain within
    reach of direct branches. This is clearly a security trade-off as the
    module and kernel addresses have a stronger correlation, but this still
    remains preferable over the alternative which is no-GKI and having all
    drivers compiled into the kernel itself, as Android used to be in
    previous generations.

    Bug: 168521642
    Signed-off-by: Quentin Perret
    Change-Id: I8f4e05fbd308f99f38a4a2b33802ef1e195666e3

    Quentin Perret
     

11 Nov, 2020

1 commit


07 Nov, 2020

1 commit


05 Nov, 2020

1 commit


03 Nov, 2020

1 commit


01 Nov, 2020

1 commit

  • This helps enable the page owner feature at runtime via
    kernel param, and helps in memory accouting and leak
    debugging. Enabling just this config does not incur any
    significant overhead.
    Explicit CONFIG_DEBUG_FS=y is removed because CONFIG_PAGE_OWNER
    enables it implicitly.

    Bug: 171354330
    Change-Id: I103c0276a01ef6fa0673d88c4a8678b31af2b8a2
    Signed-off-by: Vinayak Menon
    Signed-off-by: Suren Baghdasaryan

    Vinayak Menon
     

28 Oct, 2020

1 commit


27 Oct, 2020

1 commit

  • Commit bca815d62054 ("PM: AVS: smartreflex Move driver to soc specific
    drivers") dropped the CONFIG_POWER_AVS configuration option, so it also
    needs to be dropped from the arm64 gki_defconfig so that the build
    continues to work.

    Fixes: bca815d62054 ("PM: AVS: smartreflex Move driver to soc specific drivers")
    Signed-off-by: Greg Kroah-Hartman
    Change-Id: Ie437bf0dc6977dd58caffb1349186d16873798c9

    Greg Kroah-Hartman
     

25 Oct, 2020

1 commit