Re: [PATCHv2] fat: add config option to set UTF-8 mount option by default

From: Geert Uytterhoeven
Date: Wed Mar 23 2016 - 08:27:57 EST


On Wed, Mar 23, 2016 at 12:28 PM, Josh Boyer <jwboyer@xxxxxxxxxxxxxxxxx> wrote:
> On Wed, Mar 23, 2016 at 4:17 AM, Geert Uytterhoeven
> <geert@xxxxxxxxxxxxxx> wrote:
>> On Tue, Mar 8, 2016 at 2:53 PM, Maciej S. Szmigiero
>> <mail@xxxxxxxxxxxxxxxxxxxxx> wrote:
>>> FAT has long supported its own default file name encoding
>>> config setting, separate from CONFIG_NLS_DEFAULT.
>>>
>>> However, if UTF-8 encoded file names are desired FAT
>>> character set should not be set to utf8 since this would
>>> make file names case sensitive even if case insensitive
>>> matching is requested.
>>> Instead, "utf8" mount options should be provided to enable
>>> UTF-8 file names in FAT file system.
>>>
>>> Unfortunately, there was no possibility to set the default
>>> value of this option so on UTF-8 system "utf8" mount option
>>> had to be added manually to most FAT mounts.
>>>
>>> This patch adds config option to set such default value.
>>>
>>> Signed-off-by: Maciej S. Szmigiero <mail@xxxxxxxxxxxxxxxxxxxxx>
>>
>>> --- a/fs/fat/Kconfig
>>> +++ b/fs/fat/Kconfig
>>> @@ -93,8 +93,24 @@ config FAT_DEFAULT_IOCHARSET
>>> that most of your FAT filesystems use, and can be overridden
>>> with the "iocharset" mount option for FAT filesystems.
>>> Note that "utf8" is not recommended for FAT filesystems.
>>> - If unsure, you shouldn't set "utf8" here.
>>> + If unsure, you shouldn't set "utf8" here - select the next option
>>> + instead if you would like to use UTF-8 encoded file names by default.
>>> See <file:Documentation/filesystems/vfat.txt> for more information.
>>>
>>> Enable any character sets you need in File Systems/Native Language
>>> Support.
>>> +
>>> +config FAT_DEFAULT_UTF8
>>> + bool "Enable FAT UTF-8 option by default"
>>> + depends on VFAT_FS
>>> + default n
>>> + help
>>> + Set this if you would like to have "utf8" mount option set
>>> + by default when mounting FAT filesystems.
>>> +
>>> + Even if you say Y here can always disable UTF-8 for
>>> + particular mount by adding "utf8=0" to mount options.
>>> +
>>> + Say Y if you use UTF-8 encoding for file names, N otherwise.
>>> +
>>> + See <file:Documentation/filesystems/vfat.txt> for more information.
>>
>> What's the recommended value of CONFIG_FAT_DEFAULT_UTF8 for
>> a (distro) defconfig?
>
> Yes, I'm curious about this as well. My initial assumption is to
> leave it off, given that if you turn it on when it wasn't previously
> it will change the behavior. I would also assume that is why it is
> marked as default n.

"default n" is superfluous, as all options default to "n" in the absence
of a default specifier.

Gr{oetje,eeting}s,

Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds