Re: [PATCH 06/12] sunrpc/cache: avoid variable over-loading in cache_defer_req

Neil Brown
2009-08-06T04:35:19Z

On Tuesday August 4, bfields@fieldses.org wrote:
> On Tue, Aug 04, 2009 at 03:22:39PM +1000, NeilBrown wrote:
> > In cache_defer_req, 'dreq' is used for two significantly different
> > values that happen to be of the same type.
> >
> > This is both confusing, and make it hard to extend the range of one of
> > the values as we will in the next patch.
> > So introduce 'discard' to take one of the values.
> >
> > Signed-off-by: NeilBrown <neilb@suse.de>
...
> > @@ -586,20 +586,20 @@ static int cache_defer_req(struct cache_req *req, struct cache_head *item)
> > list_add(&dreq->hash, &cache_defer_hash[hash]);
> >
> > /* it is in, now maybe clean up */
> > - dreq = NULL;
> > + discard = NULL;
> > if (++cache_defer_cnt > DFR_MAX) {
> > - dreq = list_entry(cache_defer_list.prev,
> > - struct cache_deferred_req, recent);
> > + discard = list_entry(cache_defer_list.prev,
> > + struct cache_deferred_req, recent);
> > list_del_init(&dreq->recent);
> > list_del_init(&dreq->hash);
>
> Shouldn't these two "dreq"'s be "discard"'s as well?

Yes, definitely. Thanks for catching that.

NeilBrown