Home
last modified time | relevance | path

Searched refs:vdso (Results 1 – 25 of 130) sorted by relevance

123456

/Linux-v6.6/arch/mips/vdso/
DMakefile8 include $(srctree)/lib/vdso/Makefile
10 obj-vdso-y := elf.o vgettimeofday.o sigreturn.o
13 ccflags-vdso := \
24 ccflags-vdso += -DBUILD_VDSO32
31 cflags-vdso := $(ccflags-vdso) \
37 aflags-vdso := $(ccflags-vdso) \
53 obj-vdso-y := $(filter-out vgettimeofday.o, $(obj-vdso-y))
57 ldflags-y := -Bsymbolic --no-undefined -soname=linux-vdso.so.1 \
102 targets += $(obj-vdso-y)
103 targets += vdso.lds
[all …]
Dgenvdso.c191 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 …]
Dgenvdso.h7 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.6/arch/loongarch/vdso/
DMakefile8 include $(srctree)/lib/vdso/Makefile
10 obj-vdso-y := elf.o vgetcpu.o vgettimeofday.o sigreturn.o
13 ccflags-vdso := \
21 cflags-vdso := $(ccflags-vdso) \
28 aflags-vdso := $(ccflags-vdso) \
36 ldflags-y := -Bsymbolic --no-undefined -soname=linux-vdso.so.1 \
57 include/generated/vdso-offsets.h: $(obj)/vdso.so.dbg FORCE
66 targets += $(obj-vdso-y)
67 targets += vdso.lds vdso.so.dbg vdso.so
69 obj-vdso := $(obj-vdso-y:%.o=$(obj)/%.o)
[all …]
/Linux-v6.6/arch/riscv/kernel/vdso/
DMakefile5 include $(srctree)/lib/vdso/Makefile
7 vdso-syms = rt_sigreturn
9 vdso-syms += vgettimeofday
11 vdso-syms += getcpu
12 vdso-syms += flush_icache
13 vdso-syms += hwprobe
14 vdso-syms += sys_hwprobe
17 obj-vdso = $(patsubst %, %.o, $(vdso-syms)) note.o
29 targets := $(obj-vdso) vdso.so vdso.so.dbg vdso.lds
30 obj-vdso := $(addprefix $(obj)/, $(obj-vdso))
[all …]
/Linux-v6.6/arch/csky/kernel/vdso/
DMakefile4 include $(srctree)/lib/vdso/Makefile
7 vdso-syms += rt_sigreturn
8 vdso-syms += vgettimeofday
11 obj-vdso = $(patsubst %, %.o, $(vdso-syms)) note.o
20 targets := $(obj-vdso) vdso.so vdso.so.dbg vdso.lds vdso-dummy.o
21 obj-vdso := $(addprefix $(obj)/, $(obj-vdso))
23 obj-y += vdso.o vdso-syms.o
31 $(obj)/vdso.o: $(obj)/vdso.so
34 $(obj)/vdso.so.dbg: $(src)/vdso.lds $(obj-vdso) FORCE
36 SYSCFLAGS_vdso.so.dbg = -shared -s -Wl,-soname=linux-vdso.so.1 \
[all …]
/Linux-v6.6/arch/arm64/kernel/vdso32/
DMakefile6 include $(srctree)/lib/vdso/Makefile
99 VDSO_LDFLAGS += -Bsymbolic --no-undefined -soname=linux-vdso.so.1
108 munge := ../../../arm/vdso/vdsomunge
111 c-obj-vdso := note.o
112 c-obj-vdso-gettimeofday := vgettimeofday.o
121 targets := $(c-obj-vdso) $(c-obj-vdso-gettimeofday) $(asm-obj-vdso) vdso.so vdso.so.dbg vdso.so.raw
122 c-obj-vdso := $(addprefix $(obj)/, $(c-obj-vdso))
123 c-obj-vdso-gettimeofday := $(addprefix $(obj)/, $(c-obj-vdso-gettimeofday))
124 asm-obj-vdso := $(addprefix $(obj)/, $(asm-obj-vdso))
125 obj-vdso := $(c-obj-vdso) $(c-obj-vdso-gettimeofday) $(asm-obj-vdso)
[all …]
D.gitignore2 vdso.lds
3 vdso.so.raw
/Linux-v6.6/arch/arm/vdso/
DMakefile4 include $(srctree)/lib/vdso/Makefile
8 obj-vdso := vgettimeofday.o datapage.o note.o
11 targets := $(obj-vdso) vdso.so vdso.so.dbg vdso.so.raw vdso.lds
12 obj-vdso := $(addprefix $(obj)/, $(obj-vdso))
18 ldflags-y := -Bsymbolic --no-undefined -soname=linux-vdso.so.1 \
23 obj-$(CONFIG_VDSO) += vdso.o
46 $(obj)/vdso.o : $(obj)/vdso.so
49 $(obj)/vdso.so.raw: $(obj)/vdso.lds $(obj-vdso) FORCE
52 $(obj)/vdso.so.dbg: $(obj)/vdso.so.raw $(obj)/vdsomunge FORCE
85 $(MODLIB)/vdso: FORCE
[all …]
/Linux-v6.6/arch/x86/um/vdso/
DMakefile14 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.6/arch/arm64/kernel/vdso/
DMakefile10 include $(srctree)/lib/vdso/Makefile
12 obj-vdso := vgettimeofday.o note.o sigreturn.o
15 targets := $(obj-vdso) vdso.so vdso.so.dbg
16 obj-vdso := $(addprefix $(obj)/, $(obj-vdso))
24 ldflags-y := -shared -soname=linux-vdso.so.1 --hash-style=sysv \
58 targets += vdso.lds
62 $(obj)/vdso.so.dbg: $(obj)/vdso.lds $(obj-vdso) FORCE
75 include/generated/vdso-offsets.h: $(obj)/vdso.so.dbg FORCE
84 cmd_vdso_install = cp $(obj)/$@.dbg $(MODLIB)/vdso/$@
86 vdso.so: $(obj)/vdso.so.dbg
[all …]
/Linux-v6.6/tools/testing/selftests/vDSO/
Dvdso_test_correctness.c112 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.6/arch/sparc/vdso/
DMakefile10 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.6/arch/hexagon/kernel/
Dvdso.c22 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.6/tools/testing/selftests/timens/
Dgettime_perf.c23 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.6/arch/x86/entry/vdso/
DMakefile7 include $(srctree)/lib/vdso/Makefile
27 vobjs-y := vdso-note.o vclock_gettime.o vgetcpu.o
50 $(obj)/vdso.o: $(obj)/vdso.so
52 targets += vdso.lds $(vobjs-y)
56 vdso_img_objs := $(vdso_img-y:%=vdso-image-%.o)
57 vdso_img_cfiles := $(vdso_img-y:%=vdso-image-%.c)
58 vdso_img_sodbg := $(vdso_img-y:%=vdso%.so.dbg)
61 targets += $(vdso_img_sodbg) $(vdso_img-y:%=vdso%.so)
65 VDSO_LDFLAGS_vdso.lds = -m elf_x86_64 -soname linux-vdso.so.1 --no-undefined \
68 $(obj)/vdso64.so.dbg: $(obj)/vdso.lds $(vobjs) FORCE
[all …]
Dvma.c83 (unsigned long)current->mm->context.vdso; in vdso_fix_landing()
98 current->mm->context.vdso = (void __user *)new_vma->vm_start; in vdso_mremap()
268 current->mm->context.vdso = (void __user *)text_start; in map_vdso()
404 unsigned long vdso = (unsigned long) current->mm->context.vdso; in arch_syscall_is_vdso_sigreturn() local
407 if (regs->ip == vdso + image->sym_vdso32_sigreturn_landing_pad || in arch_syscall_is_vdso_sigreturn()
408 regs->ip == vdso + image->sym_vdso32_rt_sigreturn_landing_pad) in arch_syscall_is_vdso_sigreturn()
/Linux-v6.6/arch/csky/kernel/
Dvdso.c76 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.6/tools/testing/selftests/x86/
Dvdso_restorer.c50 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()
Dtest_vsyscall.c74 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.6/arch/arm64/kernel/
DMakefile32 io.o vdso.o hyp-stub.o psci.o cpu_ops.o \
73 obj-y += vdso-wrap.o
79 $(obj)/vdso-wrap.o: $(obj)/vdso/vdso.so
80 $(obj)/vdso32-wrap.o: $(obj)/vdso32/vdso.so
91 subdir- += vdso vdso32
/Linux-v6.6/tools/perf/util/
Dvdso.c40 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()
348 file = get_file(&vdso_info->vdso); in machine__findnew_vdso()
/Linux-v6.6/arch/loongarch/kernel/
Dvdso.c45 current->mm->context.vdso = (void *)(new_vma->vm_start); in vdso_mremap()
88 .vdso = vdso_start,
106 BUG_ON(!PAGE_ALIGNED(vdso_info.vdso)); in init_vdso()
112 pfn = __phys_to_pfn(__pa_symbol(vdso_info.vdso)); in init_vdso()
169 struct loongarch_vdso_info *info = current->thread.vdso; in arch_setup_additional_pages()
203 mm->context.vdso = (void *)vdso_addr; in arch_setup_additional_pages()
/Linux-v6.6/arch/arm64/
DMakefile174 $(Q)$(MAKE) $(build)=arch/arm64/kernel/vdso $@
200 $(Q)$(MAKE) $(build)=arch/arm64/kernel/vdso \
201 include/generated/vdso-offsets.h arch/arm64/kernel/vdso/vdso.so
204 include/generated/vdso32-offsets.h arch/arm64/kernel/vdso32/vdso.so
/Linux-v6.6/arch/powerpc/perf/
Dcallchain_32.c62 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()

123456