Hi Rusty,
Your per-cpu area patch looks like a good solution with a very simple
implementation. BTW, some OSes map the per-cpu data areas
to the same virtual address for each CPU avoiding the per-cpu data
array lookup. I am not sure if this really saves much, we are ourselves
trying to understand the overhead of such array lookup with
statctrs.
IIUC, we can declare statically allocated per-cpu data using
this allocator (kstat, apic_timer_irqs etc.). For things that
are a part of dynamically allocated structure, we would still
need to use a dynamic per-cpu allocator, right ?
Another interesting question is how we can load different
per-cpu sections to different areas in memory. I would suspect
that for NUMA, we would want to locate the per-cpu sections closest
to the corresponding CPUs.
I couldn't find the /proc patch. Any pointers ?
Thanks
Dipankar
-- Dipankar Sarma <dipankar@in.ibm.com> http://lse.sourceforge.net Linux Technology Center, IBM Software Lab, Bangalore, India. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/