On 11/08/23(Fri) 20:41, Mark Kettenis wrote: > > Date: Fri, 11 Aug 2023 20:12:19 +0200 > > From: Martin Pieuchot <m...@openbsd.org> > > > > Here's a simple diff to add some more sanity checks in uvm_pagelookup(). > > > > Nothing fancy, it helps documenting the flags and reduce the difference > > with NetBSD. This is part of my on-going work on UVM. > > > > ok? > > NetBSD really has that extra blank line after the return?
No. It's my mistake. > > Index: uvm/uvm_page.c > > =================================================================== > > RCS file: /cvs/src/sys/uvm/uvm_page.c,v > > retrieving revision 1.172 > > diff -u -p -r1.172 uvm_page.c > > --- uvm/uvm_page.c 13 May 2023 09:24:59 -0000 1.172 > > +++ uvm/uvm_page.c 11 Aug 2023 17:55:43 -0000 > > @@ -1219,10 +1219,16 @@ struct vm_page * > > uvm_pagelookup(struct uvm_object *obj, voff_t off) > > { > > /* XXX if stack is too much, handroll */ > > - struct vm_page pg; > > + struct vm_page p, *pg; > > + > > + p.offset = off; > > + pg = RBT_FIND(uvm_objtree, &obj->memt, &p); > > + > > + KASSERT(pg == NULL || obj->uo_npages != 0); > > + KASSERT(pg == NULL || (pg->pg_flags & PG_RELEASED) == 0 || > > + (pg->pg_flags & PG_BUSY) != 0); > > + return (pg); > > > > - pg.offset = off; > > - return RBT_FIND(uvm_objtree, &obj->memt, &pg); > > } > > > > /* > > > >