All of lore.kernel.org
 help / color / mirror / Atom feed
* master node can not be recovered
@ 2015-11-02 16:10 Bean Huo 霍斌斌 (beanhuo)
  2015-11-02 16:46 ` Richard Weinberger
  2015-11-03  8:32 ` Artem Bityutskiy
  0 siblings, 2 replies; 11+ messages in thread
From: Bean Huo 霍斌斌 (beanhuo) @ 2015-11-02 16:10 UTC (permalink / raw)
  To: linux-mtd; +Cc: Richard Weinberger

Hi, Richard 
I tested my UBI power loss solution, have a question about master node.
We all know that if master node be corrupted by power loss , we can recover it by second one. But from my testing results, in fact,
It cannot be recovered by second backup master node. If first master node be corrupted by power loss, this relevant block will be correctly read, get_master_node will not reture 0, so next time recover operation will not run.
Or I'm wrong?

Best Regards!

BeanHuo


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

* Re: master node can not be recovered
  2015-11-02 16:10 master node can not be recovered Bean Huo 霍斌斌 (beanhuo)
@ 2015-11-02 16:46 ` Richard Weinberger
  2015-11-03  9:12   ` Artem Bityutskiy
  2015-11-03  8:32 ` Artem Bityutskiy
  1 sibling, 1 reply; 11+ messages in thread
From: Richard Weinberger @ 2015-11-02 16:46 UTC (permalink / raw)
  To: Bean Huo 霍斌斌 (beanhuo), linux-mtd

Bean,

Am 02.11.2015 um 17:10 schrieb Bean Huo 霍斌斌 (beanhuo):
> Hi, Richard 
> I tested my UBI power loss solution, have a question about master node.
> We all know that if master node be corrupted by power loss , we can recover it by second one. But from my testing results, in fact,
> It cannot be recovered by second backup master node. If first master node be corrupted by power loss, this relevant block will be correctly read, get_master_node will not reture 0, so next time recover operation will not run.
> Or I'm wrong?

ubifs_recover_master_node() is very strict.
Can it be that in your case more than the last written page is corrupted?

Thanks,
//richard

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

* Re: master node can not be recovered
  2015-11-02 16:10 master node can not be recovered Bean Huo 霍斌斌 (beanhuo)
  2015-11-02 16:46 ` Richard Weinberger
@ 2015-11-03  8:32 ` Artem Bityutskiy
  1 sibling, 0 replies; 11+ messages in thread
From: Artem Bityutskiy @ 2015-11-03  8:32 UTC (permalink / raw)
  To: Bean Huo 霍斌斌 (beanhuo), linux-mtd; +Cc: Richard Weinberger

On Mon, 2015-11-02 at 16:10 +0000, Bean Huo 霍斌斌 (beanhuo) wrote:
> Hi, Richard 
> I tested my UBI power loss solution, have a question about master
> node.
> We all know that if master node be corrupted by power loss , we can
> recover it by second one. But from my testing results, in fact,
> It cannot be recovered by second backup master node. If first master
> node be corrupted by power loss, this relevant block will be
> correctly read, get_master_node will not reture 0, so next time
> recover operation will not run.
> Or I'm wrong?

There are debugging messages, can you please try to enable them and
share the resutl, so that we could see what was going on?

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

* Re: master node can not be recovered
  2015-11-02 16:46 ` Richard Weinberger
@ 2015-11-03  9:12   ` Artem Bityutskiy
  2015-11-04  7:43     ` Bean Huo 霍斌斌 (beanhuo)
  2015-12-04  7:51     ` Bean Huo 霍斌斌 (beanhuo)
  0 siblings, 2 replies; 11+ messages in thread
From: Artem Bityutskiy @ 2015-11-03  9:12 UTC (permalink / raw)
  To: Richard Weinberger, Bean Huo 霍斌斌 (beanhuo),
	linux-mtd

On Mon, 2015-11-02 at 17:46 +0100, Richard Weinberger wrote:
> ubifs_recover_master_node() is very strict.

Just like the rest of the recovery code, the master node part is
consistent with that.

> Can it be that in your case more than the last written page is
> corrupted?

I suspect so too.

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

* RE: master node can not be recovered
  2015-11-03  9:12   ` Artem Bityutskiy
