What's new

kernel: tfat error

  • SNBForums Code of Conduct

    SNBForums is a community for everyone, no matter what their level of experience.

    Please be tolerant and patient of others, especially newcomers. We are all here to share and learn!

    The rules are simple: Be patient, be nice, be helpful or be gone!

Mxyzptlk

Occasional Visitor
I recently copied a bunch of mp3 files to the USB drive mounted on my AX3000. I'm running Merlin 386.3_2. I'm getting recurring errors like this one, which seem to have something to with the OS not liking characters in some of the filenames:

Nov 1 12:31:10 kernel: tfat error (device sda1, pid 5063): exfat_ucstonls(): Unicode name contains characters that cannot be converted to character set utf8. Try using the mount option nls=utf8.
Nov 1 12:31:10 kernel: tfat warning (device sda1, pid 5063): fat_readdir(): Going to use short name because long Unicode name contains characters that cannot be converted to character set utf8 (error 84). Try using the mount option nls=utf8.
Nov 1 12:31:10 kernel: tfat error (device sda1, pid 5063): exfat_ucstonls(): Unicode name contains characters that cannot be converted to character set utf8. Try using the mount option nls=utf8.
Nov 1 12:31:10 kernel: tfat error (device sda1, pid 5063): fat_lookup(): Failed to convert long name from Unicode to character set utf8 (error 84). Try using the mount option nls=utf8.
Nov 1 12:31:31 kernel: tfat error (device sda1, pid 5064): exfat_ucstonls(): Unicode name contains characters that cannot be converted to character set utf8. Try using the mount option nls=utf8.
Nov 1 12:31:31 kernel: tfat warning (device sda1, pid 5064): fat_readdir(): Going to use short name because long Unicode name contains characters that cannot be converted to character set utf8 (error 84). Try using the mount option nls=utf8.
Nov 1 12:31:31 kernel: tfat error (device sda1, pid 5064): exfat_ucstonls(): Unicode name contains characters that cannot be converted to character set utf8. Try using the mount option nls=utf8.
Nov 1 12:31:31 kernel: tfat error (device sda1, pid 5064): fat_lookup(): Failed to convert long name from Unicode to character set utf8 (error 84). Try using the mount option nls=utf8.
Nov 1 12:31:31 kernel: tfat error (device sda1, pid 5064): exfat_ucstonls(): Unicode name contains characters that cannot be converted to character set utf8. Try using the mount option nls=utf8.

I'm not sure where the "mount option" mentioned above is set (or even if it's possible to set it within Merlin.) Is there somewhere this (and perhaps long filenames, since we are kind of beyond 8.3 naming nowadays hopefully) can be configured or some other way to fix?
 
I believe the error message describes the problem. Your USB device is formatted as FAT32. It contains files and/or directories whose names include Unicode characters that it cannot convert to UTF-8. The nls option suggested in the message does not appear to be supported by the router's FAT32 driver (or at least it seemed to ignore it when I tried using it). If you reformat your USB drive to NTFS you should not have this problem because the NTFS driver mounts with nls=utf8 by default.

Alternatively, rename the problem files/directories to remove the Unicode characters.
 
I believe the error message describes the problem. Your USB device is formatted as FAT32. It contains files and/or directories whose names include Unicode characters that it cannot convert to UTF-8. The nls option suggested in the message does not appear to be supported by the router's FAT32 driver (or at least it seemed to ignore it when I tried using it). If you reformat your USB drive to NTFS you should not have this problem because the NTFS driver mounts with nls=utf8 by default.

Alternatively, rename the problem files/directories to remove the Unicode characters.

Thanks! I wasn't sure if it the router would handle NTFS, so I'll definitely try that.
 
Looks like I spoke too soon.

I formatted the USB drive in NTFS and copied the mp3 files back to it. I'm getting the same error, but with tntfs...

kernel: tntfs error (device sda1, pid 19041): ntfs_ucstonls_gfp(): Unicode name contains characters that cannot be converted to character set utf8. You might want to try to use the mount option nls=utf8.
 
Unfortunately I have no idea which one is the problem filename out of 11,350 files... is there some way to tell?
 
I suppose you could wipe the USB drive and then copy over groups of directories one at a time to try and narrow down the problem.
 

Latest threads

Sign Up For SNBForums Daily Digest

Get an update of what's new every day delivered to your mailbox. Sign up here!
Top