[U-Boot] [BUG] fs: fat: incorrect creation of files with Unicode file name
AKASHI Takahiro
takahiro.akashi at linaro.org
Wed Nov 27 06:17:29 UTC 2019
On Wed, Nov 13, 2019 at 12:53:17AM +0100, Heinrich Schuchardt wrote:
> In the UEFI Shell I create a file with
>
> FS0:\> echo привет_мир.текст > привет_мир.текст
>
> FS0:\> ls
> Directory of: FS0:\
> 00/00/0000 00:00 38 привет_мир.текст
>
> The U-Boot console shows it correctly:
>
> => ls scsi 0:1
> 38 привет_мир.текст
>
> Now in Linux I mount the volume. ls shows an incorrect filename:
>
> > ls /mnt
> 'пÑ'$'\302\200''ивеÑ'$'\302\202''_миÑ'$'\302\200''.Ñ'$'\302\202''екÑ'$'\302\201''Ñ'$'\302\202'
>
> Now in Linux I create a file
>
> # echo привет_мир.текст > /mnt/привет_мир.текст
>
> U-Boot shows the file name incorrectly
>
> => ls scsi 0:1
> 31 ?@825B_<8 at .B5:AB
>
> So U-Boot seems not to convert file names correctly to UTF-16 before saving.
No conversion from/to UTF-16 takes place at a long file name
entry in the current FAT file system.
If we implement this, it will end up with incompatibility
of (meta) data with existing media.
-Takahiro Akashi
> Best regards
>
> Heinrich
More information about the U-Boot
mailing list