mirror of
				https://github.com/torvalds/linux.git
				synced 2025-11-04 10:40:15 +02:00 
			
		
		
		
	Merge branch 'x86/vdso' into x86/core, to resolve conflict and to prepare for dependent changes
Conflicts: arch/x86/entry/vdso/Makefile We also want to change arch/x86/entry/vdso/Makefile in a followup commit, so merge the trees for this. Signed-off-by: Ingo Molnar <mingo@kernel.org>
This commit is contained in:
		
						commit
						f14df823a6
					
				
					 2 changed files with 9 additions and 24 deletions
				
			
		| 
						 | 
				
			
			@ -296,8 +296,7 @@ install:
 | 
			
		|||
 | 
			
		||||
vdso-install-$(CONFIG_X86_64)		+= arch/x86/entry/vdso/vdso64.so.dbg
 | 
			
		||||
vdso-install-$(CONFIG_X86_X32_ABI)	+= arch/x86/entry/vdso/vdsox32.so.dbg
 | 
			
		||||
vdso-install-$(CONFIG_X86_32)		+= arch/x86/entry/vdso/vdso32.so.dbg
 | 
			
		||||
vdso-install-$(CONFIG_IA32_EMULATION)	+= arch/x86/entry/vdso/vdso32.so.dbg
 | 
			
		||||
vdso-install-$(CONFIG_COMPAT_32)	+= arch/x86/entry/vdso/vdso32.so.dbg
 | 
			
		||||
 | 
			
		||||
archprepare: checkbin
 | 
			
		||||
checkbin:
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -18,11 +18,6 @@ OBJECT_FILES_NON_STANDARD	:= y
 | 
			
		|||
# Prevents link failures: __sanitizer_cov_trace_pc() is not linked in.
 | 
			
		||||
KCOV_INSTRUMENT		:= n
 | 
			
		||||
 | 
			
		||||
VDSO64-$(CONFIG_X86_64)		:= y
 | 
			
		||||
VDSOX32-$(CONFIG_X86_X32_ABI)	:= y
 | 
			
		||||
VDSO32-$(CONFIG_X86_32)		:= y
 | 
			
		||||
VDSO32-$(CONFIG_IA32_EMULATION)	:= y
 | 
			
		||||
 | 
			
		||||
# files to link into the vdso
 | 
			
		||||
vobjs-y := vdso-note.o vclock_gettime.o vgetcpu.o
 | 
			
		||||
vobjs32-y := vdso32/note.o vdso32/system_call.o vdso32/sigreturn.o
 | 
			
		||||
| 
						 | 
				
			
			@ -38,31 +33,24 @@ KCSAN_SANITIZE_vma.o			:= y
 | 
			
		|||
OBJECT_FILES_NON_STANDARD_extable.o		:= n
 | 
			
		||||
OBJECT_FILES_NON_STANDARD_vdso-image-32.o 	:= n
 | 
			
		||||
OBJECT_FILES_NON_STANDARD_vdso-image-64.o 	:= n
 | 
			
		||||
OBJECT_FILES_NON_STANDARD_vdso32-setup.o	:= n
 | 
			
		||||
OBJECT_FILES_NON_STANDARD_vma.o			:= n
 | 
			
		||||
 | 
			
		||||
# vDSO images to build
 | 
			
		||||
vdso_img-$(VDSO64-y)		+= 64
 | 
			
		||||
vdso_img-$(VDSOX32-y)		+= x32
 | 
			
		||||
vdso_img-$(VDSO32-y)		+= 32
 | 
			
		||||
obj-$(CONFIG_X86_64)		+= vdso-image-64.o
 | 
			
		||||
obj-$(CONFIG_X86_X32_ABI)	+= vdso-image-x32.o
 | 
			
		||||
obj-$(CONFIG_COMPAT_32)		+= vdso-image-32.o vdso32-setup.o
 | 
			
		||||
 | 
			
		||||
obj-$(VDSO32-y)				 += vdso32-setup.o
 | 
			
		||||
OBJECT_FILES_NON_STANDARD_vdso32-setup.o := n
 | 
			
		||||
 | 
			
		||||
vobjs := $(foreach F,$(vobjs-y),$(obj)/$F)
 | 
			
		||||
vobjs32 := $(foreach F,$(vobjs32-y),$(obj)/$F)
 | 
			
		||||
vobjs := $(addprefix $(obj)/, $(vobjs-y))
 | 
			
		||||
vobjs32 := $(addprefix $(obj)/, $(vobjs32-y))
 | 
			
		||||
 | 
			
		||||
$(obj)/vdso.o: $(obj)/vdso.so
 | 
			
		||||
 | 
			
		||||
targets += vdso.lds $(vobjs-y)
 | 
			
		||||
targets += vdso32/vdso32.lds $(vobjs32-y)
 | 
			
		||||
 | 
			
		||||
# Build the vDSO image C files and link them in.
 | 
			
		||||
vdso_img_objs := $(vdso_img-y:%=vdso-image-%.o)
 | 
			
		||||
vdso_img_cfiles := $(vdso_img-y:%=vdso-image-%.c)
 | 
			
		||||
vdso_img_sodbg := $(vdso_img-y:%=vdso%.so.dbg)
 | 
			
		||||
obj-y += $(vdso_img_objs)
 | 
			
		||||
targets += $(vdso_img_cfiles)
 | 
			
		||||
targets += $(vdso_img_sodbg) $(vdso_img-y:%=vdso%.so)
 | 
			
		||||
targets += $(foreach x, 64 x32 32, vdso-image-$(x).c vdso$(x).so vdso$(x).so.dbg)
 | 
			
		||||
 | 
			
		||||
CPPFLAGS_vdso.lds += -P -C
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -126,7 +114,7 @@ VDSO_LDFLAGS_vdsox32.lds = -m elf32_x86_64 -soname linux-vdso.so.1 \
 | 
			
		|||
vobjx32s-y := $(vobjs-y:.o=-x32.o)
 | 
			
		||||
 | 
			
		||||
# same thing, but in the output directory
 | 
			
		||||
vobjx32s := $(foreach F,$(vobjx32s-y),$(obj)/$F)
 | 
			
		||||
vobjx32s := $(addprefix $(obj)/, $(vobjx32s-y))
 | 
			
		||||
 | 
			
		||||
# Convert 64bit object file to x32 for x32 vDSO.
 | 
			
		||||
quiet_cmd_x32 = X32     $@
 | 
			
		||||
| 
						 | 
				
			
			@ -193,5 +181,3 @@ GCOV_PROFILE := n
 | 
			
		|||
 | 
			
		||||
quiet_cmd_vdso_and_check = VDSO    $@
 | 
			
		||||
      cmd_vdso_and_check = $(cmd_vdso); $(cmd_vdso_check)
 | 
			
		||||
 | 
			
		||||
clean-files := vdso32.so vdso32.so.dbg vdso64* vdso-image-*.c vdsox32.so*
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in a new issue