@ 2015-11-04  7:43     ` Bean Huo 霍斌斌 (beanhuo)
  2015-11-04  8:03       ` Richard Weinberger
  2015-12-04  7:51     ` Bean Huo 霍斌斌 (beanhuo)
  1 sibling, 1 reply; 11+ messages in thread
From: Bean Huo 霍斌斌 (beanhuo) @ 2015-11-04  7:43 UTC (permalink / raw)
  To: dedekind1, Richard Weinberger, linux-mtd


> On Mon, 2015-11-02 at 17:46 +0100, Richard Weinberger wrote:
> > ubifs_recover_master_node() is very strict.
> 
> Just like the rest of the recovery code, the master node part is consistent with
> that.
> 
> > Can it be that in your case more than the last written page is
> > corrupted?
> 
> I suspect so too.

Hi, Artem
	The second master node not be corrupted. I will test again later, and send it out.

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

* Re: master node can not be recovered
  2015-11-04  7:43     ` Bean Huo 霍斌斌 (beanhuo)
@ 2015-11-04  8:03       ` Richard Weinberger
  2015-11-04  8:20         ` Artem Bityutskiy
  0 siblings, 1 reply; 11+ messages in thread
From: Richard Weinberger @ 2015-11-04  8:03 UTC (permalink / raw)
  To: Bean Huo 霍斌斌 (beanhuo), dedekind1, linux-mtd

Am 04.11.2015 um 08:43 schrieb Bean Huo 霍斌斌 (beanhuo):
> 
>> On Mon, 2015-11-02 at 17:46 +0100, Richard Weinberger wrote:
>>> ubifs_recover_master_node() is very strict.
>>
>> Just like the rest of the recovery code, the master node part is consistent with
>> that.
>>
>>> Can it be that in your case more than the last written page is
>>> corrupted?
>>
>> I suspect so too.
> 
> Hi, Artem
> 	The second master node not be corrupted. I will test again later, and send it out.

UBIFS uses two LEBs to store master nodes.
If UBIFS was interrupted (unclean reboot) while writing a master node it will double check
whether only this last written page is corrupted and then copy the node from the
second LEB.
But if two or more pages are corrupted UBIFS will give up as this most not happen
from UBIFS's point of view.

Thanks,
//richard

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

* Re: master node can not be recovered
  2015-11-04  8:03       ` Richard Weinberger
@ 2015-11-04  8:20         ` Artem Bityutskiy
  2015-11-04  8:25           ` Bityutskiy, Artem
  2015-11-04  8:40           ` Boris Brezillon
  0 siblings, 2 replies; 11+ messages in thread
From: Artem Bityutskiy @ 2015-11-04  8:20 UTC (permalink / raw)
  To: Richard Weinberger, Bean Huo 霍斌斌 (beanhuo),
	linux-mtd

On Wed, 2015-11-04 at 09:03 +0100, Richard Weinberger wrote:
> But if two or more pages are corrupted UBIFS will give up as this
> most not happen
> from UBIFS's point of view.

Right, and I hear that a lot of bug reports and frustration comes from
this. This worked with SLCs we were using when implementing UBIFS
(particularly, Samsung OneNAND was used, it was very high-quality
NAND). Nowadays, this needs to be changed.

UBIFS logic is this. If there is a corruption, then it must be in the
last used NAND page. Pages after this NAND page must contain empty
space.

A small complication, which is not important now, is that UBIFS may
operate with multiple NAND pages, this depends on what the driver tells
is the min. IO size.

No the logic behind this was that we always write data from the
beginning of the LEB, and continue to its end. In case of a power cut,
we can only get corruption in the last NAND page (or more strictly,
min. I/O unit) where we were writing to. The next NAND page and all the
NAND pages after it should be empty. The previous NAND page and all the
NAND pages before it should contain valid data (CRC OK).

Pretty simple. Worked well.

So what has to be changed in this logic? Obviously, the definition of
empty space should be changed, it seems, because obviously not every
driver wants/can ECC-protect the empty space.

What else?

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

* Re: master node can not be recovered
  2015-11-04  8:20         ` Artem Bityutskiy
@ 2015-11-04  8:25           ` Bityutskiy, Artem
  2015-11-04  8:40           ` Boris Brezillon
  1 sibling, 0 replies; 11+ messages in thread
From: Bityutskiy, Artem @ 2015-11-04  8:25 UTC (permalink / raw)
  To: beanhuo, richard, linux-mtd


On Wed, 2015-11-04 at 10:20 +0200, Artem Bityutskiy wrote:
> Right, and I hear that a lot of bug reports and frustration comes
> from
> this. This worked with SLCs we were using when implementing UBIFS
> (particularly, Samsung OneNAND was used, it was very high-quality
> NAND). Nowadays, this needs to be changed.
> 
> UBIFS logic is this. If there is a corruption, then it must be in the
> last used NAND page. Pages after this NAND page must contain empty
> space.
> 
> A small complication, which is not important now, is that UBIFS may
> operate with multiple NAND pages, this depends on what the driver
> tells
> is the min. IO size.
> 
> No the logic behind this was that we always write data from the
> beginning of the LEB, and continue to its end. In case of a power
> cut,
> we can only get corruption in the last NAND page (or more strictly,
> min. I/O unit) where we were writing to. The next NAND page and all
> the
> NAND pages after it should be empty. The previous NAND page and all
> the
> NAND pages before it should contain valid data (CRC OK).
> 
> Pretty simple. Worked well.
> 
> So what has to be changed in this logic? Obviously, the definition of
> empty space should be changed, it seems, because obviously not every
> driver wants/can ECC-protect the empty space.
> 
> What else?

And by the way, from my point of view, if someone wants to add MLC
support, just fixing this problem is a good practical step forward. I
see a lot of discussions about MLC support, and we even have some
arguments, and the whole thing looks complex. But this is a much
smaller isolated piece of work which would contribute to the MLC
support effort, and the implementer would learn UBIFS while
implementing this, and would be a lot more confident about making UBIFS
changes. I think I can sense this attitude: oh, UBIFS is complex, let's
try to do most in UBI, it seems simpler to deal with.

-- 
Best Regards,

Artem Bityutskiy
---------------------------------------------------------------------
Intel Finland Oy
Registered Address: PL 281, 00181 Helsinki 
Business Identity Code: 0357606 - 4 
Domiciled in Helsinki 

This e-mail and any attachments may contain confidential material for
the sole use of the intended recipient(s). Any review or distribution
by others is strictly prohibited. If you are not the intended
recipient, please contact the sender and delete all copies.

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

* Re: master node can not be recovered
  2015-11-04  8:20         ` Artem Bityutskiy
  2015-11-04  8:25           ` Bityutskiy, Artem
@ 2015-11-04  8:40           ` Boris Brezillon
  2015-11-04  8:57             ` Artem Bityutskiy
  1 sibling, 1 reply; 11+ messages in thread
From: Boris Brezillon @ 2015-11-04  8:40 UTC (permalink / raw)
  To: Artem Bityutskiy
  Cc: Richard Weinberger,
	Bean Huo 霍斌斌 "(beanhuo)",
	linux-mtd

Hi Artem,

On Wed, 04 Nov 2015 10:20:50 +0200
Artem Bityutskiy <dedekind1@gmail.com> wrote:

> On Wed, 2015-11-04 at 09:03 +0100, Richard Weinberger wrote:
> > But if two or more pages are corrupted UBIFS will give up as this
> > most not happen
> > from UBIFS's point of view.
> 
> Right, and I hear that a lot of bug reports and frustration comes from
> this. This worked with SLCs we were using when implementing UBIFS
> (particularly, Samsung OneNAND was used, it was very high-quality
> NAND). Nowadays, this needs to be changed.
> 
> UBIFS logic is this. If there is a corruption, then it must be in the
> last used NAND page. Pages after this NAND page must contain empty
> space.
> 
> A small complication, which is not important now, is that UBIFS may
> operate with multiple NAND pages, this depends on what the driver tells
> is the min. IO size.
> 
> No the logic behind this was that we always write data from the
> beginning of the LEB, and continue to its end. In case of a power cut,
> we can only get corruption in the last NAND page (or more strictly,
> min. I/O unit) where we were writing to. The next NAND page and all the
> NAND pages after it should be empty. The previous NAND page and all the
> NAND pages before it should contain valid data (CRC OK).
> 
> Pretty simple. Worked well.
> 
> So what has to be changed in this logic? Obviously, the definition of
> empty space should be changed, it seems, because obviously not every
> driver wants/can ECC-protect the empty space.

There's a series trying to address this problem by fixing bitflips in
erased pages, and hopefully all NAND controller drivers will be fixed
at some point (either by using the generic helper or by implementing a
similar logic to detect bitflips in erased pages).

> 
> What else?

Well I don't know if this is the subject here, but for MLC NANDs,
because of paired pages, the corruption can occur between two pages
that have already been correctly written.
The question is, what should we do in this case? Should we drop all the
pages following the corrupted page in the LEB? Should we only drop the
faulty page and parse the nodes in the valid pages we can find after
this corruption (I don't know if it can be the case, but if some nodes
depend on other nodes, doing that may not work)? Any other option?

Best Regards,

Boris

[1]http://thread.gmane.org/gmane.linux.drivers.mtd/61358

-- 
Boris Brezillon, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com

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

* Re: master node can not be recovered
  2015-11-04  8:40           ` Boris Brezillon
@ 2015-11-04  8:57             ` Artem Bityutskiy
  0 siblings, 0 replies; 11+ messages in thread
From: Artem Bityutskiy @ 2015-11-04  8:57 UTC (permalink / raw)
  To: Boris Brezillon
  Cc: Richard Weinberger,
	Bean Huo 霍斌斌 "(beanhuo)",
	linux-mtd

On Wed, 2015-11-04 at 09:40 +0100, Boris Brezillon wrote:
> The question is, what should we do in this case? Should we drop all
> the
> pages following the corrupted page in the LEB? Should we only drop
> the
> faulty page and parse the nodes in the valid pages we can find after
> this corruption (I don't know if it can be the case, but if some
> nodes
> depend on other nodes, doing that may not work)? Any other option?

To recap my opinion expressed in the other thread.

1. We only care about paired pages in the power cut context.
2. This means that we care about paired pages in the same places where
we care about losing data or metadata.
3. UBIFS has a number of places where it cares about data and metadata,
and paired pages story should boil down to changes those places.
Examples of the places would be: wbuf sync, the log, the master nodes,
LPT.
4. The strategy seems to be pretty simple: skipping enough pages. And
UBIFS already has the "padding" mechanism which does this.

Or in other words, whenever we have to make sure the data does not get
affected by a power cut, we skip pages. This happens when user
syncs/fsyncs/unmounts/etc, when we commit, when we write the master
node or a log nod, etc. All are limited number of places, where we
already explicitly care about power cuts.

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

* RE: master node can not be recovered
  2015-11-03  9:12   ` Artem Bityutskiy
  2015-11-04  7:43     ` Bean Huo 霍斌斌 (beanhuo)
@ 2015-12-04  7:51     ` Bean Huo 霍斌斌 (beanhuo)
  1 sibling, 0 replies; 11+ messages in thread
From: Bean Huo 霍斌斌 (beanhuo) @ 2015-12-04  7:51 UTC (permalink / raw)
  To: dedekind1, Richard Weinberger; +Cc: linux-mtd

Hi, 
For this, I have new update:
Following is uncorruped master node info, There is no ECC error.
As for backup master node, it alread be coruupted by 
Unclear power down, and contains random data.

# nanddump -p -o -s 0x23054000 -l 0x1000  /dev/mtd4 
ECC failed: 6
ECC corrected: 0
Number of bad blocks: 0
Number of bbt blocks: 0
Block size 1048576, page size 4096, OOB size 216
Dumping data starting at 0x23054000 and ending at 0x23055000...

0x23054000: 31 18 10 06 38 42 ad 67 cc f5 07 00 00 00 00 00
0x23054010: 00 02 00 00 07 00 00 00 26 18 00 00 00 00 00 00
0x23054020: 79 64 00 00 00 00 00 00 03 00 00 00 04 00 00 00
0x23054030: d2 06 00 00 08 51 07 00 94 00 00 00 0b 00 00 00
0x23054040: d2 06 00 00 00 60 07 00 58 00 03 00 00 00 00 00
0x23054050: 00 00 f6 69 00 00 00 00 30 e8 a5 02 00 00 00 00
0x23054060: 78 f7 13 01 00 00 00 00 00 00 00 00 00 00 00 00
0x23054070: 00 c0 db 00 00 00 00 00 06 00 00 00 9d 10 01 00
0x23054080: 06 00 00 00 00 20 01 00 06 00 00 00 00 10 01 00
0x23054090: 00 00 00 00 00 00 00 00 33 00 00 00 ab 06 00 00
0x230540a0: 0b 00 00 00 f2 06 00 00 00 00 00 00 00 00 00 00
0x230540b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x230540c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x230540d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x230540e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x230540f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054100: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054110: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054120: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054130: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054140: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054150: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054160: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054170: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054180: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054190: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x230541a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x230541b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x230541c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x230541d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x230541e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x230541f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054200: 31 18 10 06 57 8f 1d e0 00 00 00 00 00 00 00 00
0x23054210: 1c 00 00 00 05 00 00 00 e4 0d 00 00 00 00 00 00
0x23054220: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054230: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054240: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054250: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054260: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054270: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054280: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054290: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x230542a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x230542b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x230542c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x230542d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x230542e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x230542f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054300: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054310: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054320: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054330: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054340: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054350: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054360: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054370: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054380: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054390: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x230543a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x230543b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x230543c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x230543d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x230543e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x230543f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054400: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054410: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054420: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054430: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054440: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054450: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054460: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054470: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054480: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054490: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x230544a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x230544b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x230544c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x230544d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x230544e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x230544f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054500: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054510: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054520: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054530: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054540: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054550: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054560: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054570: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054580: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054590: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x230545a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x230545b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x230545c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x230545d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x230545e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x230545f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054600: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054610: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054620: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054630: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054640: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054650: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054660: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054670: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054680: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054690: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x230546a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x230546b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x230546c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x230546d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x230546e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x230546f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054700: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054710: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054720: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054730: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054740: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054750: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054760: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054770: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054780: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054790: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x230547a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x230547b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x230547c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x230547d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x230547e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x230547f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054800: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054810: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054820: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054830: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054840: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054850: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054860: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054870: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054880: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054890: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x230548a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x230548b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x230548c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x230548d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x230548e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x230548f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054900: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054910: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054920: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054930: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054940: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054950: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054960: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054970: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054980: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054990: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x230549a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x230549b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x230549c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x230549d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x230549e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x230549f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054a00: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054a10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054a20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054a30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054a40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054a50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054a60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054a70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054a80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054a90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054aa0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054ab0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054ac0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054ad0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054ae0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054af0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054b00: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054b10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054b20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054b30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054b40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054b50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054b60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054b70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054b80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054b90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054ba0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054bb0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054bc0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054bd0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054be0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054bf0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054c00: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054c10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054c20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054c30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054c40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054c50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054c60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054c70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054c80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054c90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054ca0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054cb0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054cc0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054cd0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054ce0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054cf0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054d00: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054d10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054d20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054d30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054d40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054d50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054d60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054d70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054d80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054d90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054da0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054db0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054dc0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054dd0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054de0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054df0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054e00: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054e10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054e20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054e30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054e40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054e50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054e60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054e70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054e80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054e90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054ea0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054eb0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054ec0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054ed0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054ee0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054ef0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054f00: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054f10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054f20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054f30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054f40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054f50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054f60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054f70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054f80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054f90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054fa0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054fb0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054fc0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054fd0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054fe0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x23054ff0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
  OOB Data: ff ff ff ff ff ff ff ff ff ff ff ff 01 45 a1 de
  OOB Data: 25 95 a6 49 bb 07 d5 cc 89 f1 c7 68 32 42 a2 cd
  OOB Data: c9 85 93 6c cd cb 1c 81 59 a2 37 95 63 9a b5 e4
  OOB Data: 30 13 6d 22 55 eb ff ff ff ff ff ff ff ff ff ff
  OOB Data: ff ff 73 f4 44 96 fb c8 77 9c b7 21 0f 75 42 3e
  OOB Data: 9b ba 3e 30 cf 2f 8e 04 f3 cf ad e4 1f bd 50 08
  OOB Data: d1 2e 11 68 7c 2f f6 5b 12 ae ef 97 ff ff ff ff
  OOB Data: ff ff ff ff ff ff ff ff 73 f4 44 96 fb c8 77 9c
  OOB Data: b7 21 0f 75 42 3e 9b ba 3e 30 cf 2f 8e 04 f3 cf
  OOB Data: ad e4 1f bd 50 08 d1 2e 11 68 7c 2f f6 5b 12 ae
  OOB Data: ef 97 ff ff ff ff ff ff ff ff ff ff ff ff 73 f4
  OOB Data: 44 96 fb c8 77 9c b7 21 0f 75 42 3e 9b ba 3e 30
  OOB Data: cf 2f 8e 04 f3 cf ad e4 1f bd 50 08 d1 2e 11 68
  OOB Data: 7c 2f f6 5b 12 ae ef 97


