
The situation with Go on OpenBSD - zdw
https://utcc.utoronto.ca/~cks/space/blog/programming/GoOpenBSDSituation
======
protomyth
I think if you are running 5.8, you have other problems than Go. Right now,
6.6 and 6.5 are the only versions getting patches. If you intend to run
OpenBSD then you need to keep up at least to -0.1 release. The tools to do
that have improved amazingly well over the last year.

~~~
jacobush
What does -0.1 mean?

~~~
lcall
I think it means, like the article suggests, sticking with supported versions
of OpenBSD, which is the latest one and one just prior (like, until about
April, 6.6 and 6.5).

------
protomyth
an interesting patch for Go on OpenBSD [https://marc.info/?l=openbsd-ports-
cvs&m=158083696719245&w=2](https://marc.info/?l=openbsd-ports-
cvs&m=158083696719245&w=2)

 _Log message:_

 _Add two no op instructions following svc for Go on openbsd /arm64._

 _All except some of the most recent arm64 processors have a speculative
execution flaw that occurs across a syscall boundary, which cannot be
mitigated in the kernel. In order to protect against this leak a speculation
barrier needs to be placed after an svc instruction._

 _In order to avoid the performance impact of these instructions, the kernel
will soon start returning execution two instructions past the svc call. For
now two hardware no ops are added, which allows syscalls to work with both old
and new kernels. Once the kernel is cut over the no ops can be replaced with
actual speculation barriers._

