MINOR: cpuset: add cpu_map_configured() to know if a cpu-map was found

Since we'll soon want to adjust the "thread-groups" degree of freedom
based on the presence of cpu-map, we first need to be able to detect
if cpu-map was used. This function scans all cpu-map sets to detect if
any is present, and returns true accordingly.
This commit is contained in:
Willy Tarreau 2023-07-18 17:14:10 +02:00
parent f034139bc0
commit 7134417613
2 changed files with 22 additions and 0 deletions

View File

@ -41,4 +41,9 @@ void ha_cpuset_assign(struct hap_cpuset *dst, struct hap_cpuset *src);
*/
int ha_cpuset_size(void);
/* Returns true if at least one cpu-map directive was configured, otherwise
* false.
*/
int cpu_map_configured(void);
#endif /* _HAPROXY_CPUSET_H */

View File

@ -118,3 +118,20 @@ int ha_cpuset_size()
#endif
}
/* Returns true if at least one cpu-map directive was configured, otherwise
* false.
*/
int cpu_map_configured(void)
{
int grp, thr;
for (grp = 0; grp < MAX_TGROUPS; grp++) {
if (ha_cpuset_count(&cpu_map[grp].proc))
return 1;
for (thr = 0; thr < MAX_THREADS_PER_GROUP; thr++)
if (ha_cpuset_count(&cpu_map[grp].thread[thr]))
return 1;
}
return 0;
}