No description
  • C 98.2%
  • Assembly 1%
  • Makefile 0.3%
  • Shell 0.2%
  • Python 0.1%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Akash Asthana 97603680f9 serial: Propagate missing UART fix 4.19 to 5.4
msm_geni_serial: Use the common driver API for dma_alloc
    msm: msm-geni-se: Make DFS clock table specific to SE of QUP
    serial: msm_geni_serial: Don't depend on clock freq table to set baud
	rate
    msm-geni-serial: Correct the interrupt polling logic in uart
    serial: msm_geni_serial: Improve IPC logging in UART driver
    serial: msm_geni_serial: drop port->lock before tty_flip_buffer_push()
	call
    serial: msm_geni_serial: No need to stop_tx/rx on UART shutdown
    serial: msm_geni_serial: Do not check_transfers_inflight() post
	port_close
    serial: msm_geni_serial: Enable IRQ from port startup
    serial: msm_geni_serial: Fix geni_wait_for_cmd_done timeouts
    serial: msm_geni_serial: Do not drop port->lock in polling mode

Also, fix stackoverflow issue seen after propagating above changes.

Console TX is getting stuck in recursive call and leading to
stackoverflow issue.

Steps that leads to bad recursion call:
1) msm_geni_serial_handle_tx calls for stop_tx if all the data are sent and
acknowledged.
2) stop_tx issue cancel command if the main sequencer is still
active.
3) As part of cancel command execution msm_geni_serial_handle_tx is called
again that takes us to step 1 and goes in a loop.

To fix above scenario remove the stop_tx call from geni_serial_handle_tx
because if the data is transmited and acknowledged main sequencer should
automatically go to inactive state.

Ideally we should never enter into this situation the first place because
after receiving CMD_DONE we expect that sequencer will go IDLE/inactive.
So, probably this can be a race btw updation of CMD_DONE and GENI_STATUS
register because after adding some more IPC logs in the above code path we
are not hitting this issue. It might be adding required delay.

