OpenBSD cvs log

created 2022-02-05T21:14:59Z
begin 2022-02-01T00:00:00Z
end 2022-02-02T00:00:00Z
path src/sys
commits 9

date 2022-02-01T04:09:14Z
author jsg
files src/sys/dev/pci/drm/include/linux/uaccess.h log diff annotate
message use unsigned long for length argument of linux copyin/copyout equivalents

date 2022-02-01T08:38:53Z
author guenther
files src/sys/arch/amd64/amd64/pmap.c log diff annotate
src/sys/arch/amd64/include/pmap.h log diff annotate
src/sys/uvm/uvm_fault.c log diff annotate
message Attempt to guarantee that on copy-on-write faulting, the new copy
can't be written to while any thread can see the original version
of the page via a not-yet-flushed stale TLB entry: pmaps can indicate
they do this correctly by defining __HAVE_PMAP_MPSAFE_ENTER_COW;
uvm will force the initial CoW fault to be read-only otherwise.

Set that on amd64 and fix the problem case in pmap_enter() by putting
a read-only mapping in place, shooting the TLB entry, then fixing
it to the final read-write entry so this thread can continue without
re-faulting.

reported by jsing@ from https://github.com/golang/go/issues/34988
assisted by discussion in https://reviews.freebsd.org/D14347
tweaks from jsing@ and kettenis@

ok jsing@ mpi@ kettenis@

date 2022-02-01T15:30:10Z
author miod
files src/sys/arch/alpha/alpha/in_cksum.c log diff annotate
src/sys/arch/m88k/m88k/in_cksum.c log diff annotate
src/sys/arch/powerpc/powerpc/in_cksum.c log diff annotate
src/sys/arch/sparc64/sparc64/in4_cksum.c log diff annotate
src/sys/netinet/in4_cksum.c log diff annotate
message When a struct ipovly needs to be computed and checksummed in in4_cksum(),
do not bother operating on its first 8 bytes, which will always be zero.

ok visa@

date 2022-02-01T18:09:00Z
author deraadt
files src/sys/dev/acpi/acpi.c log diff annotate
src/sys/dev/acpi/acpivar.h log diff annotate
message GPE_DIRECT is calling the AML parser from interrupt context, which is
not permitted. Luckily nothing is using GPE_DIRECT anymore, so this code
can be deleted.
ok kettenis

date 2022-02-01T19:57:28Z
author kettenis
files src/sys/arch/arm/arm/pmap7.c log diff annotate
message Make sure we always pass a page-aligned address to pmap_grow_map().
Fixes an issue uncovered by the recent change to enlarge kva space where
an unaligned address was passed resulting in memset() writing past the
end of the newly allocated page.

ok miod@

date 2022-02-01T20:29:53Z
author deraadt
files src/sys/arch/amd64/amd64/machdep.c log diff annotate
message An old hack skips use of memory regions < 1MB size, because some machines
put BIOS objects into there, and rely upon them. We are shocked, SHOCKED,
to find a machine that does so in a large object (Supermicro 5019D-FTN4).
So now we need to ignore memory regions < 32MB in size. If we put this
memory into use, the zerothread will soon clear it, and on this particular
case the machine resets because something in AML or SMI gets unhappy.
Other machines with similar problems may exhibit other misbehaviours, so
this could fix heisenbugs. Sadly I expect products to get worse.
ok kettenis, miod

date 2022-02-01T20:29:55Z
author deraadt
files src/sys/arch/i386/i386/machdep.c log diff annotate
message An old hack skips use of memory regions < 1MB size, because some machines
put BIOS objects into there, and rely upon them. We are shocked, SHOCKED,
to find a machine that does so in a large object (Supermicro 5019D-FTN4).
So now we need to ignore memory regions < 32MB in size. If we put this
memory into use, the zerothread will soon clear it, and on this particular
case the machine resets because something in AML or SMI gets unhappy.
Other machines with similar problems may exhibit other misbehaviours, so
this could fix heisenbugs. Sadly I expect products to get worse.
ok kettenis, miod

date 2022-02-01T23:26:27Z
author jsg
files src/sys/dev/pci/drm/i915/intel_stolen.c log diff annotate
message get stolen memory base and size for gen 12

date 2022-02-01T23:29:07Z
author jsg
files src/sys/dev/pci/drm/i915/i915_drv.c log diff annotate
message call intel_init_stolen_res() lost in drm 5.7 update