Lines Matching full:cluster

56 	/* Collapse cpus in a cluster so a single IPI per cluster is sent */  in __x2apic_send_IPI_mask()
68 /* Remove cluster CPUs from tmpmask */ in __x2apic_send_IPI_mask()
105 static void prefill_clustermask(struct cpumask *cmsk, unsigned int cpu, u32 cluster) in prefill_clustermask() argument
113 if (apicid == BAD_APICID || cpu_i == cpu || apic_cluster(apicid) != cluster) in prefill_clustermask()
124 static int alloc_clustermask(unsigned int cpu, u32 cluster, int node) in alloc_clustermask() argument
130 * At boot time, the CPU present mask is stable. The cluster mask is in alloc_clustermask()
131 * allocated for the first CPU in the cluster and propagated to all in alloc_clustermask()
132 * present siblings in the cluster. If the cluster mask is already set in alloc_clustermask()
144 * any more) to find any existing cluster mask. in alloc_clustermask()
149 if (apicid != BAD_APICID && apic_cluster(apicid) == cluster) { in alloc_clustermask()
152 * If the cluster is already initialized, just store in alloc_clustermask()
162 * No CPU in the cluster has ever been initialized, so fall through to in alloc_clustermask()
163 * the boot time code which will also populate the cluster mask for any in alloc_clustermask()
164 * other CPU in the cluster which is (now) present. in alloc_clustermask()
171 prefill_clustermask(cmsk, cpu, cluster); in alloc_clustermask()
179 u32 cluster = apic_cluster(phys_apicid); in x2apic_prepare_cpu() local
180 u32 logical_apicid = (cluster << 16) | (1 << (phys_apicid & 0xf)); in x2apic_prepare_cpu()
185 if (alloc_clustermask(cpu, cluster, node) < 0) in x2apic_prepare_cpu()
229 .name = "cluster x2apic",