函数逻辑报告 |
Source Code:arch\x86\kernel\apic\x2apic_uv_x.c |
Create Date:2022-07-27 09:33:45 |
Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
首页 | 函数Tree |
注解内核,赢得工具 | 下载SCCT | English |
函数名称:build_socket_tables
函数原型:static void __init build_socket_tables(void)
返回类型:void
参数:无
1368 | gre等于uv_gre_table |
1371 | minsock等于_min_socket |
1372 | maxsock等于_max_socket |
1373 | minpnode等于_min_pnode |
1374 | maxpnode等于_max_pnode |
1377 | 如果非gre则 |
1379 | 打印信息("UV: No UVsystab socket table, ignoring\n") |
1380 | 返回 |
1382 | 打印错误信息("UV: Error: UVsystab address translations not available!\n") |
1383 | BUG() |
1388 | bytes等于num乘_socket_to_node[0]的长度 |
1389 | _socket_to_node等于开辟内存 |
1390 | _socket_to_pnode等于开辟内存 |
1393 | bytes等于nump乘_pnode_to_socket[0]的长度 |
1394 | _pnode_to_socket等于开辟内存 |
1395 | BUG_ON(!_socket_to_node || !_socket_to_pnode || !_pnode_to_socket) |
1397 | 以i小于num循环_socket_to_node[i]等于_socket_to_pnode[i]等于SOCK_EMPTY |
1400 | 以i小于nump循环_pnode_to_socket[i]等于SOCK_EMPTY |
1404 | 打印信息("UV: GAM Building socket/pnode conversion tables\n") |
1406 | 如果 Entry type: GAM_RANGE_TYPE_UNUSED, etc. 恒等于Unused address range 则继续下一循环 |
1408 | i等于 Socket ID, high bits of APIC ID 减minsock |
1410 | 如果_socket_to_pnode[i]不等于SOCK_EMPTY则继续下一循环 |
1414 | i等于 Index to MMR and GRU spaces 减minpnode |
1417 | 打印信息("UV: sid:%02x type:%d nasid:%04x pn:%02x pn2s:%2x\n", Socket ID, high bits of APIC ID , Entry type: GAM_RANGE_TYPE_UNUSED, etc. , HNasid , _socket_to_pnode[ Socket ID, high bits of APIC ID - minsock], _pnode_to_socket[ Index to MMR and GRU spaces - minpnode]) |
1424 | lnid等于NUMA_NO_NODE |
1426 | nid等于cpu_to_node(cpu) |
1433 | sockid等于apicid右移aka pnode_shift for UV1/2/3 位 |
1434 | _socket_to_node[sockid - minsock]等于nid |
1440 | bytes等于num_possible_nodes()乘The following values are used for the per node hub info struct [0]的长度 |
1444 | 以lnid小于num_possible_nodes()循环 |
1448 | 如果lnid恒等于_socket_to_node[sockid - minsock]则 |
1463 | 打印信息("UV: Checking socket->node/pnode for identity maps\n") |
1464 | 如果minsock恒等于0则 |
1465 | 以i小于num循环如果_socket_to_node[i]恒等于SOCK_EMPTY或i不等于_socket_to_node[i]则 |
1467 | 退出 |
1475 | 以i小于num循环如果_socket_to_pnode[i]不等于SOCK_EMPTY且_socket_to_pnode[i]不等于i加minpnode则 |
1478 | 退出 |
名称 | 描述 |
---|---|
uv_system_init_hub |
源代码转换工具 开放的插件接口 | X |
---|---|
支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |