From mboxrd@z Thu Jan 1 00:00:00 1970 From: AKASHI, Takahiro Date: Wed, 19 Jun 2019 09:27:00 +0900 Subject: [U-Boot] [BUG] fs: fat: error when handling long file names In-Reply-To: <9aad4e3f-5c94-780e-acc6-1bd0b232449b@gmx.de> References: <9aad4e3f-5c94-780e-acc6-1bd0b232449b@gmx.de> Message-ID: <20190619002659.GJ6610@linaro.org> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Heinrich, On Tue, Jun 18, 2019 at 09:00:56PM +0200, Heinrich Schuchardt wrote: > Hello Takahiro > > I hope you have an idea what might be missing in the FAT file system > support for long names. > > When running the SCT I saw this error for the GetInfo functional test: > > GetInfo() Basic Test - checkpoint3 -- PASS > > E4F4F6A2-7538-4C79-AA3C-67184EC70E16 > > /home/supven01/work/sct_workspace/edk2/SctPkg/TestCase/UEFI/EFI/Protocol/SimpleFileSystem/BlackBoxTest/SimpleFileSystemBBTestFunction.c:8607: > SystemInfo->Size - 18, BufferSize - 18, Tpl - 8 > > > EFI: Entry efi_file_open(000000007ef8c250, 000000007edeb0c0, > "BBTestGetInfoBasicTestCheckpoint3_File_0", 8000000000000003, 0) > Error: allocating new dir entry > > EFI: Exit: efi_file_open: 14 > > EFI: Entry efi_file_open(000000007ef8c250, 000000007edeb0c8, > "BBTestGetInfoBasicTestCheckpoint3_File_1", 8000000000000003, 0) > Error: allocating new dir entry > > In the EFI shell output to a file with a long name sometimes fails > (depending on the history of the volume). > > FS0:\> echo a > foo > FS0:\> echo a > abcdefgh.ijk > FS0:\> echo a > abcdefgh.ijkl > ** Unable to write file /abcdefgh.ijkl ** > FS0:\> If this happens again, can you send me the binary of the file system? Probably the first 1MB will be enough if you don't have lots of files/directories on it. This will help me analyze the volume's header. > Up to now the SCT test is the only thing that fails reproducibly. SCT will create bunch of files and the logs can be quite big. It's kinda stress test. -Takahiro Akashi > I use this repo for building: > https://github.com/xypron/u-boot-build/tree/qemu-arm64 > > make sct-prepare > make sct > > Best regards > > Heinrich