Re: [PATCH] Slab cache name fixes / reiserfs boot bug fix.

From: Linus Torvalds (torvalds@transmeta.com)
Date: Wed Jan 30 2002 - 18:52:45 EST


On Thu, 31 Jan 2002, Andi Kleen wrote:
>
> Patch against 2.5.3. Please apply.

Plase make some of the uglier stuff a bit cleaner.

For example:

> static const int bvec_pool_sizes[BIOVEC_NR_POOLS] = { 1, 4, 16, 64, 128, 256 };
> +static char bvec_pool_names[BIOVEC_NR_POOLS][16];

together with a sprintf for constant strings just looks uglee.

Why not just do

        #define VEC(x) { x, "biovec-" #x }
        static const struct {
                int size, char *name;
        } bvec_pools[BIOVEC_NR_POOLS] = {
                VEC(1), VEC(4), VEC(16),
                VEC(64), VEC(128), VEC(256)
        };

and then register them with a nice

        for (i = 0; i < BIOVEC_NR_POOLS; i++) {
                bp->slab = kmem_cache_create(
                        bvec_pools[i].name,
                        bvec_pools[i].size,
                ...

which is just simpler and doesn't have issues like fixed 16-byte arrays
etc.

                Linus

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



This archive was generated by hypermail 2b29 : Thu Jan 31 2002 - 21:01:27 EST