mail archive of the barebox mailing list
 help / color / mirror / Atom feed
* UBI patches
@ 2014-01-07 10:05 Sascha Hauer
  2014-01-07 10:05 ` [PATCH 1/9] UBI: Fix PEB leak in wear_leveling_worker() Sascha Hauer
                   ` (8 more replies)
  0 siblings, 9 replies; 11+ messages in thread
From: Sascha Hauer @ 2014-01-07 10:05 UTC (permalink / raw)
  To: barebox

These are some UBI fixes directly taken from Kernel commits.

Sascha

----------------------------------------------------------------
Richard Genoud (2):
      UBI: fastmap: fix backward compatibility with image_seq
      UBI: simplify image sequence test

Richard Weinberger (7):
      UBI: Fix PEB leak in wear_leveling_worker()
      UBI: Fix invalidate_fastmap()
      UBI: fix refill_wl_user_pool()
      UBI: Fix error path in scan_pool()
      UBI: Call scan_all() with correct offset in error case
      UBI: Fix memory leak in ubi_attach_fastmap() error path
      UBI: Add some asserts to ubi_attach_fastmap()

 drivers/mtd/ubi/attach.c  | 11 ++++++-----
 drivers/mtd/ubi/fastmap.c | 46 ++++++++++++++++++++++++++++++++++++++--------
 drivers/mtd/ubi/wl.c      |  7 +++----
 3 files changed, 47 insertions(+), 17 deletions(-)

_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [PATCH 1/9] UBI: Fix PEB leak in wear_leveling_worker()
  2014-01-07 10:05 UBI patches Sascha Hauer
@ 2014-01-07 10:05 ` Sascha Hauer
  2014-01-07 10:05 ` [PATCH 2/9] UBI: Fix invalidate_fastmap() Sascha Hauer
                   ` (7 subsequent siblings)
  8 siblings, 0 replies; 11+ messages in thread
From: Sascha Hauer @ 2014-01-07 10:05 UTC (permalink / raw)
  To: barebox; +Cc: Richard Weinberger, stable

From: Richard Weinberger <richard@nod.at>

get_peb_for_wl() removes the PEB from the free list.
If the WL subsystem detects that no wear leveling is needed
it cancels the operation and drops the gained PEB.
In this case we have to put the PEB back into the free list.

This issue was introduced with commit ed4b7021c
(UBI: remove PEB from free tree in get_peb_for_wl()).

Cc: <stable@vger.kernel.org> # 3.7.x
Signed-off-by: Richard Weinberger <richard@nod.at>
Signed-off-by: Artem Bityutskiy <artem.bityutskiy@linux.intel.com>
---
 drivers/mtd/ubi/wl.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/mtd/ubi/wl.c b/drivers/mtd/ubi/wl.c
index d0d3c97..5a79e98 100644
--- a/drivers/mtd/ubi/wl.c
+++ b/drivers/mtd/ubi/wl.c
@@ -1020,6 +1020,9 @@ static int wear_leveling_worker(struct ubi_device *ubi, struct ubi_work *wrk,
 		if (!(e2->ec - e1->ec >= UBI_WL_THRESHOLD)) {
 			dbg_wl("no WL needed: min used EC %d, max free EC %d",
 			       e1->ec, e2->ec);
+
+			/* Give the unused PEB back */
+			wl_tree_add(e2, &ubi->free);
 			goto out_cancel;
 		}
 		self_check_in_wl_tree(ubi, e1, &ubi->used);
-- 
1.8.5.2


_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [PATCH 2/9] UBI: Fix invalidate_fastmap()
  2014-01-07 10:05 UBI patches Sascha Hauer
  2014-01-07 10:05 ` [PATCH 1/9] UBI: Fix PEB leak in wear_leveling_worker() Sascha Hauer
@ 2014-01-07 10:05 ` Sascha Hauer
  2014-01-07 10:05 ` [PATCH 3/9] UBI: fix refill_wl_user_pool() Sascha Hauer
                   ` (6 subsequent siblings)
  8 siblings, 0 replies; 11+ messages in thread
From: Sascha Hauer @ 2014-01-07 10:05 UTC (permalink / raw)
  To: barebox; +Cc: Richard Weinberger

From: Richard Weinberger <richard@nod.at>

Onging tests uncovered that invalidate_fastmap() is broken.
It must not call ubi_wl_put_fm_peb() because all PEBs used
by the old fastmap have already been put back.

Signed-off-by: Richard Weinberger <richard@nod.at>
Signed-off-by: Artem Bityutskiy <artem.bityutskiy@linux.intel.com>
---
 drivers/mtd/ubi/fastmap.c | 5 +----
 1 file changed, 1 insertion(+), 4 deletions(-)

diff --git a/drivers/mtd/ubi/fastmap.c b/drivers/mtd/ubi/fastmap.c
index 939e534..4d120ae 100644
--- a/drivers/mtd/ubi/fastmap.c
+++ b/drivers/mtd/ubi/fastmap.c
@@ -1338,7 +1338,7 @@ out:
 static int invalidate_fastmap(struct ubi_device *ubi,
 			      struct ubi_fastmap_layout *fm)
 {
-	int ret, i;
+	int ret;
 	struct ubi_vid_hdr *vh;
 
 	ret = erase_block(ubi, fm->e[0]->pnum);
@@ -1355,9 +1355,6 @@ static int invalidate_fastmap(struct ubi_device *ubi,
 	vh->sqnum = cpu_to_be64(ubi_next_sqnum(ubi));
 	ret = ubi_io_write_vid_hdr(ubi, fm->e[0]->pnum, vh);
 
-	for (i = 0; i < fm->used_blocks; i++)
-		ubi_wl_put_fm_peb(ubi, fm->e[i], i, fm->to_be_tortured[i]);
-
 	return ret;
 }
 
-- 
1.8.5.2


_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [PATCH 3/9] UBI: fix refill_wl_user_pool()
  2014-01-07 10:05 UBI patches Sascha Hauer
  2014-01-07 10:05 ` [PATCH 1/9] UBI: Fix PEB leak in wear_leveling_worker() Sascha Hauer
  2014-01-07 10:05 ` [PATCH 2/9] UBI: Fix invalidate_fastmap() Sascha Hauer
@ 2014-01-07 10:05 ` Sascha Hauer
  2014-01-07 10:05 ` [PATCH 4/9] UBI: Fix error path in scan_pool() Sascha Hauer
                   ` (5 subsequent siblings)
  8 siblings, 0 replies; 11+ messages in thread
From: Sascha Hauer @ 2014-01-07 10:05 UTC (permalink / raw)
  To: barebox; +Cc: Richard Weinberger

From: Richard Weinberger <richard@nod.at>

If no free PEBs are available refill_wl_user_pool() must not
return with -ENOSPC immediately.
It has to block till produce_free_peb() produced a free PEB.

Reported-and-Tested-by: Richard Genoud <richard.genoud@gmail.com>
Signed-off-by: Richard Weinberger <richard@nod.at>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
---
 drivers/mtd/ubi/wl.c | 4 ----
 1 file changed, 4 deletions(-)

diff --git a/drivers/mtd/ubi/wl.c b/drivers/mtd/ubi/wl.c
index 5a79e98..34e23b3 100644
--- a/drivers/mtd/ubi/wl.c
+++ b/drivers/mtd/ubi/wl.c
@@ -572,10 +572,6 @@ static void refill_wl_user_pool(struct ubi_device *ubi)
 	return_unused_pool_pebs(ubi, pool);
 
 	for (pool->size = 0; pool->size < pool->max_size; pool->size++) {
-		if (!ubi->free.rb_node ||
-		   (ubi->free_count - ubi->beb_rsvd_pebs < 1))
-			break;
-
 		pool->pebs[pool->size] = __wl_get_peb(ubi);
 		if (pool->pebs[pool->size] < 0)
 			break;
-- 
1.8.5.2


_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [PATCH 4/9] UBI: Fix error path in scan_pool()
  2014-01-07 10:05 UBI patches Sascha Hauer
                   ` (2 preceding siblings ...)
  2014-01-07 10:05 ` [PATCH 3/9] UBI: fix refill_wl_user_pool() Sascha Hauer
@ 2014-01-07 10:05 ` Sascha Hauer
  2014-01-07 10:05 ` [PATCH 5/9] UBI: Call scan_all() with correct offset in error case Sascha Hauer
                   ` (4 subsequent siblings)
  8 siblings, 0 replies; 11+ messages in thread
From: Sascha Hauer @ 2014-01-07 10:05 UTC (permalink / raw)
  To: barebox; +Cc: Richard Weinberger

From: Richard Weinberger <richard@nod.at>

We have to set "ret", not "err" in case of an error.

Reported-and-tested-by: Richard Genoud <richard.genoud@gmail.com>
Signed-off-by: Richard Weinberger <richard@nod.at>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
---
 drivers/mtd/ubi/fastmap.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/mtd/ubi/fastmap.c b/drivers/mtd/ubi/fastmap.c
index 4d120ae..0a343fd 100644
--- a/drivers/mtd/ubi/fastmap.c
+++ b/drivers/mtd/ubi/fastmap.c
@@ -427,7 +427,7 @@ static int scan_pool(struct ubi_device *ubi, struct ubi_attach_info *ai,
 		if (be32_to_cpu(ech->image_seq) != ubi->image_seq) {
 			ubi_err("bad image seq: 0x%x, expected: 0x%x",
 				be32_to_cpu(ech->image_seq), ubi->image_seq);
-			err = UBI_BAD_FASTMAP;
+			ret = UBI_BAD_FASTMAP;
 			goto out;
 		}
 
-- 
1.8.5.2


_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [PATCH 5/9] UBI: Call scan_all() with correct offset in error case
  2014-01-07 10:05 UBI patches Sascha Hauer
                   ` (3 preceding siblings ...)
  2014-01-07 10:05 ` [PATCH 4/9] UBI: Fix error path in scan_pool() Sascha Hauer
@ 2014-01-07 10:05 ` Sascha Hauer
  2014-01-07 10:05 ` [PATCH 6/9] UBI: fastmap: fix backward compatibility with image_seq Sascha Hauer
                   ` (3 subsequent siblings)
  8 siblings, 0 replies; 11+ messages in thread
From: Sascha Hauer @ 2014-01-07 10:05 UTC (permalink / raw)
  To: barebox; +Cc: Richard Weinberger

From: Richard Weinberger <richard@nod.at>

If we find an invalid fastmap we have to scan from the very beginning.
Otherwise we leak the first 64 PEBs.

Reported-and-tested-by: Richard Genoud <richard.genoud@gmail.com>
Signed-off-by: Richard Weinberger <richard@nod.at>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
---
 drivers/mtd/ubi/attach.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/drivers/mtd/ubi/attach.c b/drivers/mtd/ubi/attach.c
index 62d6113..8c5c8c3 100644
--- a/drivers/mtd/ubi/attach.c
+++ b/drivers/mtd/ubi/attach.c
@@ -1397,9 +1397,11 @@ int ubi_attach(struct ubi_device *ubi, int force_scan)
 				ai = alloc_ai("ubi_aeb_slab_cache2");
 				if (!ai)
 					return -ENOMEM;
-			}
 
-			err = scan_all(ubi, ai, UBI_FM_MAX_START);
+				err = scan_all(ubi, ai, 0);
+			} else {
+				err = scan_all(ubi, ai, UBI_FM_MAX_START);
+			}
 		}
 	}
 #else
-- 
1.8.5.2


_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [PATCH 6/9] UBI: fastmap: fix backward compatibility with image_seq
  2014-01-07 10:05 UBI patches Sascha Hauer
                   ` (4 preceding siblings ...)
  2014-01-07 10:05 ` [PATCH 5/9] UBI: Call scan_all() with correct offset in error case Sascha Hauer
@ 2014-01-07 10:05 ` Sascha Hauer
  2014-01-07 10:05 ` [PATCH 7/9] UBI: simplify image sequence test Sascha Hauer
                   ` (2 subsequent siblings)
  8 siblings, 0 replies; 11+ messages in thread
From: Sascha Hauer @ 2014-01-07 10:05 UTC (permalink / raw)
  To: barebox

From: Richard Genoud <richard.genoud@gmail.com>

Some old UBI implementations (e.g. U-Boot) have not implemented the image
sequence feature.
So, when erase blocks are written, the image sequence in the ec header
is lost (set to zero).
UBI scan_all() takes this case into account (commits
32bc4820287a1a03982979515949e8ea56eac641 and
2eadaad67b2b6bd132eda105128d2d466298b8e3)

But fastmap scan functions (ubi_scan_fastmap() and scan_pool()) didn't.

This patch fixes the issue.

Signed-off-by: Richard Genoud <richard.genoud@gmail.com>
Signed-off-by: Richard Weinberger <richard@nod.at>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
---
 drivers/mtd/ubi/fastmap.c | 22 +++++++++++++++++++---
 1 file changed, 19 insertions(+), 3 deletions(-)

diff --git a/drivers/mtd/ubi/fastmap.c b/drivers/mtd/ubi/fastmap.c
index 0a343fd..8963e06 100644
--- a/drivers/mtd/ubi/fastmap.c
+++ b/drivers/mtd/ubi/fastmap.c
@@ -406,6 +406,7 @@ static int scan_pool(struct ubi_device *ubi, struct ubi_attach_info *ai,
 	 */
 	for (i = 0; i < pool_size; i++) {
 		int scrub = 0;
+		int image_seq;
 
 		pnum = be32_to_cpu(pebs[i]);
 
@@ -424,7 +425,13 @@ static int scan_pool(struct ubi_device *ubi, struct ubi_attach_info *ai,
 		} else if (ret == UBI_IO_BITFLIPS)
 			scrub = 1;
 
-		if (be32_to_cpu(ech->image_seq) != ubi->image_seq) {
+		/*
+		 * Older UBI implementations have image_seq set to zero, so
+		 * we shouldn't fail if image_seq == 0.
+		 */
+		image_seq = be32_to_cpu(ech->image_seq);
+
+		if (image_seq && (image_seq != ubi->image_seq)) {
 			ubi_err("bad image seq: 0x%x, expected: 0x%x",
 				be32_to_cpu(ech->image_seq), ubi->image_seq);
 			ret = UBI_BAD_FASTMAP;
@@ -911,6 +918,8 @@ int ubi_scan_fastmap(struct ubi_device *ubi, struct ubi_attach_info *ai,
 	}
 
 	for (i = 0; i < used_blocks; i++) {
+		int image_seq;
+
 		pnum = be32_to_cpu(fmsb->block_loc[i]);
 
 		if (ubi_io_is_bad(ubi, pnum)) {
@@ -928,10 +937,17 @@ int ubi_scan_fastmap(struct ubi_device *ubi, struct ubi_attach_info *ai,
 		} else if (ret == UBI_IO_BITFLIPS)
 			fm->to_be_tortured[i] = 1;
 
+		image_seq = be32_to_cpu(ech->image_seq);
 		if (!ubi->image_seq)
-			ubi->image_seq = be32_to_cpu(ech->image_seq);
+			ubi->image_seq = image_seq;
 
-		if (be32_to_cpu(ech->image_seq) != ubi->image_seq) {
+		/*
+		 * Older UBI implementations have image_seq set to zero, so
+		 * we shouldn't fail if image_seq == 0.
+		 */
+		if (image_seq && (image_seq != ubi->image_seq)) {
+			ubi_err("wrong image seq:%d instead of %d",
+				be32_to_cpu(ech->image_seq), ubi->image_seq);
 			ret = UBI_BAD_FASTMAP;
 			goto free_hdr;
 		}
-- 
1.8.5.2


_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [PATCH 7/9] UBI: simplify image sequence test
  2014-01-07 10:05 UBI patches Sascha Hauer
                   ` (5 preceding siblings ...)
  2014-01-07 10:05 ` [PATCH 6/9] UBI: fastmap: fix backward compatibility with image_seq Sascha Hauer
@ 2014-01-07 10:05 ` Sascha Hauer
  2014-01-07 10:05 ` [PATCH 8/9] UBI: Fix memory leak in ubi_attach_fastmap() error path Sascha Hauer
  2014-01-07 10:05 ` [PATCH 9/9] UBI: Add some asserts to ubi_attach_fastmap() Sascha Hauer
  8 siblings, 0 replies; 11+ messages in thread
