Vlastimil Babka
af3b5f8764
mm, slab: rename kmalloc-node cache to kmalloc-<size>
...
SLAB as part of its bootstrap pre-creates one kmalloc cache that can fit
the kmem_cache_node management structure, and puts it into the generic
kmalloc cache array (e.g. for 128b objects). The name of this cache is
"kmalloc-node", which is confusing for readers of /proc/slabinfo as the
cache is used for generic allocations (and not just the kmem_cache_node
struct) and it appears as the kmalloc-128 cache is missing.
An easy solution is to use the kmalloc-<size> name when pre-creating the
cache, which we can get from the kmalloc_info array.
Example /proc/slabinfo before the patch:
...
kmalloc-256 1647 1984 256 16 1 : tunables 120 60 8 : slabdata 124 124 828
kmalloc-192 1974 1974 192 21 1 : tunables 120 60 8 : slabdata 94 94 133
kmalloc-96 1332 1344 128 32 1 : tunables 120 60 8 : slabdata 42 42 219
kmalloc-64 2505 5952 64 64 1 : tunables 120 60 8 : slabdata 93 93 715
kmalloc-32 4278 4464 32 124 1 : tunables 120 60 8 : slabdata 36 36 346
kmalloc-node 1352 1376 128 32 1 : tunables 120 60 8 : slabdata 43 43 53
kmem_cache 132 147 192 21 1 : tunables 120 60 8 : slabdata 7 7 0
After the patch:
...
kmalloc-256 1672 2160 256 16 1 : tunables 120 60 8 : slabdata 135 135 807
kmalloc-192 1992 2016 192 21 1 : tunables 120 60 8 : slabdata 96 96 203
kmalloc-96 1159 1184 128 32 1 : tunables 120 60 8 : slabdata 37 37 116
kmalloc-64 2561 4864 64 64 1 : tunables 120 60 8 : slabdata 76 76 785
kmalloc-32 4253 4340 32 124 1 : tunables 120 60 8 : slabdata 35 35 270
kmalloc-128 1256 1280 128 32 1 : tunables 120 60 8 : slabdata 40 40 39
kmem_cache 125 147 192 21 1 : tunables 120 60 8 : slabdata 7 7 0
[vbabka@suse.cz: export the whole kmalloc_info structure instead of just a name accessor, per Christoph Lameter]
Link: http://lkml.kernel.org/r/54e80303-b814-4232-66d4-95b34d3eb9d0@suse.cz
Link: http://lkml.kernel.org/r/20170203181008.24898-1-vbabka@suse.cz
Signed-off-by: Vlastimil Babka <vbabka@suse.cz>
Reviewed-by: Matthew Wilcox <mawilcox@microsoft.com>
Cc: Joonsoo Kim <iamjoonsoo.kim@lge.com>
Cc: David Rientjes <rientjes@google.com>
Cc: Pekka Enberg <penberg@kernel.org>
Cc: Christoph Lameter <cl@linux.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2017-02-22 16:41:27 -08:00
..
2017-02-22 10:46:44 -08:00
2017-02-08 13:52:01 -07:00
2016-07-26 16:19:19 -07:00
2016-10-11 15:06:33 -07:00
2016-01-27 09:09:57 -05:00
2015-07-17 16:39:54 -07:00
2017-01-11 13:56:49 +00:00
2015-08-14 15:56:32 -07:00
2016-12-14 16:04:07 -08:00
2016-03-17 15:09:34 -07:00
2016-12-12 18:55:08 -08:00
2016-03-17 15:09:34 -07:00
2015-11-05 19:34:48 -08:00
2016-12-20 09:48:46 -08:00
2016-03-15 16:55:16 -07:00
2017-02-03 14:13:19 -08:00
2016-10-19 08:11:24 -07:00
2016-07-26 16:19:19 -07:00
2016-12-14 16:04:09 -08:00
2016-05-19 19:12:14 -07:00
2017-01-24 16:26:14 -08:00
2016-05-20 17:58:30 -07:00
2017-01-10 18:31:55 -08:00
2015-09-10 13:29:01 -07:00
2016-11-22 11:49:48 -06:00
2016-12-25 11:54:48 -08:00
2015-02-10 14:30:31 -08:00
2016-12-12 18:55:08 -08:00
2016-09-13 02:35:27 +02:00
2017-01-10 18:31:55 -08:00
2016-03-17 15:09:34 -07:00
2016-03-17 15:09:34 -07:00
2016-12-12 18:55:07 -08:00
2016-10-07 18:46:29 -07:00
2016-10-27 18:43:42 -07:00
2016-05-22 17:21:27 -07:00
2016-12-12 18:55:07 -08:00
2016-10-12 10:23:41 -07:00
2016-10-11 15:06:33 -07:00
2017-01-24 16:26:14 -08:00
2017-02-03 14:13:19 -08:00
2016-12-25 11:54:48 -08:00
2017-02-22 16:41:26 -08:00
2017-01-24 16:26:14 -08:00
2016-07-28 16:07:41 -07:00
2015-09-08 15:35:28 -07:00
2016-12-25 11:54:48 -08:00
2016-12-24 11:46:01 -08:00
2016-11-30 16:32:52 -08:00
2016-03-17 15:09:34 -07:00
2016-12-24 11:46:01 -08:00
2016-04-28 11:44:19 +02:00
2016-03-17 15:09:34 -07:00
2016-05-19 19:12:14 -07:00
2016-12-24 11:46:01 -08:00
2016-11-29 08:20:24 -08:00
2015-11-05 19:34:48 -08:00
2016-10-11 15:06:33 -07:00
2016-12-24 11:46:01 -08:00
2016-10-07 18:46:29 -07:00
2017-01-24 16:26:14 -08:00
2015-11-05 19:34:48 -08:00
2016-10-07 18:46:27 -07:00
2016-07-28 16:07:41 -07:00
2016-11-02 10:24:03 -06:00
2016-10-07 18:46:29 -07:00
2016-10-07 18:46:27 -07:00
2016-06-03 15:06:22 -07:00
2017-02-02 08:20:48 -07:00
2016-01-15 17:56:32 -08:00
2016-03-17 15:09:34 -07:00
2016-12-13 12:34:47 -08:00
2016-03-17 15:09:34 -07:00
2016-12-14 16:04:09 -08:00
2016-03-17 15:09:34 -07:00
2016-12-12 18:55:08 -08:00
2016-12-12 18:55:08 -08:00
2017-02-03 14:13:19 -08:00
2017-02-22 16:41:27 -08:00
2017-02-22 16:41:27 -08:00
2017-02-22 16:41:27 -08:00
2016-12-12 18:55:06 -08:00
2017-02-22 16:41:27 -08:00
2016-08-02 17:31:41 -04:00
2016-08-02 17:31:41 -04:00
2016-03-17 15:09:34 -07:00
2016-10-07 18:46:28 -07:00
2016-12-25 11:54:48 -08:00
2017-01-10 18:31:55 -08:00
2016-12-26 20:29:24 -08:00
2017-01-11 13:56:50 +00:00
2016-04-04 10:41:08 -07:00
2016-12-24 11:46:01 -08:00
2016-10-07 18:46:27 -07:00
2016-12-24 11:46:01 -08:00
2016-02-03 08:28:43 -08:00
2017-01-10 18:31:55 -08:00
2016-12-02 00:52:35 +01:00
2017-01-07 18:22:40 -08:00
2016-06-03 16:02:55 -07:00
2016-01-15 11:40:52 -08:00
2015-11-06 17:50:42 -08:00
2016-12-02 00:52:36 +01:00
2017-02-03 14:13:19 -08:00