OpenBSD cvs log

created 2021-09-13T16:20:01Z
begin 2021-09-05T00:00:00Z
end 2021-09-06T00:00:00Z
path src/sys
commits 5

date 2021-09-05T07:59:47Z
author mpi
files src/sys/dev/pci/drm/ttm/ttm_bo_vm.c log diff annotate
message Pass `uobj' to uvmfault_unlockall() at the end of the fault handler.

This is currently a NOOP but will become necessary to unlock the UVM
object with the upcoing "vmobjlock" diff.

Tested by patrick@ and robert@

ok jsg@

date 2021-09-05T11:44:46Z
author mpi
files src/sys/arch/amd64/amd64/pmap.c log diff annotate
src/sys/arch/hppa/hppa/pmap.c log diff annotate
src/sys/arch/i386/i386/pmap.c log diff annotate
src/sys/kern/vfs_bio.c log diff annotate
src/sys/kern/vfs_biomem.c log diff annotate
src/sys/uvm/uvm_object.c log diff annotate
src/sys/uvm/uvm_object.h log diff annotate
src/sys/uvm/uvm_page.c log diff annotate
message Introduce dummy pagers for 'special' subsystems using UVM objects.

Some pmaps (x86, hppa) and the buffer cache rely on UVM objects to allocate
and manipulate pages. These objects should not be manipulated by uvm_fault()
and do not currently require the same locking enforcement.

Use the dummy pagers to explicitly document which UVM functions are meant to
manipulate UVM objects (uobj) that do not need the upcoming `vmobjlock' and
instead still rely on the KERNEL_LOCK().

Tested by many as part of a larger diff.

ok kettenis@, beck@

date 2021-09-05T13:13:31Z
author dv
files src/sys/arch/amd64/amd64/vmm.c log diff annotate
message vmm(4): fix vcpu locking issues reported by syzbot

Syzbot found 3 issues related to the new vcpu lock. This diff adds
a write lock to vm_rwregs (needed on VMX as vmread instructions
require taking ownership of the vcpu to load the VMCS) and prevents
locking the vcpu in vm_run if we fail the cas operation for toggling
vcpu state.

In the future, we can push the locking in vm_rwregs on AMD SVM
systems.

The panics in question:

panic: rw_enter: vcpulock locking against myself
panic: lock (rwlock) vcpulock not locked
panic: vcpulock: lock not held

Reported-by: [email protected]
Reported-by: [email protected]
Reported-by: [email protected]

ok mlarkin@

date 2021-09-05T16:16:13Z
author mglocker
files src/sys/dev/usb/usb.c log diff annotate
message This allows us to disable usb(4) without kernel crash.

ok mpi@

date 2021-09-05T16:36:34Z
author dv
files src/sys/arch/amd64/amd64/vmm.c log diff annotate
message vmm(4): raise vm pool ipl to IPL_MPFLOOR

Similar to the recent change by mpi in revision 1.288, commitid:
A4zhVhOoHAIpRGBJ, raise the ipl level of the vm_pool to IPL_MPFLOOR
to prevent lock ordering issues.

ok mpi@