Re: page migration: Fail with error if swap not setup

Marcelo Tosatti
2006-03-15T23:06:33Z

On Wed, Mar 15, 2006 at 11:00:31AM -0800, Christoph Lameter wrote:
> On Wed, 15 Mar 2006, Marcelo Tosatti wrote:
>
> > > That does not answer the question if VM_LOCKED pages should be
> > > migratable. We all agree that they should not show up on swap.
> >
> > I guess you missed the first part of the man page:
> >
> > All pages which contain a part of the specified memory range are
> > guaranteed be resident in RAM when the mlock system call returns
> > successfully and they are guaranteed to stay in RAM until the pages are
> > unlocked by munlock or munlockall, until the pages are unmapped via
> > munmap, or until the process terminates or starts another program with
> > exec. Child processes do not inherit page locks across a fork.
> >
> > That is, mlock() only guarantees that pages are kept in RAM and not
> > swapped. It does seem to refer to physical placing of pages.
>
> If VM_LOCKED is not pinning memory then how does one pin memory? There are
> likely applications / drivers that require memory not to move. Increase
> pagecount?

Err, I meant that mlock() does _not_ refer to physical placing of pages,
it only refers to guaranteed availability of page in RAM (as can be read
in the man page).

Now drivers using VM_LOCKED is another history...

In the end my comments haven't been useful at all, oh well.