OpenBSD cvs log

created 2020-11-01T20:25:18Z
begin 2020-10-26T00:00:00Z
end 2020-10-27T00:00:00Z
path src/sys
commits 14

date 2020-10-26T03:00:15Z
author jsg
files src/sys/dev/pci/drm/include/linux/atomic.h log diff annotate
message use lwsync and eieio for smp barriers on powerpc

ok kettenis@

date 2020-10-26T04:01:19Z
author jsg
files src/sys/dev/pci/drm/include/linux/atomic.h log diff annotate
message use __membar() where possible

date 2020-10-26T04:04:31Z
author visa
files src/sys/lib/libsa/loadfile_elf.c log diff annotate
message Remove an unneeded variable.

OK kettenis@

date 2020-10-26T04:10:25Z
author jsg
files src/sys/dev/pci/drm/include/linux/atomic.h log diff annotate
message remove unused alpha memory barrier defines

date 2020-10-26T14:34:46Z
author kettenis
files src/sys/dev/pci/drm/include/linux/io.h log diff annotate
message Improve I/O functions to match Linux:
- Reverse byte order on big-endian architectures (except on sparc64)
- Add memory barriers

Note that sparc64 is special as we use a little-endian mapping for
PCI bus space, so we shouldn't reverse the byte order there.

ok jsg@

date 2020-10-26T16:17:00Z
author cheloha
files src/sys/kern/kern_event.c log diff annotate
message kevent(2): ktrace the timeout before validating it

As deraadt@ has pointed out, tracing timevals and timespecs before
validating them makes debugging easier.

date 2020-10-26T18:35:41Z
author kettenis
files src/sys/arch/amd64/amd64/pmap.c log diff annotate
message Switch the pmap and PDP pools to IPL_VM, drop the PR_WAITOK flag from the
PDP pool and use the single page allocator for the PDP pool. This makes
pmap_destroy(9) mpsafe while preventing additional pressure on the
interrupt-safe kernel map.

ok mpi@

date 2020-10-26T18:53:20Z
author deraadt
files src/sys/ddb/db_command.c log diff annotate
message add a top-level "reboot" command, for people who keep forgetting "boot reboot"
ok kn

date 2020-10-26T19:48:19Z
author anton
files src/sys/uvm/uvm_vnode.c log diff annotate
src/sys/uvm/uvm_vnode.h log diff annotate
message Fix a deadlock between uvn_io() and uvn_flush(). While faulting on a
page backed by a vnode, uvn_io() will end up being called in order to
populate newly allocated pages using I/O on the backing vnode. Before
performing the I/O, newly allocated pages are flagged as busy by
uvn_get(), that is before uvn_io() tries to lock the vnode. Such pages
could then end up being flushed by uvn_flush() which already has
acquired the vnode lock. Since such pages are flagged as busy,
uvn_flush() will wait for them to be flagged as not busy. This will
never happens as uvn_io() cannot make progress until the vnode lock is
released.

Instead, grab the vnode lock before allocating and flagging pages as
busy in uvn_get(). This does extend the scope in uvn_get() in which the
vnode is locked but resolves the deadlock.

ok mpi@

Reported-by: [email protected]

date 2020-10-26T20:59:41Z
author kettenis
files src/sys/arch/powerpc64/powerpc64/pmap.c log diff annotate
message Fix typo.

date 2020-10-26T21:13:56Z
author kettenis
files src/sys/arch/powerpc64/conf/files.powerpc64 log diff annotate
message Include I2C stuff.

date 2020-10-26T22:02:38Z
author tobhe
files src/sys/arch/macppc/macppc/ofw_machdep.c log diff annotate
message Define ws_get/set_param for macppc using ofw brightness and backlight
commands. Fixes wsconsctl display commands with drm drivers.

ok kettenis@

date 2020-10-26T22:05:01Z
author kettenis
files src/sys/dev/pci/drm/amd/amdgpu/amdgpu_kms.c log diff annotate
message Make mapping the "I/O Space" BAR optional. POWER9 systems don't support
"I/O Space" on their PCIe host bridges and for most (all) Radeon variants
there is an alternative method to access the relevant registers.

ok jsg@

date 2020-10-26T22:07:06Z
author gkoehler
files src/sys/arch/powerpc/include/asm.h log diff annotate
message Retguard asm macros for powerpc libc, ld.so

Add retguard to some, but not all, asm functions in libc. Edit SYS.h
in libc to remove the PREFIX macros and add SYSENTRY (more like
aarch64 and powerpc64), so we can insert RETGUARD_SETUP after
SYSENTRY. Some .S files in this commit don't get retguard, but do
stop using the old prefix macros.

Tested by deraadt@, who put this diff in a macppc snap.