<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="/source/rss.xsl.xml"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
    <title>Changes in tls.h</title>
    <description></description>
    <language>en</language>
    <copyright>Copyright 2015</copyright>
    <generator>Java</generator><item>
        <title>1a62e9bc0046bfe20f4dd785561e469ff73fd508 - Add &lt;machine/tls.h&gt; header to hold MD constants and helpers for TLS.</title>
        <link>http://kernelsources.org:8080/source/history/freebsd/sys/powerpc/include/tls.h#1a62e9bc0046bfe20f4dd785561e469ff73fd508</link>
        <description>Add &lt;machine/tls.h&gt; header to hold MD constants and helpers for TLS.The header exports the following:- Definition of struct tcb.- Helpers to get/set the tcb for the current thread.- TLS_TCB_SIZE (size of TCB)- TLS_TCB_ALIGN (alignment of TCB)- TLS_VARIANT_I or TLS_VARIANT_II- TLS_DTV_OFFSET (bias of pointers in dtv[])- TLS_TP_OFFSET (bias of &quot;thread pointer&quot; relative to TCB)Note that TLS_TP_OFFSET does not account for if the unbiased threadpointer points to the start of the TCB (arm and x86) or the end of theTCB (MIPS, PowerPC, and RISC-V).Note also that for amd64, the struct tcb does not include the unusedtcb_spare field included in the current structure in libthr.  libthrdoes not use this field, and the existing calls in libc and rtld thatallocate a TCB for amd64 assume it is the size of 3 Elf_Addr&apos;s (andthus do not allocate room for tcb_spare).A &lt;sys/_tls_variant_i.h&gt; header is used by architectures usingVariant I TLS which uses a common struct tcb.Reviewed by:	kib (older version of x86/tls.h), jrtc27Sponsored by:	The University of Cambridge, Google Inc.Differential Revision:	https://reviews.freebsd.org/D33351

            List of files:
            /freebsd/sys/powerpc/include/tls.h</description>
        <pubDate>Thu, 09 Dec 2021 22:17:13 +0100</pubDate>
        <dc:creator>John Baldwin &lt;jhb@FreeBSD.org&gt;</dc:creator>
    </item>
</channel>
</rss>
