Re: [PATCH v2] slab: Ignore internal flags in cache creation

From: David Rientjes
Date: Mon Oct 01 2012 - 23:17:36 EST


On Mon, 1 Oct 2012, Glauber Costa wrote:

> diff --git a/mm/slab_common.c b/mm/slab_common.c
> index 9c21725..f2682ee 100644
> --- a/mm/slab_common.c
> +++ b/mm/slab_common.c
> @@ -107,6 +107,15 @@ struct kmem_cache *kmem_cache_create(const char *name, size_t size, size_t align
> if (!kmem_cache_sanity_check(name, size) == 0)
> goto out_locked;
>
> + /*
> + * Some allocators will constraint the set of valid flags to a subset
> + * of all flags. We expect them to define CACHE_CREATE_MASK in this
> + * case, and we'll just provide them with a sanitized version of the
> + * passed flags.
> + */
> +#ifdef CACHE_CREATE_MASK
> + flags &= ~CACHE_CREATE_MASK;
> +#endif
>
> s = __kmem_cache_alias(name, size, align, flags, ctor);
> if (s)

flags &= CACHE_CREATE_MASK

After that's done:

Acked-by: David Rientjes <rientjes@xxxxxxxxxx>

Thanks for working through this.
--
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/