On 11/29/2018 09:05 AM, Vincenzo Frascino wrote:
The arm vDSO library requires some adaptations to use to take advantage
of the newly introduced generic vDSO library.
Tested-by? Would like to note that this patch series up to 24/28 was
back-ported to android-4.9 and worked successfully on a Hikey arm64 device.
Only significant change was to add back support for clang in
arch/arm64/Makefile (pseudo patch):
ifeq ($(CONFIG_GENERIC_COMPAT_VDSO), y)
CROSS_COMPILE_ARM32 ?= $(CONFIG_CROSS_COMPILE_COMPAT_VDSO:"%"=%)
ifeq ($(CROSS_COMPILE_ARM32),)
$(error CROSS_COMPILE_ARM32 not defined or empty, the compat vDSO
will not be built)
+ else ifeq ($(cc-name),clang)
+ export CLANG_TRIPLE_ARM32 ?= $(CROSS_COMPILE_ARM32)
+ export CLANG_TARGET_ARM32 := --target=$(notdir
$(CLANG_TRIPLE_ARM32:%-=%))
+ export CONFIG_COMPAT_VDSO := y
+ compat_vdso := -DCONFIG_COMPAT_VDSO=1
-+ else ifeq ($(shell which $(CROSS_COMPILE_ARM32)$(cc-name) 2>
/dev/null),)
-+ $(error $(CROSS_COMPILE_ARM32)$(cc-name) not found, check
CROSS_COMPILE_ARM32)
else
export CROSS_COMPILE_ARM32
export CONFIG_COMPAT_VDSO := y
compat_vdso := -DCONFIG_COMPAT_VDSO=1
endif
endif
-- Mark