[PATCH 0/5] Add flight recorder to MTDRAM

Manfred Spraul manfred at colorfullife.com
Wed Dec 6 11:44:55 PST 2017


Hi Richard,

On 12/06/2017 11:41 AM, Richard Weinberger wrote:
> Dirk, Manfred,
>
> Am Mittwoch, 6. Dezember 2017, 09:50:34 CET schrieb Dirk Behme:
>> From: Manfred Spraul <manfred at colorfullife.com>
>>
>> Hi,
>>
>> The series adds a flight recorder to MTDRAM.
> Thanks a lot for sharing your tool, this is highly appreciated.
>
>> This allows very efficient power fail testing:
>>  From the flight recorder output, it is possible to recreate every image
>> that might have existed between the start of the recording and the end.
>>
>> Obviously, a user space tool is required, it is attached as the last
>> mail in the series.
> So, to understand this approach better I need to recap.
> The "flight recorder" logs every single MTD operation (READ, ERASE, PROGRAM)
> to a file while the MTD is under load, right?
Only ERASE and PROGRAM. READ is not logged.
Would it help if READ is logged as well? (memory is cheap, ...)

What would be fairly simple is to add a backtrace for every ERASE and 
PROGRAM. I'll try to add that.

> Then you take the log, replay it to a _file_ but instead of replaying
> all N MTD operations only N - X operations are replayed?
Exactly.  Instead of replaying all N operations, only X operations are 
replayed.

image-168167.bin is after replaying 168167 operations.
image-168168.bin is after replaying one additional operation.
> The output file is later written back to MTDRAM to check how much UBIFS likes
> it?
Exactly.
> While having such a tool would be awesome, we have to be very sure that it
> behaves correctly.
> Yesterday I spent almost the whole night with staring at some of Manfred's
> images and I'm not sure whether what I see makes sense or can actually happen
> on a real NAND or NOR flash. But I'm still investigating.
 From my understand, the tool result is exactly identical to a powerfail 
immediately after PROGRAM.
What differs from realistic embedded systems is obviously performance:
RAM disk+2-core I3 is probably much faster & much more parallelism happens.

I have uploaded the initial image, the final image and the flight recording.

https://sourceforge.net/projects/calculix-rpm/files/ubifs/xattr/

--
     Manfred



More information about the linux-mtd mailing list