Enabling exFAT requires enabling long file names, so enable LFN if
exFAT is enabled.
exFAT (and LFN) also requires bumping the per-file/per-dir buffer.
Can be tested with
CFLAGS += -DFATFS_FFCONF_OPT_FS_EXFAT=1
For increased performance it can be desireable to disable the tiny option.
The config option enables a per-file cache which increases the size
of `fatfs_file_desc_t`.
This solves highly theoretical race conditions of file systems being
unmounted in an application while a shell `df` runs, fixes the previous
weird behavior that `/mountpoint/non-existant-path` could be df'd and
would even report that non-existant path as a file name, but more
practically ensures that an example of vfs_iter_mount_dirs is around.
... adding precision to the documentation where a corner case was
discovered during testing and is permitted.
The test is too large for one small board, just like the other existing
VFS test.
No current file system implements it, there is no defined semantic
difference between running fstatfs and the fallback currently
implemented, and there is practically no optimization gained from not
just running it through a single statvfs.
When a file system has `fstat` and `open` implemented, `stat` can still
be missing. The new function is a generic implementation, and used in
fatfs to provide a `stat`.