kernel: bcm47xxpart: fix getting user-space data partition name
Partition name is picked by a parser_trx_data_part_name(). It has to
get correct partition offset (taking care of bad blocks) to work
properly.
This fixes UBI support for devices that have kernel flashed on partition
with a bad block.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit 7ddba08d87)
			
			
This commit is contained in:
		| @@ -59,9 +59,10 @@ Signed-off-by: Rafał Miłecki <zajec5@gmail.com> | ||||
|   | ||||
|  	if (trx.offset[i]) { | ||||
|  		part = &parts[curr_part++]; | ||||
|  		part->name = parser_trx_data_part_name(mtd, trx.offset[i]); | ||||
| -		part->name = parser_trx_data_part_name(mtd, trx.offset[i]); | ||||
| -		part->offset = trx.offset[i]; | ||||
| +		part->offset = parser_trx_real_offset(mtd, trx.offset[i]); | ||||
| +		part->name = parser_trx_data_part_name(mtd, part->offset); | ||||
|  		i++; | ||||
|  	} | ||||
|   | ||||
|   | ||||
| @@ -59,9 +59,10 @@ Signed-off-by: Rafał Miłecki <zajec5@gmail.com> | ||||
|   | ||||
|  	if (trx.offset[i]) { | ||||
|  		part = &parts[curr_part++]; | ||||
|  		part->name = parser_trx_data_part_name(mtd, trx.offset[i]); | ||||
| -		part->name = parser_trx_data_part_name(mtd, trx.offset[i]); | ||||
| -		part->offset = trx.offset[i]; | ||||
| +		part->offset = parser_trx_real_offset(mtd, trx.offset[i]); | ||||
| +		part->name = parser_trx_data_part_name(mtd, part->offset); | ||||
|  		i++; | ||||
|  	} | ||||
|   | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Rafał Miłecki
					Rafał Miłecki