vfat filesystem: Why utf8=1 when iocharset=”utf8” was already there?

From: Amit Sahrawat
Date: Fri Sep 02 2011 - 07:27:21 EST


>From my opinion both should support the same functionality as the
motive behind this seems to introduce the complete support for utf8.
But, I am surprised to see the behavior changes in the ‘2’ options.
1) When using iocharset=”utf8” it makes vfat case sensitive, while
this is not the case with using utf8=1
2) Surrogate pair don’t work when using iocharset=”utf8”, because that
traverses a path like this:
xlate_to_uni()-->nls->char2uni()-->char2uni()-->utf8_to_utf32()
After this it returns EINVAL because Surrogate pair correct code is
greater than 0xFFFF (MAX_WCHAR_T – limit which is put)
But this is not the case with utf8=1
There are other places also where I can see usage different due to
usage of char2uni()

Can someone provide any help on this? Why do we have separate options
for using utf8 and if utf8=1 smoothly supports proper working then why
not discard iocharset=”utf8” ? and if this is not the case
why was utf8=1 introduced?

Please provide any guidance in this.

Thanks & Regards,
Amit Sahrawat
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/