linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: Wang Sheng-Hui <shhuiw@gmail.com>
To: yinghai@kernel.org, linux-mm@kvack.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH 2/2] cleanup: convert the int cnt to unsigned long in mm/memblock.c
Date: Wed, 09 Nov 2011 13:18:53 +0800	[thread overview]
Message-ID: <4EBA0D3D.1090808@gmail.com> (raw)
In-Reply-To: <4EB9DF0B.7050004@gmail.com>

On 2011a1'11ae??09ae?JPY 10:01, Wang Sheng-Hui wrote:
> We have the following definition in memblock.h:
> struct memblock_type {
>     unsigned long cnt;  /* number of regions */
>     unsigned long max;  /* size of the allocated array */
>     struct memblock_region *regions;
> };
> 
> But in memblock.c, some cnt/max vars are typed to int
> instead of unsigned long.
> This patch does the code cleanup.
> 
> 
> Signed-off-by: Wang Sheng-Hui <shhuiw@gmail.com>
> ---
>  mm/memblock.c |   38 +++++++++++++++++++++-----------------
>  1 files changed, 21 insertions(+), 17 deletions(-)
> 
> diff --git a/mm/memblock.c b/mm/memblock.c
> index 4d4d5ee..3618241 100644
> --- a/mm/memblock.c
> +++ b/mm/memblock.c
> @@ -52,13 +52,14 @@ static phys_addr_t __init_memblock memblock_align_up(phys_addr_t addr, phys_addr
>  	return (addr + (size - 1)) & ~(size - 1);
>  }
>  
> -static unsigned long __init_memblock memblock_addrs_overlap(phys_addr_t base1, phys_addr_t size1,
> -				       phys_addr_t base2, phys_addr_t size2)
> +static int __init_memblock memblock_addrs_overlap(phys_addr_t base1,
> +		phys_addr_t size1, phys_addr_t base2, phys_addr_t size2)
>  {
>  	return ((base1 < (base2 + size2)) && (base2 < (base1 + size1)));
>  }
>  
> -long __init_memblock memblock_overlaps_region(struct memblock_type *type, phys_addr_t base, phys_addr_t size)
> +long __init_memblock memblock_overlaps_region(struct memblock_type *type,
> +				       phys_addr_t base, phys_addr_t size)
>  {
>  	unsigned long i;
>  
> @@ -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);
>  
> @@ -199,7 +200,8 @@ static long memblock_add_region(struct memblock_type *type, phys_addr_t base, ph
>  static int __init_memblock memblock_double_array(struct memblock_type *type)
>  {
>  	struct memblock_region *new_array, *old_array;
> -	phys_addr_t old_size, new_size, addr;
> +	phys_addr_t addr;
> +	unsigned long old_size, new_size;
>  	int use_slab = slab_is_available();
>  
>  	/* We don't allow resizing until we know about the reserved regions
> @@ -277,7 +279,8 @@ static long __init_memblock memblock_add_region(struct memblock_type *type,
>  						phys_addr_t base, phys_addr_t size)
>  {
>  	phys_addr_t end = base + size;
> -	int i, slot = -1;
> +	long slot = -1;
> +	unsigned long i;
>  
>  	/* First try and coalesce this MEMBLOCK with others */
>  	for (i = 0; i < type->cnt; i++) {
> @@ -413,7 +416,7 @@ static long __init_memblock __memblock_remove(struct memblock_type *type,
>  					      phys_addr_t base, phys_addr_t size)
>  {
>  	phys_addr_t end = base + size;
> -	int i;
> +	unsigned long i;
>  
>  	/* Walk through the array for collisions */
>  	for (i = 0; i < type->cnt; i++) {
> @@ -583,7 +586,7 @@ static phys_addr_t __init memblock_alloc_nid_region(struct memblock_region *mp,
>  phys_addr_t __init memblock_alloc_nid(phys_addr_t size, phys_addr_t align, int nid)
>  {
>  	struct memblock_type *mem = &memblock.memory;
> -	int i;
> +	unsigned long i;
>  
>  	BUG_ON(0 == size);
>  
> @@ -628,7 +631,7 @@ phys_addr_t __init memblock_phys_mem_size(void)
>  
>  phys_addr_t __init_memblock memblock_end_of_DRAM(void)
>  {
> -	int idx = memblock.memory.cnt - 1;
> +	unsigned long idx = memblock.memory.cnt - 1;
>  
>  	return (memblock.memory.regions[idx].base + memblock.memory.regions[idx].size);
>  }
> @@ -674,12 +677,13 @@ void __init memblock_enforce_memory_limit(phys_addr_t memory_limit)
>  	}
>  }
>  
> -static int __init_memblock memblock_search(struct memblock_type *type, phys_addr_t addr)
> +static long __init_memblock memblock_search(struct memblock_type *type,
> +					    phys_addr_t addr)
>  {
> -	unsigned int left = 0, right = type->cnt;
> +	unsigned long left = 0, right = type->cnt;
>  
>  	do {
> -		unsigned int mid = (right + left) / 2;
> +		unsigned long mid = (right + left) / 2;
>  
>  		if (addr < type->regions[mid].base)
>  			right = mid;
> @@ -704,7 +708,7 @@ int __init_memblock memblock_is_memory(phys_addr_t addr)
>  
>  int __init_memblock memblock_is_region_memory(phys_addr_t base, phys_addr_t size)
>  {
> -	int idx = memblock_search(&memblock.memory, base);
> +	long idx = memblock_search(&memblock.memory, base);
>  
>  	if (idx == -1)
>  		return 0;
> @@ -727,7 +731,7 @@ void __init_memblock memblock_set_current_limit(phys_addr_t limit)
>  static void __init_memblock memblock_dump(struct memblock_type *region, char *name)
>  {
>  	unsigned long long base, size;
> -	int i;
> +	unsigned long i;
>  
>  	pr_info(" %s.cnt  = 0x%lx\n", name, region->cnt);
>  
> @@ -735,7 +739,7 @@ static void __init_memblock memblock_dump(struct memblock_type *region, char *na
>  		base = region->regions[i].base;
>  		size = region->regions[i].size;
>  
> -		pr_info(" %s[%#x]\t[%#016llx-%#016llx], %#llx bytes\n",
> +		pr_info(" %s[%#lx]\t[%#016llx-%#016llx], %#llx bytes\n",
>  		    name, i, base, base + size - 1, size);
>  	}
>  }
> @@ -754,7 +758,7 @@ void __init_memblock memblock_dump_all(void)
>  
>  void __init memblock_analyze(void)
>  {
> -	int i;
> +	unsigned long i;
>  
>  	/* Check marker in the unused last array entry */
>  	WARN_ON(memblock_memory_init_regions[INIT_MEMBLOCK_REGIONS].base
> @@ -818,7 +822,7 @@ static int memblock_debug_show(struct seq_file *m, void *private)
>  {
>  	struct memblock_type *type = m->private;
>  	struct memblock_region *reg;
> -	int i;
> +	unsigned long i;
>  
>  	for (i = 0; i < type->cnt; i++) {
>  		reg = &type->regions[i];

Sorry, missed one line. Fixed it. New patch generated.

  reply	other threads:[~2011-11-09  5:19 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-11-09  2:01 [PATCH 2/2] cleanup: convert the int cnt to unsigned long in mm/memblock.c Wang Sheng-Hui
2011-11-09  5:18 ` Wang Sheng-Hui [this message]
2011-11-22 23:59   ` Andrew Morton
2011-11-23 13:01     ` Wang Sheng-Hui

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4EBA0D3D.1090808@gmail.com \
    --to=shhuiw@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=yinghai@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).