<feed xmlns='http://www.w3.org/2005/Atom'>
<title>wireguard-openbsd/sys/arch/arm/include/cpu.h, branch jd/queueboosts</title>
<subtitle>WireGuard implementation for the OpenBSD kernel</subtitle>
<id>https://git.zx2c4.com/wireguard-openbsd/atom/sys/arch/arm/include/cpu.h?h=jd%2Fqueueboosts</id>
<link rel='self' href='https://git.zx2c4.com/wireguard-openbsd/atom/sys/arch/arm/include/cpu.h?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>Add machdep.compatible.</title>
<updated>2020-05-17T15:36:50Z</updated>
<author>
<name>kettenis</name>
<email>kettenis@openbsd.org</email>
</author>
<published>2020-05-17T15:36:50Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=c5c0009c6b631723b5fb95feae57638eaf156035'/>
<id>urn:sha1:c5c0009c6b631723b5fb95feae57638eaf156035</id>
<content type='text'>
ok jsg@
</content>
</entry>
<entry>
<title>Implement cpu_kick() and cpu_unidle().</title>
<updated>2020-01-12T16:55:00Z</updated>
<author>
<name>kettenis</name>
<email>kettenis@openbsd.org</email>
</author>
<published>2020-01-12T16:55:00Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=056a2ca64e92b2e792c6ef8deb8255cee5ff099b'/>
<id>urn:sha1:056a2ca64e92b2e792c6ef8deb8255cee5ff099b</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add code to spin up secondary CPUs.</title>
<updated>2019-10-27T10:26:12Z</updated>
<author>
<name>kettenis</name>
<email>kettenis@openbsd.org</email>
</author>
<published>2019-10-27T10:26:12Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=4e7e04ca925b10f704b4398d5900b06e3f194bba'/>
<id>urn:sha1:4e7e04ca925b10f704b4398d5900b06e3f194bba</id>
<content type='text'>
ok jsg@
</content>
</entry>
<entry>
<title>Synch the cpu match/attach/identify code with arm64.  This drops some</title>
<updated>2019-09-30T21:48:32Z</updated>
<author>
<name>kettenis</name>
<email>kettenis@openbsd.org</email>
</author>
<published>2019-09-30T21:48:32Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=6a1ae6a6f2650c25cd442f350f6dc0fc16c4e5be'/>
<id>urn:sha1:6a1ae6a6f2650c25cd442f350f6dc0fc16c4e5be</id>
<content type='text'>
information from dmesg that is no longer relevant to ARMv7 CPUs in favour
of printing the full architected cache hierarchy in the same way as we
do on arm64.  It also is another small step towards SMP support on armv7.

ok patrick@
</content>
</entry>
<entry>
<title>Implement DVFS support.</title>
<updated>2019-09-23T18:10:43Z</updated>
<author>
<name>kettenis</name>
<email>kettenis@openbsd.org</email>
</author>
<published>2019-09-23T18:10:43Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=3d29854d4b138f482ccdf6aa653e7f3f8371b152'/>
<id>urn:sha1:3d29854d4b138f482ccdf6aa653e7f3f8371b152</id>
<content type='text'>
ok patrick@
</content>
</entry>
<entry>
<title>Include srp.h where struct cpu_info uses srp to avoid erroring out when</title>
<updated>2018-12-05T10:28:21Z</updated>
<author>
<name>jsg</name>
<email>jsg@openbsd.org</email>
</author>
<published>2018-12-05T10:28:21Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=1a1181a966226532433438cb3741ae7cdc0727d4'/>
<id>urn:sha1:1a1181a966226532433438cb3741ae7cdc0727d4</id>
<content type='text'>
including cpu.h machine/intr.h etc without first including param.h when
MULTIPROCESSOR is defined.

ok visa@
</content>
</entry>
<entry>
<title>Make it possible to build a MULTIPROCESSOR kernel on armv7.  While this</title>
<updated>2018-08-06T18:39:13Z</updated>
<author>
<name>kettenis</name>
<email>kettenis@openbsd.org</email>
</author>
<published>2018-08-06T18:39:13Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=abff443dbd09597733c7ba1d0b7f9bd0cdd45306'/>
<id>urn:sha1:abff443dbd09597733c7ba1d0b7f9bd0cdd45306</id>
<content type='text'>
doesn't actually spin up any secondary CPUs, it does run.  Mostly a cleanup
of &lt;machine/cpu.h&gt; along the lines of what I did earlier on arm64.  Makes
armv7 use the MI mplock implementation and implements copyin32.

ok patrick@
</content>
</entry>
<entry>
<title>Remove strange /* End of file */ style.</title>
<updated>2018-06-30T15:23:35Z</updated>
<author>
<name>deraadt</name>
<email>deraadt@openbsd.org</email>
</author>
<published>2018-06-30T15:23:35Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=821d13533493c6e3142d773ed339a97d1797cb83'/>
<id>urn:sha1:821d13533493c6e3142d773ed339a97d1797cb83</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add kernel support for the VFP FPU/SIMD unit.  Based on a diff by drahn@.</title>
<updated>2018-01-26T16:22:19Z</updated>
<author>
<name>kettenis</name>
<email>kettenis@openbsd.org</email>
</author>
<published>2018-01-26T16:22:19Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=c7b5578a715ca65ee46f2c1c48fca8629620c8ce'/>
<id>urn:sha1:c7b5578a715ca65ee46f2c1c48fca8629620c8ce</id>
<content type='text'>
This allows us to use floating-pointer and vector instructions in userland
code.  The current implementation assumes all 32 VFP registers are present.
This should be the case on all armv7 hardware currently supported by
OpenBSD.

ok patrick@
</content>
</entry>
</feed>
