[GIT PULL] unicode patches for 5.17

From: Gabriel Krisman Bertazi
Date: Tue Jan 11 2022 - 20:59:04 EST


The following changes since commit 9e1ff307c779ce1f0f810c7ecce3d95bbae40896:

Linux 5.15-rc4 (2021-10-03 14:08:47 -0700)

are available in the Git repository at:

https://git.kernel.org/pub/scm/linux/kernel/git/krisman/unicode.git tags/unicode-for-next-5.17

for you to fetch changes up to e2a58d2d3416aceeae63dfc7bf680dd390ff331d:

unicode: only export internal symbols for the selftests (2021-10-12 11:41:39 -0300)

----------------------------------------------------------------
This branch has patches from Christoph Hellwig to split the large data
tables of the unicode subsystem into a loadable module, which allow
users to not have them around if case-insensitive filesystems are not to
be used. It also includes minor code fixes to unicode and its users,
from the same author.

There is a trivial conflict in the function encoding_show in
fs/f2fs/sysfs.c reported by linux-next between commit

84eab2a899f2 ("f2fs: replace snprintf in show functions with sysfs_emit")

and commit a440943e68cd ("unicode: remove the charset field from struct
unicode_map") from my tree.

I left an example of how I would solve it on the branch
unicode-f2fs-mergeconflict of my tree.

All the patches here have been on linux-next releases for the past
months.

Signed-off-by: Gabriel Krisman Bertazi <krisman@xxxxxxxxxxxxx>

----------------------------------------------------------------
Christoph Hellwig (11):
ext4: simplify ext4_sb_read_encoding
f2fs: simplify f2fs_sb_read_encoding
unicode: remove the charset field from struct unicode_map
unicode: mark the version field in struct unicode_map unsigned
unicode: pass a UNICODE_AGE() tripple to utf8_load
unicode: remove the unused utf8{,n}age{min,max} functions
unicode: simplify utf8len
unicode: move utf8cursor to utf8-selftest.c
unicode: cache the normalization tables in struct unicode_map
unicode: Add utf8-data module
unicode: only export internal symbols for the selftests

fs/ext4/super.c | 39 ++-
fs/f2fs/super.c | 38 +--
fs/f2fs/sysfs.c | 3 +-
fs/unicode/Kconfig | 13 +-
fs/unicode/Makefile | 13 +-
fs/unicode/mkutf8data.c | 24 +-
fs/unicode/utf8-core.c | 109 ++++-----
fs/unicode/utf8-norm.c | 262 +++------------------
fs/unicode/utf8-selftest.c | 94 ++++----
.../{utf8data.h_shipped => utf8data.c_shipped} | 22 +-
fs/unicode/utf8n.h | 81 +++----
include/linux/unicode.h | 49 +++-
12 files changed, 291 insertions(+), 456 deletions(-)
rename fs/unicode/{utf8data.h_shipped => utf8data.c_shipped} (99%)