All MPOL_F_STATIC_NODES does (by mbind(), set_mempolicy(), or adding
'=static' to the mempolicy mode on tmpfs mount) is suppress the node remap
in mpol_rebind_policy().
In mpol_new(), the intent of the user is stored in a new nodemask_t member
of struct mempolicy and in the static case the passed nodemask is
intersected with that member. The policy is then effected over the
intersection.
If that nodemask includes no accessible nodes, then the mempolicy is not
effected but rather lies dormant until access to those nodes is attained.
If and when that happens, the mempolicy will then be effected again
without any additional set_mempolicy() or mbind() from the user.
David
--