[PATCH] mtd mtdraw: Fix partial page read

Sascha Hauer s.hauer at pengutronix.de
Sun Sep 16 04:58:01 EDT 2012


On Sun, Sep 16, 2012 at 10:46:54AM +0200, Robert Jarzmik wrote:
> Sascha Hauer <s.hauer at pengutronix.de> writes:
> 
> > 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 at pengutronix.de>
> > Cc: Robert Jarzmik <robert.jarzmik at free.fr>
> > ---
> >  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);
> Hi Sasha,
> 
> Why the 2 lines of min_t() instead of a single:
> toread = min_t(int, count, mtd->writesize + mtd->oobsize - skip)

Yeah, this doubles the efficiency ;) Will do that instead.

Thanks
 Sascha

-- 
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 |



More information about the barebox mailing list