Re: [PATCH 6/14] arch/parisc: Eliminate NULL test and memset after alloc_bootmem

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Jun 24, 2008 at 10:23:28AM +0200, Julia Lawall wrote:
> From: Julia Lawall <julia@xxxxxxx>
> 
> As noted by Akinobu Mita in patch b1fceac2b9e04d278316b2faddf276015fc06e3b,
> alloc_bootmem and related functions never return NULL and always return a
> zeroed region of memory.  Thus a NULL test or memset after calls to these
> functions is unnecessary.
> 
>  arch/parisc/mm/init.c |    1 -
>  1 file changed, 1 deletion(-)
> 
> This was fixed using the following semantic patch.
> (http://www.emn.fr/x-info/coccinelle/)
> 
> // <smpl>
> @@
> expression E;
> statement S;
> @@
> 
> E = \(alloc_bootmem\|alloc_bootmem_low\|alloc_bootmem_pages\|alloc_bootmem_low_pages\)(...)
> ... when != E
> (
> - BUG_ON (E == NULL);
> |
> - if (E == NULL) S
> )
> 
> @@
> expression E,E1;
> @@
> 
> E = \(alloc_bootmem\|alloc_bootmem_low\|alloc_bootmem_pages\|alloc_bootmem_low_pages\)(...)
> ... when != E
> - memset(E,0,E1);
> // </smpl>
> 
> Signed-off-by: Julia Lawall <julia@xxxxxxx>

Acked-by: Grant Grundler <grundler@xxxxxxxxxxxxxxxx>

thanks,
grant

> ---
> 
> diff -u -p a/arch/parisc/mm/init.c b/arch/parisc/mm/init.c
> --- a/arch/parisc/mm/init.c
> +++ b/arch/parisc/mm/init.c
> @@ -765,7 +765,6 @@ static void __init pagetable_init(void)
>  #endif
>  
>  	empty_zero_page = alloc_bootmem_pages(PAGE_SIZE);
> -	memset(empty_zero_page, 0, PAGE_SIZE);
>  }
>  
>  static void __init gateway_init(void)
> --
> To unsubscribe from this list: send the line "unsubscribe linux-parisc" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe linux-parisc" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux SoC]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux