Thread (30 messages) 30 messages, 5 authors, 2021-10-07

Re: [PATCH RESEND 1/3] topology: Represent clusters of CPUs within a die

From: Valentin Schneider <hidden>
Date: 2021-10-05 16:34:15
Also in: linux-acpi, lkml

On 24/09/21 20:51, Barry Song wrote:
quoted hunk ↗ jump to hunk
 void update_siblings_masks(unsigned int cpuid)
 {
      struct cpu_topology *cpu_topo, *cpuid_topo = &cpu_topology[cpuid];
@@ -617,6 +622,11 @@ void update_siblings_masks(unsigned int cpuid)
              if (cpuid_topo->package_id != cpu_topo->package_id)
                      continue;

+		if (cpuid_topo->cluster_id == cpu_topo->cluster_id) {
+			cpumask_set_cpu(cpu, &cpuid_topo->cluster_sibling);
+			cpumask_set_cpu(cpuid, &cpu_topo->cluster_sibling);
+		}
+
Hm so without cluster information (e.g. DT system), we have
->cluster_id=-1, we'll essentially copy the package mask into the cluster
mask.

The exposed cluster mask is still <= package mask which is sensible. Are we
fine with that, or do we need/want the mask to be empty in the -1 case? I'm
guessing userspace tools should check for either id!=-1 or if the exclusive
disjucntion of cluster vs package masks is non-empty.

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help