Change-Id: I85cfe87170ea347c4b8d98c858cc762da413624f
Signed-off-by: Prudhvi Yarlagadda <pyarlaga@codeaurora.org>
Signed-off-by: Chandana Kishori Chiluveru <cchiluve@codeaurora.org>
Signed-off-by: Mukesh Kumar Savaliya <msavaliy@codeaurora.org>
Signed-off-by: Akash Asthana <akashast@codeaurora.org>
2020-06-22 11:21:23 +05:30
arch arm64: defconfig: Enable CONFIG_PSI_FTRACE on Lahaina 2020-06-19 09:41:58 -07:00
block block, bfq: fix use-after-free in bfq_idle_slice_timer_body 2020-05-31 22:25:00 -07:00
certs
crypto
Documentation add documentation about reclaim knob on proc.txt 2020-06-02 21:31:18 -07:00
drivers serial: Propagate missing UART fix 4.19 to 5.4 2020-06-22 11:21:23 +05:30
fs mm: process_reclaim: consider compound pages 2020-06-16 05:23:58 -07:00
include serial: Propagate missing UART fix 4.19 to 5.4 2020-06-22 11:21:23 +05:30
init Merge "sched: Improve the scheduler" 2020-06-10 11:30:47 -07:00
ipc
kernel Merge "sched/walt: Improve the scheduler" 2020-06-20 10:46:39 -07:00
lib Merge "lib: stackdepot: Add support to configure STACK_HASH_SIZE" 2020-06-15 06:15:38 -07:00
LICENSES
mm Merge "defconfig: lahaina: Enable LIMIT_MOVABLE_ZONE_ALLOC" 2020-06-18 10:42:14 -07:00
net Merge "net: qrtr: Add tracepoint support" 2020-06-19 09:50:06 -07:00
samples
scripts scripts: headers_install: Turn CONFIG_* leak checker to report error 2020-06-15 12:37:25 -07:00
security RTIC: Move selinux_state to a separate 4k 2020-06-08 15:49:07 +05:30
sound sound: usb: Increase upper bound check for bInterval to 16 2020-06-10 12:46:56 -07:00
techpack
tools This is the 5.4.30 stable release 2020-04-02 16:38:08 +02:00
usr
virt
.clang-format
.cocciconfig
.get_maintainer.ignore
.gitattributes
.gitignore defconfig: Add support for compiling sdxlemur target 2020-06-15 23:16:52 -07:00
.mailmap
abi_gki_aarch64.xml ANDROID: 5.4.29 ABI update 2020-04-02 15:04:43 +02:00
abi_gki_aarch64_5cfdde5ea8.xml aarch64: ABI: Update snapshot with newer libabigail version 2020-06-15 17:56:04 -07:00
abi_gki_aarch64_cuttlefish_whitelist ANDROID: GKI: update cf whitelist + gki whitelist 2020-03-31 12:28:54 -07:00
abi_gki_aarch64_db845c_whitelist ANDROID: ABI/Whitelist: update for db845c 2020-03-30 23:58:31 +00:00
abi_gki_aarch64_goldfish_whitelist ANDROID: GKI: Added goldfish whitelist to aarch64 abi 2020-03-31 12:45:07 -07:00
abi_gki_aarch64_hikey960_whitelist ANDROID: ABI/Whitelist: update for hikey960 2020-03-23 23:39:45 +00:00
abi_gki_aarch64_qcom_internal_whitelist Merge "ABI: Update internal whitelist with debugfs symbols" 2020-06-15 02:08:39 -07:00
abi_gki_aarch64_qcom_whitelist qcom: whitelist: Remove symbol from whitelist 2020-06-09 22:33:37 -07:00
abi_gki_aarch64_unisoc_whitelist ANDROID: GKI: remove kernel_read/write from whitelists 2020-04-02 06:18:20 +00:00
abi_gki_aarch64_whitelist
Android.bp
build.config.aarch64
build.config.allmodconfig
build.config.allmodconfig.aarch64
build.config.allmodconfig.arm ANDROID: Add build.config files for ARM 32-bit 2020-03-15 22:51:11 +00:00
build.config.allmodconfig.x86_64
build.config.arm ANDROID: Add build.config files for ARM 32-bit 2020-03-15 22:51:11 +00:00
build.config.common build.config: Add build.config files for Lahaina 2020-06-09 14:25:37 -06:00
build.config.db845c ANDROID: db845c build: Use merge_configs 2020-04-01 14:04:53 +00:00
build.config.gki
build.config.gki-debug.aarch64 ANDROID: Add build.config.gki-debug.aarch64 2020-03-16 09:20:25 +00:00
build.config.gki-debug.x86_64 ANDROID: Add build.config.gki-debug.x86_64 2020-03-16 14:27:00 +00:00
build.config.gki.aarch64 ANDROID: GKI: Added goldfish whitelist to aarch64 abi 2020-03-31 12:45:07 -07:00
build.config.gki.x86_64
build.config.hikey960 ANDROID: hikey960: Add external mali driver support to build.config.hikey960 2020-03-23 22:55:17 +00:00
build.config.msm.common build.config: Add build.config files for Lahaina 2020-06-09 14:25:37 -06:00
build.config.msm.gki build.config: Add build.config files for Lahaina 2020-06-09 14:25:37 -06:00
build.config.msm.lahaina build.config: Add build.config files for Lahaina 2020-06-09 14:25:37 -06:00
build.config.x86_64
build.targets build.config: Add build.config files for Lahaina 2020-06-09 14:25:37 -06:00
COPYING
CREDITS
gen_headers_arm.bp Merge "taskstats: add support for system stats" 2020-06-09 14:25:01 -07:00
gen_headers_arm64.bp Merge "taskstats: add support for system stats" 2020-06-09 14:25:01 -07:00
Kbuild
Kconfig
kernel_headers.py
MAINTAINERS
Makefile Makefile: Add a check of CONFIG_TRIM_UNUSED_KSYMS before remaking vmlinux 2020-05-21 12:53:35 -07:00
modules.list.msm.lahaina build.config: Add build.config files for Lahaina 2020-06-09 14:25:37 -06:00
README
README.md

How do I submit patches to Android Common Kernels

  1. BEST: Make all of your changes to upstream Linux. If appropriate, backport to the stable releases. These patches will be merged automatically in the corresponding common kernels. If the patch is already in upstream Linux, post a backport of the patch that conforms to the patch requirements below.

  2. LESS GOOD: Develop your patches out-of-tree (from an upstream Linux point-of-view). Unless these are fixing an Android-specific bug, these are very unlikely to be accepted unless they have been coordinated with kernel-team@android.com. If you want to proceed, post a patch that conforms to the patch requirements below.

