Function report | 
Source Code:kernel\sched\topology.c | 
Create Date:2022-07-28 09:42:37 | 
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick | 
| home page | Tree | 
| Annotation kernel can get tool activity | Download SCCT | Chinese | 
Name:sched_init_numa
Proto:void sched_init_numa(void)
Type:void
Parameter:Nothing
| 1554 | curr_distance = node_distance(0, 0) | 
| 1556 | level = 0 | 
| 1559 | sched_domains_numa_distance = kzalloc - allocate memory. The memory is set to zero.*@size: how many bytes of memory are required.*@flags: the type of memory to allocate (see kmalloc). | 
| 1560 | If Not sched_domains_numa_distance Then Return | 
| 1564 | sched_domains_numa_distance[level++] = curr_distance | 
| 1565 | sched_domains_numa_levels = level | 
| 1574 | next_distance = curr_distance | 
| 1575 | When i < nr_node_ids cycle | 
| 1576 | When j < nr_node_ids cycle | 
| 1577 | When k < nr_node_ids cycle | 
| 1578 | distance = node_distance(i, k) | 
| 1580 | If distance > curr_distance && ( distance < next_distance || next_distance == curr_distance ) Then next_distance = distance | 
| 1590 | If sched_debug() && node_distance(k, i) != distance Then sched_numa_warn("Node-distance not symmetric") | 
| 1593 | If sched_debug() && i && Not find_numa_distance(distance) Then sched_numa_warn("Node-0 not representative") | 
| 1596 | If next_distance != curr_distance Then | 
| 1597 | sched_domains_numa_distance[level++] = next_distance | 
| 1598 | sched_domains_numa_levels = level | 
| 1599 | curr_distance = next_distance | 
| 1600 | Else Break | 
| 1606 | If Not sched_debug() Then Break | 
| 1626 | sched_domains_numa_levels = 0 | 
| 1628 | sched_domains_numa_masks = kzalloc - allocate memory. The memory is set to zero.*@size: how many bytes of memory are required.*@flags: the type of memory to allocate (see kmalloc). | 
| 1629 | If Not sched_domains_numa_masks Then Return | 
| 1637 | sched_domains_numa_masks[i] = kzalloc - allocate memory. The memory is set to zero.*@size: how many bytes of memory are required.*@flags: the type of memory to allocate (see kmalloc). | 
| 1639 | If Not sched_domains_numa_masks[i] Then Return | 
| 1642 | When j < nr_node_ids cycle | 
| 1643 | mask = kzalloc - allocate memory. The memory is set to zero.*@size: how many bytes of memory are required.*@flags: the type of memory to allocate (see kmalloc). | 
| 1644 | If Not mask Then Return | 
| 1647 | sched_domains_numa_masks[i][j] = mask | 
| 1649 | for_each_node(k) | 
| 1659 | When mask cycle tl = kzalloc - allocate memory. The memory is set to zero.*@size: how many bytes of memory are required.*@flags: the type of memory to allocate (see kmalloc). | 
| 1663 | If Not tl Then Return | 
| 1675 | tl[i++] = (struct sched_domain_topology_level){tl[i++] = sd_numa_mask, tl[i++] = 0, SD_INIT_NAME(NODE)} | 
| 1685 | tl[i] = (struct sched_domain_topology_level){tl[i] = sd_numa_mask, tl[i] = cpu_numa_flags, tl[i] = SDTL_OVERLAP, tl[i] = j, SD_INIT_NAME(NUMA)} | 
| 1694 | sched_domain_topology = tl | 
| 1696 | sched_domains_numa_levels = level | 
| 1697 | sched_max_numa_distance = sched_domains_numa_distance[level - 1] | 
| Source code conversion tool public plug-in interface  | X | 
|---|---|
| Support c/c++/esqlc/java Oracle/Informix/Mysql Plug-in can realize: logical Report Code generation and batch code conversion  |