Re: [RFC][PATCH] mm: fix page_mkclean() vs non-linear vmas

Miklos Szeredi
2007-03-08T12:26:31Z

> > > And it doesn't sound too hard to solve: when current algorithm doesn't
> > > seem to be making progress, then it will have to be done the hard way,
> > > searching for for all nonlinear ptes of a page to unmap.
> >
> > Ah, you see, but that is when you've already lost.
> >
> > The DoS is about the computational complexity of the reclaim, not if it
> > will ever come out of it with free pages.
>
> If we really want to, we could limit it to mlock for !root. This is
> a reasonable way to solve the problem, and UML could fall back on
> vma emulated version if they didn't want to use mlock memory...
>
> Or we could limit the size/number of nonlinear vmas that could be
> created.
>
> But just quietly, I think there are probably a lot of other ways to
> perform a local DoS anyway ;)

I aggree, requiring apps to mlock would probably just make things
slightly worse for about 100% of users, without any gain. There could
be a

/proc/sys/vm/turn_off_nonlinear_for_paranoid_sysadmin

knob that would unconditionally emulate nonlinear vmas.

Miklos