On Wed, Dec 05, 2012 at 07:45:42AM -0800, Chuck Silvers wrote: > don't you need a "mutex_enter(vp->v_interlock)" before calling VOP_PUTPAGES()? > (did you test it with LOCKDEBUG?) otherwise it looks ok to me.
Yes the mutex_enter() is needed, I found it later (I didn't remember we didn't have DIAGNOSTIC in GENERIC in the release branch). > > in the places were we skip the list walk because there aren't supposed to be > any pages with offsets larger than some threshold, it would be nice if we > could > have a DEBUG check that would verify there actually aren't any pages with > offsets that are larger than that. I'll try to look at adding this. > > I should also mention that this kind of workaround shouldn't be necessary > anymore once the yamt-pagecache branch is merged... there, the uvm_object list > of pages is replaced by a tree so that finding a few pages is fast no matter > how many other pages of that object are present. I don't know when that > will be ready though. Good to know, thanks ! -- Manuel Bouyer <bou...@antioche.eu.org> NetBSD: 26 ans d'experience feront toujours la difference --