]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
amd64: Cleanups to setting TLS registers for Linux binaries.
authorJohn Baldwin <jhb@FreeBSD.org>
Fri, 12 Mar 2021 17:47:31 +0000 (09:47 -0800)
committerJohn Baldwin <jhb@FreeBSD.org>
Fri, 12 Mar 2021 17:47:31 +0000 (09:47 -0800)
commit704547ce1ca56e1123048cd152ed4e468d41d703
treee2ec11a750f23c4676ed236e3d92b908fd82e677
parent92211458689b448cda52a659f9d192fef5a9dd50
amd64: Cleanups to setting TLS registers for Linux binaries.

- Use update_pcb_bases() when updating FS or GS base addresses to
  permit use of FSBASE and GSBASE in Linux processes.  This also sets
  PCB_FULL_IRET.  linux32 was setting PCB_32BIT which should be a
  no-op (exec sets it).

- Remove write-only variables to construct unused segment descriptors
  for linux32.

Reviewed by: kib
MFC after: 1 week
Sponsored by: Netflix
Differential Revision: https://reviews.freebsd.org/D29026
sys/amd64/linux/linux_machdep.c
sys/amd64/linux32/linux32_machdep.c