All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/9] drivers:mtd:UBI: add bakvol module for MLC NAND paired page issue
@ 2015-09-28  7:02 ` Bean Huo 霍斌斌 (beanhuo)
  0 siblings, 0 replies; 17+ messages in thread
From: Bean Huo 霍斌斌 (beanhuo) @ 2015-09-28  7:02 UTC (permalink / raw)
  To: dedekind1, adrian.hunter, computersforpeace, baruch, asierra,
	guz.fnst, gsi, richard, Boris Brezillon
  Cc: Boris Brezillon, David Woodhouse, linux-mtd, Artem Bityutskiy,
	Richard Weinberger, Frank Liu 刘群 (frankliu),
	Andrea Scian, Peter Pan 潘柏宏 (peterpan),
	Karl Zhang 张双锣 (karlzhang),
	Iwo Mergler, Jeff Lauruhn (jlauruhn),
	Stefan Roese, linux-kernel

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset="gb2312", Size: 2424 bytes --]

Hello,

This series aims at adding a bakvol module for MLC NAND paired page
Power loss protection.
MLC NAND paired page power loss is a known issue so far, MLC NAND pages are
coupled in a sense that if you cut power while writing to a page, you corrupt not only
this page, but also one of the previous pages which is paired with the current one.
Currently, there is no a perfect solution for this. 
This paired page solution is based on NAND multiple plane program feature. For this
Patch, only used dual plane page program, means two different plane pages can
Be programmed together at the same time.
Dual plane page program only implements in backup operation. Only lower page data
Be duplicated and back up into a internal log volume by dual plane program method.

This patch has been testing on Micron 70s/80s/90s MLC NAND.
Of course there are some places needed to be improved and simplified.

Any suggestion and comments welcomed.


Bean Huo (9):
  drivers:nand:mtd: add support for UBI bakvol in mtd layer
  drivers:mtd:ubi:add definition for UBI bakvol operation
  drivers:mtd:ubi:add metadata struct for UBI bakvol
  fs:ubifs: add hook for UBI bakvol in ubifs layer
  drivers:mtd:ubi:add support for getting block according to plane
  drivers:mtd:ubi:add hook for UBI bakvol in ubi_io_write
  drivers:mtd:add NAND dual plane program support
  drivers:mtd:ubi:init UBI bakvol and recover corrupted lower page
  drivers:mtd:ubi:add bakvol module in UBI layer

 drivers/mtd/mtdpart.c        |   21 +
 drivers/mtd/nand/nand_base.c |  401 +++++++++++++++
 drivers/mtd/ubi/Kconfig      |   15 +
 drivers/mtd/ubi/Makefile     |    2 +
 drivers/mtd/ubi/attach.c     |   26 +-
 drivers/mtd/ubi/bakvol.c     | 1106 ++++++++++++++++++++++++++++++++++++++++++
 drivers/mtd/ubi/build.c      |    7 +
 drivers/mtd/ubi/io.c         |   63 ++-
 drivers/mtd/ubi/ubi-media.h  |   40 ++
 drivers/mtd/ubi/ubi.h        |   17 +
 drivers/mtd/ubi/wl.c         |  134 +++++
 fs/ubifs/super.c             |    6 +
 fs/ubifs/ubifs.h             |    1 +
 include/linux/mtd/mtd.h      |   19 +
 include/linux/mtd/nand.h     |    4 +
 include/linux/mtd/ubi.h      |    9 +
 16 files changed, 1862 insertions(+), 9 deletions(-)
 create mode 100644 drivers/mtd/ubi/bakvol.c

-- 
1.9.1
ÿôèº{.nÇ+‰·Ÿ®‰­†+%ŠËÿ±éݶ\x17¥Šwÿº{.nÇ+‰·¥Š{±þG«éÿŠ{ayº\x1dʇڙë,j\a­¢f£¢·hšïêÿ‘êçz_è®\x03(­éšŽŠÝ¢j"ú\x1a¶^[m§ÿÿ¾\a«þG«éÿ¢¸?™¨è­Ú&£ø§~á¶iO•æ¬z·švØ^\x14\x04\x1a¶^[m§ÿÿÃ\fÿ¶ìÿ¢¸?–I¥

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

* [PATCH 0/9] drivers:mtd:UBI: add bakvol module for MLC NAND paired page issue
@ 2015-09-28  7:02 ` Bean Huo 霍斌斌 (beanhuo)
  0 siblings, 0 replies; 17+ messages in thread
From: Bean Huo 霍斌斌 (beanhuo) @ 2015-09-28  7:02 UTC (permalink / raw)
  To: dedekind1, adrian.hunter, computersforpeace, baruch, asierra,
	guz.fnst, gsi, richard, Boris Brezillon
  Cc: Boris Brezillon, David Woodhouse, linux-mtd, Artem Bityutskiy,
	Richard Weinberger, Frank Liu 刘群 (frankliu),
	Andrea Scian, Peter Pan 潘柏宏 (peterpan),
	Karl Zhang 张双锣 (karlzhang),
	Iwo Mergler, Jeff Lauruhn (jlauruhn),
	Stefan Roese, linux-kernel

Hello,

This series aims at adding a bakvol module for MLC NAND paired page
Power loss protection.
MLC NAND paired page power loss is a known issue so far, MLC NAND pages are
coupled in a sense that if you cut power while writing to a page, you corrupt not only
this page, but also one of the previous pages which is paired with the current one.
Currently, there is no a perfect solution for this. 
This paired page solution is based on NAND multiple plane program feature. For this
Patch, only used dual plane page program, means two different plane pages can
Be programmed together at the same time.
Dual plane page program only implements in backup operation. Only lower page data
Be duplicated and back up into a internal log volume by dual plane program method.

