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.
______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/