Re: [PATCH 2/2] cleanup: convert the int cnt to unsigned long in mm/memblock.c

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

 



On Wed, 09 Nov 2011 13:18:53 +0800
Wang Sheng-Hui <shhuiw@xxxxxxxxx> wrote:

> @@ -111,7 +112,7 @@ static phys_addr_t __init_memblock memblock_find_region(phys_addr_t start, phys_
>  static phys_addr_t __init_memblock memblock_find_base(phys_addr_t size,
>  			phys_addr_t align, phys_addr_t start, phys_addr_t end)
>  {
> -	long i;
> +	unsigned long i;
>  
>  	BUG_ON(0 == size);

This change to memblock_find_base() can cause this loop:

	for (i = memblock.memory.cnt - 1; i >= 0; i--) {

to become infinite under some circumstances.

I stopped reading at that point.  Changes like this require much care.

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@xxxxxxxxx.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/
Don't email: <a href=mailto:"dont@xxxxxxxxx";> email@xxxxxxxxx </a>


[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]