freebsd-dev/sys/mips/include
John Baldwin 822d2d6ac9 Various fixes to TLS for MIPS.
- Clear the current thread's TLS pointer on exec. Previously the TLS
  pointer (and register) remain unchanged.

- Explicitly clear the TLS pointer when new threads are created.

- Make md_tls_tcb_offset per-process instead of per-thread.

  The layout of the TLS and TCB are identical for all threads in a
  process, it is only the TLS pointer values themselves that vary by
  thread.  This also makes setting md_tls_tcb_offset in
  cpu_set_user_tls() redundant with the setting in exec_setregs(), so
  only set it in exec_setregs().

Submitted by:	Alfredo Mazzinghi (1)
Sponsored by:	DARPA
Differential Revision:	https://reviews.freebsd.org/D24957
2020-06-12 21:21:18 +00:00
..
_align.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
_bus.h Regularize my copyright notice 2019-12-04 16:56:11 +00:00
_inttypes.h sys/mips: further adoption of SPDX licensing ID tags. 2017-11-27 15:07:26 +00:00
_limits.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
_stdint.h sys/mips: further adoption of SPDX licensing ID tags. 2017-11-27 15:07:26 +00:00
_types.h Do not include float interfaces when using libsa. 2018-02-23 04:04:25 +00:00
abi.h Consistently use 16-byte alignment for MIPS N32 and N64. 2018-01-31 17:36:39 +00:00
asm.h Consistently use 16-byte alignment for MIPS N32 and N64. 2018-01-31 17:36:39 +00:00
atomic.h [PowerPC] [MIPS] Implement 32-bit kernel emulation of atomic64 operations 2020-01-02 23:20:37 +00:00
bootinfo.h sys/mips: further adoption of SPDX licensing ID tags. 2017-11-27 15:07:26 +00:00
bus_dma.h sys/mips: further adoption of SPDX licensing ID tags. 2017-11-27 15:07:26 +00:00
bus.h sys/mips: further adoption of SPDX licensing ID tags. 2017-11-27 15:07:26 +00:00
cache_mipsNN.h sys/mips: further adoption of SPDX licensing ID tags. 2017-11-27 15:07:26 +00:00
cache_r4k.h sys/mips: further adoption of SPDX licensing ID tags. 2017-11-27 15:07:26 +00:00
cache.h sys/mips: further adoption of SPDX licensing ID tags. 2017-11-27 15:07:26 +00:00
cca.h Make cache coherency attributes definitions available in machine/vm.h on MIPS. 2018-08-01 18:35:17 +00:00
cdefs.h SPDX: Consider code from Carnegie-Mellon University. 2017-11-30 15:48:35 +00:00
clock.h
counter.h Back pcpu zone with domain correct pages 2018-07-06 02:06:03 +00:00
cpu.h Add a KPI for the delay while spinning on a spin lock. 2018-11-05 21:34:17 +00:00
cpufunc.h Use the right type for 64-bit coprocessor registers. 2020-04-17 18:24:47 +00:00
cpuinfo.h
cpuregs.h Make cache coherency attributes definitions available in machine/vm.h on MIPS. 2018-08-01 18:35:17 +00:00
db_machdep.h No need to force md code to define a macro that's the same as 2018-04-16 13:52:23 +00:00
dump.h
efi.h
elf.h Regularize my copyright notice 2019-12-04 16:56:11 +00:00
endian.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
exec.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
fdt.h sys/mips: further adoption of SPDX licensing ID tags. 2017-11-27 15:07:26 +00:00
float.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
floatingpoint.h
fls64.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
fpu.h
frame.h sys/mips: further adoption of SPDX licensing ID tags. 2017-11-27 15:07:26 +00:00
gdb_machdep.h amd64: Protect the kernel text, data, and BSS by setting the RW/NX bits 2018-03-06 14:28:37 +00:00
hwfunc.h Add SMP support for BERI CPU. 2018-04-12 17:43:19 +00:00
ieee.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
ieeefp.h
in_cksum.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
intr_machdep.h sys/mips: further adoption of SPDX licensing ID tags. 2017-11-27 15:07:26 +00:00
intr.h bhnd(4): implement MIPS and PCI(e) interrupt support 2017-11-21 23:15:20 +00:00
kdb.h sys/mips: further adoption of SPDX licensing ID tags. 2017-11-27 15:07:26 +00:00
limits.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
locore.h
md_var.h Print CPU informtion later in boot. 2020-05-20 21:16:54 +00:00
memdev.h sys/mips: further adoption of SPDX licensing ID tags. 2017-11-27 15:07:26 +00:00
metadata.h sys/mips: further adoption of SPDX licensing ID tags. 2017-11-27 15:07:26 +00:00
minidump.h sys/mips: further adoption of SPDX licensing ID tags. 2017-11-27 15:07:26 +00:00
mips_opcode.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
octeon_cop2.h sys/mips: further adoption of SPDX licensing ID tags. 2017-11-27 15:07:26 +00:00
ofw_machdep.h sys/mips: further adoption of SPDX licensing ID tags. 2017-11-27 15:07:26 +00:00
param.h MIPS: Implement fue*word* and casueword* in assembly. 2018-03-12 22:10:06 +00:00
pcb.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
pcpu_aux.h Centralize __pcpu definitions. 2019-08-29 07:25:27 +00:00
pcpu.h mips: fix kernel build after r357804 2020-02-14 20:25:04 +00:00
pmap.h Introduce vm_page_astate. 2019-12-10 18:14:50 +00:00
pmc_mdep.h
proc.h Various fixes to TLS for MIPS. 2020-06-12 21:21:18 +00:00
procctl.h amd64 KPTI: add control from procctl(2). 2019-03-16 11:44:33 +00:00
profile.h Remove two obsolete comments that reference splhigh/splx. 2019-11-21 18:49:54 +00:00
pte.h sys/mips: further adoption of SPDX licensing ID tags. 2017-11-27 15:07:26 +00:00
ptrace.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
reg.h Move most of the contents of opt_compat.h to opt_global.h. 2018-04-06 17:35:35 +00:00
regdef.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
regnum.h mips: hide regnum definitions behind _KERNEL/_WANT_MIPS_REGNUM 2019-08-22 21:43:21 +00:00
reloc.h
resource.h
runq.h sys/mips: further adoption of SPDX licensing ID tags. 2017-11-27 15:07:26 +00:00
sc_machdep.h sys/mips: further adoption of SPDX licensing ID tags. 2017-11-27 15:07:26 +00:00
setjmp.h SPDX: Consider code from Carnegie-Mellon University. 2017-11-30 15:48:35 +00:00
sf_buf.h sys/mips: further adoption of SPDX licensing ID tags. 2017-11-27 15:07:26 +00:00
sigframe.h Move most of the contents of opt_compat.h to opt_global.h. 2018-04-06 17:35:35 +00:00
signal.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
smp.h
stdarg.h Use standard pattern for stdargs.h 2018-02-12 14:48:05 +00:00
sysarch.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
tlb.h sys/mips: further adoption of SPDX licensing ID tags. 2017-11-27 15:07:26 +00:00
tls.h Move most of the contents of opt_compat.h to opt_global.h. 2018-04-06 17:35:35 +00:00
trap.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
ucontext.h Move most of the contents of opt_compat.h to opt_global.h. 2018-04-06 17:35:35 +00:00
vdso.h sys/mips: further adoption of SPDX licensing ID tags. 2017-11-27 15:07:26 +00:00
vm.h Make cache coherency attributes definitions available in machine/vm.h on MIPS. 2018-08-01 18:35:17 +00:00
vmparam.h Remove SFBUF_OPTIONAL_DIRECT_MAP and such hacks, replacing them across the 2018-01-19 17:46:31 +00:00