<feed xmlns='http://www.w3.org/2005/Atom'>
<title>wireguard-openbsd/lib/libc/arch/sh, branch jd/queueboosts</title>
<subtitle>WireGuard implementation for the OpenBSD kernel</subtitle>
<id>https://git.zx2c4.com/wireguard-openbsd/atom/lib/libc/arch/sh?h=jd%2Fqueueboosts</id>
<link rel='self' href='https://git.zx2c4.com/wireguard-openbsd/atom/lib/libc/arch/sh?h=jd%2Fqueueboosts'/>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/'/>
<updated>2018-01-23T17:11:02Z</updated>
<entry>
<title>use END_STRONG.  Yes, everything in the sh ecosystem is different..</title>
<updated>2018-01-23T17:11:02Z</updated>
<author>
<name>deraadt</name>
<email>deraadt@openbsd.org</email>
</author>
<published>2018-01-23T17:11:02Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=6f31b16b9589b822b677516478fd56b65f41c3dd'/>
<id>urn:sha1:6f31b16b9589b822b677516478fd56b65f41c3dd</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Instead of trying to handle ffs() with the normal rename-mark-hidden-and-alias</title>
<updated>2018-01-18T08:23:44Z</updated>
<author>
<name>guenther</name>
<email>guenther@openbsd.org</email>
</author>
<published>2018-01-18T08:23:44Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=ae3cb403620ab940fbaabb3055fac045a63d56b7'/>
<id>urn:sha1:ae3cb403620ab940fbaabb3055fac045a63d56b7</id>
<content type='text'>
dance, mark it protected.  This works better for both gcc and clang: gcc
blocks overriding of internal calls, while clang permits inlining again.

ok otto@
</content>
</entry>
<entry>
<title>Copy files from ../librthread in preparation for moving functionality</title>
<updated>2017-08-15T06:13:24Z</updated>
<author>
<name>guenther</name>
<email>guenther@openbsd.org</email>
</author>
<published>2017-08-15T06:13:24Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=7e321ac128fdcd388c62dfa54aca790ebbd73ce1'/>
<id>urn:sha1:7e321ac128fdcd388c62dfa54aca790ebbd73ce1</id>
<content type='text'>
from libpthread to libc.  No changes to the build yet, just making it
easier to review the substantive diffs.

ok beck@ kettenis@ tedu@
</content>
</entry>
<entry>
<title>Wrap fpgetround() so internal calls to it (seen on arm, powerpc, and sh)</title>
<updated>2016-07-26T19:07:09Z</updated>
<author>
<name>guenther</name>
<email>guenther@openbsd.org</email>
</author>
<published>2016-07-26T19:07:09Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=29cc2a2d1d99869c4cfa9c708e043103e2d7d805'/>
<id>urn:sha1:29cc2a2d1d99869c4cfa9c708e043103e2d7d805</id>
<content type='text'>
go direct instead of through the PLT.

ok millert@ kettenis@
</content>
</entry>
<entry>
<title>Consistently reference '_end' instead of 'end' in the brk/sbrk implementation</title>
<updated>2016-05-30T05:18:52Z</updated>
<author>
<name>guenther</name>
<email>guenther@openbsd.org</email>
</author>
<published>2016-05-30T05:18:52Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=01422588aea879b986d4ff8bb39988e7dd8edad8'/>
<id>urn:sha1:01422588aea879b986d4ff8bb39988e7dd8edad8</id>
<content type='text'>
ok deraadt@
</content>
</entry>
<entry>
<title>Save and restore 'gbr' register when enter/leaving the kernel, and use</title>
<updated>2016-05-18T20:21:13Z</updated>
<author>
<name>guenther</name>
<email>guenther@openbsd.org</email>
</author>
<published>2016-05-18T20:21:13Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=8908800ca8f0a578dfd16a11e07ae56faa1c7a29'/>
<id>urn:sha1:8908800ca8f0a578dfd16a11e07ae56faa1c7a29</id>
<content type='text'>
it for the TCB pointer.  Eliminate __cerror.

"looks good" kettenis@, testing and ok deraadt@
</content>
</entry>
<entry>
<title>Remove sigreturn declaration and the now-unused libc syscall stub</title>
<updated>2016-05-09T23:55:52Z</updated>
<author>
<name>guenther</name>
<email>guenther@openbsd.org</email>
</author>
<published>2016-05-09T23:55:52Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=2032f1fe089ecb5afeb6e1e71e5f1fc7aa2df44c'/>
<id>urn:sha1:2032f1fe089ecb5afeb6e1e71e5f1fc7aa2df44c</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Use a Thread Information Block in both single and multi-threaded programs.</title>
<updated>2016-05-07T19:05:21Z</updated>
<author>
<name>guenther</name>
<email>guenther@openbsd.org</email>
</author>
<published>2016-05-07T19:05:21Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=fe38b55cb0aae270de3f844146814682e8cd345c'/>
<id>urn:sha1:fe38b55cb0aae270de3f844146814682e8cd345c</id>
<content type='text'>
This stores errno, the cancelation flags, and related bits for each thread
and is allocated by ld.so or libc.a.  This is an ABI break from 5.9-stable!

Make libpthread dlopen'able by moving the cancelation wrappers into libc
and doing locking and fork/errno handling via callbacks that libpthread
registers when it first initializes.  'errno' *must* be declared via
&lt;errno.h&gt; now!

Clean up libpthread's symbol exports like libc.

On powerpc, offset the TIB/TCB/TLS data from the register per the ELF spec.

Testing by various, particularly sthen@ and patrick@
ok kettenis@
</content>
</entry>
<entry>
<title>The asm in the MD_DISABLE_KBIND macro was too fragile and broke alpha and hppa.</title>
<updated>2016-03-21T00:41:13Z</updated>
<author>
<name>guenther</name>
<email>guenther@openbsd.org</email>
</author>
<published>2016-03-21T00:41:13Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=d97c60ea32de0a8a99b5d664064a75f410d0cf8b'/>
<id>urn:sha1:d97c60ea32de0a8a99b5d664064a75f410d0cf8b</id>
<content type='text'>
So instead, do the kbind disabling with syscall().

debugging and ok deraadt@, ok kettenis@
</content>
</entry>
<entry>
<title>Rearrange C runtime bits: now that ld.so exports environ and __progname,</title>
<updated>2016-03-20T02:32:39Z</updated>
<author>
<name>guenther</name>
<email>guenther@openbsd.org</email>
</author>
<published>2016-03-20T02:32:39Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=5af055cd66b5450a4935ae30e5716331ca3b13d5'/>
<id>urn:sha1:5af055cd66b5450a4935ae30e5716331ca3b13d5</id>
<content type='text'>
move their definitions and initialization in static links to libc.a
Make crt0 always invoke a new func _csu_finish() in libc to process the auxv
and to either register the ld.so cleanup function (in dynamic links) or
initialize environ and __progname and do MC_DISABLE_KBIND (in static links).
In libc, get pagesize from auxv; cache that between getpagesize() and
sysconf(_SC_PAGESIZE)

ok mpi@ "good time" deraadt@
</content>
</entry>
</feed>
