Message ID | 20161120150930.25401-1-zajec5@gmail.com |
---|---|
State | Accepted |
Commit | bd5d21310133921021d78995ad6346f908483124 |
Headers | show |
On Sun, Nov 20, 2016 at 04:09:30PM +0100, Rafał Miłecki wrote: > From: Rafał Miłecki <rafal@milecki.pl> > > After parsing TRX we should skip to the first block placed behind it. > Our code was working only with TRX with length not aligned to the > blocksize. In other cases (length aligned) it was missing the block > places right after TRX. > > This fixes calculation and simplifies the comment. > > Signed-off-by: Rafał Miłecki <rafal@milecki.pl> Applied to l2-mtd.git
diff --git a/drivers/mtd/bcm47xxpart.c b/drivers/mtd/bcm47xxpart.c index 3779475..283ff7e 100644 --- a/drivers/mtd/bcm47xxpart.c +++ b/drivers/mtd/bcm47xxpart.c @@ -229,12 +229,10 @@ static int bcm47xxpart_parse(struct mtd_info *master, last_trx_part = curr_part - 1; - /* - * We have whole TRX scanned, skip to the next part. Use - * roundown (not roundup), as the loop will increase - * offset in next step. - */ - offset = rounddown(offset + trx->length, blocksize); + /* Jump to the end of TRX */ + offset = roundup(offset + trx->length, blocksize); + /* Next loop iteration will increase the offset */ + offset -= blocksize; continue; }