> (1)  You really don't want to migrate the code pages of shared libraries
>      that are mapped into the process address space.  This causes a
>      useless shuffling of pages which really doesn't help system
>      performance.  On the other hand, if a shared library is some
>      private thing that is only used by the processes being migrated,
>      then you should move that.

I think the better solution for this would be to finally integrate Steve L.'s 
file attribute code (and find some solution to make it persistent,
e.g. using xattrs with a new inode flag) and then "lock" the shared 
libraries to their policy using a new attribute flag.

> 
> (2)  You really only want to migrate pages once.  If a file is mapped
>      into several of the pid's that are being migrated, then you want
>      to figure this out and issue one call to have it moved wrt one of
>      the pid's.
>      (The page migration code from the memory hotplug patch will handle
>      updating the pte's of the other processs (thank goodness for
>      rmap...))

I don't get this. Surely the migration code will check if a page
is already in the target node, and when that is the case do nothing.

How could this "double migration" happen? 

> 
> (3)  In the case where a particular file is mapped into different
>      processes at different file offsets (and we are migrating both
>      of the processes), one has to examine the file offsets to figure
>      out if the mappings overlap or not. If they overlap, then you've
>      got to issue two calls, each of which describes a non-overlapping
>      region; both calls taken together would cover the entire range
>      of pages mapped to the file.  Similarly if the ranges do not
>      overlap.

That sounds like a quite obscure corner case which I'm not sure
is worth all the complexity.

-Andi

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to