diff options
author | Joonsoo Kim <[email protected]> | 2016-03-17 14:17:53 -0700 |
---|---|---|
committer | Linus Torvalds <[email protected]> | 2016-03-17 15:09:34 -0700 |
commit | 922d566cdcb7166c729ff67bb15ff5f93a3774b6 (patch) | |
tree | 88e23a5a52aa8286fe904725300c0ff0ae4e0f70 | |
parent | f48d97f340cbb0c323fa7a7b36bd76a108a9f49f (diff) |
mm/slub: query dynamic DEBUG_PAGEALLOC setting
We can disable debug_pagealloc processing even if the code is compiled
with CONFIG_DEBUG_PAGEALLOC. This patch changes the code to query
whether it is enabled or not in runtime.
[[email protected]: clean up code, per Christian]
Signed-off-by: Joonsoo Kim <[email protected]>
Reviewed-by: Christian Borntraeger <[email protected]>
Cc: Benjamin Herrenschmidt <[email protected]>
Cc: Chris Metcalf <[email protected]>
Cc: Christoph Lameter <[email protected]>
Cc: David Rientjes <[email protected]>
Cc: Pekka Enberg <[email protected]>
Cc: Takashi Iwai <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
-rw-r--r-- | mm/slub.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/mm/slub.c b/mm/slub.c index 712d53474082..2f2f04d39104 100644 --- a/mm/slub.c +++ b/mm/slub.c @@ -254,11 +254,10 @@ static inline void *get_freepointer_safe(struct kmem_cache *s, void *object) { void *p; -#ifdef CONFIG_DEBUG_PAGEALLOC + if (!debug_pagealloc_enabled()) + return get_freepointer(s, object); + probe_kernel_read(&p, (void **)(object + s->offset), sizeof(p)); -#else - p = get_freepointer(s, object); -#endif return p; } |