Go to file
Vincenzo Frascino ee2a797c3f arm64: vdso: Add -fasynchronous-unwind-tables to cflags
commit 1578e5d03112e3e9d37e1c4d95b6dfb734c73955 upstream.

On arm64 linux gcc uses -fasynchronous-unwind-tables -funwind-tables
by default since gcc-8, so now the de facto platform ABI is to allow
unwinding from async signal handlers.

However on bare metal targets (aarch64-none-elf), and on old gcc,
async and sync unwind tables are not enabled by default to avoid
runtime memory costs.

This means if linux is built with a baremetal toolchain the vdso.so
may not have unwind tables which breaks the gcc platform ABI guarantee
in userspace.

Add -fasynchronous-unwind-tables explicitly to the vgettimeofday.o
cflags to address the ABI change.

Fixes: 28b1a824a4f4 ("arm64: vdso: Substitute gettimeofday() with C implementation")
Cc: Will Deacon <will@kernel.org>
Reported-by: Szabolcs Nagy <szabolcs.nagy@arm.com>
Signed-off-by: Vincenzo Frascino <vincenzo.frascino@arm.com>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-03-16 16:27:24 +08:00
Documentation USB: hub: Revert commit bd0e6c9614b9 ("usb: hub: try old enumeration scheme first for high speed devices") 2021-03-16 16:26:56 +08:00
LICENSES Init Repo base on linux 5.4.32 long term, and add base tlinux kernel interfaces. 2021-03-16 11:01:34 +08:00
arch arm64: vdso: Add -fasynchronous-unwind-tables to cflags 2021-03-16 16:27:24 +08:00
block blk-mq: Put driver tag in blk_mq_dispatch_rq_list() when no budget 2021-03-16 16:27:15 +08:00
certs Init Repo base on linux 5.4.32 long term, and add base tlinux kernel interfaces. 2021-03-16 11:01:34 +08:00
crypto crypto: rng - Fix a refcounting bug in crypto_rng_reset() 2021-03-16 16:26:09 +08:00
drivers dmaengine: dmatest: Fix process hang when reading 'wait' parameter 2021-03-16 16:27:24 +08:00
fs nfs: Fix potential posix_acl refcnt leak in nfs3_set_acl 2021-03-16 16:27:24 +08:00
include NFSv4.1: fix handling of backchannel binding in BIND_CONN_TO_SESSION 2021-03-16 16:27:17 +08:00
init printk: queue wake_up_klogd irq_work only if per-CPU areas are ready 2021-03-16 16:27:05 +08:00
ipc ipc/util.c: sysvipc_find_ipc() should increase position index 2021-03-16 16:26:46 +08:00
kernel PM: hibernate: Freeze kernel threads in software_resume() 2021-03-16 16:27:20 +08:00
lib lib/raid6/test: fix build on distros whose /bin/sh is not bash 2021-03-16 16:26:46 +08:00
mm mm: shmem: disable interrupt when acquiring info->lock in userfaultfd_copy path 2021-03-16 16:27:12 +08:00
net net: use indirect call wrappers for skb_copy_datagram_iter() 2021-03-16 16:27:16 +08:00
package config/arm64: OPEN CONFIG_PSI and phytium configs 2021-03-16 11:02:59 +08:00
samples vmalloc: fix remap_vmalloc_range() bounds checks 2021-03-16 16:26:56 +08:00
scripts kbuild: fix DT binding schema rule again to avoid needless rebuilds 2021-03-16 16:27:06 +08:00
security KEYS: Avoid false positive ENOMEM error on key read 2021-03-16 16:26:53 +08:00
sound ALSA: opti9xx: shut up gcc-10 range warning 2021-03-16 16:27:23 +08:00
tools objtool: Support Clang non-section symbols in ORC dump 2021-03-16 16:27:14 +08:00
usr Init Repo base on linux 5.4.32 long term, and add base tlinux kernel interfaces. 2021-03-16 11:01:34 +08:00
virt Init Repo base on linux 5.4.32 long term, and add base tlinux kernel interfaces. 2021-03-16 11:01:34 +08:00
.clang-format Init Repo base on linux 5.4.32 long term, and add base tlinux kernel interfaces. 2021-03-16 11:01:34 +08:00
.cocciconfig Init Repo base on linux 5.4.32 long term, and add base tlinux kernel interfaces. 2021-03-16 11:01:34 +08:00
.get_maintainer.ignore Init Repo base on linux 5.4.32 long term, and add base tlinux kernel interfaces. 2021-03-16 11:01:34 +08:00
.gitattributes Init Repo base on linux 5.4.32 long term, and add base tlinux kernel interfaces. 2021-03-16 11:01:34 +08:00
.gitignore Init Repo base on linux 5.4.32 long term, and add base tlinux kernel interfaces. 2021-03-16 11:01:34 +08:00
COPYING Init Repo base on linux 5.4.32 long term, and add base tlinux kernel interfaces. 2021-03-16 11:01:34 +08:00
CREDITS Init Repo base on linux 5.4.32 long term, and add base tlinux kernel interfaces. 2021-03-16 11:01:34 +08:00
Kbuild Init Repo base on linux 5.4.32 long term, and add base tlinux kernel interfaces. 2021-03-16 11:01:34 +08:00
Kconfig Init Repo base on linux 5.4.32 long term, and add base tlinux kernel interfaces. 2021-03-16 11:01:34 +08:00
MAINTAINERS Init Repo base on linux 5.4.32 long term, and add base tlinux kernel interfaces. 2021-03-16 11:01:34 +08:00
Makefile Init Repo base on linux 5.4.32 long term, and add base tlinux kernel interfaces. 2021-03-16 11:01:34 +08:00
README Init Repo base on linux 5.4.32 long term, and add base tlinux kernel interfaces. 2021-03-16 11:01:34 +08:00
README.md Init Repo base on linux 5.4.32 long term, and add base tlinux kernel interfaces. 2021-03-16 11:01:34 +08:00
backport_remove_lists.txt Init Repo base on linux 5.4.32 long term, and add base tlinux kernel interfaces. 2021-03-16 11:01:34 +08:00
tools_key.pub Init Repo base on linux 5.4.32 long term, and add base tlinux kernel interfaces. 2021-03-16 11:01:34 +08:00

README.md

Tencent Linux Kernel 4.0