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/

Reply via email to