aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/vdso
diff options
context:
space:
mode:
authorAndy Lutomirski <luto@amacapital.net>2014-06-12 11:28:10 -0400
committerH. Peter Anvin <hpa@zytor.com>2014-06-13 13:31:48 -0400
commita934fb5bc9cd1260be89272cfb7a6c9dc71974d7 (patch)
tree7922166333a7842b48e2193b88773c5c014156d1 /arch/x86/vdso
parente0bf7b86dace87eccdabdd66d2769ccad19cb81c (diff)
x86/vdso: Fix vdso_install
"make vdso_install" installs unstripped versions of the vdso objects for the benefit of the debugger. This was broken by checkin: 6f121e548f83 x86, vdso: Reimplement vdso.so preparation in build-time C The filenames are different now, so update the Makefile to cope. This still installs the 64-bit vdso as vdso64.so. We believe this will be okay, as the only known user is a patched gdb which is known to use build-ids, but if it turns out to be a problem we may have to add a link. Inspired by a patch from Sam Ravnborg. Acked-by: Sam Ravnborg <sam@ravnborg.org> Reported-by: Josh Boyer <jwboyer@fedoraproject.org> Tested-by: Josh Boyer <jwboyer@fedoraproject.org> Signed-off-by: Andy Lutomirski <luto@amacapital.net> Link: http://lkml.kernel.org/r/b10299edd8ba98d17e07dafcd895b8ecf4d99eff.1402586707.git.luto@amacapital.net Signed-off-by: H. Peter Anvin <hpa@zytor.com>
Diffstat (limited to 'arch/x86/vdso')
-rw-r--r--arch/x86/vdso/Makefile22
1 files changed, 11 insertions, 11 deletions
diff --git a/arch/x86/vdso/Makefile b/arch/x86/vdso/Makefile
index ba6fc2757ee4..3c0809a0631f 100644
--- a/arch/x86/vdso/Makefile
+++ b/arch/x86/vdso/Makefile
@@ -9,11 +9,6 @@ VDSOX32-$(CONFIG_X86_X32_ABI) := y
9VDSO32-$(CONFIG_X86_32) := y 9VDSO32-$(CONFIG_X86_32) := y
10VDSO32-$(CONFIG_COMPAT) := y 10VDSO32-$(CONFIG_COMPAT) := y
11 11
12vdso-install-$(VDSO64-y) += vdso.so
13vdso-install-$(VDSOX32-y) += vdsox32.so
14vdso-install-$(VDSO32-y) += $(vdso32-images)
15
16
17# files to link into the vdso 12# files to link into the vdso
18vobjs-y := vdso-note.o vclock_gettime.o vgetcpu.o vdso-fakesections.o 13vobjs-y := vdso-note.o vclock_gettime.o vgetcpu.o vdso-fakesections.o
19vobjs-nox32 := vdso-fakesections.o 14vobjs-nox32 := vdso-fakesections.o
@@ -178,15 +173,20 @@ VDSO_LDFLAGS = -fPIC -shared $(call cc-ldoption, -Wl$(comma)--hash-style=sysv) \
178GCOV_PROFILE := n 173GCOV_PROFILE := n
179 174
180# 175#
181# Install the unstripped copy of vdso*.so listed in $(vdso-install-y). 176# Install the unstripped copies of vdso*.so.
182# 177#
183quiet_cmd_vdso_install = INSTALL $@ 178quiet_cmd_vdso_install = INSTALL $(@:install_%=%)
184 cmd_vdso_install = cp $(obj)/$@.dbg $(MODLIB)/vdso/$@ 179 cmd_vdso_install = cp $< $(MODLIB)/vdso/$(@:install_%=%)
185$(vdso-install-y): %.so: $(obj)/%.so.dbg FORCE 180
181vdso_img_insttargets := $(vdso_img_sodbg:%.dbg=install_%)
182
183$(MODLIB)/vdso: FORCE
186 @mkdir -p $(MODLIB)/vdso 184 @mkdir -p $(MODLIB)/vdso
185
186$(vdso_img_insttargets): install_%: $(obj)/%.dbg $(MODLIB)/vdso FORCE
187 $(call cmd,vdso_install) 187 $(call cmd,vdso_install)
188 188
189PHONY += vdso_install $(vdso-install-y) 189PHONY += vdso_install $(vdso_img_insttargets)
190vdso_install: $(vdso-install-y) 190vdso_install: $(vdso_img_insttargets) FORCE
191 191
192clean-files := vdso32-syscall* vdso32-sysenter* vdso32-int80* 192clean-files := vdso32-syscall* vdso32-sysenter* vdso32-int80*