|
@@ -233,7 +233,14 @@ out_unlock:
|
|
mutex_unlock(&slab_mutex);
|
|
mutex_unlock(&slab_mutex);
|
|
put_online_cpus();
|
|
put_online_cpus();
|
|
|
|
|
|
- if (err) {
|
|
|
|
|
|
+ /*
|
|
|
|
+ * There is no point in flooding logs with warnings or especially
|
|
|
|
+ * crashing the system if we fail to create a cache for a memcg. In
|
|
|
|
+ * this case we will be accounting the memcg allocation to the root
|
|
|
|
+ * cgroup until we succeed to create its own cache, but it isn't that
|
|
|
|
+ * critical.
|
|
|
|
+ */
|
|
|
|
+ if (err && !memcg) {
|
|
if (flags & SLAB_PANIC)
|
|
if (flags & SLAB_PANIC)
|
|
panic("kmem_cache_create: Failed to create slab '%s'. Error %d\n",
|
|
panic("kmem_cache_create: Failed to create slab '%s'. Error %d\n",
|
|
name, err);
|
|
name, err);
|