Hi Hugh,
On 03/06/2013 03:40 AM, Hugh Dickins wrote:
On Mon, 4 Mar 2013, Will Huck wrote:
Could you explain me why shmem has more relationship with mempolicy? It seems
that there are many codes in shmem handle mempolicy, but other components in
mm subsystem just have little.
NUMA mempolicy is mostly handled in mm/mempolicy.c, which services the
mbind, migrate_pages, set_mempolicy, get_mempolicy system calls: which
govern how process memory is distributed across NUMA nodes.
mm/shmem.c is affected because it was also found useful to specify
mempolicy on the shared memory objects which may back process memory:
that includes SysV SHM and POSIX shared memory and tmpfs. mm/hugetlb.c
contains some mempolicy handling for hugetlbfs; fs/ramfs is kept minimal,
so nothing in there.
Those are the memory-based filesystems, where NUMA mempolicy is most
natural. The regular filesystems could support shared mempolicy too,
but that would raise more awkward design questions.
I found that if mbind several processes to one node and almost exhaust
memory, processes will just stuck and no processes make progress or be
killed. Is it normal?
Hugh
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@xxxxxxxxx. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>