On Fri, Oct 14, 2011 at 12:06:41AM +0200, Loïc Minier wrote: > mem_read() and mem_write() did arithmetic with a local ulong size > variable, a size_t count and an ulong offset to return a ssize_t result. > Change them to use size_t for size and offset and stop casting count to > ulong. You should change the prototypes in include/driver.h aswell. Sascha > > This fixes a warning when building for 64-bits. > > This change might have impact on the exported symbols. > > Signed-off-by: Loïc Minier <loic.minier@xxxxxxxxxx> > --- > fs/fs.c | 12 ++++++------ > 1 files changed, 6 insertions(+), 6 deletions(-) > > diff --git a/fs/fs.c b/fs/fs.c > index 7d65ec8..0cb226d 100644 > --- a/fs/fs.c > +++ b/fs/fs.c > @@ -1038,31 +1038,31 @@ static void memcpy_sz(void *_dst, const void *_src, ulong count, ulong rwsize) > } > } > > -ssize_t mem_read(struct cdev *cdev, void *buf, size_t count, ulong offset, ulong flags) > +ssize_t mem_read(struct cdev *cdev, void *buf, size_t count, size_t offset, ulong flags) > { > - ulong size; > + size_t size; > struct device_d *dev; > > if (!cdev->dev || cdev->dev->num_resources < 1) > return -1; > dev = cdev->dev; > > - size = min((ulong)count, dev->resource[0].size - offset); > + size = min(count, (size_t)dev->resource[0].size - offset); > memcpy_sz(buf, dev_get_mem_region(dev, 0) + offset, size, flags & O_RWSIZE_MASK); > return size; > } > EXPORT_SYMBOL(mem_read); > > -ssize_t mem_write(struct cdev *cdev, const void *buf, size_t count, ulong offset, ulong flags) > +ssize_t mem_write(struct cdev *cdev, const void *buf, size_t count, size_t offset, ulong flags) > { > - ulong size; > + size_t size; > struct device_d *dev; > > if (!cdev->dev || cdev->dev->num_resources < 1) > return -1; > dev = cdev->dev; > > - size = min((ulong)count, dev->resource[0].size - offset); > + size = min(count, (size_t)dev->resource[0].size - offset); > memcpy_sz(dev_get_mem_region(dev, 0) + offset, buf, size, flags & O_RWSIZE_MASK); > return size; > } > -- > 1.7.5.4 > > > _______________________________________________ > barebox mailing list > barebox@xxxxxxxxxxxxxxxxxxx > http://lists.infradead.org/mailman/listinfo/barebox -- Pengutronix e.K. | | Industrial Linux Solutions | http://www.pengutronix.de/ | Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 | _______________________________________________ barebox mailing list barebox@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/barebox