"Theodore Y. Ts'o" <tytso@xxxxxxx> writes: > On Mon, Oct 15, 2018 at 05:12:14PM -0400, Gabriel Krisman Bertazi wrote: >> +#define EXT4_ENC_STRICT_MODE_FL (1 << 0) /* Reject invalid sequences? */ > > Why the question mark? Hi Ted, The question mark is very redundant for a flag, I admit :). It meant to say "Whether to reject invalid sequences" or something like that. Will fix in the v2. >> +#define UTF8_NORMALIZATION_TYPE_NFKD (1 << 1) >> +#define UTF8_CASEFOLD_TYPE_NFKDCF (1 << 4) >> + >> +static const struct ext4_sb_encoding_map { >> + char *name; >> + __u16 default_flags; >> +} ext4_encoding_map[] = { >> + /* 0x0 */ { "ascii", 0x0}, >> + /* 0x1 */ {"utf8-10.0.0", UTF8_NORMALIZATION_TYPE_NFKD|UTF8_CASEFOLD_TYPE_NFKDCF}, >> + {0x0, 0x0}, >> +}; >> + >> #endif /* _LINUX_EXT2_FS_H */ > > What uses this? I can't find any other references in either the kernel or > e2fsprogs patches. Only the instance ext4_encoding_map, itself, is used in this patch and in the next one, which modifies mkefs. It stores the string for comparison with what the user passed in the command line. I guess naming the structure is unnecessary, since we have only this single const static instance. I will change that in the v2, as well. The current series doesn't include the huge utf8 stuff, which makes use of the rest of the flags, but I will add that in v2 as well. Thanks! -- Gabriel Krisman Bertazi