No cache should ever pass that as a creation flag, since this bit is used to mark an internal decision of the slab about object placement. We can just ignore this bit if it happens to be passed (such as when duplicating a cache in the kmem memcg patches)
Signed-off-by: Glauber Costa <[email protected]> CC: Christoph Lameter <[email protected]> CC: Pekka Enberg <[email protected]> CC: David Rientjes <[email protected]> --- mm/slab.c | 1 + 1 file changed, 1 insertion(+) diff --git a/mm/slab.c b/mm/slab.c index a7ed60f..ccf496c 100644 --- a/mm/slab.c +++ b/mm/slab.c @@ -2373,6 +2373,7 @@ __kmem_cache_create (struct kmem_cache *cachep, unsigned long flags) int err; size_t size = cachep->size; + flags &= ~CFLGS_OFF_SLAB; #if DEBUG #if FORCED_DEBUG /* -- 1.7.11.4 _______________________________________________ Devel mailing list [email protected] https://openvz.org/mailman/listinfo/devel
