linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* UBI fastmap updates
@ 2012-07-09 12:18 Richard Weinberger
  2012-07-09 12:18 ` [PATCH 1/7] UBI: Fastmap: Fix lock imbalance in case of an error Richard Weinberger
                   ` (11 more replies)
  0 siblings, 12 replies; 62+ messages in thread
From: Richard Weinberger @ 2012-07-09 12:18 UTC (permalink / raw)
  To: linux-mtd
  Cc: linux-kernel, adrian.hunter, Heinz.Egger, thomas.wucher,
	shmulik.ladkani, tglx, tim.bird, Marius.Mazarel,
	artem.bityutskiy, nyoushchenko

This is the next round of UBI fastmap updates.
It fixes all issues pointed out by Shmulik. :-)

If you want to test fastmap you can use my git repo:
git://git.kernel.org/pub/scm/linux/kernel/git/rw/ubi2.git ubi2/v17

Enjoy!
//richard

[PATCH 1/7] UBI: Fastmap: Fix lock imbalance in case of an error
[PATCH 2/7] UBI: Fastmap: Get rid of find_fastmap switch
[PATCH 3/7] UBI: Fastmap: Fix memory leak in error path
[PATCH 4/7] UBI: Fastmap: Fix double free in error path
[PATCH 5/7] UBI: Fastmap: Kerneldoc fixes
[PATCH 6/7] UBI: Fastmap: Make sure that find_wl_entry() never
[PATCH 7/7] UBI: Fastmap: Make checkpatch.pl happy

^ permalink raw reply	[flat|nested] 62+ messages in thread
* UBI fastmap updates
@ 2013-09-28 13:55 Richard Weinberger
  2013-10-03 16:44 ` Artem Bityutskiy
  0 siblings, 1 reply; 62+ messages in thread
From: Richard Weinberger @ 2013-09-28 13:55 UTC (permalink / raw)
  To: dedekind1; +Cc: richard.genoud, linux-mtd, linux-kernel

this series is a collection of all pending UBI fastmap updates.

Richard Genoud found issues in combination with U-Boot.
These issues also uncovered other minor issues in some error paths.
Only one fix is not really fastmap specific and touches generic 
UBI code, "UBI: simplify image sequence test".

Thanks,
//richard

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

Richard Weinberger (5):
      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 | 41 +++++++++++++++++++++++++++++++++++++----
 drivers/mtd/ubi/wl.c      |  4 ----
 3 files changed, 43 insertions(+), 13 deletions(-)

^ permalink raw reply	[flat|nested] 62+ messages in thread
* UBI fastmap updates
@ 2012-07-02 16:23 Richard Weinberger
  0 siblings, 0 replies; 62+ messages in thread
From: Richard Weinberger @ 2012-07-02 16:23 UTC (permalink / raw)
  To: linux-mtd
  Cc: linux-kernel, adrian.hunter, Heinz.Egger, thomas.wucher,
	shmulik.ladkani, tglx, tim.bird, Marius.Mazarel,
	artem.bityutskiy, nyoushchenko

This is the next round of UBI fastmap updates.

If you want to test fastmap you can use my git repo:
git://git.kernel.org/pub/scm/linux/kernel/git/rw/ubi2.git ubi2/v16

Enjoy!
//richard

[PATCH 1/3] UBI: Fastmap: Document return codes.
[PATCH 2/3] UBI: Fastmap: Export fm_auto to sysfs
[PATCH 3/3] UBI: Fastmap: Simplify fastmap buffers

^ permalink raw reply	[flat|nested] 62+ messages in thread
* UBI fastmap updates
@ 2012-06-29 15:14 Richard Weinberger
  2012-06-30 10:43 ` Artem Bityutskiy
  2012-07-08 11:47 ` Shmulik Ladkani
  0 siblings, 2 replies; 62+ messages in thread
From: Richard Weinberger @ 2012-06-29 15:14 UTC (permalink / raw)
  To: linux-mtd
  Cc: linux-kernel, adrian.hunter, Heinz.Egger, thomas.wucher,
	shmulik.ladkani, tglx, tim.bird, Marius.Mazarel,
	artem.bityutskiy, nyoushchenko

This is the next round of UBI fastmap updates.

Fastmap is now disabled by default.
If you attach an image it will not automatically convert it
to the fastmap format.
UBI has a new module parameter "fm_auto".
If set to 1 UBI will create a fastmap automatically on your
flash device.
Please see commit "Add a module parameter to enable fastmap"
for more details.

If you want to test fastmap you can use my git repo:
git://git.kernel.org/pub/scm/linux/kernel/git/rw/ubi2.git ubi2/v15

Enjoy!
//richard

[PATCH 01/11] UBI: Fastmap: Fix mem leak in error path
[PATCH 02/11] UBI: Fastmap: Amend self_check_eba()
[PATCH 03/11] UBI: Fastmap: Remove forward declaration
[PATCH 04/11] UBI: Fastmap: Move fastmap specific code into
[PATCH 05/11] UBI: Fastmap: Kill TODO
[PATCH 06/11] UBI: Fastmap: Remove unused variable
[PATCH 07/11] UBI: Fastmap: Fix scan regression
[PATCH 08/11] ubi: fastmap: Remove 'ubi' parameter of 'destroy_ai()'
[PATCH 09/11] ubi: fastmap: Do not free 'ai' in 'scan_all()'
[PATCH 10/11] UBI: Fastmap: Disable fastmap per default
[PATCH 11/11] UBI: Fastmap: Add a module parameter to enable fastmap

^ permalink raw reply	[flat|nested] 62+ messages in thread
* UBI fastmap updates
@ 2012-06-27 15:57 Richard Weinberger
  0 siblings, 0 replies; 62+ messages in thread
From: Richard Weinberger @ 2012-06-27 15:57 UTC (permalink / raw)
  To: linux-mtd
  Cc: linux-kernel, adrian.hunter, Heinz.Egger, thomas.wucher,
	shmulik.ladkani, tglx, tim.bird, Marius.Mazarel,
	artem.bityutskiy, nyoushchenko

This is the next round of UBI fastmap updates.
Most changes are coding style and kernel doc fixes.

The highlights are:
	- Fastmap stores now the pool size in it's anchor PEB
	  such that users can set custom pool sizes. (E.g using ubinize)

I've addressed all TODOs.
I did not remove this point from the TODO list:
"2. Implement power-cut emulation infrastructure similar to what is in UBIFS and
   test UBI + fastmap with it."

Artem, do we really need a new power-cut emulation infrastructure?
I did some tests using integck (integck -p -m 0 /mnt).
Nothing bad happened. :-)
Ff you disable writing the fastmap at detach time you can also simulate
a power cut. I did that very often. We written fastmap has to be valid at any time!
Also if a power cut happens while writing the fastmap it's CRC will be
bad and fastmap falls back to scanning mode.
So, I'm not 100% sure what fastmap specific power cut tests need to be done.

Another point:
UBI_FM_MAX_POOL_SIZE is currently 256.
A fastmap pool cannot be greater than this value.
Are we fine with this upper limit?

If you want to test fastmap you can use my git repo:
git://git.kernel.org/pub/scm/linux/kernel/git/rw/ubi2.git ubi2/v14

Enjoy!
//richard

[PATCH 01/16] UBI: Fastmap: Check find_mean_wl_entry()'s return
[PATCH 02/16] UBI: Fastmap: Kernel doc updates
[PATCH 03/16] UBI: Fastmap: Fix license version
[PATCH 04/16] UBI: Fastmap: Rename self_check_fastmap()
[PATCH 05/16] UBI: Fastmap: Address a TODO
[PATCH 06/16] UBI: Fastmap: Address another TODO
[PATCH 07/16] UBI: Fastmap: Address jet another TOOD
[PATCH 08/16] UBI: Fastmap: Address another TOOD
[PATCH 09/16] UBI: Fastmap: Be more verbose on fastmap failure
[PATCH 10/16] UBI: Fastmap: More kernel doc updates
[PATCH 11/16] UBI: Fastmap: Store pool sizes in fastmap
[PATCH 12/16] UBI: Fastmap: Make checkpatch.pl happy
[PATCH 13/16] UBI: Fastmap: Remove one point from TODO list
[PATCH 14/16] UBI: Fastmap: Remove one point from TODO list
[PATCH 15/16] UBI: Fastmap: Remove one point from TODO list
[PATCH 16/16] UBI: Fastmap: Remove one point from TODO list

^ permalink raw reply	[flat|nested] 62+ messages in thread
* UBI fastmap updates
@ 2012-06-23 13:03 Richard Weinberger
  2012-06-27  4:20 ` Namjae Jeon
  0 siblings, 1 reply; 62+ messages in thread
From: Richard Weinberger @ 2012-06-23 13:03 UTC (permalink / raw)
  To: linux-mtd
  Cc: linux-kernel, adrian.hunter, Heinz.Egger, thomas.wucher,
	shmulik.ladkani, tglx, tim.bird, Marius.Mazarel,
	artem.bityutskiy, nyoushchenko

This is the next round of UBI fastmap updates.

The highlights are:
	- Fastmap produces anchor PEBs if none are available
	  (creating a fastmap on an image created by ubinize works now)
	- Fastmap is now able to reuse all PEBs if no empty PEBs are available
	- Minor fixes

If you want to test fastmap you can use my git repo:
git://git.kernel.org/pub/scm/linux/kernel/git/rw/ubi2.git ubi2/v13

Enjoy!
//richard

[PATCH 1/7] UBI: Fastmap: Modify the WL sub-system to prodcue a free
[PATCH 2/7] UBI: Fastmap: Fix WARN_ON()
[PATCH 3/7] UBI: Fastmap: Ensure that not all anchor PEBs go into a
[PATCH 4/7] UBI: Fastmap: Fix ubi_assert()
[PATCH 5/7] UBI: Fastmap: Kill max_pnum logic
[PATCH 6/7] UBI: Fastmap: Reuse all fastmap PEB if no free PEBs are
[PATCH 7/7] UBI: Fastmap: Get rid of fm_pool_mutex

^ permalink raw reply	[flat|nested] 62+ messages in thread
* UBI Fastmap updates
@ 2012-06-18 16:18 Richard Weinberger
  0 siblings, 0 replies; 62+ messages in thread
From: Richard Weinberger @ 2012-06-18 16:18 UTC (permalink / raw)
  To: linux-mtd
  Cc: linux-kernel, adrian.hunter, Heinz.Egger, thomas.wucher,
	shmulik.ladkani, tglx, tim.bird, Marius.Mazarel,
	artem.bityutskiy

This is the next round of UBI fastmap updates.
It contains mostly fixes.

The highlights are:
- ubi_wl_flush() is no longer needed before creating the fastmap
- It passes all tests (ubi-tests, my own tests) with bit flit emulation and UBI self checks enabled.
- If UBI self checks are enabled UBI is able to proof the correctness of an EBA created from by fastmap.
- Endianness has been successfully tested (using qemu-x86 and qemu-ppc)

If you want to test fastmap you can use my git repo:
git://git.kernel.org/pub/scm/linux/kernel/git/rw/ubi2.git ubi2/v11

Please don't get confused with the release number, v11 is the internal release.

Fastmap has been tested on PPC, ARM, x86 on both real hardware and emulation using qemu.
To catch race conditions lots of tests have been done on a very fast x86 multi core machine.
So far nothing exploded. :-)
I'll send my fastmap torture script plus a paranoia patch in a separate mail.

Enjoy!
//richard

