[PATCH 4/4] UBI: replace MTD_UBI_BEB_LIMIT with user-space parameter
Shmulik Ladkani
shmulik.ladkani at gmail.com
Thu Aug 16 04:57:13 EDT 2012
Hi Richard,
Sorry for reviewing this late...
On Tue, 10 Jul 2012 18:23:42 +0200 Richard Genoud <richard.genoud at gmail.com> wrote:
> -config MTD_UBI_BEB_LIMIT
> - int "Maximum expected bad eraseblocks per 1024 eraseblocks"
> - default 20
> - range 2 256
I see some benefit keeping the config.
For the simplest systems (those having one ubi device) that need a limit
*other* than the default (20 per 1024), they can simply set the config
to their chosen value, as they were used to.
With you approach, these system MUST pass the limit parameter via the
ioctl / module-parameter.
> +static int get_bad_peb_limit(const struct ubi_device *ubi, int max_beb_per1024)
> +{
> + int device_peb_count;
> + uint64_t device_size;
> + int beb_limit = 0;
> +
> + /* this has already been checked in ioctl */
> + if (max_beb_per1024 <= 0)
> + goto out;
Can you explain how 'max_beb_per1024 <= 0' may happen?
It seems that all of your calls to 'ubi_attach_mtd_dev' pass a positive
max_beb_per1024 value (the default is always set). See your
'ubi_mtd_param_parse' and 'ctrl_cdev_ioctl'. Am I missing something?
Also, since max_beb_per1024 is always set, how one may specify a zero
limit?
Regards,
Shmulik
More information about the linux-mtd
mailing list