Master node recovery /corruption
Thomas Brandt
brandt at bury.com
Mon Mar 25 04:34:22 EDT 2013
Am 18.03.2013 16:42, schrieb Thomas Brandt:
> Hi,
>
> I've a little question regarding the recovery of a master node.
> In my case the first master node was corrupted and could not be recovered.
>
> After taking a look to the code:
> /fs/ubifs/recovery.c
>
> int ubifs_recover_master_node(struct ubifs_info *c)
> {
> void *buf1 = NULL, *buf2 = NULL, *cor1 = NULL, *cor2 = NULL;
> struct ubifs_mst_node *mst1 = NULL, *mst2 = NULL, *mst;
> const int sz = c->mst_node_alsz;
> int err, offs1, offs2;
>
> dbg_rcvry("recovery");
>
> err = get_master_node(c, UBIFS_MST_LNUM, &buf1, &mst1, &cor1);
> if (err)
> goto out_free;
>
> err = get_master_node(c, UBIFS_MST_LNUM + 1, &buf2, &mst2, &cor2);
> if (err)
> goto out_free;
>
> I see that if getting the first master node fails the function returns
> without trying to get the second master node, which should be as far as
> I understand it, a mirror of the first master node?!.
>
> Is there any reason why it must be handled in that way?
> Because after I've done a little hack (don't care that first node fails)
> ithe first master node was recovered from the second one and it could be
> mounted without any errors.
>
> At the moment it difficult for me to say whats right or wrong!?
> Might there be a bug?
>
> Cheers,
> Thomas
>
>
>
>
>
> ______________________________________________________
> Linux MTD discussion mailing list
> http://lists.infradead.org/mailman/listinfo/linux-mtd/
>
Hello again!
Does somebody take care of this?
BR,
Thomas
More information about the linux-mtd
mailing list