[PATCH v2 for v3.15 0/3] UBI: block: Support very large volumes

Artem Bityutskiy dedekind1 at gmail.com
Mon Jul 28 09:05:25 PDT 2014


On Fri, 2014-07-25 at 20:10 -0300, Ezequiel Garcia wrote:
> I think this series got lost :-(
> 
> It's not in today's -next, and I'm looking at your pull for v3.16 and it's
> not there either. It seems I overlooked it, and realised just now, just before
> sending a new fix.
> 
> Any idea what happened?

Shame, but no idea. May be I applied them on a laptop, and forgot to
push, and then never noticed. Anyway, sorry, just applied and pushed
out.

>  	return 0;
> @@ -412,7 +412,7 @@ int ubiblock_create(struct ubi_volume_info *vi)
>  	gd->first_minor = dev->ubi_num * UBI_MAX_VOLUMES + dev->vol_id;
>  	gd->private_data = dev;
>  	sprintf(gd->disk_name, "ubiblock%d_%d", dev->ubi_num, dev->vol_id);
> -	disk_capacity = (vi->size * vi->usable_leb_size) >> 9;
> +	disk_capacity = vi->used_bytes >> 9;

I think you should first align up and then divide.  Something like

disk_capacity = ALIGN(vi->used_bytes, 512) / 512

may be?

By the way, do you really need to shift instead of just dividing, which
is more readable. I think with nowadays' compilers ">> 9" and "/ 512"
will give the same code, and the latter seems a bit more readable, no?

-- 
Best Regards,
Artem Bityutskiy




More information about the linux-mtd mailing list