* ubi: refuse attaching mtd3 - MLC NAND is not supported
@ 2018-05-24 19:28 Mathieu Malaterre
2018-05-24 19:42 ` Richard Weinberger
0 siblings, 1 reply; 4+ messages in thread
From: Mathieu Malaterre @ 2018-05-24 19:28 UTC (permalink / raw)
To: Richard Weinberger; +Cc: MIPS Creator CI20 Development, linux-mtd
Hi Richard,
I cannot boot my MIPS Creator CI20 system anymore. Doing a git bisect leads to:
$ git bisect bad
b5094b7f135be34630e3ea8a98fa215715d0f29d is the first bad commit
commit b5094b7f135be34630e3ea8a98fa215715d0f29d
Author: Richard Weinberger <richard@nod.at>
Date: Sat Mar 3 11:45:54 2018 +0100
ubi: Reject MLC NAND
While UBI and UBIFS seem to work at first sight with MLC NAND, you will
most likely lose all your data upon a power-cut or due to read/write
disturb.
In order to protect users from bad surprises, refuse to attach to MLC
NAND.
Cc: stable@vger.kernel.org
Signed-off-by: Richard Weinberger <richard@nod.at>
Acked-by: Boris Brezillon <boris.brezillon@bootlin.com>
Acked-by: Artem Bityutskiy <dedekind1@gmail.com>
:040000 040000 715242e81a7386bbc9ec5b10d0eb5138cd41ff3f
a2c894baaef840fc9dce4e87f3370a66731fc770 M drivers
On my system here is what I can see (screen + ttyUSB):
## Booting kernel from Legacy Image at 88000000 ...
Image Name: Linux-4.16.0+
Image Type: MIPS Linux Kernel Image (uncompressed)
Data Size: 5890340 Bytes = 5.6 MiB
Load Address: 80010000
Entry Point: 80401550
Verifying Checksum ... OK
Loading Kernel Image ... OK
Starting kernel [ 0.155993] cacheinfo: Failed to find cpu0 device node
[ 0.238335] ubi: refuse attaching mtd3 - MLC NAND is not supported
[ 0.244827] UBI error: cannot attach mtd3
[ 0.248838] ubi: refuse attaching mtd4 - MLC NAND is not supported
[ 0.255061] UBI error: cannot attach mtd4
[ 0.259413] Kernel panic - not syncing: VFS: Unable to mount root
fs on unknown-block(0,0)
[ 0.267679] Rebooting in 10 seconds..
This has been working great so far. If I understand correctly your
commit, this is a sort of safe code path to avoid corrupted data upon
power-cut. Is there a way for me to continue booting my system as-is
(other than a git revert b5094b7f135be).
For reference, I flashed the NAND using:
https://elinux.org/CI20_Distros#Debian_8_2016-02-02_Beta
Thanks for suggestions,
-M
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: ubi: refuse attaching mtd3 - MLC NAND is not supported
2018-05-24 19:28 ubi: refuse attaching mtd3 - MLC NAND is not supported Mathieu Malaterre
@ 2018-05-24 19:42 ` Richard Weinberger
2018-05-25 10:12 ` Mathieu Malaterre
0 siblings, 1 reply; 4+ messages in thread
From: Richard Weinberger @ 2018-05-24 19:42 UTC (permalink / raw)
To: Mathieu Malaterre
Cc: MIPS Creator CI20 Development, linux-mtd, boris.brezillon
Mathieu,
Am Donnerstag, 24. Mai 2018, 21:28:12 CEST schrieb Mathieu Malaterre:
> Hi Richard,
>
> I cannot boot my MIPS Creator CI20 system anymore. Doing a git bisect leads to:
>
> $ git bisect bad
> b5094b7f135be34630e3ea8a98fa215715d0f29d is the first bad commit
> commit b5094b7f135be34630e3ea8a98fa215715d0f29d
> Author: Richard Weinberger <richard@nod.at>
> Date: Sat Mar 3 11:45:54 2018 +0100
>
> ubi: Reject MLC NAND
>
> While UBI and UBIFS seem to work at first sight with MLC NAND, you will
> most likely lose all your data upon a power-cut or due to read/write
> disturb.
> In order to protect users from bad surprises, refuse to attach to MLC
> NAND.
>
> Cc: stable@vger.kernel.org
> Signed-off-by: Richard Weinberger <richard@nod.at>
> Acked-by: Boris Brezillon <boris.brezillon@bootlin.com>
> Acked-by: Artem Bityutskiy <dedekind1@gmail.com>
>
> :040000 040000 715242e81a7386bbc9ec5b10d0eb5138cd41ff3f
> a2c894baaef840fc9dce4e87f3370a66731fc770 M drivers
>
>
> On my system here is what I can see (screen + ttyUSB):
>
> ## Booting kernel from Legacy Image at 88000000 ...
> Image Name: Linux-4.16.0+
> Image Type: MIPS Linux Kernel Image (uncompressed)
> Data Size: 5890340 Bytes = 5.6 MiB
> Load Address: 80010000
> Entry Point: 80401550
> Verifying Checksum ... OK
> Loading Kernel Image ... OK
>
> Starting kernel [ 0.155993] cacheinfo: Failed to find cpu0 device node
> [ 0.238335] ubi: refuse attaching mtd3 - MLC NAND is not supported
> [ 0.244827] UBI error: cannot attach mtd3
> [ 0.248838] ubi: refuse attaching mtd4 - MLC NAND is not supported
> [ 0.255061] UBI error: cannot attach mtd4
> [ 0.259413] Kernel panic - not syncing: VFS: Unable to mount root
> fs on unknown-block(0,0)
> [ 0.267679] Rebooting in 10 seconds..
>
>
> This has been working great so far. If I understand correctly your
> commit, this is a sort of safe code path to avoid corrupted data upon
> power-cut. Is there a way for me to continue booting my system as-is
> (other than a git revert b5094b7f135be).
No. MLC is simply not supported and not safe to use.
With that commit we reflect the state of the code and stop giving wrong promises.
I can hardly believe that it has been working great so far, did you
ever do power-cut tests?
Or are there other mechanisms on your board that make MLC usable by UBI?
For example SLC-emulation.
Thanks,
//richard
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: ubi: refuse attaching mtd3 - MLC NAND is not supported
2018-05-24 19:42 ` Richard Weinberger
@ 2018-05-25 10:12 ` Mathieu Malaterre
2018-05-28 20:15 ` Richard Weinberger
0 siblings, 1 reply; 4+ messages in thread
From: Mathieu Malaterre @ 2018-05-25 10:12 UTC (permalink / raw)
To: Richard Weinberger
Cc: MIPS Creator CI20 Development, linux-mtd, boris.brezillon
On Thu, May 24, 2018 at 9:42 PM, Richard Weinberger <richard@nod.at> wrote:
> Mathieu,
>
> Am Donnerstag, 24. Mai 2018, 21:28:12 CEST schrieb Mathieu Malaterre:
>> Hi Richard,
>>
>> I cannot boot my MIPS Creator CI20 system anymore. Doing a git bisect leads to:
>>
>> $ git bisect bad
>> b5094b7f135be34630e3ea8a98fa215715d0f29d is the first bad commit
>> commit b5094b7f135be34630e3ea8a98fa215715d0f29d
>> Author: Richard Weinberger <richard@nod.at>
>> Date: Sat Mar 3 11:45:54 2018 +0100
>>
>> ubi: Reject MLC NAND
>>
>> While UBI and UBIFS seem to work at first sight with MLC NAND, you will
>> most likely lose all your data upon a power-cut or due to read/write
>> disturb.
>> In order to protect users from bad surprises, refuse to attach to MLC
>> NAND.
>>
>> Cc: stable@vger.kernel.org
>> Signed-off-by: Richard Weinberger <richard@nod.at>
>> Acked-by: Boris Brezillon <boris.brezillon@bootlin.com>
>> Acked-by: Artem Bityutskiy <dedekind1@gmail.com>
>>
>> :040000 040000 715242e81a7386bbc9ec5b10d0eb5138cd41ff3f
>> a2c894baaef840fc9dce4e87f3370a66731fc770 M drivers
>>
>>
>> On my system here is what I can see (screen + ttyUSB):
>>
>> ## Booting kernel from Legacy Image at 88000000 ...
>> Image Name: Linux-4.16.0+
>> Image Type: MIPS Linux Kernel Image (uncompressed)
>> Data Size: 5890340 Bytes = 5.6 MiB
>> Load Address: 80010000
>> Entry Point: 80401550
>> Verifying Checksum ... OK
>> Loading Kernel Image ... OK
>>
>> Starting kernel [ 0.155993] cacheinfo: Failed to find cpu0 device node
>> [ 0.238335] ubi: refuse attaching mtd3 - MLC NAND is not supported
>> [ 0.244827] UBI error: cannot attach mtd3
>> [ 0.248838] ubi: refuse attaching mtd4 - MLC NAND is not supported
>> [ 0.255061] UBI error: cannot attach mtd4
>> [ 0.259413] Kernel panic - not syncing: VFS: Unable to mount root
>> fs on unknown-block(0,0)
>> [ 0.267679] Rebooting in 10 seconds..
>>
>>
>> This has been working great so far. If I understand correctly your
>> commit, this is a sort of safe code path to avoid corrupted data upon
>> power-cut. Is there a way for me to continue booting my system as-is
>> (other than a git revert b5094b7f135be).
>
> No. MLC is simply not supported and not safe to use.
> With that commit we reflect the state of the code and stop giving wrong promises.
ACK. Would you recommend an alternate filesystem then ?
> I can hardly believe that it has been working great so far, did you
> ever do power-cut tests?
> Or are there other mechanisms on your board that make MLC usable by UBI?
> For example SLC-emulation.
Looking quickly at the tech specs:
https://www.elinux.org/CI20_Hardware#ROM.2FNAND
...
Is provided by a single Samsung K9GBG08UOA NAND flash, using an 8bit
data interface to the SoC.
...
So my understanding is that "it just worked" so far. I've tried
contacting some of the people involved with the design of CI20 to get
confirmation.
-M
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: ubi: refuse attaching mtd3 - MLC NAND is not supported
2018-05-25 10:12 ` Mathieu Malaterre
@ 2018-05-28 20:15 ` Richard Weinberger
0 siblings, 0 replies; 4+ messages in thread
From: Richard Weinberger @ 2018-05-28 20:15 UTC (permalink / raw)
To: Mathieu Malaterre
Cc: MIPS Creator CI20 Development, linux-mtd, boris.brezillon
Mathieu,
Am Freitag, 25. Mai 2018, 12:12:02 CEST schrieb Mathieu Malaterre:
> > No. MLC is simply not supported and not safe to use.
> > With that commit we reflect the state of the code and stop giving wrong promises.
>
> ACK. Would you recommend an alternate filesystem then ?
There is none.
One option you have is putting the MLC NAND into SLC mode, some support this.
This needs to be achieved by a vendor specific command which is often undocumented.
Boris and I experimented also with software SLC mode in UBI.
If you want you can revive our work.
> > I can hardly believe that it has been working great so far, did you
> > ever do power-cut tests?
> > Or are there other mechanisms on your board that make MLC usable by UBI?
> > For example SLC-emulation.
>
> Looking quickly at the tech specs:
>
> https://www.elinux.org/CI20_Hardware#ROM.2FNAND
>
> ...
> Is provided by a single Samsung K9GBG08UOA NAND flash, using an 8bit
> data interface to the SoC.
> ...
>
> So my understanding is that "it just worked" so far. I've tried
> contacting some of the people involved with the design of CI20 to get
> confirmation.
"just worked" in terms of nobody gave it a decent testing, I fear. ;-\
Thanks,
//richard
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2018-05-28 20:15 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-05-24 19:28 ubi: refuse attaching mtd3 - MLC NAND is not supported Mathieu Malaterre
2018-05-24 19:42 ` Richard Weinberger
2018-05-25 10:12 ` Mathieu Malaterre
2018-05-28 20:15 ` Richard Weinberger
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox