If the namelen is 20 and name only has actual length 16, it will fail
in ocfs2_find_entry because of mismatch.
So use actual name length when find entry.

Signed-off-by: Joseph Qi <joseph...@huawei.com>
Signed-off-by: Yiwen Jiang <jiangyi...@huawei.com>
---
 fs/ocfs2/namei.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/fs/ocfs2/namei.c b/fs/ocfs2/namei.c
index b5c3a5e..4983740 100644
--- a/fs/ocfs2/namei.c
+++ b/fs/ocfs2/namei.c
@@ -2322,10 +2322,10 @@ int ocfs2_orphan_del(struct ocfs2_super *osb,

        trace_ocfs2_orphan_del(
             (unsigned long long)OCFS2_I(orphan_dir_inode)->ip_blkno,
-            name, namelen);
+            name, strlen(name));

        /* find it's spot in the orphan directory */
-       status = ocfs2_find_entry(name, namelen, orphan_dir_inode,
+       status = ocfs2_find_entry(name, strlen(name), orphan_dir_inode,
                                  &lookup);
        if (status) {
                mlog_errno(status);
-- 
1.8.4.3


_______________________________________________
Ocfs2-devel mailing list
Ocfs2-devel@oss.oracle.com
https://oss.oracle.com/mailman/listinfo/ocfs2-devel

Reply via email to