The values exchanged between kernel and userspace through struct ashmem_pin should be of type size_t. This change won't affect the existing interface but will stand as the basis of 64bit compat layer.
Signed-off-by: Serban Constantinescu <serban.constantine...@arm.com> --- drivers/staging/android/ashmem.c | 2 +- drivers/staging/android/ashmem.h | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/staging/android/ashmem.c b/drivers/staging/android/ashmem.c index 72064fc..aa52646 100644 --- a/drivers/staging/android/ashmem.c +++ b/drivers/staging/android/ashmem.c @@ -596,7 +596,7 @@ static int ashmem_pin_unpin(struct ashmem_area *asma, unsigned long cmd, if (unlikely((pin.offset | pin.len) & ~PAGE_MASK)) return -EINVAL; - if (unlikely(((__u32) -1) - pin.offset < pin.len)) + if (unlikely(((size_t) -1) - pin.offset < pin.len)) return -EINVAL; if (unlikely(PAGE_ALIGN(asma->size) < pin.offset + pin.len)) diff --git a/drivers/staging/android/ashmem.h b/drivers/staging/android/ashmem.h index 1976b10..c9b2eba 100644 --- a/drivers/staging/android/ashmem.h +++ b/drivers/staging/android/ashmem.h @@ -28,8 +28,8 @@ #define ASHMEM_IS_PINNED 1 struct ashmem_pin { - __u32 offset; /* offset into region, in bytes, page-aligned */ - __u32 len; /* length forward from offset, in bytes, page-aligned */ + size_t offset; /* offset into region, in bytes, page-aligned */ + size_t len; /* length forward from offset, in bytes, page-aligned */ }; #define __ASHMEMIOC 0x77 -- 1.7.9.5 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/