This patch has been testing on Micron 70s/80s/90s MLC NAND.
Of course there are some places needed to be improved and simplified.

Any suggestion and comments welcomed.


Bean Huo (9):
  drivers:nand:mtd: add support for UBI bakvol in mtd layer
  drivers:mtd:ubi:add definition for UBI bakvol operation
  drivers:mtd:ubi:add metadata struct for UBI bakvol
  fs:ubifs: add hook for UBI bakvol in ubifs layer
  drivers:mtd:ubi:add support for getting block according to plane
  drivers:mtd:ubi:add hook for UBI bakvol in ubi_io_write
  drivers:mtd:add NAND dual plane program support
  drivers:mtd:ubi:init UBI bakvol and recover corrupted lower page
  drivers:mtd:ubi:add bakvol module in UBI layer

 drivers/mtd/mtdpart.c        |   21 +
 drivers/mtd/nand/nand_base.c |  401 +++++++++++++++
 drivers/mtd/ubi/Kconfig      |   15 +
 drivers/mtd/ubi/Makefile     |    2 +
 drivers/mtd/ubi/attach.c     |   26 +-
 drivers/mtd/ubi/bakvol.c     | 1106 ++++++++++++++++++++++++++++++++++++++++++
 drivers/mtd/ubi/build.c      |    7 +
 drivers/mtd/ubi/io.c         |   63 ++-
 drivers/mtd/ubi/ubi-media.h  |   40 ++
 drivers/mtd/ubi/ubi.h        |   17 +
 drivers/mtd/ubi/wl.c         |  134 +++++
 fs/ubifs/super.c             |    6 +
 fs/ubifs/ubifs.h             |    1 +
 include/linux/mtd/mtd.h      |   19 +
 include/linux/mtd/nand.h     |    4 +
 include/linux/mtd/ubi.h      |    9 +
 16 files changed, 1862 insertions(+), 9 deletions(-)
 create mode 100644 drivers/mtd/ubi/bakvol.c

-- 
1.9.1

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

* Re: [PATCH 0/9] drivers:mtd:UBI: add bakvol module for MLC NAND paired page issue
  2015-09-28  7:02 ` Bean Huo 霍斌斌 (beanhuo)
  (?)
@ 2015-09-28  7:41 ` Boris Brezillon
  2015-09-28  8:16     ` Bean Huo 霍斌斌 (beanhuo)
  -1 siblings, 1 reply; 17+ messages in thread
From: Boris Brezillon @ 2015-09-28  7:41 UTC (permalink / raw)
  To: Bean Huo 霍斌斌 (beanhuo)
  Cc: dedekind1, adrian.hunter, computersforpeace, baruch, asierra,
	guz.fnst, gsi, richard, David Woodhouse, linux-mtd,
	Frank Liu 刘群 (frankliu),
	Andrea Scian, Peter Pan 潘柏宏 (peterpan),
	Karl Zhang 张双锣 (karlzhang),
	Iwo Mergler, Jeff Lauruhn (jlauruhn),
	Stefan Roese, linux-kernel

Hi Bean,

Next time you send a patch series, could send all the patches in reply
to the cover letter?

On Mon, 28 Sep 2015 07:02:35 +0000
Bean Huo 霍斌斌 (beanhuo) <beanhuo@micron.com> wrote:

> Hello,
> 
> This series aims at adding a bakvol module for MLC NAND paired page
> Power loss protection.
> MLC NAND paired page power loss is a known issue so far, MLC NAND pages are
> coupled in a sense that if you cut power while writing to a page, you corrupt not only
> this page, but also one of the previous pages which is paired with the current one.
> Currently, there is no a perfect solution for this. 
> This paired page solution is based on NAND multiple plane program feature. For this
> Patch, only used dual plane page program, means two different plane pages can
> Be programmed together at the same time.
> Dual plane page program only implements in backup operation. Only lower page data
> Be duplicated and back up into a internal log volume by dual plane program method.

Hm, I'm not very fond of the idea, especially because of the complexity
caused by dual plane program operations (you can't take a random block
to write your backup on it, which means WL is complexified too), and
the fact that you're duplicating data (thus introducing a performance
penalty and storage overhead).

> 
> This patch has been testing on Micron 70s/80s/90s MLC NAND.
> Of course there are some places needed to be improved and simplified.
> 
> Any suggestion and comments welcomed.

Sure, I'll try to review it soon.

Thanks for submitting those patches.

Best Regards,

Boris

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

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

* RE: [PATCH 0/9] drivers:mtd:UBI: add bakvol module for MLC NAND paired page issue
  2015-09-28  7:41 ` Boris Brezillon
@ 2015-09-28  8:16     ` Bean Huo 霍斌斌 (beanhuo)
  0 siblings, 0 replies; 17+ messages in thread
From: Bean Huo 霍斌斌 (beanhuo) @ 2015-09-28  8:16 UTC (permalink / raw)
  To: Boris Brezillon
  Cc: dedekind1, adrian.hunter, computersforpeace, baruch, asierra,
	guz.fnst, gsi, richard, David Woodhouse, linux-mtd,
	Frank Liu 刘群 (frankliu),
	Andrea Scian, Peter Pan 潘栋 (peterpandong),
	Karl Zhang 张双锣 (karlzhang),
	Iwo Mergler, Jeff Lauruhn (jlauruhn),
	Stefan Roese, linux-kernel

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset="utf-8", Size: 2375 bytes --]

> Hi Bean,
> 
> Next time you send a patch series, could send all the patches in reply to the
> cover letter?

No problem, we will format our submit-patch method, and standard it.


> > Hello,
> >
> > This series aims at adding a bakvol module for MLC NAND paired page
> > Power loss protection.
> > MLC NAND paired page power loss is a known issue so far, MLC NAND
> > pages are coupled in a sense that if you cut power while writing to a
> > page, you corrupt not only this page, but also one of the previous pages
> which is paired with the current one.
> > Currently, there is no a perfect solution for this.
> > This paired page solution is based on NAND multiple plane program
> > feature. For this Patch, only used dual plane page program, means two
> > different plane pages can Be programmed together at the same time.
> > Dual plane page program only implements in backup operation. Only
> > lower page data Be duplicated and back up into a internal log volume by
> dual plane program method.
> 
> Hm, I'm not very fond of the idea, especially because of the complexity caused
> by dual plane program operations (you can't take a random block to write your
> backup on it, which means WL is complexified too), and the fact that you're
> duplicating data (thus introducing a performance penalty and storage
> overhead).
Yes, dual plane program operation has special pages requirement. 
The page address bits, PA[7:0], must be identical for each issued address.
This is being defined by ONFI specification. It will definitely result in storage 
overhead, but the performance of dual plane program is better than normal page program.
Because we don't program source data and backup data one page by one page.

> >
> > This patch has been testing on Micron 70s/80s/90s MLC NAND.
> > Of course there are some places needed to be improved and simplified.
> >
> > Any suggestion and comments welcomed.
> 
> Sure, I'll try to review it soon.

Thanks, this is a initial version, I think, there are some places needed to be perfected.

> Thanks for submitting those patches.
> 
> Best Regards,
> 
> Boris
> 
> --
> Boris Brezillon, Free Electrons
> Embedded Linux and Kernel engineering
> http://free-electrons.com
ÿôèº{.nÇ+‰·Ÿ®‰­†+%ŠËÿ±éݶ\x17¥Šwÿº{.nÇ+‰·¥Š{±þG«éÿŠ{ayº\x1dʇڙë,j\a­¢f£¢·hšïêÿ‘êçz_è®\x03(­éšŽŠÝ¢j"ú\x1a¶^[m§ÿÿ¾\a«þG«éÿ¢¸?™¨è­Ú&£ø§~á¶iO•æ¬z·švØ^\x14\x04\x1a¶^[m§ÿÿÃ\fÿ¶ìÿ¢¸?–I¥

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

* RE: [PATCH 0/9] drivers:mtd:UBI: add bakvol module for MLC NAND paired page issue
@ 2015-09-28  8:16     ` Bean Huo 霍斌斌 (beanhuo)
  0 siblings, 0 replies; 17+ messages in thread
From: Bean Huo 霍斌斌 (beanhuo) @ 2015-09-28  8:16 UTC (permalink / raw)
  To: Boris Brezillon
  Cc: dedekind1, adrian.hunter, computersforpeace, baruch, asierra,
	guz.fnst, gsi, richard, David Woodhouse, linux-mtd,
	Frank Liu 刘群 (frankliu),
	Andrea Scian, Peter Pan 潘栋 (peterpandong),
	Karl Zhang 张双锣 (karlzhang),
	Iwo Mergler, Jeff Lauruhn (jlauruhn),
	Stefan Roese, linux-kernel

> Hi Bean,
> 
> Next time you send a patch series, could send all the patches in reply to the
> cover letter?

No problem, we will format our submit-patch method, and standard it.


> > Hello,
> >
> > This series aims at adding a bakvol module for MLC NAND paired page
> > Power loss protection.
> > MLC NAND paired page power loss is a known issue so far, MLC NAND
> > pages are coupled in a sense that if you cut power while writing to a
> > page, you corrupt not only this page, but also one of the previous pages
> which is paired with the current one.
> > Currently, there is no a perfect solution for this.
> > This paired page solution is based on NAND multiple plane program
> > feature. For this Patch, only used dual plane page program, means two
> > different plane pages can Be programmed together at the same time.
> > Dual plane page program only implements in backup operation. Only
> > lower page data Be duplicated and back up into a internal log volume by
> dual plane program method.
> 
> Hm, I'm not very fond of the idea, especially because of the complexity caused
> by dual plane program operations (you can't take a random block to write your
> backup on it, which means WL is complexified too), and the fact that you're
> duplicating data (thus introducing a performance penalty and storage
> overhead).
Yes, dual plane program operation has special pages requirement. 
The page address bits, PA[7:0], must be identical for each issued address.
This is being defined by ONFI specification. It will definitely result in storage 
overhead, but the performance of dual plane program is better than normal page program.
Because we don't program source data and backup data one page by one page.

> >
> > This patch has been testing on Micron 70s/80s/90s MLC NAND.
> > Of course there are some places needed to be improved and simplified.
> >
> > Any suggestion and comments welcomed.
> 
> Sure, I'll try to review it soon.

Thanks, this is a initial version, I think, there are some places needed to be perfected.

> Thanks for submitting those patches.
> 
> Best Regards,
> 
> Boris
> 
> --
> Boris Brezillon, Free Electrons
> Embedded Linux and Kernel engineering
> http://free-electrons.com

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

* Re: [PATCH 0/9] drivers:mtd:UBI: add bakvol module for MLC NAND paired page issue
  2015-09-28  7:02 ` Bean Huo 霍斌斌 (beanhuo)
  (?)
  (?)
@ 2015-09-29  9:28 ` Richard Weinberger
  2015-09-30  5:31     ` Bean Huo 霍斌斌 (beanhuo)
  -1 siblings, 1 reply; 17+ messages in thread
From: Richard Weinberger @ 2015-09-29  9:28 UTC (permalink / raw)
  To: Bean Huo 霍斌斌 (beanhuo),
	dedekind1, adrian.hunter, computersforpeace, baruch, asierra,
	guz.fnst, gsi, Boris Brezillon
  Cc: David Woodhouse, linux-mtd, Frank Liu 刘群 (frankliu),
	Andrea Scian, Peter Pan 潘柏宏 (peterpan),
	Karl Zhang 张双锣 (karlzhang),
	Iwo Mergler, Jeff Lauruhn (jlauruhn),
	Stefan Roese, linux-kernel

Hi!

Am 28.09.2015 um 09:02 schrieb Bean Huo 霍斌斌 (beanhuo):
> Hello,
> 
> This series aims at adding a bakvol module for MLC NAND paired page
> Power loss protection.
> MLC NAND paired page power loss is a known issue so far, MLC NAND pages are
> coupled in a sense that if you cut power while writing to a page, you corrupt not only
> this page, but also one of the previous pages which is paired with the current one.
> Currently, there is no a perfect solution for this. 
> This paired page solution is based on NAND multiple plane program feature. For this
> Patch, only used dual plane page program, means two different plane pages can
> Be programmed together at the same time.
> Dual plane page program only implements in backup operation. Only lower page data
> Be duplicated and back up into a internal log volume by dual plane program method.
> 
> This patch has been testing on Micron 70s/80s/90s MLC NAND.
> Of course there are some places needed to be improved and simplified.
> 
> Any suggestion and comments welcomed.

As stated before, using OOB in UBI is not going to happen unless
proven that there is absolutely no other way to solve the paired pages
problem.

Nacked-by: Richard Weinberger <richard@nod.at>

Sorry,
//richard

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

* RE: [PATCH 0/9] drivers:mtd:UBI: add bakvol module for MLC NAND paired page issue
  2015-09-29  9:28 ` Richard Weinberger
@ 2015-09-30  5:31     ` Bean Huo 霍斌斌 (beanhuo)
  0 siblings, 0 replies; 17+ messages in thread
From: Bean Huo 霍斌斌 (beanhuo) @ 2015-09-30  5:31 UTC (permalink / raw)
  To: Richard Weinberger, dedekind1, adrian.hunter, computersforpeace,
	baruch, asierra, guz.fnst, gsi, Boris Brezillon
  Cc: David Woodhouse, linux-mtd, Frank Liu 刘群 (frankliu),
	Andrea Scian, Karl Zhang 张双锣 (karlzhang),
	Iwo Mergler, Jeff Lauruhn (jlauruhn),
	Stefan Roese, linux-kernel

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset="gb2312", Size: 1724 bytes --]

> Am 28.09.2015 um 09:02 schrieb Bean Huo »ô±ó±ó (beanhuo):
> > Hello,
> >
> > This series aims at adding a bakvol module for MLC NAND paired page
> > Power loss protection.
> > MLC NAND paired page power loss is a known issue so far, MLC NAND
> > pages are coupled in a sense that if you cut power while writing to a
> > page, you corrupt not only this page, but also one of the previous pages
> which is paired with the current one.
> > Currently, there is no a perfect solution for this.
> > This paired page solution is based on NAND multiple plane program
> > feature. For this Patch, only used dual plane page program, means two
> > different plane pages can Be programmed together at the same time.
> > Dual plane page program only implements in backup operation. Only
> > lower page data Be duplicated and back up into a internal log volume by
> dual plane program method.
> >
> > This patch has been testing on Micron 70s/80s/90s MLC NAND.
> > Of course there are some places needed to be improved and simplified.
> >
> > Any suggestion and comments welcomed.
> 
> As stated before, using OOB in UBI is not going to happen unless proven that
> there is absolutely no other way to solve the paired pages problem.
> 
> Nacked-by: Richard Weinberger <richard@nod.at>
> 
> Sorry,
> //Richard

Hi, Richard
Thanks for your concern. I am a new patch submitter.
Can you tell me Nacked-by means?

By the way, Do you review my patches series ? I don't backup duplicated data in OOB .
Can you specify which sector codes ? so that I can explain it in detail.
Thanks.
ÿôèº{.nÇ+‰·Ÿ®‰­†+%ŠËÿ±éݶ\x17¥Šwÿº{.nÇ+‰·¥Š{±þG«éÿŠ{ayº\x1dʇڙë,j\a­¢f£¢·hšïêÿ‘êçz_è®\x03(­éšŽŠÝ¢j"ú\x1a¶^[m§ÿÿ¾\a«þG«éÿ¢¸?™¨è­Ú&£ø§~á¶iO•æ¬z·švØ^\x14\x04\x1a¶^[m§ÿÿÃ\fÿ¶ìÿ¢¸?–I¥

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

* RE: [PATCH 0/9] drivers:mtd:UBI: add bakvol module for MLC NAND paired page issue
@ 2015-09-30  5:31     ` Bean Huo 霍斌斌 (beanhuo)
  0 siblings, 0 replies; 17+ messages in thread
From: Bean Huo 霍斌斌 (beanhuo) @ 2015-09-30  5:31 UTC (permalink / raw)
  To: Richard Weinberger, dedekind1, adrian.hunter, computersforpeace,
	baruch, asierra, guz.fnst, gsi, Boris Brezillon
  Cc: David Woodhouse, linux-mtd, Frank Liu 刘群 (frankliu),
	Andrea Scian, Karl Zhang 张双锣 (karlzhang),
	Iwo Mergler, Jeff Lauruhn (jlauruhn),
	Stefan Roese, linux-kernel

> Am 28.09.2015 um 09:02 schrieb Bean Huo 霍斌斌 (beanhuo):
> > Hello,
> >
> > This series aims at adding a bakvol module for MLC NAND paired page
> > Power loss protection.
> > MLC NAND paired page power loss is a known issue so far, MLC NAND
> > pages are coupled in a sense that if you cut power while writing to a
> > page, you corrupt not only this page, but also one of the previous pages
> which is paired with the current one.
> > Currently, there is no a perfect solution for this.
> > This paired page solution is based on NAND multiple plane program
> > feature. For this Patch, only used dual plane page program, means two
> > different plane pages can Be programmed together at the same time.
> > Dual plane page program only implements in backup operation. Only
> > lower page data Be duplicated and back up into a internal log volume by
> dual plane program method.
> >
> > This patch has been testing on Micron 70s/80s/90s MLC NAND.
> > Of course there are some places needed to be improved and simplified.
> >
> > Any suggestion and comments welcomed.
> 
> As stated before, using OOB in UBI is not going to happen unless proven that
> there is absolutely no other way to solve the paired pages problem.
> 
> Nacked-by: Richard Weinberger <richard@nod.at>
> 
> Sorry,
> //Richard

Hi, Richard
Thanks for your concern. I am a new patch submitter.
Can you tell me Nacked-by means?

By the way, Do you review my patches series ? I don't backup duplicated data in OOB .
Can you specify which sector codes ? so that I can explain it in detail.
Thanks.

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

* Re: [PATCH 0/9] drivers:mtd:UBI: add bakvol module for MLC NAND paired page issue
  2015-09-30  5:31     ` Bean Huo 霍斌斌 (beanhuo)
  (?)
@ 2015-09-30  6:55     ` Richard Weinberger
  2015-10-02 10:28       ` Richard Weinberger
  2015-10-08  0:27         ` Bean Huo 霍斌斌 (beanhuo)
  -1 siblings, 2 replies; 17+ messages in thread
From: Richard Weinberger @ 2015-09-30  6:55 UTC (permalink / raw)
  To: Bean Huo 霍斌斌 (beanhuo),
	dedekind1, adrian.hunter, computersforpeace, baruch, asierra,
	guz.fnst, gsi, Boris Brezillon
  Cc: David Woodhouse, linux-mtd, Frank Liu 刘群 (frankliu),
	Andrea Scian, Karl Zhang 张双锣 (karlzhang),
	Iwo Mergler, Jeff Lauruhn (jlauruhn),
	Stefan Roese, linux-kernel

Bean,

Am 30.09.2015 um 07:31 schrieb Bean Huo 霍斌斌 (beanhuo):
>> As stated before, using OOB in UBI is not going to happen unless proven that
>> there is absolutely no other way to solve the paired pages problem.
>>
>> Nacked-by: Richard Weinberger <richard@nod.at>
>>
>> Sorry,
>> //Richard
> 
> Hi, Richard
> Thanks for your concern. I am a new patch submitter.
> Can you tell me Nacked-by means?

I basically means that I'm (as maintainer) really unhappy with this patches
and don't see a way to get them merged as the whole concept is not acceptable.

> By the way, Do you review my patches series ? I don't backup duplicated data in OOB .
> Can you specify which sector codes ? so that I can explain it in detail.

Okay. Maybe both Boris and I misread your code, can you please explain in detail
what functions like check_original_data() or mtd_write_dual_plane_oob() do?

Thanks,
//richard

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

* Re: [PATCH 0/9] drivers:mtd:UBI: add bakvol module for MLC NAND paired page issue
  2015-09-30  5:31     ` Bean Huo 霍斌斌 (beanhuo)
  (?)
  (?)
@ 2015-09-30  7:33     ` Boris Brezillon
  2015-10-08  0:49         ` Bean Huo 霍斌斌 (beanhuo)
  -1 siblings, 1 reply; 17+ messages in thread
From: Boris Brezillon @ 2015-09-30  7:33 UTC (permalink / raw)
  To: Bean Huo 霍斌斌 (beanhuo)
  Cc: Richard Weinberger, dedekind1, adrian.hunter, computersforpeace,
	baruch, asierra, guz.fnst, gsi, David Woodhouse, linux-mtd,
	Frank Liu 刘群 (frankliu),
	Andrea Scian, Karl Zhang 张双锣 (karlzhang),
	Iwo Mergler, Jeff Lauruhn (jlauruhn),
	Stefan Roese, linux-kernel

On Wed, 30 Sep 2015 05:31:43 +0000
Bean Huo 霍斌斌 (beanhuo) <beanhuo@micron.com> wrote:

> > Am 28.09.2015 um 09:02 schrieb Bean Huo 霍斌斌 (beanhuo):
> > > Hello,
> > >
> > > This series aims at adding a bakvol module for MLC NAND paired page
> > > Power loss protection.
> > > MLC NAND paired page power loss is a known issue so far, MLC NAND
> > > pages are coupled in a sense that if you cut power while writing to a
> > > page, you corrupt not only this page, but also one of the previous pages
> > which is paired with the current one.
> > > Currently, there is no a perfect solution for this.
> > > This paired page solution is based on NAND multiple plane program
> > > feature. For this Patch, only used dual plane page program, means two
> > > different plane pages can Be programmed together at the same time.
> > > Dual plane page program only implements in backup operation. Only
> > > lower page data Be duplicated and back up into a internal log volume by
> > dual plane program method.
> > >
> > > This patch has been testing on Micron 70s/80s/90s MLC NAND.
> > > Of course there are some places needed to be improved and simplified.
> > >
> > > Any suggestion and comments welcomed.
> > 
> > As stated before, using OOB in UBI is not going to happen unless proven that
> > there is absolutely no other way to solve the paired pages problem.
> > 
> > Nacked-by: Richard Weinberger <richard@nod.at>
> > 
> > Sorry,
> > //Richard
> 
> Hi, Richard
> Thanks for your concern. I am a new patch submitter.
> Can you tell me Nacked-by means?
> 
> By the way, Do you review my patches series ? I don't backup duplicated data in OOB .

That's not what Richard said, he just pointed that you were using the
OOB area, and you're actually using it to store the information about
which page you're backuping.

> Can you specify which sector codes ? so that I can explain it in detail.

And as answered by Richard, check_original_data() and
mtd_write_dual_plane_oob() are filling the OOB buf with the original
page offset, so you're definitely using the OOB area to store metadata.

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

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

* Re: [PATCH 0/9] drivers:mtd:UBI: add bakvol module for MLC NAND paired page issue
  2015-09-30  6:55     ` Richard Weinberger
@ 2015-10-02 10:28       ` Richard Weinberger
  2015-10-08  2:10           ` Bean Huo 霍斌斌 (beanhuo)
  2015-10-08  0:27         ` Bean Huo 霍斌斌 (beanhuo)
  1 sibling, 1 reply; 17+ messages in thread
From: Richard Weinberger @ 2015-10-02 10:28 UTC (permalink / raw)
  To: Bean Huo 霍斌斌 (beanhuo),
	dedekind1, adrian.hunter, computersforpeace, baruch, asierra,
	guz.fnst, gsi, Boris Brezillon
  Cc: David Woodhouse, linux-mtd, Frank Liu 刘群 (frankliu),
	Andrea Scian, Karl Zhang 张双锣 (karlzhang),
	Iwo Mergler, Jeff Lauruhn (jlauruhn),
	Stefan Roese, linux-kernel

Bean,

Am 30.09.2015 um 08:55 schrieb Richard Weinberger:
>> By the way, Do you review my patches series ? I don't backup duplicated data in OOB .
>> Can you specify which sector codes ? so that I can explain it in detail.
> 
> Okay. Maybe both Boris and I misread your code, can you please explain in detail
> what functions like check_original_data() or mtd_write_dual_plane_oob() do?

Care to explain?
Maybe we can find a solution without OOB.
Boris proposed already some very promising ideas:
http://comments.gmane.org/gmane.linux.drivers.mtd/61658

BTW: Will you be at Embedded Linuxcon Europe in Dublin?
Many MTD guys, including me, will be there.
Maybe we can discuss the problem in a nice pub, first round is on me. :-)

Thanks,
//richard

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

* RE: [PATCH 0/9] drivers:mtd:UBI: add bakvol module for MLC NAND paired page issue
  2015-09-30  6:55     ` Richard Weinberger
@ 2015-10-08  0:27         ` Bean Huo 霍斌斌 (beanhuo)
  2015-10-08  0:27         ` Bean Huo 霍斌斌 (beanhuo)
  1 sibling, 0 replies; 17+ messages in thread
From: Bean Huo 霍斌斌 (beanhuo) @ 2015-10-08  0:27 UTC (permalink / raw)
  To: Richard Weinberger, dedekind1, adrian.hunter, computersforpeace,
	baruch, asierra, guz.fnst, gsi, Boris Brezillon
  Cc: David Woodhouse, linux-mtd, Frank Liu 刘群 (frankliu),
	Andrea Scian, Karl Zhang 张双锣 (karlzhang),
	Iwo Mergler, Jeff Lauruhn (jlauruhn),
	Stefan Roese, linux-kernel

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset="gb2312", Size: 872 bytes --]

> > Hi, Richard
> > Thanks for your concern. I am a new patch submitter.
> > Can you tell me Nacked-by means?
> 
> I basically means that I'm (as maintainer) really unhappy with this patches and
> don't see a way to get them merged as the whole concept is not acceptable.
> 
> > By the way, Do you review my patches series ? I don't backup duplicated
> data in OOB .
> > Can you specify which sector codes ? so that I can explain it in detail.
> 
> Okay. Maybe both Boris and I misread your code, can you please explain in
> detail what functions like check_original_data() or
> mtd_write_dual_plane_oob() do?

OK, Next version patch, I will add more comments for some important function.

> Thanks,
> //richard
ÿôèº{.nÇ+‰·Ÿ®‰­†+%ŠËÿ±éݶ\x17¥Šwÿº{.nÇ+‰·¥Š{±þG«éÿŠ{ayº\x1dʇڙë,j\a­¢f£¢·hšïêÿ‘êçz_è®\x03(­éšŽŠÝ¢j"ú\x1a¶^[m§ÿÿ¾\a«þG«éÿ¢¸?™¨è­Ú&£ø§~á¶iO•æ¬z·švØ^\x14\x04\x1a¶^[m§ÿÿÃ\fÿ¶ìÿ¢¸?–I¥

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

* RE: [PATCH 0/9] drivers:mtd:UBI: add bakvol module for MLC NAND paired page issue
@ 2015-10-08  0:27         ` Bean Huo 霍斌斌 (beanhuo)
  0 siblings, 0 replies; 17+ messages in thread
From: Bean Huo 霍斌斌 (beanhuo) @ 2015-10-08  0:27 UTC (permalink / raw)
  To: Richard Weinberger, dedekind1, adrian.hunter, computersforpeace,
	baruch, asierra, guz.fnst, gsi, Boris Brezillon
  Cc: David Woodhouse, linux-mtd, Frank Liu 刘群 (frankliu),
	Andrea Scian, Karl Zhang 张双锣 (karlzhang),
	Iwo Mergler, Jeff Lauruhn (jlauruhn),
	Stefan Roese, linux-kernel

> > Hi, Richard
> > Thanks for your concern. I am a new patch submitter.
> > Can you tell me Nacked-by means?
> 
> I basically means that I'm (as maintainer) really unhappy with this patches and
> don't see a way to get them merged as the whole concept is not acceptable.
> 
> > By the way, Do you review my patches series ? I don't backup duplicated
> data in OOB .
> > Can you specify which sector codes ? so that I can explain it in detail.
> 
> Okay. Maybe both Boris and I misread your code, can you please explain in
> detail what functions like check_original_data() or
> mtd_write_dual_plane_oob() do?

OK, Next version patch, I will add more comments for some important function.

> Thanks,
> //richard

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

* RE: [PATCH 0/9] drivers:mtd:UBI: add bakvol module for MLC NAND paired page issue
  2015-09-30  7:33     ` Boris Brezillon
@ 2015-10-08  0:49         ` Bean Huo 霍斌斌 (beanhuo)
  0 siblings, 0 replies; 17+ messages in thread
From: Bean Huo 霍斌斌 (beanhuo) @ 2015-10-08  0:49 UTC (permalink / raw)
  To: Boris Brezillon
  Cc: Richard Weinberger, dedekind1, adrian.hunter, computersforpeace,
	baruch, asierra, guz.fnst, gsi, David Woodhouse, linux-mtd,
	Andrea Scian, Karl Zhang 张双锣 (karlzhang),
	Iwo Mergler, Jeff Lauruhn (jlauruhn),
	Stefan Roese, linux-kernel

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset="utf-8", Size: 1268 bytes --]

> > > As stated before, using OOB in UBI is not going to happen unless
> > > proven that there is absolutely no other way to solve the paired pages
> problem.
> > >
> > > Nacked-by: Richard Weinberger <richard@nod.at>
> > >
> > > Sorry,
> > > //Richard
> >
> > Hi, Richard
> > Thanks for your concern. I am a new patch submitter.
> > Can you tell me Nacked-by means?
> >
> > By the way, Do you review my patches series ? I don't backup duplicated
> >data in OOB .
> 
> That's not what Richard said, he just pointed that you were using the OOB
> area, and you're actually using it to store the information about which page
> you're backuping.
> 
> > Can you specify which sector codes ? so that I can explain it in detail.
> 
> And as answered by Richard, check_original_data() and
> mtd_write_dual_plane_oob() are filling the OOB buf with the original page
> offset, so you're definitely using the OOB area to store metadata.

Yes ,currently I only use 4 bytes OOB area to store backup page address.

> --
> Boris Brezillon, Free Electrons
> Embedded Linux and Kernel engineering
> http://free-electrons.com
ÿôèº{.nÇ+‰·Ÿ®‰­†+%ŠËÿ±éݶ\x17¥Šwÿº{.nÇ+‰·¥Š{±þG«éÿŠ{ayº\x1dʇڙë,j\a­¢f£¢·hšïêÿ‘êçz_è®\x03(­éšŽŠÝ¢j"ú\x1a¶^[m§ÿÿ¾\a«þG«éÿ¢¸?™¨è­Ú&£ø§~á¶iO•æ¬z·švØ^\x14\x04\x1a¶^[m§ÿÿÃ\fÿ¶ìÿ¢¸?–I¥

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

* RE: [PATCH 0/9] drivers:mtd:UBI: add bakvol module for MLC NAND paired page issue
@ 2015-10-08  0:49         ` Bean Huo 霍斌斌 (beanhuo)
  0 siblings, 0 replies; 17+ messages in thread
From: Bean Huo 霍斌斌 (beanhuo) @ 2015-10-08  0:49 UTC (permalink / raw)
  To: Boris Brezillon
  Cc: Richard Weinberger, dedekind1, adrian.hunter, computersforpeace,
	baruch, asierra, guz.fnst, gsi, David Woodhouse, linux-mtd,
	Andrea Scian, Karl Zhang 张双锣 (karlzhang),
	Iwo Mergler, Jeff Lauruhn (jlauruhn),
	Stefan Roese, linux-kernel

> > > As stated before, using OOB in UBI is not going to happen unless
> > > proven that there is absolutely no other way to solve the paired pages
> problem.
> > >
> > > Nacked-by: Richard Weinberger <richard@nod.at>
> > >
> > > Sorry,
> > > //Richard
> >
> > Hi, Richard
> > Thanks for your concern. I am a new patch submitter.
> > Can you tell me Nacked-by means?
> >
> > By the way, Do you review my patches series ? I don't backup duplicated
> >data in OOB .
> 
> That's not what Richard said, he just pointed that you were using the OOB
> area, and you're actually using it to store the information about which page
> you're backuping.
> 
> > Can you specify which sector codes ? so that I can explain it in detail.
> 
> And as answered by Richard, check_original_data() and
> mtd_write_dual_plane_oob() are filling the OOB buf with the original page
> offset, so you're definitely using the OOB area to store metadata.

Yes ,currently I only use 4 bytes OOB area to store backup page address.

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

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

* RE: [PATCH 0/9] drivers:mtd:UBI: add bakvol module for MLC NAND paired page issue
  2015-10-02 10:28       ` Richard Weinberger
@ 2015-10-08  2:10           ` Bean Huo 霍斌斌 (beanhuo)
  0 siblings, 0 replies; 17+ messages in thread
From: Bean Huo 霍斌斌 (beanhuo) @ 2015-10-08  2:10 UTC (permalink / raw)
  To: Richard Weinberger, dedekind1, adrian.hunter, computersforpeace,
	baruch, asierra, guz.fnst, gsi, Boris Brezillon
  Cc: David Woodhouse, linux-mtd, Frank Liu 刘群 (frankliu),
	Andrea Scian, Karl Zhang 张双锣 (karlzhang),
	Iwo Mergler, Jeff Lauruhn (jlauruhn),
	Stefan Roese, linux-kernel

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset="gb2312", Size: 2011 bytes --]

> Am 30.09.2015 um 08:55 schrieb Richard Weinberger:
> >> By the way, Do you review my patches series ? I don't backup duplicated
> data in OOB .
> >> Can you specify which sector codes ? so that I can explain it in detail.
> >
> > Okay. Maybe both Boris and I misread your code, can you please explain
> > in detail what functions like check_original_data() or
> mtd_write_dual_plane_oob() do?
> 
> Care to explain?
> Maybe we can find a solution without OOB.
> Boris proposed already some very promising ideas:
> http://comments.gmane.org/gmane.linux.drivers.mtd/61658

> BTW: Will you be at Embedded Linuxcon Europe in Dublin?
> Many MTD guys, including me, will be there.
> Maybe we can discuss the problem in a nice pub, first round is on me. :-)

Richard, thanks for your care about this patch. We are all very happy to do this job.
I think ,any comments or suggests welcome. we now in China, so maybe it is not convenient for us
to discuss the problem in a nice pub. can we create a topic or main project about this issue, then we can 
work on it together. It is easy to trace and review.

This year, we ever attended Embedded Linux conference that held at San Jose Marriott,
and met Brain, Brain. We had a short discussion about paired page issue.
One of concerns is patent, you know , there are so many patents on how to solve paired page issue.
Linux seems that not very like to one accept patch based on certain patent.

I want to say, my this series patch is also based on a Micron patent, this is also one of my key concerns.
I don't know, how do you think about this.

For my this patch, another key concern is that memory overhead, maybe you have found that 
Reserved 20 PEBs for backup log volume, but these 20 PEBs will be soon quickly used up, because of dual plane program
Page address special requirement.



> Thanks,
> //richard
ÿôèº{.nÇ+‰·Ÿ®‰­†+%ŠËÿ±éݶ\x17¥Šwÿº{.nÇ+‰·¥Š{±þG«éÿŠ{ayº\x1dʇڙë,j\a­¢f£¢·hšïêÿ‘êçz_è®\x03(­éšŽŠÝ¢j"ú\x1a¶^[m§ÿÿ¾\a«þG«éÿ¢¸?™¨è­Ú&£ø§~á¶iO•æ¬z·švØ^\x14\x04\x1a¶^[m§ÿÿÃ\fÿ¶ìÿ¢¸?–I¥

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

* RE: [PATCH 0/9] drivers:mtd:UBI: add bakvol module for MLC NAND paired page issue
@ 2015-10-08  2:10           ` Bean Huo 霍斌斌 (beanhuo)
  0 siblings, 0 replies; 17+ messages in thread
From: Bean Huo 霍斌斌 (beanhuo) @ 2015-10-08  2:10 UTC (permalink / raw)
  To: Richard Weinberger, dedekind1, adrian.hunter, computersforpeace,
	baruch, asierra, guz.fnst, gsi, Boris Brezillon
  Cc: David Woodhouse, linux-mtd, Frank Liu 刘群 (frankliu),
	Andrea Scian, Karl Zhang 张双锣 (karlzhang),
	Iwo Mergler, Jeff Lauruhn (jlauruhn),
	Stefan Roese, linux-kernel

> Am 30.09.2015 um 08:55 schrieb Richard Weinberger:
> >> By the way, Do you review my patches series ? I don't backup duplicated
> data in OOB .
> >> Can you specify which sector codes ? so that I can explain it in detail.
> >
> > Okay. Maybe both Boris and I misread your code, can you please explain
> > in detail what functions like check_original_data() or
> mtd_write_dual_plane_oob() do?
> 
> Care to explain?
> Maybe we can find a solution without OOB.
> Boris proposed already some very promising ideas:
> http://comments.gmane.org/gmane.linux.drivers.mtd/61658

> BTW: Will you be at Embedded Linuxcon Europe in Dublin?
> Many MTD guys, including me, will be there.
> Maybe we can discuss the problem in a nice pub, first round is on me. :-)

Richard, thanks for your care about this patch. We are all very happy to do this job.
I think ,any comments or suggests welcome. we now in China, so maybe it is not convenient for us
to discuss the problem in a nice pub. can we create a topic or main project about this issue, then we can 
work on it together. It is easy to trace and review.

This year, we ever attended Embedded Linux conference that held at San Jose Marriott,
and met Brain, Brain. We had a short discussion about paired page issue.
One of concerns is patent, you know , there are so many patents on how to solve paired page issue.
Linux seems that not very like to one accept patch based on certain patent.

I want to say, my this series patch is also based on a Micron patent, this is also one of my key concerns.
I don't know, how do you think about this.

For my this patch, another key concern is that memory overhead, maybe you have found that 
Reserved 20 PEBs for backup log volume, but these 20 PEBs will be soon quickly used up, because of dual plane program
Page address special requirement.



> Thanks,
> //richard

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

end of thread, other threads:[~2015-10-08  2:11 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-09-28  7:02 [PATCH 0/9] drivers:mtd:UBI: add bakvol module for MLC NAND paired page issue Bean Huo 霍斌斌 (beanhuo)
2015-09-28  7:02 ` Bean Huo 霍斌斌 (beanhuo)
2015-09-28  7:41 ` Boris Brezillon
2015-09-28  8:16   ` Bean Huo 霍斌斌 (beanhuo)
2015-09-28  8:16     ` Bean Huo 霍斌斌 (beanhuo)
2015-09-29  9:28 ` Richard Weinberger
2015-09-30  5:31   ` Bean Huo 霍斌斌 (beanhuo)
2015-09-30  5:31     ` Bean Huo 霍斌斌 (beanhuo)
2015-09-30  6:55     ` Richard Weinberger
2015-10-02 10:28       ` Richard Weinberger
2015-10-08  2:10         ` Bean Huo 霍斌斌 (beanhuo)
2015-10-08  2:10           ` Bean Huo 霍斌斌 (beanhuo)
2015-10-08  0:27       ` Bean Huo 霍斌斌 (beanhuo)
2015-10-08  0:27         ` Bean Huo 霍斌斌 (beanhuo)
2015-09-30  7:33     ` Boris Brezillon
2015-10-08  0:49       ` Bean Huo 霍斌斌 (beanhuo)
2015-10-08  0:49         ` Bean Huo 霍斌斌 (beanhuo)

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.