Index | Thread | Search

From:
"Theo de Raadt" <deraadt@openbsd.org>
Subject:
Re: [EXT] Re: Kernel protection fault in fill_kproc()
To:
Gerhard Roth <gerhard_roth@genua.de>
Cc:
"dv@sisu.io" <dv@sisu.io>, "mpi@openbsd.org" <mpi@openbsd.org>, "tech@openbsd.org" <tech@openbsd.org>, Carsten Beckmann <carsten_beckmann@genua.de>
Date:
Mon, 11 Aug 2025 08:59:59 -0600

Download raw body.

Thread
Gerhard Roth <gerhard_roth@genua.de> wrote:

> > I don't tend to work in this area, but this looks possibly related to
> > unlocking in sysctl given fill_kproc() is seeing the memory issues. A
> > lot has changed in kern_sysctl.c in the past few months.
> 
> fill_kproc() holds the kernel lock while accessing the processe's vmspace
> while the reaper() doesn't. So it's the unlocking in the reaper() that
> introduced the problem, not the unlocking in fill_kproc().

Yes, sysctl didn't change the locking contract for this object.

(The sysctl work has moved many specific objects out of the biglock
contract, but not this one).

The uvm diff is ignoring the contract.