libfs: unexport generic_ci_d_compare() and generic_ci_d_hash()

Now that generic_set_encrypted_ci_d_ops() has been added and ext4 and
f2fs are using it, it's no longer necessary to export
generic_ci_d_compare() and generic_ci_d_hash() to filesystems.

Reviewed-by: Gabriel Krisman Bertazi <krisman@collabora.com>
Signed-off-by: Eric Biggers <ebiggers@google.com>
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
This commit is contained in:
Eric Biggers
2020-12-28 15:25:29 -08:00
committed by Jaegeuk Kim
parent c4af55b0c9
commit 4ce68c0eee
2 changed files with 3 additions and 10 deletions

View File

@@ -1388,8 +1388,8 @@ static bool needs_casefold(const struct inode *dir)
* *
* Return: 0 if names match, 1 if mismatch, or -ERRNO * Return: 0 if names match, 1 if mismatch, or -ERRNO
*/ */
int generic_ci_d_compare(const struct dentry *dentry, unsigned int len, static int generic_ci_d_compare(const struct dentry *dentry, unsigned int len,
const char *str, const struct qstr *name) const char *str, const struct qstr *name)
{ {
const struct dentry *parent = READ_ONCE(dentry->d_parent); const struct dentry *parent = READ_ONCE(dentry->d_parent);
const struct inode *dir = READ_ONCE(parent->d_inode); const struct inode *dir = READ_ONCE(parent->d_inode);
@@ -1426,7 +1426,6 @@ fallback:
return 1; return 1;
return !!memcmp(str, name->name, len); return !!memcmp(str, name->name, len);
} }
EXPORT_SYMBOL(generic_ci_d_compare);
/** /**
* generic_ci_d_hash - generic d_hash implementation for casefolding filesystems * generic_ci_d_hash - generic d_hash implementation for casefolding filesystems
@@ -1435,7 +1434,7 @@ EXPORT_SYMBOL(generic_ci_d_compare);
* *
* Return: 0 if hash was successful or unchanged, and -EINVAL on error * Return: 0 if hash was successful or unchanged, and -EINVAL on error
*/ */
int generic_ci_d_hash(const struct dentry *dentry, struct qstr *str) static int generic_ci_d_hash(const struct dentry *dentry, struct qstr *str)
{ {
const struct inode *dir = READ_ONCE(dentry->d_inode); const struct inode *dir = READ_ONCE(dentry->d_inode);
struct super_block *sb = dentry->d_sb; struct super_block *sb = dentry->d_sb;
@@ -1450,7 +1449,6 @@ int generic_ci_d_hash(const struct dentry *dentry, struct qstr *str)
return -EINVAL; return -EINVAL;
return 0; return 0;
} }
EXPORT_SYMBOL(generic_ci_d_hash);
static const struct dentry_operations generic_ci_dentry_ops = { static const struct dentry_operations generic_ci_dentry_ops = {
.d_hash = generic_ci_d_hash, .d_hash = generic_ci_d_hash,

View File

@@ -3197,11 +3197,6 @@ extern int generic_file_fsync(struct file *, loff_t, loff_t, int);
extern int generic_check_addressable(unsigned, u64); extern int generic_check_addressable(unsigned, u64);
#ifdef CONFIG_UNICODE
extern int generic_ci_d_hash(const struct dentry *dentry, struct qstr *str);
extern int generic_ci_d_compare(const struct dentry *dentry, unsigned int len,
const char *str, const struct qstr *name);
#endif
extern void generic_set_encrypted_ci_d_ops(struct dentry *dentry); extern void generic_set_encrypted_ci_d_ops(struct dentry *dentry);
#ifdef CONFIG_MIGRATION #ifdef CONFIG_MIGRATION