...
Source file
src/runtime/vdso_linux_amd64.go
Documentation: runtime
1
2
3
4
5 package runtime
6
7
8
9 type elfSym struct {
10 st_name uint32
11 st_info byte
12 st_other byte
13 st_shndx uint16
14 st_value uint64
15 st_size uint64
16 }
17
18 type elfVerdef struct {
19 vd_version uint16
20 vd_flags uint16
21 vd_ndx uint16
22 vd_cnt uint16
23 vd_hash uint32
24 vd_aux uint32
25 vd_next uint32
26 }
27
28 type elfEhdr struct {
29 e_ident [_EI_NIDENT]byte
30 e_type uint16
31 e_machine uint16
32 e_version uint32
33 e_entry uint64
34 e_phoff uint64
35 e_shoff uint64
36 e_flags uint32
37 e_ehsize uint16
38 e_phentsize uint16
39 e_phnum uint16
40 e_shentsize uint16
41 e_shnum uint16
42 e_shstrndx uint16
43 }
44
45 type elfPhdr struct {
46 p_type uint32
47 p_flags uint32
48 p_offset uint64
49 p_vaddr uint64
50 p_paddr uint64
51 p_filesz uint64
52 p_memsz uint64
53 p_align uint64
54 }
55
56 type elfShdr struct {
57 sh_name uint32
58 sh_type uint32
59 sh_flags uint64
60 sh_addr uint64
61 sh_offset uint64
62 sh_size uint64
63 sh_link uint32
64 sh_info uint32
65 sh_addralign uint64
66 sh_entsize uint64
67 }
68
69 type elfDyn struct {
70 d_tag int64
71 d_val uint64
72 }
73
74 type elfVerdaux struct {
75 vda_name uint32
76 vda_next uint32
77 }
78
79 const (
80
81
82 vdsoArrayMax = 1<<50 - 1
83 )
84
85 var sym_keys = []symbol_key{
86 {"__vdso_time", 0xa33c485, 0x821e8e0d, &__vdso_time_sym},
87 {"__vdso_gettimeofday", 0x315ca59, 0xb01bca00, &__vdso_gettimeofday_sym},
88 {"__vdso_clock_gettime", 0xd35ec75, 0x6e43a318, &__vdso_clock_gettime_sym},
89 }
90
91
92 var (
93 __vdso_time_sym uintptr = 0xffffffffff600400
94 __vdso_gettimeofday_sym uintptr = 0xffffffffff600000
95 __vdso_clock_gettime_sym uintptr = 0
96 )
97
View as plain text