Re: [PATCH] v4 RCU: the bloatwatch edition

Paul E. McKenney
2009-05-06T20:20:45Z

On Wed, May 06, 2009 at 12:19:08PM -0700, Andrew Morton wrote:
> On Wed, 6 May 2009 12:02:16 -0700
> "Paul E. McKenney" <paulmck@linux.vnet.ibm.com> wrote:
>
> > > > i'm wondering what Andrew thinks - he had objections, right?
> > > >
> > >
> > > More like "concerns". It's unobvious to me that the modest .text
> > > savings justify the costs of an additional RCU implementation. Where
> > > those costs include
> > >
> > > - additional maintenance work and
> > >
> > > - the reduced code reliability which comes from fragmenting the
> > > tester base. This will mostly affect users of the less popular RCU
> > > implementations.
> > >
> > > But hey, maybe I'm wrong. And maybe I'm right, but we'll merge it anyway ;)
> >
> > ;-)
> >
> > How about if acceptance of Tiny RCU happens at the same time as Classic
> > RCU is dropped? That would be a large net decrease in code size and
> > complexity.
>
> It's a bit artificial to link the two actions. Removing something:
> good. Adding something: bad. good+bad == less good ;)

Ah, but from a memory-footprint perspective, removing Classic RCU is
about 1.5K bad, given the larger memory footprint of Hierarchical RCU.
So, in this case, removing Classic RCU: good complexity, bad memory
footprint. Adding Tiny RCU: slightly bad complexity, good memory
footprint.

So, replacing Classic RCU with Tiny RCU improves (reduces) both the
complexity and the memory footprint.

Thanx, Paul