Re: [PATCH 03/10] Use percpu stats

Eric Dumazet
2010-09-01T20:38:23Z

Le mercredi 01 septembre 2010 A 15:05 -0500, Christoph Lameter a A(C)crit :

> The problem only exists on 32 bit platforms using 64 bit counters. If you
> would provide this functionality for the fallback case of 64 bit counters
> (here x86) in 32 bit arch code then you could use the this_cpu_*
> operations in all context without your special code being replicated in
> ohter places.
>
> The additional advantage would be that for the 64bit case you would have
> much faster and more compact code.
>
>

My implementation is portable and use existing infrastructure, at the
time it was coded. BTW, its fast on 64bit too. As fast as previous
implementation. No extra code added. Please double check.

If you believe you can do better, please do so.

Of course, we added 64bit network stats to all 32bit arches only because
cost was acceptable. (I say all 32bit arches, because you seem to think
only x86 was the target)

Using this_cpu_{add|res}() fallback using atomic ops or spinlocks would
be slower than actual implemenation (smp_wmb() (nops on x86) and
increments).