diff options
author | Roel Kluin <roel.kluin@gmail.com> | 2009-03-31 18:23:15 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2009-04-01 11:59:13 -0400 |
commit | e2f17d9459aeccf4e013e31cbd741d6b1858eec4 (patch) | |
tree | 919fb245d700a04d253247e19db0b084454b20cc /mm | |
parent | d1d7487173eab8352125cf6cc271940f24254bd4 (diff) |
hugetlb: chg cannot become less than 0
chg is unsigned, so it cannot be less than 0.
Also, since region_chg returns long, let vma_needs_reservation() forward
this to alloc_huge_page(). Store it as long as well. all callers cast it
to long anyway.
Signed-off-by: Roel Kluin <roel.kluin@gmail.com>
Cc: Andy Whitcroft <apw@shadowen.org>
Cc: Mel Gorman <mel@csn.ul.ie>
Cc: Adam Litke <agl@us.ibm.com>
Cc: Johannes Weiner <hannes@saeurebad.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'mm')
-rw-r--r-- | mm/hugetlb.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/mm/hugetlb.c b/mm/hugetlb.c index 107da3d809a8..28c655ba9353 100644 --- a/mm/hugetlb.c +++ b/mm/hugetlb.c | |||
@@ -918,7 +918,7 @@ static void return_unused_surplus_pages(struct hstate *h, | |||
918 | * an instantiated the change should be committed via vma_commit_reservation. | 918 | * an instantiated the change should be committed via vma_commit_reservation. |
919 | * No action is required on failure. | 919 | * No action is required on failure. |
920 | */ | 920 | */ |
921 | static int vma_needs_reservation(struct hstate *h, | 921 | static long vma_needs_reservation(struct hstate *h, |
922 | struct vm_area_struct *vma, unsigned long addr) | 922 | struct vm_area_struct *vma, unsigned long addr) |
923 | { | 923 | { |
924 | struct address_space *mapping = vma->vm_file->f_mapping; | 924 | struct address_space *mapping = vma->vm_file->f_mapping; |
@@ -933,7 +933,7 @@ static int vma_needs_reservation(struct hstate *h, | |||
933 | return 1; | 933 | return 1; |
934 | 934 | ||
935 | } else { | 935 | } else { |
936 | int err; | 936 | long err; |
937 | pgoff_t idx = vma_hugecache_offset(h, vma, addr); | 937 | pgoff_t idx = vma_hugecache_offset(h, vma, addr); |
938 | struct resv_map *reservations = vma_resv_map(vma); | 938 | struct resv_map *reservations = vma_resv_map(vma); |
939 | 939 | ||
@@ -969,7 +969,7 @@ static struct page *alloc_huge_page(struct vm_area_struct *vma, | |||
969 | struct page *page; | 969 | struct page *page; |
970 | struct address_space *mapping = vma->vm_file->f_mapping; | 970 | struct address_space *mapping = vma->vm_file->f_mapping; |
971 | struct inode *inode = mapping->host; | 971 | struct inode *inode = mapping->host; |
972 | unsigned int chg; | 972 | long chg; |
973 | 973 | ||
974 | /* | 974 | /* |
975 | * Processes that did not create the mapping will have no reserves and | 975 | * Processes that did not create the mapping will have no reserves and |