* [PATCH v2, part3 02/12] mm/ARM64: kill poison_init_mem()
[not found] <1363453413-8139-1-git-send-email-jiang.liu@huawei.com>
@ 2013-03-16 17:03 ` Jiang Liu
2013-03-17 21:46 ` Will Deacon
0 siblings, 1 reply; 3+ messages in thread
From: Jiang Liu @ 2013-03-16 17:03 UTC (permalink / raw)
To: linux-arm-kernel
Use free_reserved_area() to kill poison_init_mem() on ARM64.
Signed-off-by: Jiang Liu <jiang.liu@huawei.com>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Will Deacon <will.deacon@arm.com>
Cc: linux-arm-kernel at lists.infradead.org
Cc: linux-kernel at vger.kernel.org
---
arch/arm64/mm/init.c | 17 +++--------------
1 file changed, 3 insertions(+), 14 deletions(-)
diff --git a/arch/arm64/mm/init.c b/arch/arm64/mm/init.c
index e58dd7f..b87bdb8 100644
--- a/arch/arm64/mm/init.c
+++ b/arch/arm64/mm/init.c
@@ -197,14 +197,6 @@ void __init bootmem_init(void)
max_pfn = max_low_pfn = max;
}
-/*
- * Poison init memory with an undefined instruction (0x0).
- */
-static inline void poison_init_mem(void *s, size_t count)
-{
- memset(s, 0, count);
-}
-
#ifndef CONFIG_SPARSEMEM_VMEMMAP
static inline void free_memmap(unsigned long start_pfn, unsigned long end_pfn)
{
@@ -386,8 +378,7 @@ void __init mem_init(void)
void free_initmem(void)
{
- poison_init_mem(__init_begin, __init_end - __init_begin);
- free_initmem_default(-1);
+ free_initmem_default(0);
}
#ifdef CONFIG_BLK_DEV_INITRD
@@ -396,10 +387,8 @@ static int keep_initrd;
void free_initrd_mem(unsigned long start, unsigned long end)
{
- if (!keep_initrd) {
- poison_init_mem((void *)start, PAGE_ALIGN(end) - start);
- free_reserved_area(start, end, -1, "initrd");
- }
+ if (!keep_initrd)
+ free_reserved_area(start, end, 0, "initrd");
}
static int __init keepinitrd_setup(char *__unused)
--
1.7.9.5
^ permalink raw reply related [flat|nested] 3+ messages in thread
* [PATCH v2, part3 02/12] mm/ARM64: kill poison_init_mem()
2013-03-16 17:03 ` [PATCH v2, part3 02/12] mm/ARM64: kill poison_init_mem() Jiang Liu
@ 2013-03-17 21:46 ` Will Deacon
2013-03-18 17:21 ` Jiang Liu
0 siblings, 1 reply; 3+ messages in thread
From: Will Deacon @ 2013-03-17 21:46 UTC (permalink / raw)
To: linux-arm-kernel
On Sat, Mar 16, 2013 at 05:03:23PM +0000, Jiang Liu wrote:
> Use free_reserved_area() to kill poison_init_mem() on ARM64.
>
> Signed-off-by: Jiang Liu <jiang.liu@huawei.com>
> Cc: Catalin Marinas <catalin.marinas@arm.com>
> Cc: Will Deacon <will.deacon@arm.com>
> Cc: linux-arm-kernel at lists.infradead.org
> Cc: linux-kernel at vger.kernel.org
> ---
> arch/arm64/mm/init.c | 17 +++--------------
> 1 file changed, 3 insertions(+), 14 deletions(-)
>
> diff --git a/arch/arm64/mm/init.c b/arch/arm64/mm/init.c
> index e58dd7f..b87bdb8 100644
> --- a/arch/arm64/mm/init.c
> +++ b/arch/arm64/mm/init.c
> @@ -197,14 +197,6 @@ void __init bootmem_init(void)
> max_pfn = max_low_pfn = max;
> }
>
> -/*
> - * Poison init memory with an undefined instruction (0x0).
> - */
> -static inline void poison_init_mem(void *s, size_t count)
> -{
> - memset(s, 0, count);
> -}
> -
> #ifndef CONFIG_SPARSEMEM_VMEMMAP
> static inline void free_memmap(unsigned long start_pfn, unsigned long end_pfn)
> {
> @@ -386,8 +378,7 @@ void __init mem_init(void)
>
> void free_initmem(void)
> {
> - poison_init_mem(__init_begin, __init_end - __init_begin);
> - free_initmem_default(-1);
> + free_initmem_default(0);
This change looks unrelated to $subject. We should probably just poison with
0 from the outset, when free_initmem_default is introduced.
Will
^ permalink raw reply [flat|nested] 3+ messages in thread
* [PATCH v2, part3 02/12] mm/ARM64: kill poison_init_mem()
2013-03-17 21:46 ` Will Deacon
@ 2013-03-18 17:21 ` Jiang Liu
0 siblings, 0 replies; 3+ messages in thread
From: Jiang Liu @ 2013-03-18 17:21 UTC (permalink / raw)
To: linux-arm-kernel
On 03/18/2013 05:46 AM, Will Deacon wrote:
> On Sat, Mar 16, 2013 at 05:03:23PM +0000, Jiang Liu wrote:
>> Use free_reserved_area() to kill poison_init_mem() on ARM64.
>>
>> Signed-off-by: Jiang Liu <jiang.liu@huawei.com>
>> Cc: Catalin Marinas <catalin.marinas@arm.com>
>> Cc: Will Deacon <will.deacon@arm.com>
>> Cc: linux-arm-kernel at lists.infradead.org
>> Cc: linux-kernel at vger.kernel.org
>> ---
>> arch/arm64/mm/init.c | 17 +++--------------
>> 1 file changed, 3 insertions(+), 14 deletions(-)
>>
>> diff --git a/arch/arm64/mm/init.c b/arch/arm64/mm/init.c
>> index e58dd7f..b87bdb8 100644
>> --- a/arch/arm64/mm/init.c
>> +++ b/arch/arm64/mm/init.c
>> @@ -197,14 +197,6 @@ void __init bootmem_init(void)
>> max_pfn = max_low_pfn = max;
>> }
>>
>> -/*
>> - * Poison init memory with an undefined instruction (0x0).
>> - */
>> -static inline void poison_init_mem(void *s, size_t count)
>> -{
>> - memset(s, 0, count);
>> -}
>> -
>> #ifndef CONFIG_SPARSEMEM_VMEMMAP
>> static inline void free_memmap(unsigned long start_pfn, unsigned long end_pfn)
>> {
>> @@ -386,8 +378,7 @@ void __init mem_init(void)
>>
>> void free_initmem(void)
>> {
>> - poison_init_mem(__init_begin, __init_end - __init_begin);
>> - free_initmem_default(-1);
>> + free_initmem_default(0);
>
> This change looks unrelated to $subject. We should probably just poison with
> 0 from the outset, when free_initmem_default is introduced.
Hi Will,
As you have suggested, this patch should be merged into patchset which
introduces free_initmem_default(). I have a plan to merge it in v3, but the v2
patchset has been merged into -mm tree, so I generated another patch against the
mm tree.
free_initmem_default(-1) doesn't poison the freed memory and
free_initmem_default(0) poisons the freed memory with 0, so it's needed to
kill poison_init_mem().
regards!
Gerry
>
> Will
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo at vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/
>
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2013-03-18 17:21 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <1363453413-8139-1-git-send-email-jiang.liu@huawei.com>
2013-03-16 17:03 ` [PATCH v2, part3 02/12] mm/ARM64: kill poison_init_mem() Jiang Liu
2013-03-17 21:46 ` Will Deacon
2013-03-18 17:21 ` Jiang Liu
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).