https://source.android.com/security/bulletin/2019-12-01
CVE-2018-20961
CVE-2019-15220
CVE-2019-15239
CVE-2017-0648
CVE-2017-0510
BACKPORT: ARM: 8900/1: UNWINDER_FRAME_POINTER implementation for Clang

commit 6dc5fd93b2f1ef75d5e50fced8cb193811f25f22 upstream.

The stackframe setup when compiled with clang is different.
Since the stack unwinder expects the gcc stackframe setup it
fails to print backtraces. This patch adds support for the
clang stackframe setup.

Link: https://github.com/ClangBuiltLinux/linux/issues/35

Cc: clang-built-linux@googlegroups.com
Suggested-by: Tri Vo <trong@google.com>
Signed-off-by: Nathan Huckleberry <nhuck@google.com>
Tested-by: Nick Desaulniers <ndesaulniers@google.com>
Reviewed-by: Nick Desaulniers <ndesaulniers@google.com>
Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
[nd: configs were renamed in f9b58e8c7d03,
     CONFIG_CC_IS_{GCC|CLANG} did not exist until a4353898980c/469cb7376c06]
Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
Bug: 145525910
Change-Id: I9f595cff06a48498027e7dc1b958c35fc5da46e2
3 files changed