[PATCH 1/2] UBI: Fix error path in scan_pool()

Richard Weinberger richard at nod.at
Thu Sep 26 03:24:32 EDT 2013


Am 26.09.2013 09:20, schrieb Richard Genoud:
> On 25/09/2013 22:32, Richard Weinberger wrote:
>> We have to set "ret", not "err" in case of an error.
>>
>> Reported-by: Richard Genoud <richard.genoud at gmail.com>
>> Signed-off-by: Richard Weinberger <richard at nod.at>
>> ---
>>  drivers/mtd/ubi/fastmap.c | 2 +-
>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/drivers/mtd/ubi/fastmap.c b/drivers/mtd/ubi/fastmap.c
>> index f5aa4b0..9b42add 100644
>> --- a/drivers/mtd/ubi/fastmap.c
>> +++ b/drivers/mtd/ubi/fastmap.c
>> @@ -428,7 +428,7 @@ static int scan_pool(struct ubi_device *ubi, struct ubi_attach_info *ai,
>>  		if (be32_to_cpu(ech->image_seq) != ubi->image_seq) {
>>  			ubi_err("bad image seq: 0x%x, expected: 0x%x",
>>  				be32_to_cpu(ech->image_seq), ubi->image_seq);
>> -			err = UBI_BAD_FASTMAP;
>> +			ret = UBI_BAD_FASTMAP;
>>  			goto out;
>>  		}
>>  
>>
> 
> Tested-by: Richard Genoud <richard.genoud at gmail.com>
> 
> It reveals another bug though.
> 
> [    0.812500] UBI: default fastmap pool size: 95
> [    0.820312] UBI: default fastmap WL pool size: 25
> [    0.820312] UBI: attaching mtd2 to ubi0
> [    0.914062] UBI error: scan_pool: bad image seq: 0x0, expected: 0x352a9728

This worries me more...
The fastmap is corrupted, now we have to find out why.
Broken driver? Powercut? IO errors?

> [    0.921875] UBI error: ubi_scan_fastmap: Attach by fastmap failed, doing a full scan!
> [    0.929687] kmem_cache_destroy ubi_ainf_peb_slab: Slab cache still has objects

I see.

Thanks,
//richard



More information about the linux-mtd mailing list