/Linux-v6.1/arch/mips/vdso/ |
D | Makefile | 10 include $(srctree)/lib/vdso/Makefile 12 obj-vdso-y := elf.o vgettimeofday.o sigreturn.o 15 ccflags-vdso := \ 26 ccflags-vdso += -DBUILD_VDSO32 33 cflags-vdso := $(ccflags-vdso) \ 39 aflags-vdso := $(ccflags-vdso) \ 58 obj-vdso-y := $(filter-out vgettimeofday.o, $(obj-vdso-y)) 62 ldflags-y := -Bsymbolic --no-undefined -soname=linux-vdso.so.1 \ 107 targets += $(obj-vdso-y) 108 targets += vdso.lds [all …]
|
D | genvdso.c | 191 static bool patch_vdso(const char *path, void *vdso) in patch_vdso() argument 194 return patch_vdso64(path, vdso); in patch_vdso() 196 return patch_vdso32(path, vdso); in patch_vdso() 199 static bool get_symbols(const char *path, void *vdso) in get_symbols() argument 202 return get_symbols64(path, vdso); in get_symbols() 204 return get_symbols32(path, vdso); in get_symbols() 210 void *dbg_vdso, *vdso; in main() local 231 vdso = map_vdso(vdso_path, &vdso_size); in main() 232 if (!vdso) in main() 238 if (!patch_vdso(vdso_path, vdso)) in main() [all …]
|
D | genvdso.h | 7 static inline bool FUNC(patch_vdso)(const char *path, void *vdso) in FUNC() 9 const ELF(Ehdr) *ehdr = vdso; in FUNC() 15 shdrs = vdso + FUNC(swap_uint)(ehdr->e_shoff); in FUNC() 20 shstrtab = vdso + FUNC(swap_uint)(shdr->sh_offset); in FUNC() 58 static inline bool FUNC(get_symbols)(const char *path, void *vdso) in FUNC() 60 const ELF(Ehdr) *ehdr = vdso; in FUNC() 69 shdrs = vdso + FUNC(swap_uint)(ehdr->e_shoff); in FUNC() 96 symtab = vdso + FUNC(swap_uint)(shdr->sh_offset); in FUNC() 102 strtab = vdso + FUNC(swap_uint)(shdr->sh_offset); in FUNC()
|
/Linux-v6.1/arch/loongarch/vdso/ |
D | Makefile | 7 include $(srctree)/lib/vdso/Makefile 9 obj-vdso-y := elf.o vgetcpu.o vgettimeofday.o sigreturn.o 12 ccflags-vdso := \ 20 ccflags-vdso += $(filter --target=%,$(KBUILD_CFLAGS)) 23 cflags-vdso := $(ccflags-vdso) \ 30 aflags-vdso := $(ccflags-vdso) \ 38 ldflags-y := -Bsymbolic --no-undefined -soname=linux-vdso.so.1 \ 59 include/generated/vdso-offsets.h: $(obj)/vdso.so.dbg FORCE 68 targets += $(obj-vdso-y) 69 targets += vdso.lds vdso.so.dbg vdso.so [all …]
|
/Linux-v6.1/arch/csky/kernel/vdso/ |
D | Makefile | 6 include $(srctree)/lib/vdso/Makefile 9 vdso-syms += rt_sigreturn 10 vdso-syms += vgettimeofday 13 obj-vdso = $(patsubst %, %.o, $(vdso-syms)) note.o 22 targets := $(obj-vdso) vdso.so vdso.so.dbg vdso.lds vdso-dummy.o 23 obj-vdso := $(addprefix $(obj)/, $(obj-vdso)) 25 obj-y += vdso.o vdso-syms.o 33 $(obj)/vdso.o: $(obj)/vdso.so 36 $(obj)/vdso.so.dbg: $(src)/vdso.lds $(obj-vdso) FORCE 38 SYSCFLAGS_vdso.so.dbg = -shared -s -Wl,-soname=linux-vdso.so.1 \ [all …]
|
/Linux-v6.1/arch/riscv/kernel/vdso/ |
D | Makefile | 7 include $(srctree)/lib/vdso/Makefile 9 vdso-syms = rt_sigreturn 11 vdso-syms += vgettimeofday 13 vdso-syms += getcpu 14 vdso-syms += flush_icache 17 obj-vdso = $(patsubst %, %.o, $(vdso-syms)) note.o 27 targets := $(obj-vdso) vdso.so vdso.so.dbg vdso.lds 28 obj-vdso := $(addprefix $(obj)/, $(obj-vdso)) 30 obj-y += vdso.o 32 ifneq ($(filter vgettimeofday, $(vdso-syms)),) [all …]
|
/Linux-v6.1/arch/arm64/kernel/vdso32/ |
D | Makefile | 9 include $(srctree)/lib/vdso/Makefile 104 VDSO_LDFLAGS += -Bsymbolic --no-undefined -soname=linux-vdso.so.1 113 munge := ../../../arm/vdso/vdsomunge 116 c-obj-vdso := note.o 117 c-obj-vdso-gettimeofday := vgettimeofday.o 126 targets := $(c-obj-vdso) $(c-obj-vdso-gettimeofday) $(asm-obj-vdso) vdso.so vdso.so.dbg vdso.so.raw 127 c-obj-vdso := $(addprefix $(obj)/, $(c-obj-vdso)) 128 c-obj-vdso-gettimeofday := $(addprefix $(obj)/, $(c-obj-vdso-gettimeofday)) 129 asm-obj-vdso := $(addprefix $(obj)/, $(asm-obj-vdso)) 130 obj-vdso := $(c-obj-vdso) $(c-obj-vdso-gettimeofday) $(asm-obj-vdso) [all …]
|
D | .gitignore | 2 vdso.lds 3 vdso.so.raw
|
/Linux-v6.1/arch/arm/vdso/ |
D | Makefile | 6 include $(srctree)/lib/vdso/Makefile 10 obj-vdso := vgettimeofday.o datapage.o note.o 13 targets := $(obj-vdso) vdso.so vdso.so.dbg vdso.so.raw vdso.lds 14 obj-vdso := $(addprefix $(obj)/, $(obj-vdso)) 20 ldflags-y := -Bsymbolic --no-undefined -soname=linux-vdso.so.1 \ 25 obj-$(CONFIG_VDSO) += vdso.o 47 $(obj)/vdso.o : $(obj)/vdso.so 50 $(obj)/vdso.so.raw: $(obj)/vdso.lds $(obj-vdso) FORCE 53 $(obj)/vdso.so.dbg: $(obj)/vdso.so.raw $(obj)/vdsomunge FORCE 86 $(MODLIB)/vdso: FORCE [all …]
|
/Linux-v6.1/arch/x86/um/vdso/ |
D | Makefile | 14 vdso-install-$(VDSO64-y) += vdso.so 18 vobjs-y := vdso-note.o um_vdso.o 21 obj-$(VDSO64-y) += vdso.o vma.o 25 $(obj)/vdso.o: $(obj)/vdso.so 27 targets += vdso.so vdso.so.dbg vdso.lds $(vobjs-y) 31 VDSO_LDFLAGS_vdso.lds = -m64 -Wl,-soname=linux-vdso.so.1 \ 34 $(obj)/vdso.o: $(src)/vdso.S $(obj)/vdso.so 36 $(obj)/vdso.so.dbg: $(obj)/vdso.lds $(vobjs) FORCE 37 $(call if_changed,vdso) 75 cmd_vdso_install = cp $(obj)/$@.dbg $(MODLIB)/vdso/$@ [all …]
|
/Linux-v6.1/arch/arm64/kernel/vdso/ |
D | Makefile | 12 include $(srctree)/lib/vdso/Makefile 14 obj-vdso := vgettimeofday.o note.o sigreturn.o 17 targets := $(obj-vdso) vdso.so vdso.so.dbg 18 obj-vdso := $(addprefix $(obj)/, $(obj-vdso)) 26 ldflags-y := -shared -soname=linux-vdso.so.1 --hash-style=sysv \ 60 targets += vdso.lds 64 $(obj)/vdso.so.dbg: $(obj)/vdso.lds $(obj-vdso) FORCE 77 include/generated/vdso-offsets.h: $(obj)/vdso.so.dbg FORCE 86 cmd_vdso_install = cp $(obj)/$@.dbg $(MODLIB)/vdso/$@ 88 vdso.so: $(obj)/vdso.so.dbg [all …]
|
/Linux-v6.1/tools/testing/selftests/vDSO/ |
D | vdso_test_correctness.c | 112 void *vdso = dlopen("linux-vdso.so.1", in fill_function_pointers() local 114 if (!vdso) in fill_function_pointers() 115 vdso = dlopen("linux-gate.so.1", in fill_function_pointers() 117 if (!vdso) { in fill_function_pointers() 122 vdso_getcpu = (getcpu_t)dlsym(vdso, name[4]); in fill_function_pointers() 128 vdso_clock_gettime = (vgettime_t)dlsym(vdso, name[1]); in fill_function_pointers() 133 vdso_clock_gettime64 = (vgettime64_t)dlsym(vdso, name[5]); in fill_function_pointers() 138 vdso_gettimeofday = (vgtod_t)dlsym(vdso, name[0]); in fill_function_pointers() 259 struct timespec start, vdso, end; in test_one_clock_gettime() local 266 vdso_ret = vdso_clock_gettime(clock, &vdso); in test_one_clock_gettime() [all …]
|
/Linux-v6.1/arch/sparc/vdso/ |
D | Makefile | 10 vobjs-y := vdso-note.o vclock_gettime.o 21 $(obj)/vdso.o: $(obj)/vdso.so 23 targets += vdso.lds $(vobjs-y) 26 vdso_img_objs := $(vdso_img-y:%=vdso-image-%.o) 27 vdso_img_cfiles := $(vdso_img-y:%=vdso-image-%.c) 28 vdso_img_sodbg := $(vdso_img-y:%=vdso%.so.dbg) 31 targets += $(vdso_img_sodbg) $(vdso_img-y:%=vdso%.so) 35 VDSO_LDFLAGS_vdso.lds = -m elf64_sparc -soname linux-vdso.so.1 --no-undefined \ 38 $(obj)/vdso64.so.dbg: $(obj)/vdso.lds $(vobjs) FORCE 39 $(call if_changed,vdso) [all …]
|
/Linux-v6.1/arch/hexagon/kernel/ |
D | vdso.c | 22 struct hexagon_vdso *vdso; in vdso_init() local 28 vdso = vmap(&vdso_page, 1, 0, PAGE_KERNEL); in vdso_init() 29 if (!vdso) in vdso_init() 31 clear_page(vdso); in vdso_init() 37 vdso->rt_signal_trampoline[0] = __rt_sigtramp_template[0]; in vdso_init() 38 vdso->rt_signal_trampoline[1] = __rt_sigtramp_template[1]; in vdso_init() 40 vunmap(vdso); in vdso_init() 76 mm->context.vdso = (void *)vdso_base; in arch_setup_additional_pages() 85 if (vma->vm_mm && vma->vm_start == (long)vma->vm_mm->context.vdso) in arch_vma_name()
|
/Linux-v6.1/tools/testing/selftests/timens/ |
D | gettime_perf.c | 23 void *vdso = dlopen("linux-vdso.so.1", in fill_function_pointers() local 25 if (!vdso) in fill_function_pointers() 26 vdso = dlopen("linux-gate.so.1", in fill_function_pointers() 28 if (!vdso) in fill_function_pointers() 29 vdso = dlopen("linux-vdso32.so.1", in fill_function_pointers() 31 if (!vdso) in fill_function_pointers() 32 vdso = dlopen("linux-vdso64.so.1", in fill_function_pointers() 34 if (!vdso) { in fill_function_pointers() 39 vdso_clock_gettime = (vgettime_t)dlsym(vdso, "__vdso_clock_gettime"); in fill_function_pointers() 41 vdso_clock_gettime = (vgettime_t)dlsym(vdso, "__kernel_clock_gettime"); in fill_function_pointers()
|
/Linux-v6.1/arch/x86/entry/vdso/ |
D | Makefile | 10 include $(srctree)/lib/vdso/Makefile 30 vobjs-y := vdso-note.o vclock_gettime.o vgetcpu.o 52 $(obj)/vdso.o: $(obj)/vdso.so 54 targets += vdso.lds $(vobjs-y) 58 vdso_img_objs := $(vdso_img-y:%=vdso-image-%.o) 59 vdso_img_cfiles := $(vdso_img-y:%=vdso-image-%.c) 60 vdso_img_sodbg := $(vdso_img-y:%=vdso%.so.dbg) 63 targets += $(vdso_img_sodbg) $(vdso_img-y:%=vdso%.so) 67 VDSO_LDFLAGS_vdso.lds = -m elf_x86_64 -soname linux-vdso.so.1 --no-undefined \ 70 $(obj)/vdso64.so.dbg: $(obj)/vdso.lds $(vobjs) FORCE [all …]
|
D | vma.c | 80 (unsigned long)current->mm->context.vdso; in vdso_fix_landing() 95 current->mm->context.vdso = (void __user *)new_vma->vm_start; in vdso_mremap() 291 current->mm->context.vdso = (void __user *)text_start; in map_vdso() 427 unsigned long vdso = (unsigned long) current->mm->context.vdso; in arch_syscall_is_vdso_sigreturn() local 430 if (regs->ip == vdso + image->sym_vdso32_sigreturn_landing_pad || in arch_syscall_is_vdso_sigreturn() 431 regs->ip == vdso + image->sym_vdso32_rt_sigreturn_landing_pad) in arch_syscall_is_vdso_sigreturn()
|
/Linux-v6.1/arch/loongarch/kernel/ |
D | vdso.c | 39 current->mm->context.vdso = (void *)(new_vma->vm_start); in vdso_mremap() 45 .vdso = vdso_start, 62 BUG_ON(!PAGE_ALIGNED(vdso_info.vdso)); in init_vdso() 68 pfn = __phys_to_pfn(__pa_symbol(vdso_info.vdso)); in init_vdso() 94 struct loongarch_vdso_info *info = current->thread.vdso; in arch_setup_additional_pages() 137 mm->context.vdso = (void *)vdso_addr; in arch_setup_additional_pages()
|
/Linux-v6.1/arch/csky/kernel/ |
D | vdso.c | 76 mm->context.vdso = (void *)vdso_base; in arch_setup_additional_pages() 84 mm->context.vdso = NULL; in arch_setup_additional_pages() 93 mm->context.vdso = NULL; in arch_setup_additional_pages() 101 if (vma->vm_mm && (vma->vm_start == (long)vma->vm_mm->context.vdso)) in arch_vma_name() 104 (long)vma->vm_mm->context.vdso + PAGE_SIZE)) in arch_vma_name()
|
/Linux-v6.1/tools/testing/selftests/x86/ |
D | vdso_restorer.c | 50 void *vdso = dlopen("linux-vdso.so.1", in main() local 52 if (!vdso) in main() 53 vdso = dlopen("linux-gate.so.1", in main() 55 if (!vdso) { in main()
|
D | test_vsyscall.c | 74 void *vdso = dlopen("linux-vdso.so.1", RTLD_LAZY | RTLD_LOCAL | RTLD_NOLOAD); in init_vdso() local 75 if (!vdso) in init_vdso() 76 vdso = dlopen("linux-gate.so.1", RTLD_LAZY | RTLD_LOCAL | RTLD_NOLOAD); in init_vdso() 77 if (!vdso) { in init_vdso() 82 vdso_gtod = (gtod_t)dlsym(vdso, "__vdso_gettimeofday"); in init_vdso() 86 vdso_gettime = (vgettime_t)dlsym(vdso, "__vdso_clock_gettime"); in init_vdso() 90 vdso_time = (time_func_t)dlsym(vdso, "__vdso_time"); in init_vdso() 94 vdso_getcpu = (getcpu_t)dlsym(vdso, "__vdso_getcpu"); in init_vdso()
|
/Linux-v6.1/arch/arm64/kernel/ |
D | Makefile | 32 io.o vdso.o hyp-stub.o psci.o cpu_ops.o \ 81 obj-y += vdso-wrap.o 85 $(obj)/vdso-wrap.o: $(obj)/vdso/vdso.so 86 $(obj)/vdso32-wrap.o: $(obj)/vdso32/vdso.so 97 subdir- += vdso vdso32
|
/Linux-v6.1/tools/perf/util/ |
D | vdso.c | 40 struct vdso_file vdso; member 50 .vdso = { in vdso_info__new() 73 char *vdso = NULL; in get_file() local 96 vdso = vdso_file->temp_file_name; in get_file() 103 vdso_file->found = (vdso != NULL); in get_file() 105 return vdso; in get_file() 115 if (vdso_info->vdso.found) in machine__exit_vdso() 116 unlink(vdso_info->vdso.temp_file_name); in machine__exit_vdso() 347 file = get_file(&vdso_info->vdso); in machine__findnew_vdso()
|
/Linux-v6.1/arch/arm64/ |
D | Makefile | 173 $(Q)$(MAKE) $(build)=arch/arm64/kernel/vdso $@ 199 $(Q)$(MAKE) $(build)=arch/arm64/kernel/vdso \ 200 include/generated/vdso-offsets.h arch/arm64/kernel/vdso/vdso.so 203 include/generated/vdso32-offsets.h arch/arm64/kernel/vdso32/vdso.so
|
/Linux-v6.1/arch/powerpc/perf/ |
D | callchain_32.c | 62 if (current->mm->context.vdso && in is_sigreturn_32_address() 63 nip == VDSO32_SYMBOL(current->mm->context.vdso, sigtramp32)) in is_sigreturn_32_address() 73 if (current->mm->context.vdso && in is_rt_sigreturn_32_address() 74 nip == VDSO32_SYMBOL(current->mm->context.vdso, sigtramp_rt32)) in is_rt_sigreturn_32_address()
|