Lines Matching refs:policy

256 	struct mempolicy *policy;  in mpol_new()  local
285 policy = kmem_cache_alloc(policy_cache, GFP_KERNEL); in mpol_new()
286 if (!policy) in mpol_new()
288 atomic_set(&policy->refcnt, 1); in mpol_new()
289 policy->mode = mode; in mpol_new()
290 policy->flags = flags; in mpol_new()
292 return policy; in mpol_new()
833 static long do_get_mempolicy(int *policy, nodemask_t *nmask, in do_get_mempolicy() argument
848 *policy = 0; /* just so it's initialized */ in do_get_mempolicy()
882 *policy = err; in do_get_mempolicy()
885 *policy = current->il_next; in do_get_mempolicy()
891 *policy = pol == &default_policy ? MPOL_DEFAULT : in do_get_mempolicy()
897 *policy |= (pol->flags & MPOL_MODE_FLAGS); in do_get_mempolicy()
1438 SYSCALL_DEFINE5(get_mempolicy, int __user *, policy, in SYSCALL_DEFINE5() argument
1454 if (policy && put_user(pval, policy)) in SYSCALL_DEFINE5()
1465 COMPAT_SYSCALL_DEFINE5(get_mempolicy, int __user *, policy, in COMPAT_SYSCALL_DEFINE5() argument
1481 err = sys_get_mempolicy(policy, nm, nr_bits+1, addr, flags); in COMPAT_SYSCALL_DEFINE5()
1614 static int apply_policy_zone(struct mempolicy *policy, enum zone_type zone) in apply_policy_zone() argument
1628 if (!nodes_intersects(policy->v.nodes, node_states[N_HIGH_MEMORY])) in apply_policy_zone()
1638 static nodemask_t *policy_nodemask(gfp_t gfp, struct mempolicy *policy) in policy_nodemask() argument
1641 if (unlikely(policy->mode == MPOL_BIND) && in policy_nodemask()
1642 apply_policy_zone(policy, gfp_zone(gfp)) && in policy_nodemask()
1643 cpuset_nodemask_valid_mems_allowed(&policy->v.nodes)) in policy_nodemask()
1644 return &policy->v.nodes; in policy_nodemask()
1650 static struct zonelist *policy_zonelist(gfp_t gfp, struct mempolicy *policy, in policy_zonelist() argument
1653 switch (policy->mode) { in policy_zonelist()
1655 if (!(policy->flags & MPOL_F_LOCAL)) in policy_zonelist()
1656 nd = policy->v.preferred_node; in policy_zonelist()
1666 unlikely(!node_isset(nd, policy->v.nodes))) in policy_zonelist()
1667 nd = first_node(policy->v.nodes); in policy_zonelist()
1676 static unsigned interleave_nodes(struct mempolicy *policy) in interleave_nodes() argument
1682 next = next_node(nid, policy->v.nodes); in interleave_nodes()
1684 next = first_node(policy->v.nodes); in interleave_nodes()
1696 struct mempolicy *policy; in mempolicy_slab_node() local
1702 policy = current->mempolicy; in mempolicy_slab_node()
1703 if (!policy || policy->flags & MPOL_F_LOCAL) in mempolicy_slab_node()
1706 switch (policy->mode) { in mempolicy_slab_node()
1711 return policy->v.preferred_node; in mempolicy_slab_node()
1714 return interleave_nodes(policy); in mempolicy_slab_node()
1726 &policy->v.nodes, in mempolicy_slab_node()
2205 new->policy ? new->policy->mode : 0); in sp_insert()
2220 mpol_get(sn->policy); in mpol_shared_policy_lookup()
2221 pol = sn->policy; in mpol_shared_policy_lookup()
2229 mpol_put(n->policy); in sp_free()
2332 node->policy = pol; in sp_node_init()
2382 *mpol_new = *n->policy; in shared_policy_replace()