diff options
Diffstat (limited to 'drivers/mtd/ubi/vmt.c')
| -rw-r--r-- | drivers/mtd/ubi/vmt.c | 20 | 
1 files changed, 2 insertions, 18 deletions
diff --git a/drivers/mtd/ubi/vmt.c b/drivers/mtd/ubi/vmt.c index 0669cff8ac3..9169e58c262 100644 --- a/drivers/mtd/ubi/vmt.c +++ b/drivers/mtd/ubi/vmt.c @@ -443,15 +443,7 @@ int ubi_remove_volume(struct ubi_volume_desc *desc, int no_vtbl)  	spin_lock(&ubi->volumes_lock);  	ubi->rsvd_pebs -= reserved_pebs;  	ubi->avail_pebs += reserved_pebs; -	i = ubi->beb_rsvd_level - ubi->beb_rsvd_pebs; -	if (i > 0) { -		i = ubi->avail_pebs >= i ? i : ubi->avail_pebs; -		ubi->avail_pebs -= i; -		ubi->rsvd_pebs += i; -		ubi->beb_rsvd_pebs += i; -		if (i > 0) -			ubi_msg("reserve more %d PEBs", i); -	} +	ubi_update_reserved(ubi);  	ubi->vol_count -= 1;  	spin_unlock(&ubi->volumes_lock); @@ -558,15 +550,7 @@ int ubi_resize_volume(struct ubi_volume_desc *desc, int reserved_pebs)  		spin_lock(&ubi->volumes_lock);  		ubi->rsvd_pebs += pebs;  		ubi->avail_pebs -= pebs; -		pebs = ubi->beb_rsvd_level - ubi->beb_rsvd_pebs; -		if (pebs > 0) { -			pebs = ubi->avail_pebs >= pebs ? pebs : ubi->avail_pebs; -			ubi->avail_pebs -= pebs; -			ubi->rsvd_pebs += pebs; -			ubi->beb_rsvd_pebs += pebs; -			if (pebs > 0) -				ubi_msg("reserve more %d PEBs", pebs); -		} +		ubi_update_reserved(ubi);  		for (i = 0; i < reserved_pebs; i++)  			new_mapping[i] = vol->eba_tbl[i];  		kfree(vol->eba_tbl);  |