# Re: \[PATCH\] powerpc/mm: match variable types to API

- From: Paul Mackerras \<hidden\>
- Date: 2012-08-28 23:57:18 
- List: linuxppc-dev
- Page: https://ratatoskr.run/linuxppc-dev/2012/08/9470908
- Thread: https://ratatoskr.run/linuxppc-dev/2012/08/9470876/t.md

```text
On Tue, Aug 21, 2012 at 02:22:28PM -0400, Paul Gortmaker wrote:
> From: Joe MacDonald <redacted>
> 
> 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 <redacted>
> Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
> Signed-off-by: Joe MacDonald <redacted>
> Signed-off-by: Paul Gortmaker <redacted>

This change won't hurt; in fact it won't make any difference since (a)
this code is only ever used on 64-bit and (b) i and nw are restricted
to the range 0 .. PTRS_PER_PTE - 1, but I agree the code is slightly
cleaner this way.

Acked-by: Paul Mackerras <redacted>
```
