|
From: | gaosong |
Subject: | Re: [PATCH v4 07/18] linux-user: Load vdso image if available |
Date: | Fri, 18 Aug 2023 15:28:37 +0800 |
User-agent: | Mozilla/5.0 (X11; Linux loongarch64; rv:68.0) Gecko/20100101 Thunderbird/68.7.0 |
Hi, Richard 在 2023/8/17 上午2:03, Richard Henderson 写道:
@@ -3629,10 +3694,13 @@ int load_elf_binary(struct linux_binprm *bprm, struct image_info *info) }/*- * TODO: load a vdso, which would also contain the signal trampolines. - * Otherwise, allocate a private page to hold them. + * Load a vdso if available, which will amongst other things contain the + * signal trampolines. Otherwise, allocate a separate page for them. */ - if (TARGET_ARCH_HAS_SIGTRAMP_PAGE) { + const VdsoImageInfo *vdso = vdso_image_info(); + if (vdso) { + load_elf_vdso(&vdso_info, vdso); + } else if (TARGET_ARCH_HAS_SIGTRAMP_PAGE) {
I see some targets already support vdso. ./linux-user/aarch64/vdso-be.so ./linux-user/aarch64/vdso-le.so ./linux-user/arm/vdso-arm-be.so ./linux-user/arm/vdso-arm-le.so ./linux-user/arm/vdso-thm-be.so ./linux-user/arm/vdso-thm-le.so ./linux-user/hppa/vdso.so ./linux-user/i386/vdso.so ./linux-user/loongarch64/vdso.so ./linux-user/ppc/vdso-32.so ./linux-user/ppc/vdso-64.so ./linux-user/ppc/vdso-64le.so ./linux-user/riscv/vdso-32.so ./linux-user/riscv/vdso-64.so ./linux-user/s390x/vdso.so ./linux-user/x86_64/vdso.so This branch will never reach.what about remove TARGET_ARCH_HAS_SIGTRAMP_PAGE and setup_sigtramp() for these targets?
Thanks. Song Gao
[Prev in Thread] | Current Thread | [Next in Thread] |