Re: [patch] RCU: introduce rcu_soon_pending() interface

From: Paul E. McKenney
Date: Tue Apr 25 2006 - 07:23:24 EST


On Mon, Apr 24, 2006 at 04:09:43PM -0700, Andrew Morton wrote:
> Heiko Carstens <heiko.carstens@xxxxxxxxxx> wrote:
> >
> > @@ -485,6 +485,14 @@ int rcu_pending(int cpu)
> > __rcu_pending(&rcu_bh_ctrlblk, &per_cpu(rcu_bh_data, cpu));
> > }
> >
> > +int rcu_soon_pending(int cpu)
> > +{
> > + struct rcu_data *rdp = &per_cpu(rcu_data, cpu);
> > + struct rcu_data *rdp_bh = &per_cpu(rcu_bh_data, cpu);
> > +
> > + return (!!rdp->curlist || !!rdp_bh->curlist);
> > +}
>
> This patch sets my nerves a-jangling.
>
> What are the units of soonness? It's awfully waffly. Can we specify this
> more tightly?
>
> Neither rcu_pending() nor rcu_soon_pending() are commented or documented.
> Pity the poor user trying to work out what they do, and how they differ.
> They're global symbols and they form part of the RCU API - they should be
> kernel docified, please.

Please note that the rcu_pending() interface was never intended for
external use -- it is purely internal to the RCU infrastructure.
If there is a new external use for rcu_pending(), then it would need to
be documented. But I would rather this one stay internal -- different
RCU implementations might need different things.

So, what are we trying to do here?

> There's probably a reason why neither of these symbols are exported to
> modules. Once they're actually documented I mught be able to work out what
> that reason is ;)

The reason for rcu_pending() was that it is a private interface.

Thanx, Paul
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/