# mount -t ubifs  /dev/ubi1_0 /mnt/
brcmnand brcmnand.0: uncorrectable error at 0x2d34ec00
brcmnand brcmnand.0: uncorrectable error at 0x2d354c00
brcmnand brcmnand.0: uncorrectable error at 0x2d34ec00
brcmnand brcmnand.0: uncorrectable error at 0x2d354c00
brcmnand brcmnand.0: uncorrectable error at 0x2d34ec00
brcmnand brcmnand.0: uncorrectable error at 0x2d354c00
brcmnand brcmnand.0: uncorrectable error at 0x2d34ec00
brcmnand brcmnand.0: uncorrectable error at 0x2d354c00
UBI error: ubi_io_read: error -77 (ECC error) while reading 1040384 bytes from PEB 561:8192, read 1040384 bytes
brcmnand brcmnand.0: uncorrectable error at 0x2d34ec00
brcmnand brcmnand.0: uncorrectable error at 0x2d354c00
brcmnand brcmnand.0: uncorrectable error at 0x2d34ec00
brcmnand brcmnand.0: uncorrectable error at 0x2d354c00
brcmnand brcmnand.0: uncorrectable error at 0x2d34ec00
brcmnand brcmnand.0: uncorrectable error at 0x2d354c00
brcmnand brcmnand.0: uncorrectable error at 0x2d34ec00
brcmnand brcmnand.0: uncorrectable error at 0x2d354c00
UBI error: ubi_io_read: error -77 (ECC error) while reading 1040384 bytes from PEB 561:8192, read 1040384 bytes
UBIFS error (pid 535): ubifs_recover_master_node: failed to recover master node
mount: mounting /dev/ubi1_0 on /mnt/ failed: Invalid argument

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

end of thread, other threads:[~2015-12-04  7:52 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-11-02 16:10 master node can not be recovered Bean Huo 霍斌斌 (beanhuo)
2015-11-02 16:46 ` Richard Weinberger
2015-11-03  9:12   ` Artem Bityutskiy
2015-11-04  7:43     ` Bean Huo 霍斌斌 (beanhuo)
2015-11-04  8:03       ` Richard Weinberger
2015-11-04  8:20         ` Artem Bityutskiy
2015-11-04  8:25           ` Bityutskiy, Artem
2015-11-04  8:40           ` Boris Brezillon
2015-11-04  8:57             ` Artem Bityutskiy
2015-12-04  7:51     ` Bean Huo 霍斌斌 (beanhuo)
2015-11-03  8:32 ` Artem Bityutskiy

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.