forked from Minki/linux
powerpc/mm: Match variable types to API
sys_subpage_prot() takes an unsigned long for 'addr' then does some stuff with it and the result is stored in a signed int, i, which is eventually used as the size parameter in a copy_from_user call. Update 'i' to be an unsigned long as well and since 'nw' is used in a size_t context which, depending on whether this is 32- or 64-bit may be unsigned int or unsigned long, switch that to a size_t and always be right. Finally, since we're in the neighbourhood, make the same changes to subpage_prot_clear(). Cc: Paul Mackerras <paulus@samba.org> Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: Joe MacDonald <joe.macdonald@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Acked-by: Paul Mackerras <paulus@samba.org> Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
This commit is contained in:
parent
11f63d3fb9
commit
6b5e7229bb
@ -95,7 +95,8 @@ static void subpage_prot_clear(unsigned long addr, unsigned long len)
|
||||
struct mm_struct *mm = current->mm;
|
||||
struct subpage_prot_table *spt = &mm->context.spt;
|
||||
u32 **spm, *spp;
|
||||
int i, nw;
|
||||
unsigned long i;
|
||||
size_t nw;
|
||||
unsigned long next, limit;
|
||||
|
||||
down_write(&mm->mmap_sem);
|
||||
@ -144,7 +145,8 @@ long sys_subpage_prot(unsigned long addr, unsigned long len, u32 __user *map)
|
||||
struct mm_struct *mm = current->mm;
|
||||
struct subpage_prot_table *spt = &mm->context.spt;
|
||||
u32 **spm, *spp;
|
||||
int i, nw;
|
||||
unsigned long i;
|
||||
size_t nw;
|
||||
unsigned long next, limit;
|
||||
int err;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user