All of lore.kernel.org
 help / color / mirror / Atom feed
From: Heinrich Schuchardt <xypron.glpk@gmx.de>
To: u-boot@lists.denx.de
Subject: [U-Boot] [RFC] FAT errors
Date: Sun, 8 Sep 2019 01:49:30 +0200	[thread overview]
Message-ID: <4994e575-1d6f-318c-baf4-550e2eb9afd6@gmx.de> (raw)
In-Reply-To: <20190905083751.GD4398@linaro.org>

On 9/5/19 10:37 AM, AKASHI Takahiro wrote:
> On Thu, Sep 05, 2019 at 08:43:43AM +0200, Heinrich Schuchardt wrote:
>> Currently we do no have a maintainer for the FAT file system. Takahiro
>> has done a great job fixing some of the most prominent deficiencies. But
>> still the driver is not in good shape:
>>
>> I once again ran upon errors in FAT when executing the UEFI SCT.
>>
>> Here is some of the output of
>> dosfsck -w -r -l -a -v -t
>> The full output has hundreds of errors recorded.
>
> While I don't deny shifting to other code base for FAT,
> I'm willing to debug the current code if you send me
> binary data of corrupted file system.
> The first 1MB or so, which will contains directory meta data,
> would be good enough as I said before.
>
> I think that most errors stem from wrong long-file-name handling.
>
> -Takahiro Akashi

The SCT test that really shows the trouble is for
EFI_FILE_PROTOCOL.GetInfo(). On FAT16 it hits the 512 files per
directory limit.

Both on FAT16 and FAT32 it crashes when saving the log.

Observed on qemu_arm64_defconfig with edk2-test HEAD.

Best regards

Heinrich

>
>
>> Orphaned long file name part "Sct.log"
>>    Auto-deleting.
>> Orphaned long file name part "Sct.log"
>>    Auto-deleting.
>> /Log/RuntimeServicesTest/VariableServicesTest0/QueryVariableInfo_Conf_0_0_61758774-91A3-47DD-BDBD-B81094A5F62D.log
>>    Duplicate directory entry.
>>    First    Size 4712 bytes, date 01:00:00 Dec 31 1979
>>    Second   Size 5086 bytes, date 01:00:00 Dec 31 1979
>>    Auto-renaming second.
>>    Renamed to FSCK0000.008
>>
>> BareBox is using a (somewhat outdated) copy of this library with a
>> little bit of wrapper code:
>>
>> FatFs - Generic FAT Filesystem Module
>> http://elm-chan.org/fsw/ff/00index_e.html
>> http://elm-chan.org/fsw/ff/arc/ff13c.zip
>>
>> The same library is also used for Arduinos:
>> https://github.com/stm32duino/FatFs
>>
>> Shouldn't we try just the same?
>>
>> Best regards
>>
>> Heinrich
>

  reply	other threads:[~2019-09-07 23:49 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-09-05  6:43 [U-Boot] [RFC] FAT errors Heinrich Schuchardt
2019-09-05  8:37 ` AKASHI Takahiro
2019-09-07 23:49   ` Heinrich Schuchardt [this message]
2019-09-10  0:53     ` AKASHI Takahiro
2019-09-10  7:20       ` Heinrich Schuchardt
2019-09-05 12:06 ` Tom Rini
2019-09-05 12:22   ` Heinrich Schuchardt
2019-09-05 15:23     ` Stephen Warren
2019-09-05 22:22       ` Heinrich Schuchardt

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=4994e575-1d6f-318c-baf4-550e2eb9afd6@gmx.de \
    --to=xypron.glpk@gmx.de \
    --cc=u-boot@lists.denx.de \
    /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 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.