From: Sascha Hauer @ 2014-01-07 10:05 UTC (permalink / raw)
  To: barebox

From: Richard Genoud <richard.genoud@gmail.com>

The test:
if (!a && b)
  a = b;
can be symplified in:
if (!a)
  a = b;

And there's no need to test if ubi->image_seq is not null, because if it is,
it is set to image_seq.
So, we just test if image_seq is not null.

Signed-off-by: Richard Genoud <richard.genoud@gmail.com>
Signed-off-by: Richard Weinberger <richard@nod.at>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
---
 drivers/mtd/ubi/attach.c | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/drivers/mtd/ubi/attach.c b/drivers/mtd/ubi/attach.c
index 8c5c8c3..cb2d041 100644
--- a/drivers/mtd/ubi/attach.c
+++ b/drivers/mtd/ubi/attach.c
@@ -893,10 +893,9 @@ static int scan_peb(struct ubi_device *ubi, struct ubi_attach_info *ai,
 		 * number.
 		 */
 		image_seq = be32_to_cpu(ech->image_seq);
-		if (!ubi->image_seq && image_seq)
+		if (!ubi->image_seq)
 			ubi->image_seq = image_seq;
-		if (ubi->image_seq && image_seq &&
-		    ubi->image_seq != image_seq) {
+		if (image_seq && ubi->image_seq != image_seq) {
 			ubi_err("bad image sequence number %d in PEB %d, expected %d",
 				image_seq, pnum, ubi->image_seq);
 			ubi_dump_ec_hdr(ech);
-- 
1.8.5.2


_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [PATCH 8/9] UBI: Fix memory leak in ubi_attach_fastmap() error path
  2014-01-07 10:05 UBI patches Sascha Hauer
                   ` (6 preceding siblings ...)
  2014-01-07 10:05 ` [PATCH 7/9] UBI: simplify image sequence test Sascha Hauer
@ 2014-01-07 10:05 ` Sascha Hauer
  2014-01-07 10:05 ` [PATCH 9/9] UBI: Add some asserts to ubi_attach_fastmap() Sascha Hauer
  8 siblings, 0 replies; 11+ messages in thread
From: Sascha Hauer @ 2014-01-07 10:05 UTC (permalink / raw)
  To: barebox; +Cc: Richard Weinberger

From: Richard Weinberger <richard@nod.at>

On error we have to free all three temporary lists.

Reported-by: Richard Genoud <richard.genoud@gmail.com>
Signed-off-by: Richard Weinberger <richard@nod.at>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
---
 drivers/mtd/ubi/fastmap.c | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/drivers/mtd/ubi/fastmap.c b/drivers/mtd/ubi/fastmap.c
index 8963e06..aaa9f55 100644
--- a/drivers/mtd/ubi/fastmap.c
+++ b/drivers/mtd/ubi/fastmap.c
@@ -830,6 +830,19 @@ static int ubi_attach_fastmap(struct ubi_device *ubi,
 fail_bad:
 	ret = UBI_BAD_FASTMAP;
 fail:
+	list_for_each_entry_safe(tmp_aeb, _tmp_aeb, &used, u.list) {
+		free(tmp_aeb);
+		list_del(&tmp_aeb->u.list);
+	}
+	list_for_each_entry_safe(tmp_aeb, _tmp_aeb, &eba_orphans, u.list) {
+		free(tmp_aeb);
+		list_del(&tmp_aeb->u.list);
+	}
+	list_for_each_entry_safe(tmp_aeb, _tmp_aeb, &lfree, u.list) {
+		free(tmp_aeb);
+		list_del(&tmp_aeb->u.list);
+	}
+
 	return ret;
 }
 
-- 
1.8.5.2


_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [PATCH 9/9] UBI: Add some asserts to ubi_attach_fastmap()
  2014-01-07 10:05 UBI patches Sascha Hauer
                   ` (7 preceding siblings ...)
  2014-01-07 10:05 ` [PATCH 8/9] UBI: Fix memory leak in ubi_attach_fastmap() error path Sascha Hauer
@ 2014-01-07 10:05 ` Sascha Hauer
  8 siblings, 0 replies; 11+ messages in thread
From: Sascha Hauer @ 2014-01-07 10:05 UTC (permalink / raw)
  To: barebox; +Cc: Richard Weinberger

From: Richard Weinberger <richard@nod.at>

Add more paranioa asserts to make it easier to detect
implementation errors.

Signed-off-by: Richard Weinberger <richard@nod.at>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
---
 drivers/mtd/ubi/fastmap.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/drivers/mtd/ubi/fastmap.c b/drivers/mtd/ubi/fastmap.c
index aaa9f55..1ba1571 100644
--- a/drivers/mtd/ubi/fastmap.c
+++ b/drivers/mtd/ubi/fastmap.c
@@ -815,6 +815,10 @@ static int ubi_attach_fastmap(struct ubi_device *ubi,
 	list_for_each_entry_safe(tmp_aeb, _tmp_aeb, &lfree, u.list)
 		list_move_tail(&tmp_aeb->u.list, &ai->free);
 
+	ubi_assert(list_empty(&used));
+	ubi_assert(list_empty(&eba_orphans));
+	ubi_assert(list_empty(&lfree));
+
 	/*
 	 * If fastmap is leaking PEBs (must not happen), raise a
 	 * fat warning and fall back to scanning mode.
-- 
1.8.5.2


_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

^ permalink raw reply	[flat|nested] 11+ messages in thread

* UBI patches
@ 2014-09-11 15:16 Sascha Hauer
  0 siblings, 0 replies; 11+ messages in thread
From: Sascha Hauer @ 2014-09-11 15:16 UTC (permalink / raw)
  To: barebox

The following are the UBI fixes ported from the Kernel. This updates
UBI corresponding to Linux-3.17-rc4.

Sascha

----------------------------------------------------------------
Brian Norris (1):
      UBI: fastmap: do not miss bit-flips

Dan Carpenter (1):
      UBI: fix some use after free bugs

Heiko Schocher (1):
      UBI: fix the volumes tree sorting criteria

Julia Lawall (1):
      UBI: fix error return code

Mike Snitzer (1):
      UBI: fix rb_tree node comparison in add_map

Qi Wang 王起 (qiwang) (1):
      UBI: avoid program operation on NOR flash after erasure interrupted

Richard Weinberger (2):
      UBI: init_volumes: Ignore volumes with no LEBs
      UBI: bugfix in ubi_wl_flush()

Tanya Brokhman (2):
      UBI: fix error path in __wl_get_peb
      UBI: fix ubi free PEBs count calculation

 drivers/mtd/ubi/attach.c  |  4 +++-
 drivers/mtd/ubi/fastmap.c | 12 +++++------
 drivers/mtd/ubi/io.c      | 54 +++++++++++++++++++----------------------------
 drivers/mtd/ubi/vtbl.c    |  2 +-
 drivers/mtd/ubi/wl.c      | 10 +++++++--
 5 files changed, 40 insertions(+), 42 deletions(-)

_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2014-09-11 15:16 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-01-07 10:05 UBI patches Sascha Hauer
2014-01-07 10:05 ` [PATCH 1/9] UBI: Fix PEB leak in wear_leveling_worker() Sascha Hauer
2014-01-07 10:05 ` [PATCH 2/9] UBI: Fix invalidate_fastmap() Sascha Hauer
2014-01-07 10:05 ` [PATCH 3/9] UBI: fix refill_wl_user_pool() Sascha Hauer
2014-01-07 10:05 ` [PATCH 4/9] UBI: Fix error path in scan_pool() Sascha Hauer
2014-01-07 10:05 ` [PATCH 5/9] UBI: Call scan_all() with correct offset in error case Sascha Hauer
2014-01-07 10:05 ` [PATCH 6/9] UBI: fastmap: fix backward compatibility with image_seq Sascha Hauer
2014-01-07 10:05 ` [PATCH 7/9] UBI: simplify image sequence test Sascha Hauer
2014-01-07 10:05 ` [PATCH 8/9] UBI: Fix memory leak in ubi_attach_fastmap() error path Sascha Hauer
2014-01-07 10:05 ` [PATCH 9/9] UBI: Add some asserts to ubi_attach_fastmap() Sascha Hauer
2014-09-11 15:16 UBI patches Sascha Hauer

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox