[PATCH] mtd mtdraw: Fix partial page read

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



When reading parts of a page we have to limit the maximum bytes copied
the the remaining bytes of a page.

Signed-off-by: Sascha Hauer <s.hauer@xxxxxxxxxxxxxx>
Cc: Robert Jarzmik <robert.jarzmik@xxxxxxx>
---
 drivers/mtd/mtdraw.c |    1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/mtd/mtdraw.c b/drivers/mtd/mtdraw.c
index d28ae07..29f6a8c 100644
--- a/drivers/mtd/mtdraw.c
+++ b/drivers/mtd/mtdraw.c
@@ -129,6 +129,7 @@ static ssize_t mtdraw_read(struct cdev *cdev, void *buf, size_t count,
 
 	while (ret > 0 && count > 0) {
 		toread = min_t(int, count, mtd->writesize + mtd->oobsize);
+		toread = min_t(int, toread, mtd->writesize + mtd->oobsize - skip);
 		ret = mtdraw_read_unaligned(mtd, buf, toread,
 					    skip, numpage++ * mtd->writesize);
 		buf += ret;
-- 
1.7.10.4


_______________________________________________
barebox mailing list
barebox@xxxxxxxxxxxxxxxxxxx
http://lists.infradead.org/mailman/listinfo/barebox


[Index of Archives]     [Linux Embedded]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux