linux-mtd.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: Dongsheng Yang <dongsheng.yang@easystack.cn>
To: Boris Brezillon <boris.brezillon@free-electrons.com>,
	Dongsheng Yang <dongsheng081251@gmail.com>
Cc: starvik@axis.com, jesper.nilsson@axis.com,
	Dongsheng Yang <yangds.fnst@cn.fujitsu.com>,
	linux-cris-kernel@axis.com, shengyong1@huawei.com,
	Ard Biesheuvel <ard.biesheuvel@linaro.org>,
	richard <richard@nod.at>,
	dmitry.torokhov@gmail.com, dooooongsheng.yang@gmail.com,
	jschultz@xes-inc.com, fabf@skynet.be, mtownsend1973@gmail.com,
	linux-mtd@lists.infradead.org,
	Colin King <colin.king@canonical.com>,
	asierra@xes-inc.com, Brian Norris <computersforpeace@gmail.com>,
	David Woodhouse <dwmw2@infradead.org>
Subject: Re: MTD RAID
Date: Fri, 19 Aug 2016 15:15:06 +0800	[thread overview]
Message-ID: <57B6B1FA.7050108@easystack.cn> (raw)
In-Reply-To: <57B6B073.9060404@easystack.cn>

In addition, current implementation actually have a retry in reading.


     if (++i_copy >= raid->ncopies)
         goto out;

     ret = mtd_raid_ctx_retry(ctx, i_copy);


That means, we can read the good one copy from RAID-1 device even there
is one bad device.

Yang

On 08/19/2016 03:08 PM, Dongsheng Yang wrote:
>
>
> On 08/19/2016 02:49 PM, Boris Brezillon wrote:
>> Hi Dongsheng,
>>
>> On Fri, 19 Aug 2016 14:34:54 +0800
>> Dongsheng Yang <dongsheng081251@gmail.com> wrote:
>>
>>> Hi guys,
>>>      This is a email about MTD RAID.
>>>
>>> *Code:*
>>>      kernel:
>>> https://github.com/yangdongsheng/linux/tree/mtd_raid_v2-for-4.7
>> Just had a quick look at the code, and I see at least one major problem
>> in your RAID-1 implementation: you're ignoring the fact that NAND blocks
>> can be or become bad. What's the plan for that?
>
> Hi Boris,
>     Thanx for your quick reply.
>
>     When you are using RAID-1, it would erase the all mirrored blockes 
> when you are erasing.
> if there is a bad block in them, mtd_raid_erase will return an error 
> and the userspace tool
> or ubi will mark this block as bad, that means, the 
> mtd_raid_block_markbad() will mark the all
>  mirrored blocks as bad, although some of it are good.
>
> In addition, when you have data in flash with RAID-1, if one block 
> become bad. For example,
> when the mtd0 and mtd1 are used to build a RAID-1 device mtd2. When 
> you are using mtd2
> and you found there is a block become bad. Don't worry about data 
> losing, the data is still
> saved in the good one mirror. you can replace the bad one device with 
> another new mtd device.
>
> My plan about this feature is all on the userspace tool.
> (1). mtd_raid scan mtd2 <---- this will show the status of RAID device 
> and each member of it.
> (2). mtd_raid replace mtd2 --old mtd1 --new mtd3.   <---- this will 
> replace the bad one mtd1 with mtd3.
>
> What about this idea?
>
> Yang
>>
>> Regards,
>>
>> Boris
>>
>> ______________________________________________________
>> Linux MTD discussion mailing list
>> http://lists.infradead.org/mailman/listinfo/linux-mtd/
>>
>
>
> ______________________________________________________
> Linux MTD discussion mailing list
> http://lists.infradead.org/mailman/listinfo/linux-mtd/
>

  reply	other threads:[~2016-08-19  7:15 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <CA+qeAOpuZ0CXZP8tCWdhoVvTEKAw26gtz63-UJmQ4XLSXAd=Yg@mail.gmail.com>
2016-08-19  6:49 ` MTD RAID Boris Brezillon
2016-08-19  7:08   ` Dongsheng Yang
2016-08-19  7:15     ` Dongsheng Yang [this message]
2016-08-19  7:28       ` Dongsheng Yang
2016-08-19  8:20     ` Boris Brezillon
     [not found]       ` <CA+qeAOrSAi9uTHGCi-5cAJpM_O45oJUihNP-rHHa1FWL7_ZKHQ@mail.gmail.com>
2016-08-19  9:37         ` Boris Brezillon
2016-08-19 10:22           ` Dongsheng Yang
2016-08-19 11:36             ` Boris Brezillon
     [not found]       ` <57B6CC7B.1060208@easystack.cn>
2016-08-19  9:47         ` Richard Weinberger
2016-08-19 10:30           ` Dongsheng Yang
2016-08-19 10:30           ` Artem Bityutskiy
2016-08-19 10:38             ` Dongsheng Yang
     [not found]               ` <AL*AZwAyAecQSM1UjjjNxao0.3.1471605640762.Hmail.dongsheng.yang@easystack.cn>
2016-08-19 11:55                 ` Boris Brezillon
2016-08-22  4:01                   ` Dongsheng Yang
2016-08-22  7:09                     ` Boris Brezillon
     [not found]                   ` <57BA6FFA.6000601@easystack.cn>
2016-08-22  7:07                     ` Boris Brezillon
2016-08-22  7:27                     ` Artem Bityutskiy
     [not found]                       ` <CAAp9bSh-geStbHpA6+vYdLfNLcinWkfVLOGmX4kdRbja+d2MdA@mail.gmail.com>
2016-08-22 14:54                         ` Artem Bityutskiy
2016-08-22 15:30                           ` David Woodhouse
2016-08-23  3:44   ` Dongsheng Yang

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=57B6B1FA.7050108@easystack.cn \
    --to=dongsheng.yang@easystack.cn \
    --cc=ard.biesheuvel@linaro.org \
    --cc=asierra@xes-inc.com \
    --cc=boris.brezillon@free-electrons.com \
    --cc=colin.king@canonical.com \
    --cc=computersforpeace@gmail.com \
    --cc=dmitry.torokhov@gmail.com \
    --cc=dongsheng081251@gmail.com \
    --cc=dooooongsheng.yang@gmail.com \
    --cc=dwmw2@infradead.org \
    --cc=fabf@skynet.be \
    --cc=jesper.nilsson@axis.com \
    --cc=jschultz@xes-inc.com \
    --cc=linux-cris-kernel@axis.com \
    --cc=linux-mtd@lists.infradead.org \
    --cc=mtownsend1973@gmail.com \
    --cc=richard@nod.at \
    --cc=shengyong1@huawei.com \
    --cc=starvik@axis.com \
    --cc=yangds.fnst@cn.fujitsu.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).