/Linux-v5.15/arch/mips/vdso/ |
D | Makefile | 7 include $(srctree)/lib/vdso/Makefile 9 obj-vdso-y := elf.o vgettimeofday.o sigreturn.o 12 ccflags-vdso := \ 23 ccflags-vdso += -DBUILD_VDSO32 30 cflags-vdso := $(ccflags-vdso) \ 36 aflags-vdso := $(ccflags-vdso) \ 55 obj-vdso-y := $(filter-out vgettimeofday.o, $(obj-vdso-y)) 59 ldflags-y := -Bsymbolic --no-undefined -soname=linux-vdso.so.1 \ 104 targets += $(obj-vdso-y) 105 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-v5.15/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 26 targets := $(obj-vdso) vdso.so vdso.so.dbg vdso.lds 27 obj-vdso := $(addprefix $(obj)/, $(obj-vdso)) 29 obj-y += vdso.o 42 $(obj)/vdso.o: $(obj)/vdso.so [all …]
|
/Linux-v5.15/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-v5.15/arch/arm64/kernel/vdso32/ |
D | Makefile | 9 include $(srctree)/lib/vdso/Makefile 123 VDSO_LDFLAGS += -Bsymbolic --no-undefined -soname=linux-vdso.so.1 131 munge := ../../../arm/vdso/vdsomunge 134 c-obj-vdso := note.o 135 c-obj-vdso-gettimeofday := vgettimeofday.o 144 targets := $(c-obj-vdso) $(c-obj-vdso-gettimeofday) $(asm-obj-vdso) vdso.so vdso.so.dbg vdso.so.raw 145 c-obj-vdso := $(addprefix $(obj)/, $(c-obj-vdso)) 146 c-obj-vdso-gettimeofday := $(addprefix $(obj)/, $(c-obj-vdso-gettimeofday)) 147 asm-obj-vdso := $(addprefix $(obj)/, $(asm-obj-vdso)) 148 obj-vdso := $(c-obj-vdso) $(c-obj-vdso-gettimeofday) $(asm-obj-vdso) [all …]
|
D | .gitignore | 2 vdso.lds 3 vdso.so.raw
|
/Linux-v5.15/arch/nds32/kernel/vdso/ |
D | Makefile | 9 obj-vdso := note.o datapage.o sigreturn.o gettimeofday.o 12 targets := $(obj-vdso) vdso.so vdso.so.dbg 13 obj-vdso := $(addprefix $(obj)/, $(obj-vdso)) 16 -Wl,-soname=linux-vdso.so.1 -Wl,--hash-style=sysv 22 obj-y += vdso.o 23 targets += vdso.lds 27 $(obj)/vdso.o : $(obj)/vdso.so 30 $(obj)/vdso.so.dbg: $(obj)/vdso.lds $(obj-vdso) FORCE 44 include/generated/vdso-offsets.h: $(obj)/vdso.so.dbg FORCE 73 cmd_vdso_install = cp $(obj)/$@.dbg $(MODLIB)/vdso/$@ [all …]
|
D | gettimeofday.c | 101 static notrace inline u64 vgetsns(struct vdso_data *vdso) in vgetsns() argument 108 (u32 *) ((char *)__get_timerpage() + vdso->cycle_count_offset); in vgetsns() 110 if (true == vdso->cycle_count_down) in vgetsns() 112 cycle_delta = cycle_now - (u32) vdso->cs_cycle_last; in vgetsns() 113 return ((u64) cycle_delta & vdso->cs_mask) * vdso->cs_mult; in vgetsns()
|
/Linux-v5.15/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 …]
|
D | .gitignore | 2 vdso.lds 3 vdso.so.raw
|
/Linux-v5.15/arch/x86/um/vdso/ |
D | Makefile | 11 vdso-install-$(VDSO64-y) += vdso.so 15 vobjs-y := vdso-note.o um_vdso.o 18 obj-$(VDSO64-y) += vdso.o vma.o 22 $(obj)/vdso.o: $(obj)/vdso.so 24 targets += vdso.so vdso.so.dbg vdso.lds $(vobjs-y) 28 VDSO_LDFLAGS_vdso.lds = -m64 -Wl,-soname=linux-vdso.so.1 \ 31 $(obj)/vdso.o: $(src)/vdso.S $(obj)/vdso.so 33 $(obj)/vdso.so.dbg: $(obj)/vdso.lds $(vobjs) FORCE 34 $(call if_changed,vdso) 72 cmd_vdso_install = cp $(obj)/$@.dbg $(MODLIB)/vdso/$@ [all …]
|
/Linux-v5.15/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 -nostdlib -soname=linux-vdso.so.1 --hash-style=sysv \ 48 targets += vdso.lds 52 $(obj)/vdso.o : $(obj)/vdso.so 55 $(obj)/vdso.so.dbg: $(obj)/vdso.lds $(obj-vdso) FORCE 68 include/generated/vdso-offsets.h: $(obj)/vdso.so.dbg FORCE 77 cmd_vdso_install = cp $(obj)/$@.dbg $(MODLIB)/vdso/$@ [all …]
|
/Linux-v5.15/tools/testing/selftests/vDSO/ |
D | vdso_test_correctness.c | 111 void *vdso = dlopen("linux-vdso.so.1", in fill_function_pointers() local 113 if (!vdso) in fill_function_pointers() 114 vdso = dlopen("linux-gate.so.1", in fill_function_pointers() 116 if (!vdso) { in fill_function_pointers() 121 vdso_getcpu = (getcpu_t)dlsym(vdso, name[4]); in fill_function_pointers() 127 vdso_clock_gettime = (vgettime_t)dlsym(vdso, name[1]); in fill_function_pointers() 132 vdso_clock_gettime64 = (vgettime64_t)dlsym(vdso, name[5]); in fill_function_pointers() 137 vdso_gettimeofday = (vgtod_t)dlsym(vdso, name[0]); in fill_function_pointers() 258 struct timespec start, vdso, end; in test_one_clock_gettime() local 265 vdso_ret = vdso_clock_gettime(clock, &vdso); in test_one_clock_gettime() [all …]
|
/Linux-v5.15/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-v5.15/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-v5.15/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-v5.15/arch/x86/entry/vdso/ |
D | Makefile | 10 include $(srctree)/lib/vdso/Makefile 27 vobjs-y := vdso-note.o vclock_gettime.o vgetcpu.o 49 $(obj)/vdso.o: $(obj)/vdso.so 51 targets += vdso.lds $(vobjs-y) 55 vdso_img_objs := $(vdso_img-y:%=vdso-image-%.o) 56 vdso_img_cfiles := $(vdso_img-y:%=vdso-image-%.c) 57 vdso_img_sodbg := $(vdso_img-y:%=vdso%.so.dbg) 60 targets += $(vdso_img_sodbg) $(vdso_img-y:%=vdso%.so) 64 VDSO_LDFLAGS_vdso.lds = -m elf_x86_64 -soname linux-vdso.so.1 --no-undefined \ 67 $(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() 426 unsigned long vdso = (unsigned long) current->mm->context.vdso; in arch_syscall_is_vdso_sigreturn() local 429 if (regs->ip == vdso + image->sym_vdso32_sigreturn_landing_pad || in arch_syscall_is_vdso_sigreturn() 430 regs->ip == vdso + image->sym_vdso32_rt_sigreturn_landing_pad) in arch_syscall_is_vdso_sigreturn()
|
/Linux-v5.15/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-v5.15/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-v5.15/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-v5.15/arch/riscv/kernel/ |
D | vdso.c | 89 mm->context.vdso = NULL; in arch_setup_additional_pages() 109 mm->context.vdso = (void *)vdso_base + VVAR_SIZE; in arch_setup_additional_pages() 118 if (vma->vm_mm && (vma->vm_start == (long)vma->vm_mm->context.vdso)) in arch_vma_name() 121 (long)vma->vm_mm->context.vdso - VVAR_SIZE)) in arch_vma_name()
|
/Linux-v5.15/arch/arm64/ |
D | Makefile | 168 $(Q)$(MAKE) $(build)=arch/arm64/kernel/vdso $@ 189 $(Q)$(MAKE) $(clean)=arch/arm64/kernel/vdso 201 $(Q)$(MAKE) $(build)=arch/arm64/kernel/vdso \ 202 include/generated/vdso-offsets.h arch/arm64/kernel/vdso/vdso.so 205 include/generated/vdso32-offsets.h arch/arm64/kernel/vdso32/vdso.so
|