All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 00/21] UBI: various rework/cleanup/fixes
@ 2016-09-05 15:04 Boris Brezillon
  2016-09-05 15:04 ` [PATCH v2 01/17] UBI: fastmap: use ubi_find_volume() instead of open coding it Boris Brezillon
                   ` (17 more replies)
  0 siblings, 18 replies; 29+ messages in thread
From: Boris Brezillon @ 2016-09-05 15:04 UTC (permalink / raw)
  To: Artem Bityutskiy, Richard Weinberger
  Cc: David Woodhouse, Brian Norris, linux-mtd, linux-kernel, Boris Brezillon

Hi,

Here is a set of cleanup patches (+one fix in patch 4 for a bug that
is unlikely to happen).

Note that I'm not doing that for fun. I'm currently trying to patch UBI
to support the 'LEB consolidation' concept (which is the solution we're
heading to for reliable MLC NAND support), and the duplication of
similar code blocks makes this transition harder to code/review.

If you want to see the big picture, here is my development branch [1].
It contains the current state of MLC support in UBI. It's not finished
yet, but should give a good idea why the cleanup changes are needed. 

Regards,

Boris

Changes since v1:
- add a more rework/cleanups to ease future introduction of MLC support

[1]https://github.com/bbrezillon/linux-sunxi/commits/ubi/mlc

Boris Brezillon (17):
  UBI: fastmap: use ubi_find_volume() instead of open coding it
  UBI: fix add_fastmap() to use the vid_hdr passed in argument
  UBI: fastmap: avoid multiple be32_to_cpu() when unneccesary
  UBI: fastmap: scrub PEB when bitflips are detected in a free PEB EC
    header
  UBI: factorize code used to manipulate volumes at attach time
  UBI: factorize destroy_av() and ubi_remove_av() code
  UBI: fastmap: use ubi_rb_for_each_entry() in unmap_peb()
  UBI: fastmap: use ubi_io_{read,write}_data() instead of
    ubi_io_{read,write}()
  UBI: provide helpers to allocate and free aeb elements
  UBI: move the global ech and vidh variables into struct
    ubi_attach_info
  UBI: simplify recover_peb() code
  UBI: simplify LEB write and atomic LEB change code
  UBI: add an helper to check lnum validity
  UBI: provide an helper to check whether a LEB is mapped or not
  UBI: provide an helper to query LEB information
  UBI: hide EBA internals
  UBI: introduce the VID buffer concept

 drivers/mtd/ubi/attach.c  | 304 ++++++++++++++--------
 drivers/mtd/ubi/build.c   |   2 +-
 drivers/mtd/ubi/cdev.c    |   4 +-
 drivers/mtd/ubi/eba.c     | 637 +++++++++++++++++++++++++++-------------------
 drivers/mtd/ubi/fastmap.c | 188 ++++++--------
 drivers/mtd/ubi/io.c      |  39 +--
 drivers/mtd/ubi/kapi.c    |  16 +-
 drivers/mtd/ubi/ubi.h     | 132 +++++++---
 drivers/mtd/ubi/vmt.c     |  40 ++-
 drivers/mtd/ubi/vtbl.c    |  17 +-
 drivers/mtd/ubi/wl.c      |  19 +-
 11 files changed, 829 insertions(+), 569 deletions(-)

-- 
2.7.4

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

end of thread, other threads:[~2016-09-16 13:27 UTC | newest]

Thread overview: 29+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-09-05 15:04 [PATCH v2 00/21] UBI: various rework/cleanup/fixes Boris Brezillon
2016-09-05 15:04 ` [PATCH v2 01/17] UBI: fastmap: use ubi_find_volume() instead of open coding it Boris Brezillon
2016-09-05 15:04 ` [PATCH v2 02/17] UBI: fix add_fastmap() to use the vid_hdr passed in argument Boris Brezillon
2016-09-05 15:04 ` [PATCH v2 03/17] UBI: fastmap: avoid multiple be32_to_cpu() when unneccesary Boris Brezillon
2016-09-05 15:04 ` [PATCH v2 04/17] UBI: fastmap: scrub PEB when bitflips are detected in a free PEB EC header Boris Brezillon
2016-09-05 15:04 ` [PATCH v2 05/17] UBI: factorize code used to manipulate volumes at attach time Boris Brezillon
2016-09-05 15:04 ` [PATCH v2 06/17] UBI: factorize destroy_av() and ubi_remove_av() code Boris Brezillon
2016-09-05 15:04 ` [PATCH v2 07/17] UBI: fastmap: use ubi_rb_for_each_entry() in unmap_peb() Boris Brezillon
2016-09-05 15:04 ` [PATCH v2 08/17] UBI: fastmap: use ubi_io_{read,write}_data() instead of ubi_io_{read,write}() Boris Brezillon
2016-09-05 15:04   ` [PATCH v2 08/17] UBI: fastmap: use ubi_io_{read, write}_data() instead of ubi_io_{read, write}() Boris Brezillon
2016-09-05 15:05 ` [PATCH v2 09/17] UBI: provide helpers to allocate and free aeb elements Boris Brezillon
2016-09-05 15:05 ` [PATCH v2 10/17] UBI: move the global ech and vidh variables into struct ubi_attach_info Boris Brezillon
2016-09-05 15:05 ` [PATCH v2 11/17] UBI: simplify recover_peb() code Boris Brezillon
2016-09-16 10:14   ` Richard Weinberger
2016-09-16 11:23     ` Boris Brezillon
2016-09-16 13:23       ` Richard Weinberger
2016-09-16 13:27         ` Boris Brezillon
2016-09-05 15:05 ` [PATCH v2 12/17] UBI: simplify LEB write and atomic LEB change code Boris Brezillon
2016-09-05 15:05 ` [PATCH v2 13/17] UBI: add an helper to check lnum validity Boris Brezillon
2016-09-05 15:05 ` [PATCH v2 14/17] UBI: provide an helper to check whether a LEB is mapped or not Boris Brezillon
2016-09-05 15:05 ` [PATCH v2 15/17] UBI: provide an helper to query LEB information Boris Brezillon
2016-09-05 15:05 ` [PATCH v2 16/17] UBI: hide EBA internals Boris Brezillon
2016-09-16 10:43   ` Richard Weinberger
2016-09-16 11:38     ` Boris Brezillon
2016-09-16 13:24       ` Richard Weinberger
2016-09-05 15:05 ` [PATCH v2 17/17] UBI: introduce the VID buffer concept Boris Brezillon
2016-09-16 11:38   ` Richard Weinberger
2016-09-16 11:41     ` Boris Brezillon
2016-09-16 13:26 ` [PATCH v2 00/21] UBI: various rework/cleanup/fixes Richard Weinberger

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.