Re: [PATCH] mtd: fix calculating partition end address

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

 



Hi Rafał,

Rafał Miłecki <rafal@xxxxxxxxxx> wrote on Tue, 24 Mar 2020 23:06:05
+0100:

> Hey,
> 
> On 2020-03-24 22:58, Miquel Raynal wrote:
> > Rafał Miłecki <rafal@xxxxxxxxxx> wrote on Mon, 09 Mar 2020 15:19:10
> > +0100:
> >   
> >> On 2020-03-09 15:04, Miquel Raynal wrote:  
> >> > Rafał Miłecki <zajec5@xxxxxxxxx> wrote on Mon,  9 Mar 2020 08:44:45
> >> > +0100:
> >> >  
> >> >> From: Rafał Miłecki <rafal@xxxxxxxxxx>  
> >> >> >> This fixes check for partitions that don't start at beginning of their  
> >> >> parents. Missing partition's offset in formula could result in forcing
> >> >> read-only incorrectly.  
> >> >> >> Fixes: 6750f61a13a0 ("mtd: improve calculating partition boundaries >> when checking for alignment")  
> >> >> Signed-off-by: Rafał Miłecki <rafal@xxxxxxxxxx>
> >> >> ---
> >> >>  drivers/mtd/mtdpart.c | 2 +-
> >> >>  1 file changed, 1 insertion(+), 1 deletion(-)  
> >> >> >> diff --git a/drivers/mtd/mtdpart.c b/drivers/mtd/mtdpart.c  
> >> >> index 7328c066c5ba..c683b432cc5e 100644
> >> >> --- a/drivers/mtd/mtdpart.c
> >> >> +++ b/drivers/mtd/mtdpart.c
> >> >> @@ -524,7 +524,7 @@ static struct mtd_part *allocate_partition(struct >> mtd_info *parent,
> >> >>  			part->name);
> >> >>  	}  
> >> >> >> -	tmp = part_absolute_offset(parent) + slave->mtd.size;  
> >> >> +	tmp = part_absolute_offset(parent) + slave->offset + >> slave->mtd.size;  
> >> >
> >> > I think you are doing the change at the wrong place, if you want to
> >> > check where the partition *starts* you should do it a few lines above.
> >> > But I think the check should be here as well, probably.  
> >> >> The check where the partition *starts* is OK and I don't mean to >> change  
> >> it. The bug is about calculating absolute *end* address of partition.  
> >> >> >> > Anyway, I just applied on my local tree a patch rewriting a bit the  
> >> > partitioning scheme, could you please rebase on top of today's
> >> > mtd/next and resend this patch updated?
> >> >
> >> > Here is the change that I've done at this place:
> >> > 	-       tmp = part_absolute_offset(parent) + slave->mtd.size;
> >> > 	+       tmp = mtd_get_master_ofs(child, 0) + child->size;  
> >> >> I'll give it a try.  
> > 
> > I would like to apply your fix this week, do you think you can rebase
> > and resend soon?  
> 
> It's not needed anymore as you fixed this bug in your commit reworking
> partitions.

Great!


Thanks for the info
Miquèl

______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/




[Index of Archives]     [LARTC]     [Bugtraq]     [Yosemite Forum]     [Photo]

  Powered by Linux