Viewing: export-ext4fs-dirhash-helper.patch
diff --git a/fs/ext4/ext4.h b/fs/ext4/ext4.h
index bb6b6be..35ef40b 100644
--- a/fs/ext4/ext4.h
+++ b/fs/ext4/ext4.h
@@ -2585,6 +2585,9 @@ extern int ext4_sync_file(struct file *, loff_t, loff_t, int);
extern int ext4fs_dirhash(const struct inode *dir, const char *name, int len,
struct dx_hash_info *hinfo);
+extern int __ext4fs_dirhash(const char *name, int len,
+ struct dx_hash_info *hinfo);
+
/* ialloc.c */
extern struct inode *__ext4_new_inode(handle_t *, struct inode *, umode_t,
const struct qstr *qstr, __u32 goal,
diff --git a/fs/ext4/hash.c b/fs/ext4/hash.c
index d358bfc..f7d575a 100644
--- a/fs/ext4/hash.c
+++ b/fs/ext4/hash.c
@@ -197,8 +197,8 @@ static void str2hashbuf_unsigned(const char *msg, int len, __u32 *buf, int num)
* represented, and whether or not the returned hash is 32 bits or 64
* bits. 32 bit hashes will return 0 for the minor hash.
*/
-static int __ext4fs_dirhash(const char *name, int len,
- struct dx_hash_info *hinfo)
+int __ext4fs_dirhash(const char *name, int len,
+ struct dx_hash_info *hinfo)
{
__u32 hash;
__u32 minor_hash = 0;
@@ -270,6 +270,7 @@ static int __ext4fs_dirhash(const char *name, int len,
hinfo->minor_hash = minor_hash;
return 0;
}
+EXPORT_SYMBOL(__ext4fs_dirhash);
int ext4fs_dirhash(const struct inode *dir, const char *name, int len,
struct dx_hash_info *hinfo)