Changeset View
Changeset View
Standalone View
Standalone View
head/sys/amd64/linux/linux_sysvec.c
Show First 20 Lines • Show All 827 Lines • ▼ Show 20 Lines | struct sysentvec elf_linux_sysvec = { | ||||
.sv_thread_detach = linux_thread_detach, | .sv_thread_detach = linux_thread_detach, | ||||
.sv_trap = linux_vsyscall, | .sv_trap = linux_vsyscall, | ||||
}; | }; | ||||
static void | static void | ||||
linux_vdso_install(void *param) | linux_vdso_install(void *param) | ||||
{ | { | ||||
amd64_lower_shared_page(&elf_linux_sysvec); | |||||
linux_szsigcode = (&_binary_linux_locore_o_end - | linux_szsigcode = (&_binary_linux_locore_o_end - | ||||
&_binary_linux_locore_o_start); | &_binary_linux_locore_o_start); | ||||
if (linux_szsigcode > elf_linux_sysvec.sv_shared_page_len) | if (linux_szsigcode > elf_linux_sysvec.sv_shared_page_len) | ||||
panic("Linux invalid vdso size\n"); | panic("Linux invalid vdso size\n"); | ||||
__elfN(linux_vdso_fixup)(&elf_linux_sysvec); | __elfN(linux_vdso_fixup)(&elf_linux_sysvec); | ||||
▲ Show 20 Lines • Show All 162 Lines • Show Last 20 Lines |