> +void set_base_cpu(void) > +{ > + int cpu; > + > + for (cpu = 0; cpu <= topo.max_cpu_num; ++cpu) { > + if (cpu_is_not_present(cpu)) > + continue; > + base_cpu = cpu; > + break; > + } > + > + if (base_cpu == -1) > + err(-ENODEV, "No valid cpus found"); > +}
cpu0 hard-coding is indeed arbitrary. However, so is this proposed replacement, base_cpu. Either may not match where turbostat is currently running, and thus could provoke unnecessary cross-calls to get there. I think it would be better to ask getcpu(2) where we are already running, and simply use that one. I think we can call it once and cache it, as you proposed, rather than multiple system calls. thanks, -Len ps. patches to turbostat should go to linux...@vger.kernel.org -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/