Lines Matching refs:nid

910 static inline int task_faults_idx(enum numa_faults_stats s, int nid, int priv)  in task_faults_idx()  argument
912 return NR_NUMA_HINT_FAULT_TYPES * (s * nr_node_ids + nid) + priv; in task_faults_idx()
915 static inline unsigned long task_faults(struct task_struct *p, int nid) in task_faults() argument
920 return p->numa_faults[task_faults_idx(NUMA_MEM, nid, 0)] + in task_faults()
921 p->numa_faults[task_faults_idx(NUMA_MEM, nid, 1)]; in task_faults()
924 static inline unsigned long group_faults(struct task_struct *p, int nid) in group_faults() argument
929 return p->numa_group->faults[task_faults_idx(NUMA_MEM, nid, 0)] + in group_faults()
930 p->numa_group->faults[task_faults_idx(NUMA_MEM, nid, 1)]; in group_faults()
933 static inline unsigned long group_faults_cpu(struct numa_group *group, int nid) in group_faults_cpu() argument
935 return group->faults_cpu[task_faults_idx(NUMA_MEM, nid, 0)] + in group_faults_cpu()
936 group->faults_cpu[task_faults_idx(NUMA_MEM, nid, 1)]; in group_faults_cpu()
940 static unsigned long score_nearby_nodes(struct task_struct *p, int nid, in score_nearby_nodes() argument
959 int dist = node_distance(nid, node); in score_nearby_nodes()
965 if (dist == sched_max_numa_distance || node == nid) in score_nearby_nodes()
1010 static inline unsigned long task_weight(struct task_struct *p, int nid, in task_weight() argument
1023 faults = task_faults(p, nid); in task_weight()
1024 faults += score_nearby_nodes(p, nid, dist, true); in task_weight()
1029 static inline unsigned long group_weight(struct task_struct *p, int nid, in group_weight() argument
1042 faults = group_faults(p, nid); in group_weight()
1043 faults += score_nearby_nodes(p, nid, dist, false); in group_weight()
1133 static void update_numa_stats(struct numa_stats *ns, int nid) in update_numa_stats() argument
1139 for_each_cpu(cpu, cpumask_of_node(nid)) { in update_numa_stats()
1428 int nid, ret, dist; in task_numa_migrate() local
1477 for_each_online_node(nid) { in task_numa_migrate()
1478 if (nid == env.src_nid || nid == p->numa_preferred_nid) in task_numa_migrate()
1489 taskimp = task_weight(p, nid, dist) - taskweight; in task_numa_migrate()
1490 groupimp = group_weight(p, nid, dist) - groupweight; in task_numa_migrate()
1495 env.dst_nid = nid; in task_numa_migrate()
1511 nid = env.src_nid; in task_numa_migrate()
1513 nid = env.dst_nid; in task_numa_migrate()
1515 if (node_isset(nid, p->numa_group->active_nodes)) in task_numa_migrate()
1578 int nid; in update_numa_active_node_mask() local
1580 for_each_online_node(nid) { in update_numa_active_node_mask()
1581 faults = group_faults_cpu(numa_group, nid); in update_numa_active_node_mask()
1586 for_each_online_node(nid) { in update_numa_active_node_mask()
1587 faults = group_faults_cpu(numa_group, nid); in update_numa_active_node_mask()
1588 if (!node_isset(nid, numa_group->active_nodes)) { in update_numa_active_node_mask()
1590 node_set(nid, numa_group->active_nodes); in update_numa_active_node_mask()
1592 node_clear(nid, numa_group->active_nodes); in update_numa_active_node_mask()
1705 static int preferred_group_nid(struct task_struct *p, int nid) in preferred_group_nid() argument
1712 return nid; in preferred_group_nid()
1721 int node, max_node = nid; in preferred_group_nid()
1777 nid = a; in preferred_group_nid()
1785 return nid; in preferred_group_nid()
1790 int seq, nid, max_nid = -1, max_group_nid = -1; in task_numa_placement() local
1814 for_each_online_node(nid) { in task_numa_placement()
1823 mem_idx = task_faults_idx(NUMA_MEM, nid, priv); in task_numa_placement()
1824 membuf_idx = task_faults_idx(NUMA_MEMBUF, nid, priv); in task_numa_placement()
1825 cpu_idx = task_faults_idx(NUMA_CPU, nid, priv); in task_numa_placement()
1826 cpubuf_idx = task_faults_idx(NUMA_CPUBUF, nid, priv); in task_numa_placement()
1867 max_nid = nid; in task_numa_placement()
1872 max_group_nid = nid; in task_numa_placement()