Re: [PATCH -mm 1/6] slab: introduce __kfree_rcu

From: Christoph Lameter
Date: Mon Mar 23 2009 - 09:37:44 EST


On Mon, 23 Mar 2009, Pekka Enberg wrote:

> > +static inline void *portion_to_obj(void *portion)
> > +{
> > + struct page *page = virt_to_head_page(portion);
> > + struct slab *slab = page_get_slab(page);
> > + struct kmem_cache *cache = page_get_cache(page);
> > + unsigned int offset = portion - slab->s_mem;
> > + unsigned int index = offset / cache->buffer_size;
> > +
> > + return index_to_obj(cache, slab, index);
> > +}
>
> A minor nit: I think this would be more readable if you separated
> variable declarations from the initializations. Also, you can probably
> drop the inline from the function declaration and let GCC decide what to
> do.

Thats debatable. I find the setting up a number of variables
that are all dependend in the above manner very readable. They are usually
repetitive. Multiple functions use similar initializations.

--
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/