<feed xmlns='http://www.w3.org/2005/Atom'>
<title>wireguard-openbsd/sys/arch/mips64/include, branch jd/queueboosts</title>
<subtitle>WireGuard implementation for the OpenBSD kernel</subtitle>
<id>https://git.zx2c4.com/wireguard-openbsd/atom/sys/arch/mips64/include?h=jd%2Fqueueboosts</id>
<link rel='self' href='https://git.zx2c4.com/wireguard-openbsd/atom/sys/arch/mips64/include?h=jd%2Fqueueboosts'/>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/'/>
<updated>2020-05-31T06:23:56Z</updated>
<entry>
<title>introduce "cpu_rnd_messybits" for use instead of nanotime in dev/rnd.c.</title>
<updated>2020-05-31T06:23:56Z</updated>
<author>
<name>dlg</name>
<email>dlg@openbsd.org</email>
</author>
<published>2020-05-31T06:23:56Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=01802d2cc63d886227ab3b39e923ff13cf516166'/>
<id>urn:sha1:01802d2cc63d886227ab3b39e923ff13cf516166</id>
<content type='text'>
rnd.c uses nanotime to get access to some bits that change quickly
between events that it can mix into the entropy pool. it doesn't
use nanotime to get a monotonically increasing set or ordered and
accurate timestamps, it just wants something with bits that change.

there's been discussions for years about letting rnd use a clock
that's super fast to read, but not necessarily accurate, but it
wasn't until recently that i figured out it wasn't interested in
time at all, so things like keeping a fast clock coherent between
cpu cores or correct according to ntp is unecessary. this means we
can just let rnd read the cycle counters on cpus and things will
be fine.  cpus with cycle counters that vary in their speed and
arent kept consistent between cores may even be desirable in this
context.

so this is the first step in converting rnd.c to reading cycle
counter. it copies the nanotime backend to each arch, and they can
replace it with something MD as a second step later on.

djm@ suggested rnd_messybytes, but we landed on cpu_rnd_messybits.
thanks to visa for his eyes.
ok deraadt@ visa@
deraadt@ says he will help handle any MD fallout that occurs.
</content>
</entry>
<entry>
<title>Retire &lt;machine/varargs.h&gt;.</title>
<updated>2020-05-27T15:16:04Z</updated>
<author>
<name>visa</name>
<email>visa@openbsd.org</email>
</author>
<published>2020-05-27T15:16:04Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=9df0f941a91e9f67cc4e63514cb174cb2a5783fd'/>
<id>urn:sha1:9df0f941a91e9f67cc4e63514cb174cb2a5783fd</id>
<content type='text'>
Nothing uses the header anymore.

OK deraadt@ mpi@
</content>
</entry>
<entry>
<title>Convert db_addr_t -&gt; vaddr_t but leave the typedef for now.</title>
<updated>2019-11-07T14:44:52Z</updated>
<author>
<name>mpi</name>
<email>mpi@openbsd.org</email>
</author>
<published>2019-11-07T14:44:52Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=6d6b8a876ccc0691e0769b505db074d6e7d968ef'/>
<id>urn:sha1:6d6b8a876ccc0691e0769b505db074d6e7d968ef</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Substitute boolean_t/TRUE/FALSE by int/1/0.</title>
<updated>2019-11-07T11:04:21Z</updated>
<author>
<name>mpi</name>
<email>mpi@openbsd.org</email>
</author>
<published>2019-11-07T11:04:21Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=60291ffe1b3f7f81a5037b612608bd0d0de4c942'/>
<id>urn:sha1:60291ffe1b3f7f81a5037b612608bd0d0de4c942</id>
<content type='text'>
ok dlg@, jasper@
</content>
</entry>
<entry>
<title>Fix atomic_sub_long_nv() on mips64. The negation should use</title>
<updated>2019-10-28T09:41:37Z</updated>
<author>
<name>visa</name>
<email>visa@openbsd.org</email>
</author>
<published>2019-10-28T09:41:37Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=97b484412220002069a7e7e6fb5ff87d981a3556'/>
<id>urn:sha1:97b484412220002069a7e7e6fb5ff87d981a3556</id>
<content type='text'>
64-bit unsigned arithmetic.
</content>
</entry>
<entry>
<title>in non-MP, cpu_number() the #define should be 0UL; ok visa</title>
<updated>2019-09-02T02:35:08Z</updated>
<author>
<name>deraadt</name>
<email>deraadt@openbsd.org</email>
</author>
<published>2019-09-02T02:35:08Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=282d9ab5bb8194ee733174e9c1921d57001c3eef'/>
<id>urn:sha1:282d9ab5bb8194ee733174e9c1921d57001c3eef</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fix a race in invalidation of remote TLB entries.</title>
<updated>2019-08-21T16:14:34Z</updated>
<author>
<name>visa</name>
<email>visa@openbsd.org</email>
</author>
<published>2019-08-21T16:14:34Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=b96ff64e96e7b9c5ddaecee7d5a85ffb3f43236d'/>
<id>urn:sha1:b96ff64e96e7b9c5ddaecee7d5a85ffb3f43236d</id>
<content type='text'>
If a CPU updates a pmap concurrently with the activation of that pmap
on another CPU, invalidation of TLB entries might be incomplete.
It is also possible that a CPU altogether stops updating its TLB.

Prevent the race by synchronizing pmap activations and logic that
determines where to send TLB invalidation IPIs.

To avoid mutex wait without ability to process IPIs, the context switch
code is adjusted to call pmap_activate() with interrupts enabled.
In practice, interrupts up to IPL_SCHED are still disabled on context
switch.
</content>
</entry>
<entry>
<title>Turn need_resched() and signotify() into proper functions on mips64.</title>
<updated>2019-05-05T13:28:14Z</updated>
<author>
<name>visa</name>
<email>visa@openbsd.org</email>
</author>
<published>2019-05-05T13:28:14Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=00c79297cde52f3758ac191ea525674a23bbbead'/>
<id>urn:sha1:00c79297cde52f3758ac191ea525674a23bbbead</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Guard against repeated inclusion of &lt;mips64/pte.h&gt;. This fixes drm build</title>
<updated>2019-04-26T16:27:36Z</updated>
<author>
<name>visa</name>
<email>visa@openbsd.org</email>
</author>
<published>2019-04-26T16:27:36Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=68bce21a3d3afabf82b3dd780ea49f9f5e21771f'/>
<id>urn:sha1:68bce21a3d3afabf82b3dd780ea49f9f5e21771f</id>
<content type='text'>
on loongson.
</content>
</entry>
<entry>
<title>Work around a limitation of clang integrated assembler on mips64.</title>
<updated>2019-04-19T09:19:22Z</updated>
<author>
<name>visa</name>
<email>visa@openbsd.org</email>
</author>
<published>2019-04-19T09:19:22Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=ba36fba2f7dd7c5c34bf6a8358bcb85b5d314e36'/>
<id>urn:sha1:ba36fba2f7dd7c5c34bf6a8358bcb85b5d314e36</id>
<content type='text'>
The assembler does not handle undeclared local symbols properly
and generates R_MIPS_CALL16 relocations where it should generate
local GOT references. For now, get along with the problem by
declaring local symbols where necessary.

OK kettenis@ guenther@
</content>
</entry>
</feed>
