I think so. So we'd end up with:
- DEFINE_PER_CPU and kmalloc_percpu() work in core kernel, and use the 32k
pool.
- DEFINE_PER_CPU in modules uses the 32k pool as well (core kernel does the
allocation).
- kmalloc_per_cpu() is unavailble to modules (it ain't exported).
AFAICT the only thing which will break is sctp, which needs a trivial
conversion to DEFINE_PER_CPU.
Your grep is faulty, we're using kmalloc_percpu() in ipv6 for per-cpu
and per-device icmp stats.
You solution doesn't work in that case. Also ipv4 will have the same
problems if we make that modular at some point.
I also don't see how this fits in for your ext2 fuzzy counter stuff.
It isn't a "module" for most people, I can't even remember if I've
ever built ext2 non-statically. :-) It almost appears as if you
are suggesting kmalloc_percpu() is not usable at all.
So there we have it, there are a total of 3 users of kmalloc_percpu()
(ipv4/ipv6/diskstats) so let's decide if it's going to continue to
live longer or not before there are any more. :-)
-
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/