Emmanuel Dreyfus <[email protected]> wrote: [using mlockall(2) to prevent userland filesystem to be swaped out] > It seemed to work, but after intensive testing I still see deadlocks, > and a printf added in uvm_swapout() shows that perfused still gets > swaped out despite the mlockall call. Is that a bug? > > This is on netbsd-5.
I had a look at src/sys/uvm/uvm_glue.c changes bewteen netbsd-5 and -current. Revision 1.140-1.141 is interesting: netbsd-5 has a swappable u-area, and the change drops that "feature" to fix issues. The problem is documented in kern/38828 http://gnats.netbsd.org/cgi-bin/query-pr-single.pl?number=38828 Is it possible that mlockall() fail to wire the u-areas, leading to the problem again? The changeset is huge, but it does not only make the u-area unswappable. Is it reasonable to try to isolate that change and backport to netbsd-5? -- Emmanuel Dreyfus http://hcpnet.free.fr/pubz [email protected]