Common Kernel patch requirements

  • All patches must conform to the Linux kernel coding standards and pass script/checkpatch.pl
  • Patches shall not break gki_defconfig or allmodconfig builds for arm, arm64, x86, x86_64 architectures (see https://source.android.com/setup/build/building-kernels)
  • If the patch is not merged from an upstream branch, the subject must be tagged with the type of patch: UPSTREAM:, BACKPORT:, FROMGIT:, FROMLIST:, or ANDROID:.
  • All patches must have a Change-Id: tag (see https://gerrit-review.googlesource.com/Documentation/user-changeid.html)
  • If an Android bug has been assigned, there must be a Bug: tag.
  • All patches must have a Signed-off-by: tag by the author and the submitter

Additional requirements are listed below based on patch type

Requirements for backports from mainline Linux: UPSTREAM:, BACKPORT:

  • If the patch is a cherry-pick from Linux mainline with no changes at all
    • tag the patch subject with UPSTREAM:.
    • add upstream commit information with a (cherry-picked from ...) line
    • Example:
      • if the upstream commit message is
        important patch from upstream

        This is the detailed description of the important patch

        Signed-off-by: Fred Jones <fred.jones@foo.org>
    - then Joe Smith would upload the patch for the common kernel as
        UPSTREAM: important patch from upstream

        This is the detailed description of the important patch

        Signed-off-by: Fred Jones <fred.jones@foo.org>

        Bug: 135791357
        Change-Id: I4caaaa566ea080fa148c5e768bb1a0b6f7201c01
        (cherry-picked from c31e73121f4c1ec41143423ac6ce3ce6dafdcec1)
        Signed-off-by: Joe Smith <joe.smith@foo.org>
  • If the patch requires any changes from the upstream version, tag the patch with BACKPORT: instead of UPSTREAM:.
    • use the same tags as UPSTREAM:
    • add comments about the changes under the (cherry-picked from ...) line
    • Example:
        BACKPORT: important patch from upstream

        This is the detailed description of the important patch

        Signed-off-by: Fred Jones <fred.jones@foo.org>

        Bug: 135791357
        Change-Id: I4caaaa566ea080fa148c5e768bb1a0b6f7201c01
        (cherry-picked from c31e73121f4c1ec41143423ac6ce3ce6dafdcec1)
        [ Resolved minor conflict in drivers/foo/bar.c ]
        Signed-off-by: Joe Smith <joe.smith@foo.org>

Requirements for other backports: FROMGIT:, FROMLIST:,

  • If the patch has been merged into an upstream maintainer tree, but has not yet been merged into Linux mainline
    • tag the patch subject with FROMGIT:
    • add info on where the patch came from as (cherry picked from commit <sha1> <repo> <branch>). This must be a stable maintainer branch (not rebased, so don't use linux-next for example).
    • if changes were required, use BACKPORT: FROMGIT:
    • Example:
      • if the commit message in the maintainer tree is
        important patch from upstream

        This is the detailed description of the important patch

        Signed-off-by: Fred Jones <fred.jones@foo.org>
    - then Joe Smith would upload the patch for the common kernel as
        FROMGIT: important patch from upstream

        This is the detailed description of the important patch

        Signed-off-by: Fred Jones <fred.jones@foo.org>

        Bug: 135791357
        (cherry picked from commit 878a2fd9de10b03d11d2f622250285c7e63deace
         https://git.kernel.org/pub/scm/linux/kernel/git/foo/bar.git test-branch)
        Change-Id: I4caaaa566ea080fa148c5e768bb1a0b6f7201c01
        Signed-off-by: Joe Smith <joe.smith@foo.org>
  • If the patch has been submitted to LKML, but not accepted into any maintainer tree
    • tag the patch subject with FROMLIST:
    • add a Link: tag with a link to the submittal on lore.kernel.org
    • if changes were required, use BACKPORT: FROMLIST:
    • Example:
        FROMLIST: important patch from upstream

        This is the detailed description of the important patch

        Signed-off-by: Fred Jones <fred.jones@foo.org>

        Bug: 135791357
        Link: https://lore.kernel.org/lkml/20190619171517.GA17557@someone.com/
        Change-Id: I4caaaa566ea080fa148c5e768bb1a0b6f7201c01
        Signed-off-by: Joe Smith <joe.smith@foo.org>

Requirements for Android-specific patches: ANDROID:

  • If the patch is fixing a bug to Android-specific code
    • tag the patch subject with ANDROID:
    • add a Fixes: tag that cites the patch with the bug
    • Example:
        ANDROID: fix android-specific bug in foobar.c

        This is the detailed description of the important fix

        Fixes: 1234abcd2468 ("foobar: add cool feature")
        Change-Id: I4caaaa566ea080fa148c5e768bb1a0b6f7201c01
        Signed-off-by: Joe Smith <joe.smith@foo.org>
  • If the patch is a new feature
    • tag the patch subject with ANDROID:
    • add a Bug: tag with the Android bug (required for android-specific features)