* [PATCH 0/5] follow-up "Optimize CONFIG_DEBUG_PAGEALLOC"
@ 2016-02-04 5:56 Joonsoo Kim
2016-02-04 5:56 ` [PATCH 1/5] mm/vmalloc: query dynamic DEBUG_PAGEALLOC setting Joonsoo Kim
` (4 more replies)
0 siblings, 5 replies; 15+ messages in thread
From: Joonsoo Kim @ 2016-02-04 5:56 UTC (permalink / raw)
To: Andrew Morton
Cc: David Rientjes, Christian Borntraeger, linux-kernel, linux-mm,
Benjamin Herrenschmidt, Takashi Iwai, Chris Metcalf,
Christoph Lameter, linux-api, Joonsoo Kim
As CONFIG_DEBUG_PAGEALLOC can be enabled/disabled via kernel
parameters we can optimize some cases by checking the enablement
state.
This is follow-up work for Christian's Optimize CONFIG_DEBUG_PAGEALLOC.
https://lkml.org/lkml/2016/1/27/194
I can't test patches for sound, power and tile,
so please review them, maintainers. :)
Remaining work is to make sparc to be aware of this but it looks
not easy for me so I skip that in this series.
It would be the best that these paches are routed through Andrew's tree,
because there is a dependency to MM.
Thanks.
Joonsoo Kim (5):
mm/vmalloc: query dynamic DEBUG_PAGEALLOC setting
mm/slub: query dynamic DEBUG_PAGEALLOC setting
sound: query dynamic DEBUG_PAGEALLOC setting
powerpc: query dynamic DEBUG_PAGEALLOC setting
tile: query dynamic DEBUG_PAGEALLOC setting
arch/powerpc/kernel/traps.c | 5 ++---
arch/powerpc/mm/hash_utils_64.c | 40 ++++++++++++++++++++--------------------
arch/powerpc/mm/init_32.c | 8 ++++----
arch/tile/mm/init.c | 11 +++++++----
mm/slub.c | 11 ++++++-----
mm/vmalloc.c | 8 ++++----
sound/drivers/pcsp/pcsp.c | 9 +++++----
7 files changed, 48 insertions(+), 44 deletions(-)
--
1.9.1
^ permalink raw reply [flat|nested] 15+ messages in thread
* [PATCH 1/5] mm/vmalloc: query dynamic DEBUG_PAGEALLOC setting
2016-02-04 5:56 [PATCH 0/5] follow-up "Optimize CONFIG_DEBUG_PAGEALLOC" Joonsoo Kim
@ 2016-02-04 5:56 ` Joonsoo Kim
2016-02-04 8:32 ` Christian Borntraeger
2016-02-04 22:18 ` David Rientjes
2016-02-04 5:56 ` [PATCH 2/5] mm/slub: " Joonsoo Kim
` (3 subsequent siblings)
4 siblings, 2 replies; 15+ messages in thread
From: Joonsoo Kim @ 2016-02-04 5:56 UTC (permalink / raw)
To: Andrew Morton
Cc: David Rientjes, Christian Borntraeger, linux-kernel, linux-mm,
Benjamin Herrenschmidt, Takashi Iwai, Chris Metcalf,
Christoph Lameter, linux-api, Joonsoo Kim
We can disable debug_pagealloc processing even if the code is complied
with CONFIG_DEBUG_PAGEALLOC. This patch changes the code to query
whether it is enabled or not in runtime.
Signed-off-by: Joonsoo Kim <iamjoonsoo.kim@lge.com>
---
mm/vmalloc.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/mm/vmalloc.c b/mm/vmalloc.c
index fb42a5b..e0e51bd 100644
--- a/mm/vmalloc.c
+++ b/mm/vmalloc.c
@@ -543,10 +543,10 @@ static void vmap_debug_free_range(unsigned long start, unsigned long end)
* debugging doesn't do a broadcast TLB flush so it is a lot
* faster).
*/
-#ifdef CONFIG_DEBUG_PAGEALLOC
- vunmap_page_range(start, end);
- flush_tlb_kernel_range(start, end);
-#endif
+ if (debug_pagealloc_enabled()) {
+ vunmap_page_range(start, end);
+ flush_tlb_kernel_range(start, end);
+ }
}
/*
--
1.9.1
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [PATCH 2/5] mm/slub: query dynamic DEBUG_PAGEALLOC setting
2016-02-04 5:56 [PATCH 0/5] follow-up "Optimize CONFIG_DEBUG_PAGEALLOC" Joonsoo Kim
2016-02-04 5:56 ` [PATCH 1/5] mm/vmalloc: query dynamic DEBUG_PAGEALLOC setting Joonsoo Kim
@ 2016-02-04 5:56 ` Joonsoo Kim
2016-02-04 8:31 ` Christian Borntraeger
2016-02-04 5:56 ` [PATCH 3/5] sound: " Joonsoo Kim
` (2 subsequent siblings)
4 siblings, 1 reply; 15+ messages in thread
From: Joonsoo Kim @ 2016-02-04 5:56 UTC (permalink / raw)
To: Andrew Morton
Cc: David Rientjes, Christian Borntraeger, linux-kernel, linux-mm,
Benjamin Herrenschmidt, Takashi Iwai, Chris Metcalf,
Christoph Lameter, linux-api, Joonsoo Kim
We can disable debug_pagealloc processing even if the code is complied
with CONFIG_DEBUG_PAGEALLOC. This patch changes the code to query
whether it is enabled or not in runtime.
Signed-off-by: Joonsoo Kim <iamjoonsoo.kim@lge.com>
---
mm/slub.c | 11 ++++++-----
1 file changed, 6 insertions(+), 5 deletions(-)
diff --git a/mm/slub.c b/mm/slub.c
index 7d4da68..7b5a965 100644
--- a/mm/slub.c
+++ b/mm/slub.c
@@ -256,11 +256,12 @@ static inline void *get_freepointer_safe(struct kmem_cache *s, void *object)
{
void *p;
-#ifdef CONFIG_DEBUG_PAGEALLOC
- probe_kernel_read(&p, (void **)(object + s->offset), sizeof(p));
-#else
- p = get_freepointer(s, object);
-#endif
+ if (debug_pagealloc_enabled()) {
+ probe_kernel_read(&p,
+ (void **)(object + s->offset), sizeof(p));
+ } else
+ p = get_freepointer(s, object);
+
return p;
}
--
1.9.1
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [PATCH 3/5] sound: query dynamic DEBUG_PAGEALLOC setting
2016-02-04 5:56 [PATCH 0/5] follow-up "Optimize CONFIG_DEBUG_PAGEALLOC" Joonsoo Kim
2016-02-04 5:56 ` [PATCH 1/5] mm/vmalloc: query dynamic DEBUG_PAGEALLOC setting Joonsoo Kim
2016-02-04 5:56 ` [PATCH 2/5] mm/slub: " Joonsoo Kim
@ 2016-02-04 5:56 ` Joonsoo Kim
2016-02-04 22:19 ` David Rientjes
2016-02-05 9:26 ` Takashi Iwai
2016-02-04 5:56 ` [PATCH 4/5] powerpc: " Joonsoo Kim
2016-02-04 5:56 ` [PATCH 5/5] tile: " Joonsoo Kim
4 siblings, 2 replies; 15+ messages in thread
From: Joonsoo Kim @ 2016-02-04 5:56 UTC (permalink / raw)
To: Andrew Morton
Cc: David Rientjes, Christian Borntraeger, linux-kernel, linux-mm,
Benjamin Herrenschmidt, Takashi Iwai, Chris Metcalf,
Christoph Lameter, linux-api, Joonsoo Kim
We can disable debug_pagealloc processing even if the code is complied
with CONFIG_DEBUG_PAGEALLOC. This patch changes the code to query
whether it is enabled or not in runtime.
Signed-off-by: Joonsoo Kim <iamjoonsoo.kim@lge.com>
---
sound/drivers/pcsp/pcsp.c | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/sound/drivers/pcsp/pcsp.c b/sound/drivers/pcsp/pcsp.c
index 27e25bb..72e2d00 100644
--- a/sound/drivers/pcsp/pcsp.c
+++ b/sound/drivers/pcsp/pcsp.c
@@ -14,6 +14,7 @@
#include <linux/input.h>
#include <linux/delay.h>
#include <linux/bitops.h>
+#include <linux/mm.h>
#include "pcsp_input.h"
#include "pcsp.h"
@@ -148,11 +149,11 @@ static int alsa_card_pcsp_init(struct device *dev)
return err;
}
-#ifdef CONFIG_DEBUG_PAGEALLOC
/* Well, CONFIG_DEBUG_PAGEALLOC makes the sound horrible. Lets alert */
- printk(KERN_WARNING "PCSP: CONFIG_DEBUG_PAGEALLOC is enabled, "
- "which may make the sound noisy.\n");
-#endif
+ if (debug_pagealloc_enabled()) {
+ printk(KERN_WARNING "PCSP: CONFIG_DEBUG_PAGEALLOC is enabled, "
+ "which may make the sound noisy.\n");
+ }
return 0;
}
--
1.9.1
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [PATCH 4/5] powerpc: query dynamic DEBUG_PAGEALLOC setting
2016-02-04 5:56 [PATCH 0/5] follow-up "Optimize CONFIG_DEBUG_PAGEALLOC" Joonsoo Kim
` (2 preceding siblings ...)
2016-02-04 5:56 ` [PATCH 3/5] sound: " Joonsoo Kim
@ 2016-02-04 5:56 ` Joonsoo Kim
2016-02-04 22:22 ` David Rientjes
2016-02-04 5:56 ` [PATCH 5/5] tile: " Joonsoo Kim
4 siblings, 1 reply; 15+ messages in thread
From: Joonsoo Kim @ 2016-02-04 5:56 UTC (permalink / raw)
To: Andrew Morton
Cc: David Rientjes, Christian Borntraeger, linux-kernel, linux-mm,
Benjamin Herrenschmidt, Takashi Iwai, Chris Metcalf,
Christoph Lameter, linux-api, Joonsoo Kim
We can disable debug_pagealloc processing even if the code is complied
with CONFIG_DEBUG_PAGEALLOC. This patch changes the code to query
whether it is enabled or not in runtime.
Signed-off-by: Joonsoo Kim <iamjoonsoo.kim@lge.com>
---
arch/powerpc/kernel/traps.c | 5 ++---
arch/powerpc/mm/hash_utils_64.c | 40 ++++++++++++++++++++--------------------
arch/powerpc/mm/init_32.c | 8 ++++----
3 files changed, 26 insertions(+), 27 deletions(-)
diff --git a/arch/powerpc/kernel/traps.c b/arch/powerpc/kernel/traps.c
index b6becc7..33c47fc 100644
--- a/arch/powerpc/kernel/traps.c
+++ b/arch/powerpc/kernel/traps.c
@@ -203,9 +203,8 @@ static int __kprobes __die(const char *str, struct pt_regs *regs, long err)
#ifdef CONFIG_SMP
printk("SMP NR_CPUS=%d ", NR_CPUS);
#endif
-#ifdef CONFIG_DEBUG_PAGEALLOC
- printk("DEBUG_PAGEALLOC ");
-#endif
+ if (debug_pagealloc_enabled())
+ printk("DEBUG_PAGEALLOC ");
#ifdef CONFIG_NUMA
printk("NUMA ");
#endif
diff --git a/arch/powerpc/mm/hash_utils_64.c b/arch/powerpc/mm/hash_utils_64.c
index ba59d59..03a622b 100644
--- a/arch/powerpc/mm/hash_utils_64.c
+++ b/arch/powerpc/mm/hash_utils_64.c
@@ -255,10 +255,10 @@ int htab_bolt_mapping(unsigned long vstart, unsigned long vend,
if (ret < 0)
break;
-#ifdef CONFIG_DEBUG_PAGEALLOC
- if ((paddr >> PAGE_SHIFT) < linear_map_hash_count)
+
+ if (debug_pagealloc_enabled() &&
+ (paddr >> PAGE_SHIFT) < linear_map_hash_count)
linear_map_hash_slots[paddr >> PAGE_SHIFT] = ret | 0x80;
-#endif /* CONFIG_DEBUG_PAGEALLOC */
}
return ret < 0 ? ret : 0;
}
@@ -512,17 +512,17 @@ static void __init htab_init_page_sizes(void)
if (mmu_has_feature(MMU_FTR_16M_PAGE))
memcpy(mmu_psize_defs, mmu_psize_defaults_gp,
sizeof(mmu_psize_defaults_gp));
- found:
-#ifndef CONFIG_DEBUG_PAGEALLOC
- /*
- * Pick a size for the linear mapping. Currently, we only support
- * 16M, 1M and 4K which is the default
- */
- if (mmu_psize_defs[MMU_PAGE_16M].shift)
- mmu_linear_psize = MMU_PAGE_16M;
- else if (mmu_psize_defs[MMU_PAGE_1M].shift)
- mmu_linear_psize = MMU_PAGE_1M;
-#endif /* CONFIG_DEBUG_PAGEALLOC */
+found:
+ if (!debug_pagealloc_enabled()) {
+ /*
+ * Pick a size for the linear mapping. Currently, we only
+ * support 16M, 1M and 4K which is the default
+ */
+ if (mmu_psize_defs[MMU_PAGE_16M].shift)
+ mmu_linear_psize = MMU_PAGE_16M;
+ else if (mmu_psize_defs[MMU_PAGE_1M].shift)
+ mmu_linear_psize = MMU_PAGE_1M;
+ }
#ifdef CONFIG_PPC_64K_PAGES
/*
@@ -720,12 +720,12 @@ static void __init htab_initialize(void)
prot = pgprot_val(PAGE_KERNEL);
-#ifdef CONFIG_DEBUG_PAGEALLOC
- linear_map_hash_count = memblock_end_of_DRAM() >> PAGE_SHIFT;
- linear_map_hash_slots = __va(memblock_alloc_base(linear_map_hash_count,
- 1, ppc64_rma_size));
- memset(linear_map_hash_slots, 0, linear_map_hash_count);
-#endif /* CONFIG_DEBUG_PAGEALLOC */
+ if (debug_pagealloc_enabled()) {
+ linear_map_hash_count = memblock_end_of_DRAM() >> PAGE_SHIFT;
+ linear_map_hash_slots = __va(memblock_alloc_base(
+ linear_map_hash_count, 1, ppc64_rma_size));
+ memset(linear_map_hash_slots, 0, linear_map_hash_count);
+ }
/* On U3 based machines, we need to reserve the DART area and
* _NOT_ map it to avoid cache paradoxes as it's remapped non
diff --git a/arch/powerpc/mm/init_32.c b/arch/powerpc/mm/init_32.c
index a10be66..c2b7716 100644
--- a/arch/powerpc/mm/init_32.c
+++ b/arch/powerpc/mm/init_32.c
@@ -112,10 +112,10 @@ void __init MMU_setup(void)
if (strstr(boot_command_line, "noltlbs")) {
__map_without_ltlbs = 1;
}
-#ifdef CONFIG_DEBUG_PAGEALLOC
- __map_without_bats = 1;
- __map_without_ltlbs = 1;
-#endif
+ if (debug_pagealloc_enabled()) {
+ __map_without_bats = 1;
+ __map_without_ltlbs = 1;
+ }
}
/*
--
1.9.1
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [PATCH 5/5] tile: query dynamic DEBUG_PAGEALLOC setting
2016-02-04 5:56 [PATCH 0/5] follow-up "Optimize CONFIG_DEBUG_PAGEALLOC" Joonsoo Kim
` (3 preceding siblings ...)
2016-02-04 5:56 ` [PATCH 4/5] powerpc: " Joonsoo Kim
@ 2016-02-04 5:56 ` Joonsoo Kim
2016-02-09 16:56 ` Chris Metcalf
4 siblings, 1 reply; 15+ messages in thread
From: Joonsoo Kim @ 2016-02-04 5:56 UTC (permalink / raw)
To: Andrew Morton
Cc: David Rientjes, Christian Borntraeger, linux-kernel, linux-mm,
Benjamin Herrenschmidt, Takashi Iwai, Chris Metcalf,
Christoph Lameter, linux-api, Joonsoo Kim
We can disable debug_pagealloc processing even if the code is complied
with CONFIG_DEBUG_PAGEALLOC. This patch changes the code to query
whether it is enabled or not in runtime.
Signed-off-by: Joonsoo Kim <iamjoonsoo.kim@lge.com>
---
arch/tile/mm/init.c | 11 +++++++----
1 file changed, 7 insertions(+), 4 deletions(-)
diff --git a/arch/tile/mm/init.c b/arch/tile/mm/init.c
index d4e1fc4..a0582b7 100644
--- a/arch/tile/mm/init.c
+++ b/arch/tile/mm/init.c
@@ -896,17 +896,15 @@ void __init pgtable_cache_init(void)
panic("pgtable_cache_init(): Cannot create pgd cache");
}
-#ifdef CONFIG_DEBUG_PAGEALLOC
-static long __write_once initfree;
-#else
static long __write_once initfree = 1;
-#endif
+static bool __write_once set_initfree_done;
/* Select whether to free (1) or mark unusable (0) the __init pages. */
static int __init set_initfree(char *str)
{
long val;
if (kstrtol(str, 0, &val) == 0) {
+ set_initfree_done = true;
initfree = val;
pr_info("initfree: %s free init pages\n",
initfree ? "will" : "won't");
@@ -919,6 +917,11 @@ static void free_init_pages(char *what, unsigned long begin, unsigned long end)
{
unsigned long addr = (unsigned long) begin;
+ /* Prefer user request first */
+ if (!set_initfree_done) {
+ if (debug_pagealloc_enabled())
+ initfree = 0;
+ }
if (kdata_huge && !initfree) {
pr_warn("Warning: ignoring initfree=0: incompatible with kdata=huge\n");
initfree = 1;
--
1.9.1
^ permalink raw reply related [flat|nested] 15+ messages in thread
* Re: [PATCH 2/5] mm/slub: query dynamic DEBUG_PAGEALLOC setting
2016-02-04 5:56 ` [PATCH 2/5] mm/slub: " Joonsoo Kim
@ 2016-02-04 8:31 ` Christian Borntraeger
2016-02-04 16:21 ` Joonsoo Kim
0 siblings, 1 reply; 15+ messages in thread
From: Christian Borntraeger @ 2016-02-04 8:31 UTC (permalink / raw)
To: Joonsoo Kim, Andrew Morton
Cc: David Rientjes, linux-kernel, linux-mm, Benjamin Herrenschmidt,
Takashi Iwai, Chris Metcalf, Christoph Lameter, linux-api,
Joonsoo Kim
On 02/04/2016 06:56 AM, Joonsoo Kim wrote:
> We can disable debug_pagealloc processing even if the code is complied
> with CONFIG_DEBUG_PAGEALLOC. This patch changes the code to query
> whether it is enabled or not in runtime.
>
> Signed-off-by: Joonsoo Kim <iamjoonsoo.kim@lge.com>
> ---
> mm/slub.c | 11 ++++++-----
> 1 file changed, 6 insertions(+), 5 deletions(-)
>
> diff --git a/mm/slub.c b/mm/slub.c
> index 7d4da68..7b5a965 100644
> --- a/mm/slub.c
> +++ b/mm/slub.c
> @@ -256,11 +256,12 @@ static inline void *get_freepointer_safe(struct kmem_cache *s, void *object)
> {
> void *p;
>
> -#ifdef CONFIG_DEBUG_PAGEALLOC
> - probe_kernel_read(&p, (void **)(object + s->offset), sizeof(p));
> -#else
> - p = get_freepointer(s, object);
> -#endif
> + if (debug_pagealloc_enabled()) {
> + probe_kernel_read(&p,
> + (void **)(object + s->offset), sizeof(p));
Hmm, this might be a good case for a line longer than 80 chars....
As an alternative revert the logic and return early:
if (!debug_pagealloc_enabled())
return get_freepointer(s, object);
probe_kernel_read(&p, (void **)(object + s->offset), sizeof(p));
return p;
?
> + } else
> + p = get_freepointer(s, object);
> +
> return p;
> }
>
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 1/5] mm/vmalloc: query dynamic DEBUG_PAGEALLOC setting
2016-02-04 5:56 ` [PATCH 1/5] mm/vmalloc: query dynamic DEBUG_PAGEALLOC setting Joonsoo Kim
@ 2016-02-04 8:32 ` Christian Borntraeger
2016-02-04 22:18 ` David Rientjes
1 sibling, 0 replies; 15+ messages in thread
From: Christian Borntraeger @ 2016-02-04 8:32 UTC (permalink / raw)
To: Joonsoo Kim, Andrew Morton
Cc: David Rientjes, linux-kernel, linux-mm, Benjamin Herrenschmidt,
Takashi Iwai, Chris Metcalf, Christoph Lameter, linux-api,
Joonsoo Kim
On 02/04/2016 06:56 AM, Joonsoo Kim wrote:
> We can disable debug_pagealloc processing even if the code is complied
> with CONFIG_DEBUG_PAGEALLOC. This patch changes the code to query
> whether it is enabled or not in runtime.
>
> Signed-off-by: Joonsoo Kim <iamjoonsoo.kim@lge.com>
Reviewed-by: Christian Borntraeger <borntraeger@de.ibm.com>
> ---
> mm/vmalloc.c | 8 ++++----
> 1 file changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/mm/vmalloc.c b/mm/vmalloc.c
> index fb42a5b..e0e51bd 100644
> --- a/mm/vmalloc.c
> +++ b/mm/vmalloc.c
> @@ -543,10 +543,10 @@ static void vmap_debug_free_range(unsigned long start, unsigned long end)
> * debugging doesn't do a broadcast TLB flush so it is a lot
> * faster).
> */
> -#ifdef CONFIG_DEBUG_PAGEALLOC
> - vunmap_page_range(start, end);
> - flush_tlb_kernel_range(start, end);
> -#endif
> + if (debug_pagealloc_enabled()) {
> + vunmap_page_range(start, end);
> + flush_tlb_kernel_range(start, end);
> + }
> }
>
> /*
>
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 2/5] mm/slub: query dynamic DEBUG_PAGEALLOC setting
2016-02-04 8:31 ` Christian Borntraeger
@ 2016-02-04 16:21 ` Joonsoo Kim
0 siblings, 0 replies; 15+ messages in thread
From: Joonsoo Kim @ 2016-02-04 16:21 UTC (permalink / raw)
To: Christian Borntraeger
Cc: Andrew Morton, David Rientjes, LKML,
Linux Memory Management List, Benjamin Herrenschmidt,
Takashi Iwai, Chris Metcalf, Christoph Lameter, linux-api,
Joonsoo Kim
2016-02-04 17:31 GMT+09:00 Christian Borntraeger <borntraeger@de.ibm.com>:
> On 02/04/2016 06:56 AM, Joonsoo Kim wrote:
>> We can disable debug_pagealloc processing even if the code is complied
>> with CONFIG_DEBUG_PAGEALLOC. This patch changes the code to query
>> whether it is enabled or not in runtime.
>>
>> Signed-off-by: Joonsoo Kim <iamjoonsoo.kim@lge.com>
>> ---
>> mm/slub.c | 11 ++++++-----
>> 1 file changed, 6 insertions(+), 5 deletions(-)
>>
>> diff --git a/mm/slub.c b/mm/slub.c
>> index 7d4da68..7b5a965 100644
>> --- a/mm/slub.c
>> +++ b/mm/slub.c
>> @@ -256,11 +256,12 @@ static inline void *get_freepointer_safe(struct kmem_cache *s, void *object)
>> {
>> void *p;
>>
>> -#ifdef CONFIG_DEBUG_PAGEALLOC
>> - probe_kernel_read(&p, (void **)(object + s->offset), sizeof(p));
>> -#else
>> - p = get_freepointer(s, object);
>> -#endif
>> + if (debug_pagealloc_enabled()) {
>> + probe_kernel_read(&p,
>> + (void **)(object + s->offset), sizeof(p));
>
> Hmm, this might be a good case for a line longer than 80 chars....
>
> As an alternative revert the logic and return early:
>
>
> if (!debug_pagealloc_enabled())
> return get_freepointer(s, object);
> probe_kernel_read(&p, (void **)(object + s->offset), sizeof(p));
> return p;
>
Looks better!
I will fix it on next version.
Thanks.
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 1/5] mm/vmalloc: query dynamic DEBUG_PAGEALLOC setting
2016-02-04 5:56 ` [PATCH 1/5] mm/vmalloc: query dynamic DEBUG_PAGEALLOC setting Joonsoo Kim
2016-02-04 8:32 ` Christian Borntraeger
@ 2016-02-04 22:18 ` David Rientjes
2016-02-05 16:13 ` Joonsoo Kim
1 sibling, 1 reply; 15+ messages in thread
From: David Rientjes @ 2016-02-04 22:18 UTC (permalink / raw)
To: Joonsoo Kim
Cc: Andrew Morton, Christian Borntraeger, linux-kernel, linux-mm,
Benjamin Herrenschmidt, Takashi Iwai, Chris Metcalf,
Christoph Lameter, linux-api, Joonsoo Kim
On Thu, 4 Feb 2016, Joonsoo Kim wrote:
> We can disable debug_pagealloc processing even if the code is complied
> with CONFIG_DEBUG_PAGEALLOC. This patch changes the code to query
> whether it is enabled or not in runtime.
>
> Signed-off-by: Joonsoo Kim <iamjoonsoo.kim@lge.com>
I think the comment immediately before this code referencing
CONFIG_DEBUG_PAGEALLOC should be changed to refer to pagealloc debugging
being enabled.
After that:
Acked-by: David Rientjes <rientjes@google.com>
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 3/5] sound: query dynamic DEBUG_PAGEALLOC setting
2016-02-04 5:56 ` [PATCH 3/5] sound: " Joonsoo Kim
@ 2016-02-04 22:19 ` David Rientjes
2016-02-05 9:26 ` Takashi Iwai
1 sibling, 0 replies; 15+ messages in thread
From: David Rientjes @ 2016-02-04 22:19 UTC (permalink / raw)
To: Joonsoo Kim
Cc: Andrew Morton, Christian Borntraeger, linux-kernel, linux-mm,
Benjamin Herrenschmidt, Takashi Iwai, Chris Metcalf,
Christoph Lameter, linux-api, Joonsoo Kim
On Thu, 4 Feb 2016, Joonsoo Kim wrote:
> We can disable debug_pagealloc processing even if the code is complied
> with CONFIG_DEBUG_PAGEALLOC. This patch changes the code to query
> whether it is enabled or not in runtime.
>
> Signed-off-by: Joonsoo Kim <iamjoonsoo.kim@lge.com>
Acked-by: David Rientjes <rientjes@google.com>
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 4/5] powerpc: query dynamic DEBUG_PAGEALLOC setting
2016-02-04 5:56 ` [PATCH 4/5] powerpc: " Joonsoo Kim
@ 2016-02-04 22:22 ` David Rientjes
0 siblings, 0 replies; 15+ messages in thread
From: David Rientjes @ 2016-02-04 22:22 UTC (permalink / raw)
To: Joonsoo Kim
Cc: Andrew Morton, Christian Borntraeger, linux-kernel, linux-mm,
Benjamin Herrenschmidt, Takashi Iwai, Chris Metcalf,
Christoph Lameter, linux-api, Joonsoo Kim
On Thu, 4 Feb 2016, Joonsoo Kim wrote:
> We can disable debug_pagealloc processing even if the code is complied
> with CONFIG_DEBUG_PAGEALLOC. This patch changes the code to query
> whether it is enabled or not in runtime.
>
> Signed-off-by: Joonsoo Kim <iamjoonsoo.kim@lge.com>
Acked-by: David Rientjes <rientjes@google.com>
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 3/5] sound: query dynamic DEBUG_PAGEALLOC setting
2016-02-04 5:56 ` [PATCH 3/5] sound: " Joonsoo Kim
2016-02-04 22:19 ` David Rientjes
@ 2016-02-05 9:26 ` Takashi Iwai
1 sibling, 0 replies; 15+ messages in thread
From: Takashi Iwai @ 2016-02-05 9:26 UTC (permalink / raw)
To: Joonsoo Kim
Cc: Andrew Morton, Christian Borntraeger, Chris Metcalf,
David Rientjes, Benjamin Herrenschmidt, linux-mm, Joonsoo Kim,
Christoph Lameter, linux-api, linux-kernel
On Thu, 04 Feb 2016 06:56:24 +0100,
Joonsoo Kim wrote:
>
> We can disable debug_pagealloc processing even if the code is complied
> with CONFIG_DEBUG_PAGEALLOC. This patch changes the code to query
> whether it is enabled or not in runtime.
>
> Signed-off-by: Joonsoo Kim <iamjoonsoo.kim@lge.com>
Acked-by: Takashi Iwai <tiwai@suse.de>
Takashi
> ---
> sound/drivers/pcsp/pcsp.c | 9 +++++----
> 1 file changed, 5 insertions(+), 4 deletions(-)
>
> diff --git a/sound/drivers/pcsp/pcsp.c b/sound/drivers/pcsp/pcsp.c
> index 27e25bb..72e2d00 100644
> --- a/sound/drivers/pcsp/pcsp.c
> +++ b/sound/drivers/pcsp/pcsp.c
> @@ -14,6 +14,7 @@
> #include <linux/input.h>
> #include <linux/delay.h>
> #include <linux/bitops.h>
> +#include <linux/mm.h>
> #include "pcsp_input.h"
> #include "pcsp.h"
>
> @@ -148,11 +149,11 @@ static int alsa_card_pcsp_init(struct device *dev)
> return err;
> }
>
> -#ifdef CONFIG_DEBUG_PAGEALLOC
> /* Well, CONFIG_DEBUG_PAGEALLOC makes the sound horrible. Lets alert */
> - printk(KERN_WARNING "PCSP: CONFIG_DEBUG_PAGEALLOC is enabled, "
> - "which may make the sound noisy.\n");
> -#endif
> + if (debug_pagealloc_enabled()) {
> + printk(KERN_WARNING "PCSP: CONFIG_DEBUG_PAGEALLOC is enabled, "
> + "which may make the sound noisy.\n");
> + }
>
> return 0;
> }
> --
> 1.9.1
>
>
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 1/5] mm/vmalloc: query dynamic DEBUG_PAGEALLOC setting
2016-02-04 22:18 ` David Rientjes
@ 2016-02-05 16:13 ` Joonsoo Kim
0 siblings, 0 replies; 15+ messages in thread
From: Joonsoo Kim @ 2016-02-05 16:13 UTC (permalink / raw)
To: David Rientjes
Cc: Andrew Morton, Christian Borntraeger, LKML,
Linux Memory Management List, Benjamin Herrenschmidt,
Takashi Iwai, Chris Metcalf, Christoph Lameter, linux-api,
Joonsoo Kim
2016-02-05 7:18 GMT+09:00 David Rientjes <rientjes@google.com>:
> On Thu, 4 Feb 2016, Joonsoo Kim wrote:
>
>> We can disable debug_pagealloc processing even if the code is complied
>> with CONFIG_DEBUG_PAGEALLOC. This patch changes the code to query
>> whether it is enabled or not in runtime.
>>
>> Signed-off-by: Joonsoo Kim <iamjoonsoo.kim@lge.com>
>
> I think the comment immediately before this code referencing
> CONFIG_DEBUG_PAGEALLOC should be changed to refer to pagealloc debugging
> being enabled.
Andrew kindly did it. Thanks, Andrew.
> After that:
>
> Acked-by: David Rientjes <rientjes@google.com>
Thanks.
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 5/5] tile: query dynamic DEBUG_PAGEALLOC setting
2016-02-04 5:56 ` [PATCH 5/5] tile: " Joonsoo Kim
@ 2016-02-09 16:56 ` Chris Metcalf
0 siblings, 0 replies; 15+ messages in thread
From: Chris Metcalf @ 2016-02-09 16:56 UTC (permalink / raw)
To: Joonsoo Kim, Andrew Morton
Cc: David Rientjes, Christian Borntraeger, linux-kernel, linux-mm,
Benjamin Herrenschmidt, Takashi Iwai, Christoph Lameter,
linux-api, Joonsoo Kim
On 02/04/2016 12:56 AM, Joonsoo Kim wrote:
> We can disable debug_pagealloc processing even if the code is complied
> with CONFIG_DEBUG_PAGEALLOC. This patch changes the code to query
> whether it is enabled or not in runtime.
>
> Signed-off-by: Joonsoo Kim<iamjoonsoo.kim@lge.com>
> ---
> arch/tile/mm/init.c | 11 +++++++----
> 1 file changed, 7 insertions(+), 4 deletions(-)
Acked-by: Chris Metcalf <cmetcalf@ezchip.com>
Although I note a typo ("complied") in the git commit message.
--
Chris Metcalf, EZChip Semiconductor
http://www.ezchip.com
^ permalink raw reply [flat|nested] 15+ messages in thread
end of thread, other threads:[~2016-02-09 16:57 UTC | newest]
Thread overview: 15+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-02-04 5:56 [PATCH 0/5] follow-up "Optimize CONFIG_DEBUG_PAGEALLOC" Joonsoo Kim
2016-02-04 5:56 ` [PATCH 1/5] mm/vmalloc: query dynamic DEBUG_PAGEALLOC setting Joonsoo Kim
2016-02-04 8:32 ` Christian Borntraeger
2016-02-04 22:18 ` David Rientjes
2016-02-05 16:13 ` Joonsoo Kim
2016-02-04 5:56 ` [PATCH 2/5] mm/slub: " Joonsoo Kim
2016-02-04 8:31 ` Christian Borntraeger
2016-02-04 16:21 ` Joonsoo Kim
2016-02-04 5:56 ` [PATCH 3/5] sound: " Joonsoo Kim
2016-02-04 22:19 ` David Rientjes
2016-02-05 9:26 ` Takashi Iwai
2016-02-04 5:56 ` [PATCH 4/5] powerpc: " Joonsoo Kim
2016-02-04 22:22 ` David Rientjes
2016-02-04 5:56 ` [PATCH 5/5] tile: " Joonsoo Kim
2016-02-09 16:56 ` Chris Metcalf
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).