One fail was at:
CLEAR_CPU_LIST(cpu_bind_list_p);
The next two at:
OR_LISTS(cpu_bind_list_p, cpu_bind_list_p, node[node_id].cpu_list_p);
The common denominator here is cpu_bind_list_p but that is a static local:
static id_list_p cpu_bind_list_p;
The function is defined as:
#define OR_LISTS( or_list_p, list_1_p, list_2_p) CPU_OR_S( or_list_p->bytes, or_list_p->set_p, list_1_p->set_p, list_2_p->set_p)
That translates into
CPU_OR_S( cpu_bind_list_p->bytes, cpu_bind_list_p->set_p, cpu_bind_list_p->set_p, node[node_id].cpu_list_p->set_p)
CPU_OR_S is from sched.h and will make it to:
- operate on the dynamically allocated CPU set(s) whose size is setsize bytes. (due to _S)
- Store the union of the sets cpu_bind_list_p->set_p and node[node_id].cpu_list_p->set_p in destset
- explicitly says dest "may be one of the source sets"
One fail was at: LIST(cpu_ bind_list_ p); cpu_bind_ list_p, cpu_bind_list_p, node[node_ id].cpu_ list_p) ;
CLEAR_CPU_
The next two at:
OR_LISTS(
The common denominator here is cpu_bind_list_p but that is a static local:
static id_list_p cpu_bind_list_p;
The function is defined as:
#define OR_LISTS( or_list_p, list_1_p, list_2_p) CPU_OR_S( or_list_p->bytes, or_list_p->set_p, list_1_p->set_p, list_2_p->set_p)
That translates into list_p- >bytes, cpu_bind_ list_p- >set_p, cpu_bind_ list_p- >set_p, node[node_ id].cpu_ list_p- >set_p)
CPU_OR_S( cpu_bind_
CPU_OR_S is from sched.h and will make it to: list_p- >set_p and node[node_ id].cpu_ list_p- >set_p in destset
- operate on the dynamically allocated CPU set(s) whose size is setsize bytes. (due to _S)
- Store the union of the sets cpu_bind_
- explicitly says dest "may be one of the source sets"