Re: [PATCH] exfat: doc: add documentation

From: Zhan Xusheng

Date: Mon Aug 31 2026 - 17:59:34 EST


The option list and the defaults match fs/exfat/, including the allow_utime
derivation and the time_offset range. Three things the table leaves out or
implies.

Most of the options cannot be changed on remount. exfat_reconfigure()
fails with -EINVAL if iocharset, keep_last_dots, sys_tz, time_offset, uid,
gid, fmask, dmask or allow_utime differ from the current values
(super.c:789), leaving only errors, discard and zero_size_dir. Nothing is
logged on that path, so "mount -o remount,uid=1000" returns a bare EINVAL.
The reason sits in the code right above the test: the old values are cached
in inodes and dentries.

umask= sets both masks, and the options take effect in the order they are
written. Opt_umask assigns fs_fmask and fs_dmask (super.c:289), so
"-o umask=0022,dmask=0077" ends up with dmask 0077, while
"-o dmask=0077,umask=0022" silently puts dmask back to 0022. The dmask=
and fmask= entries also do not give their default, which is the same
current umask that umask= defaults to.

utf8 is ignored rather than an old spelling of iocharset=utf8. It shares a
fallthrough with debug, namecase= and codepage= (super.c:331), so
"mount -o utf8" selects nothing. exfat_show_options() prints
iocharset=utf8 only when opts->utf8 is set (super.c:132), and nothing sets
that but iocharset=utf8. Listing utf8 apart from the group described as
"Deprecated and ignored" reads as if it still has an effect.

Thanks,
Zhan Xusheng