unicode: Add utf8_casefold_hash
authorDaniel Rosenberg <drosen@google.com>
Wed, 8 Jul 2020 09:12:34 +0000 (02:12 -0700)
committerJaegeuk Kim <jaegeuk@kernel.org>
Thu, 10 Sep 2020 21:03:31 +0000 (14:03 -0700)
commit3d7bfea8b8378277a25b42b28fe5a2a5ca76a7cf
tree70947df66e566caf2bd0bc776c4ca85417fc7747
parente6c3948de2f8213010e584009d47e9bc0934b32c
unicode: Add utf8_casefold_hash

This adds a case insensitive hash function to allow taking the hash
without needing to allocate a casefolded copy of the string.

The existing d_hash implementations for casefolding allocate memory
within rcu-walk, by avoiding it we can be more efficient and avoid
worrying about a failed allocation.

Signed-off-by: Daniel Rosenberg <drosen@google.com>
Reviewed-by: Gabriel Krisman Bertazi <krisman@collabora.com>
Reviewed-by: Eric Biggers <ebiggers@google.com>
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
fs/unicode/utf8-core.c
include/linux/unicode.h