[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CACQ1gAhOtCTVVnSvso1-jq+MyminKC2i244d9je=v0acAzzRBw@mail.gmail.com>
Date: Mon, 9 Jul 2012 12:15:17 +0200
From: Richard Genoud <richard.genoud@...il.com>
To: Shmulik Ladkani <shmulik.ladkani@...il.com>
Cc: Artem Bityutskiy <dedekind1@...il.com>,
linux-mtd@...ts.infradead.org, linux-kernel@...r.kernel.org,
Richard Weinberger <richard@....at>
Subject: Re: [PATCH 2/5] ubi: Limit amount of reserved eraseblocks for bad PEB handling
2012/7/4 Shmulik Ladkani <shmulik.ladkani@...il.com>:
> diff --git a/drivers/mtd/ubi/misc.c b/drivers/mtd/ubi/misc.c
> index f6a7d7a..e9dcb83 100644
> --- a/drivers/mtd/ubi/misc.c
> +++ b/drivers/mtd/ubi/misc.c
> @@ -98,10 +98,18 @@ int ubi_check_volume(struct ubi_device *ubi, int vol_id)
> */
> void ubi_calculate_reserved(struct ubi_device *ubi)
> {
> - ubi->beb_rsvd_level = ubi->good_peb_count/100;
> - ubi->beb_rsvd_level *= CONFIG_MTD_UBI_BEB_RESERVE;
> - if (ubi->beb_rsvd_level < MIN_RESEVED_PEBS)
> - ubi->beb_rsvd_level = MIN_RESEVED_PEBS;
> + /*
> + * Calculate the actual number of PEBs currently needed to be reserved
> + * for future bad eraseblock handling.
> + */
> + ubi->beb_rsvd_level = ubi->bad_peb_limit - ubi->bad_peb_count;
> + if (ubi->beb_rsvd_level < 0) {
> + ubi->beb_rsvd_level = 0;
> + ubi_warn("number of bad PEBs (%d) is above the expected limit "
> + "(%d), not reserving any PEBs for bad PEB handling, "
> + "will use available PEBs (if any)",
> + ubi->bad_peb_count, ubi->bad_peb_limit);
> + }
> }
is it ok for beb_rsvd_level to be in the range [0..x[ instead of [2..x[ ?
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists