Lines Matching refs:nid
1613 static inline int task_faults_idx(enum numa_faults_stats s, int nid, int priv) in task_faults_idx() argument
1615 return NR_NUMA_HINT_FAULT_TYPES * (s * nr_node_ids + nid) + priv; in task_faults_idx()
1618 static inline unsigned long task_faults(struct task_struct *p, int nid) in task_faults() argument
1623 return p->numa_faults[task_faults_idx(NUMA_MEM, nid, 0)] + in task_faults()
1624 p->numa_faults[task_faults_idx(NUMA_MEM, nid, 1)]; in task_faults()
1627 static inline unsigned long group_faults(struct task_struct *p, int nid) in group_faults() argument
1634 return ng->faults[task_faults_idx(NUMA_MEM, nid, 0)] + in group_faults()
1635 ng->faults[task_faults_idx(NUMA_MEM, nid, 1)]; in group_faults()
1638 static inline unsigned long group_faults_cpu(struct numa_group *group, int nid) in group_faults_cpu() argument
1640 return group->faults[task_faults_idx(NUMA_CPU, nid, 0)] + in group_faults_cpu()
1641 group->faults[task_faults_idx(NUMA_CPU, nid, 1)]; in group_faults_cpu()
1675 static bool numa_is_active_node(int nid, struct numa_group *ng) in numa_is_active_node() argument
1677 return group_faults_cpu(ng, nid) * ACTIVE_NODE_FRACTION > ng->max_faults_cpu; in numa_is_active_node()
1681 static unsigned long score_nearby_nodes(struct task_struct *p, int nid, in score_nearby_nodes() argument
1702 int dist = node_distance(nid, node); in score_nearby_nodes()
1708 if (dist >= max_dist || node == nid) in score_nearby_nodes()
1752 static inline unsigned long task_weight(struct task_struct *p, int nid, in task_weight() argument
1765 faults = task_faults(p, nid); in task_weight()
1766 faults += score_nearby_nodes(p, nid, dist, true); in task_weight()
1771 static inline unsigned long group_weight(struct task_struct *p, int nid, in group_weight() argument
1785 faults = group_faults(p, nid); in group_weight()
1786 faults += score_nearby_nodes(p, nid, dist, false); in group_weight()
2114 struct numa_stats *ns, int nid, in update_numa_stats() argument
2123 for_each_cpu(cpu, cpumask_of_node(nid)) { in update_numa_stats()
2145 ns->weight = cpumask_weight(cpumask_of_node(nid)); in update_numa_stats()
2507 int nid, ret, dist; in task_numa_migrate() local
2557 for_each_node_state(nid, N_CPU) { in task_numa_migrate()
2558 if (nid == env.src_nid || nid == p->numa_preferred_nid) in task_numa_migrate()
2569 taskimp = task_weight(p, nid, dist) - taskweight; in task_numa_migrate()
2570 groupimp = group_weight(p, nid, dist) - groupweight; in task_numa_migrate()
2575 env.dst_nid = nid; in task_numa_migrate()
2591 nid = env.src_nid; in task_numa_migrate()
2593 nid = cpu_to_node(env.best_cpu); in task_numa_migrate()
2595 if (nid != p->numa_preferred_nid) in task_numa_migrate()
2596 sched_setnuma(p, nid); in task_numa_migrate()
2653 int nid, active_nodes = 0; in numa_group_count_active_nodes() local
2655 for_each_node_state(nid, N_CPU) { in numa_group_count_active_nodes()
2656 faults = group_faults_cpu(numa_group, nid); in numa_group_count_active_nodes()
2661 for_each_node_state(nid, N_CPU) { in numa_group_count_active_nodes()
2662 faults = group_faults_cpu(numa_group, nid); in numa_group_count_active_nodes()
2795 static int preferred_group_nid(struct task_struct *p, int nid) in preferred_group_nid() argument
2802 return nid; in preferred_group_nid()
2811 int node, max_node = nid; in preferred_group_nid()
2867 nid = a; in preferred_group_nid()
2875 return nid; in preferred_group_nid()
2880 int seq, nid, max_nid = NUMA_NO_NODE; in task_numa_placement() local
2911 for_each_online_node(nid) { in task_numa_placement()
2920 mem_idx = task_faults_idx(NUMA_MEM, nid, priv); in task_numa_placement()
2921 membuf_idx = task_faults_idx(NUMA_MEMBUF, nid, priv); in task_numa_placement()
2922 cpu_idx = task_faults_idx(NUMA_CPU, nid, priv); in task_numa_placement()
2923 cpubuf_idx = task_faults_idx(NUMA_CPUBUF, nid, priv); in task_numa_placement()
2965 max_nid = nid; in task_numa_placement()
2969 max_nid = nid; in task_numa_placement()