> +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/

Reply via email to