Subject: arm64 vdso might miss .eh_frame

From: Szabolcs Nagy <[email-masked]>
Date: Wed, 15 Apr 2020 10:23:36 +0100

On aarch64 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 our (undocumented) platform
ABI guarantee in userspace. So adding -fasynchronous-unwind-tables
explicitly to the vgettimeofday.o cflags would be nice (the other
objects in the vdso seem to be asm).

There was also a report that android clang built linux vdso.so lacks
.eh_frame completely, that may be a missing --eh-frame-hdr or different
platform ABI on android, Tamas on cc may be able to verify this.
IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.

_______________________________________________
linux-arm-kernel mailing list
[email-masked]
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel