Home
last modified time | relevance | path

Searched full:dtv (Results 1 – 25 of 44) sorted by relevance

12

/freebsd/lib/libc/gen/
H A Dtls.c83 struct dtv *dtv; in __libc_tls_get_addr() local
86 dtv = _tcb_get()->tcb_dtv; in __libc_tls_get_addr()
88 return (dtv->dtv_slots[ti->ti_module - 1].dtvs_tls + in __libc_tls_get_addr()
146 * points to DTV vector and DTV values are real addresses (without bias).
152 * any alignment gap[4]. Only TLS should be aligned. The TCB[0] points to DTV
153 * vector and DTV values are biased by constant value (TLS_DTV_OFFSET) from
154 * real addresses. However, like RTLD, we don't actually bias the DTV values,
203 struct dtv *dtv; in __libc_free_tls() local
205 dtv = ((struct tcb *)tcb)->tcb_dtv; in __libc_free_tls()
206 __je_bootstrap_free(dtv); in __libc_free_tls()
[all …]
/freebsd/contrib/llvm-project/compiler-rt/lib/sanitizer_common/
H A Dsanitizer_tls_get_addr.cpp68 static DTLS::DTV *DTLS_Find(uptr id) { in DTLS_Find()
113 DTLS::DTV *DTLS_on_tls_get_addr(void *arg_void, void *res, in DTLS_on_tls_get_addr()
118 DTLS::DTV *dtv = DTLS_Find(dso_id); in DTLS_on_tls_get_addr() local
119 if (!dtv || dtv->beg) in DTLS_on_tls_get_addr()
149 dtv->beg = tls_beg; in DTLS_on_tls_get_addr()
150 dtv->size = tls_size; in DTLS_on_tls_get_addr()
151 return dtv; in DTLS_on_tls_get_addr()
170 DTLS::DTV *DTLS_on_tls_get_addr(void *arg, void *res,
H A Dsanitizer_tls_get_addr.h47 struct DTV { struct
52 DTV dtvs[(4096UL - sizeof(next)) / sizeof(DTLS::DTV)]; argument
77 DTLS::DTV *DTLS_on_tls_get_addr(void *arg, void *res, uptr static_tls_begin,
/freebsd/contrib/llvm-project/compiler-rt/lib/msan/
H A Dmsan_thread.cpp40 ForEachDVT(dtls, [](const DTLS::DTV &dtv, int id) { in ClearShadowForThreadStackAndTLS() argument
41 __msan_unpoison((void *)(dtv.beg), dtv.size); in ClearShadowForThreadStackAndTLS()
/freebsd/contrib/llvm-project/compiler-rt/lib/dfsan/
H A Ddfsan_thread.cpp41 ForEachDVT(dtls, [](const DTLS::DTV &dtv, int id) { in ClearShadowForThreadStackAndTLS() argument
42 dfsan_set_label(0, (void *)(dtv.beg), dtv.size); in ClearShadowForThreadStackAndTLS()
H A Ddfsan_interceptors.cpp185 DTLS::DTV *dtv = DTLS_on_tls_get_addr(arg, res, tls_begin, tls_end); in INTERCEPTOR() local
186 if (dtv) { in INTERCEPTOR()
188 COMMON_INTERCEPTOR_INITIALIZE_RANGE((void *)dtv->beg, dtv->size); in INTERCEPTOR()
/freebsd/libexec/rtld-elf/aarch64/
H A Drtld_start.S168 ldr x0, [x4] /* DTV pointer */
169 ldr x2, [x0] /* dtv[0] (generation count) */
172 b.ne 1f /* dtv[0] != tlsdec->dtv_gen */
176 ldr x3, [x0, w2, sxtw #3] /* dtv[tlsdesc->tls_index + 1] */
179 /* Return (dtv[tlsdesc->tls_index + 1] + tlsdesc->tls_offs - tp) */
/freebsd/libexec/rtld-elf/
H A Drtld.c309 Elf_Addr tls_dtv_generation = 1; /* Used to detect when dtv size changes */
5390 struct dtv *newdtv, *dtv; in tls_get_addr_slow() local
5394 dtv = tcb->tcb_dtv; in tls_get_addr_slow()
5395 /* Check dtv generation in case new modules have arrived */ in tls_get_addr_slow()
5396 if (dtv->dtv_gen != tls_dtv_generation) { in tls_get_addr_slow()
5399 newdtv = xcalloc(1, sizeof(struct dtv) + tls_max_index * in tls_get_addr_slow()
5401 to_copy = dtv->dtv_size; in tls_get_addr_slow()
5404 memcpy(newdtv->dtv_slots, dtv->dtv_slots, to_copy * in tls_get_addr_slow()
5408 free(dtv); in tls_get_addr_slow()
5411 dtv = tcb->tcb_dtv = newdtv; in tls_get_addr_slow()
[all …]
/freebsd/sys/sys/
H A D_tls_variant_i.h44 struct dtv { struct
51 struct dtv *tcb_dtv; /* required by rtld */
/freebsd/sys/x86/include/
H A Dtls.h43 struct dtv { struct
55 struct dtv *tcb_dtv; /* required by rtld */
/freebsd/contrib/llvm-project/lldb/source/Plugins/DynamicLoader/Hexagon-DYLD/
H A DHexagonDYLDRendezvous.h52 uint32_t dtv_offset; // offset of DTV pointer within pthread
53 uint32_t dtv_slot_size; // size of one DTV slot
55 uint32_t tls_offset; // offset of TLS pointer within DTV slot
H A DDynamicLoaderHexagonDYLD.cpp578 // Lookup the DTV structure for this thread. in GetThreadLocalData()
580 addr_t dtv = ReadPointer(dtv_ptr); in GetThreadLocalData() local
581 if (dtv == LLDB_INVALID_ADDRESS) in GetThreadLocalData()
585 addr_t dtv_slot = dtv + metadata.dtv_slot_size * modid; in GetThreadLocalData()
/freebsd/contrib/llvm-project/lldb/source/Plugins/DynamicLoader/POSIX-DYLD/
H A DDYLDRendezvous.h136 uint32_t dtv_offset; // offset of DTV pointer within pthread
137 uint32_t dtv_slot_size; // size of one DTV slot
139 uint32_t tls_offset; // offset of TLS pointer within DTV slot
H A DDynamicLoaderPOSIXDYLD.cpp794 // Lookup the DTV structure for this thread. in GetThreadLocalData()
796 addr_t dtv = ReadPointer(dtv_ptr); in GetThreadLocalData() local
797 if (dtv == LLDB_INVALID_ADDRESS) { in GetThreadLocalData()
798 LLDB_LOGF(log, "GetThreadLocalData error: fail to read dtv"); in GetThreadLocalData()
803 addr_t dtv_slot = dtv + metadata.dtv_slot_size * modid; in GetThreadLocalData()
/freebsd/sys/arm/nvidia/
H A Dtegra_pinmux.c224 GMUX(0x17C, S, 1, uart3_cts_n_pa1, uartc, sdmmc1, dtv, gmi),
225 GMUX(0x180, C, 0, uart3_rts_n_pc0, uartc, pwm0, dtv, gmi),
235 GMUX(0x1A8, P, 3, dap4_fs_pp4, i2s3, gmi, dtv, rsvd4),
237 GMUX(0x1B0, P, 5, dap4_dout_pp6, i2s3, gmi, dtv, rsvd4),
243 GMUX(0x1C8, I, 7, pi7, rsvd1, trace, gmi, dtv),
261 GMUX(0x210, H, 0, ph0, pwm0, trace, gmi, dtv),
267 GMUX(0x228, H, 6, ph6, sdmmc2, trace, gmi, dtv),
268 GMUX(0x22C, H, 7, ph7, sdmmc2, trace, gmi, dtv),
/freebsd/contrib/llvm-project/compiler-rt/lib/lsan/
H A Dlsan_common.cpp194 // addresses are stored in a dynamically allocated array (the DTV) which is
195 // referenced from the static TLS. Unfortunately, we can't just rely on the DTV
197 // the DTV. This is because the initial DTV is allocated before our interception
504 ForEachDVT(dtls, [&](const DTLS::DTV &dtv, int id) { in ProcessThreads() argument
505 uptr dtls_beg = dtv.beg; in ProcessThreads()
506 uptr dtls_end = dtls_beg + dtv.size; in ProcessThreads()
/freebsd/sys/contrib/device-tree/src/arm64/lg/
H A Dlg1313-ref.dts16 model = "LG Electronics, DTV SoC LG1313 Reference Board";
H A Dlg1312-ref.dts16 model = "LG Electronics, DTV SoC LG1312 Reference Board";
/freebsd/sys/contrib/device-tree/Bindings/display/msm/
H A Dmdp4.txt36 Port 3 -> DTV
/freebsd/sbin/ipf/ippool/
H A Dippool.829 -s [-dtv]
/freebsd/sys/contrib/device-tree/Bindings/pinctrl/
H A Dnvidia,tegra210-pinmux.yaml86 displayb, dmic1, dmic2, dmic3, dp, dtv, extperiph3, i2c1,
H A Dnvidia,tegra114-pinmux.yaml89 displaya, displaya_alt, displayb, dtv, emc_dll, extperiph1,
H A Dnvidia,tegra114-pinmux.txt86 displaya_alt, displayb, dtv, emc_dll, extperiph1, extperiph2,
H A Dnvidia,tegra124-pinmux.txt105 displaya_alt, displayb, dtv, extperiph1, extperiph2, extperiph3,
/freebsd/sys/contrib/device-tree/Bindings/media/
H A Drc.yaml148 - rc-twinhan-dtv-cab-ci

12