[PATCH 01/22] UBI: Fastmap: Add EBA selfcheck
[PATCH 02/22] UBI: Fastmap: Fix NULL pointer bug
[PATCH 03/22] UBI: Fastmap: Keep fastmap after attaching
[PATCH 04/22] UBI: Fastmap: Store scrub list in fastmap
[PATCH 05/22] UBI: Fastmap: Rework ubi_wl_put_fm_peb()
[PATCH 06/22] UBI: Fastmap: Make EBA table self check depend on
[PATCH 07/22] UBI: Fastmap: Fix build (a left over from the ai->fm
[PATCH 08/22] Revert "UBI: Fastmap: Check for duplicated PEBs in
[PATCH 09/22] UBI: Fastmap: Fix PEB count assert
[PATCH 10/22] UBI: Fastmap: Remove more useless new lines
[PATCH 11/22] UBI: Fastmap: Get rid of ubi_wl_flush() in
[PATCH 12/22] UBI: Fastmap: Locking fixes
[PATCH 13/22] UBI: Fastmap: Fix EC values
[PATCH 14/22] UBI: Fastmap: Fix copy&paste error
[PATCH 15/22] UBI: Fastmap: Kill old fastmap in case of a failure
[PATCH 16/22] UBI: Fastmap: Fix loglevel
[PATCH 17/22] UBI: Fastmap: Add comments to new functions
[PATCH 18/22] UBI: Fastmap: Rename "early PEB" to "anchor PEB".
[PATCH 19/22] UBI: Fastmap: Init fm_sem
[PATCH 20/22] UBI: Fastmap: Use good_peb_count in assert
[PATCH 21/22] UBI: Fastmap: Fix and explain duplicated PEBs
[PATCH 22/22] UBI: Fastmap: Replace crc32_be() with crc32()

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

end of thread, other threads:[~2013-10-03 16:44 UTC | newest]

Thread overview: 62+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-07-09 12:18 UBI fastmap updates Richard Weinberger
2012-07-09 12:18 ` [PATCH 1/7] UBI: Fastmap: Fix lock imbalance in case of an error Richard Weinberger
2012-07-09 12:18 ` [PATCH 2/7] UBI: Fastmap: Get rid of find_fastmap switch Richard Weinberger
2012-07-09 12:18 ` [PATCH 3/7] UBI: Fastmap: Fix memory leak in error path Richard Weinberger
2012-07-09 12:18 ` [PATCH 4/7] UBI: Fastmap: Fix double free " Richard Weinberger
2012-07-09 12:18 ` [PATCH 5/7] UBI: Fastmap: Kerneldoc fixes Richard Weinberger
2012-07-09 12:18 ` [PATCH 6/7] UBI: Fastmap: Make sure that find_wl_entry() never returns NULL Richard Weinberger
2012-07-09 12:18 ` [PATCH 7/7] UBI: Fastmap: Make checkpatch.pl happy Richard Weinberger
2012-08-02 14:12 ` UBI fastmap updates Artem Bityutskiy
2012-08-02 14:15   ` Richard Weinberger
2012-08-02 14:29     ` Artem Bityutskiy
2012-08-02 14:51       ` Richard Weinberger
2012-08-02 16:17         ` Artem Bityutskiy
2012-08-02 16:32           ` Richard Weinberger
2012-08-02 16:45             ` Artem Bityutskiy
2012-08-02 16:54               ` Richard Weinberger
2012-08-02 17:03               ` Tim Bird
2012-08-02 17:06                 ` Richard Weinberger
2012-08-02 17:40                 ` Artem Bityutskiy
2012-08-02 17:45                   ` Richard Weinberger
2012-08-02 17:59                     ` Artem Bityutskiy
2012-08-02 18:03                       ` Richard Weinberger
2012-08-02 18:15                         ` Artem Bityutskiy
2012-08-05  8:23                     ` Shmulik Ladkani
2012-08-05 14:25                       ` Richard Weinberger
2012-08-02 17:50                 ` Artem Bityutskiy
2012-08-02 14:58 ` Artem Bityutskiy
2012-08-02 14:59   ` Richard Weinberger
2012-08-02 15:18     ` Artem Bityutskiy
2012-08-02 15:19       ` Richard Weinberger
2012-08-06 17:36   ` Richard Weinberger
2012-08-07  4:21     ` Artem Bityutskiy
2012-08-07  7:29       ` Richard Weinberger
2012-08-07 18:53         ` Artem Bityutskiy
2012-08-02 18:50 ` Artem Bityutskiy
2012-08-02 18:56   ` Artem Bityutskiy
2012-08-03  8:47 ` Artem Bityutskiy
2012-08-03  8:56   ` Richard Weinberger
2012-08-17 13:11 ` Artem Bityutskiy
2012-08-17 13:33   ` Richard Weinberger
2012-08-17 13:41     ` Artem Bityutskiy
2012-08-17 13:43       ` Richard Weinberger
2012-08-17 14:06         ` Artem Bityutskiy
  -- strict thread matches above, loose matches on Subject: below --
2013-09-28 13:55 Richard Weinberger
2013-10-03 16:44 ` Artem Bityutskiy
2012-07-02 16:23 Richard Weinberger
2012-06-29 15:14 Richard Weinberger
2012-06-30 10:43 ` Artem Bityutskiy
2012-06-30 10:53   ` Richard Weinberger
2012-06-30 11:24     ` Artem Bityutskiy
2012-06-30 14:24     ` Artem Bityutskiy
2012-07-08 11:47 ` Shmulik Ladkani
2012-07-08 12:07   ` Richard Weinberger
2012-07-08 15:11     ` Richard Weinberger
2012-07-09  7:37     ` Shmulik Ladkani
2012-07-09  8:19       ` Richard Weinberger
2012-06-27 15:57 Richard Weinberger
2012-06-23 13:03 Richard Weinberger
2012-06-27  4:20 ` Namjae Jeon
2012-06-27  6:48   ` Nikita V. Youshchenko
2012-06-27  7:17     ` Richard Weinberger
2012-06-18 16:18 UBI Fastmap updates Richard Weinberger

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).