Re: [RFC 2.6.11-rc2-mm2 7/7] mm: manual page migration -- sys_page_migrate

Paul Jackson
2005-02-15T15:38:46Z

Robin wrote:
> Given that the first user of this may place in onto a 256 node system,
> the chances that they use the same node in the source and destination node
> array are very good.

Am I parsing this sentence correctly when I read it as stating that we
need to handle the case where the source and destination node sets
overlap (have non-empty intersection)?

> I can not see the node array as anything but the right way
> when compared to multiple system calls.

Variable length arrays across the system call boundary are a pain in the
butt. Especially ones that add what are essentially "new types", in this
case, an array of MAX_NUMNODES node numbers. Odds are well over 50% that
there will be a bug in this area, in our lifetime.

And simplicity is measured more, in my mind, by whether each specific
system call does the essential minimum of work, with clear pre and post
conditions, than by whether the caller is able to make the fewest number
of such calls. Such reduction to the smallest irreducible atoms of work
both ensures that the kernel is best able to maintain order, and that it
can be used in the most flexible, unforseeable patterns possible,
without further kernel changes.

Such a node array call may well make good sense as a library API.

--
I won't rest till it's the best ...
Programmer, Linux Scalability
Paul Jackson <pj@sgi.com> 1.650.933.1373, 1.925.600.0401