Merge branch 'core-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel...
[firefly-linux-kernel-4.4.55.git] / fs / ocfs2 / dir.c
index ccd4dcfc36457c211762e4dc7348949774c7df5b..02878a83f0b4e88655114ff78b9883e0494432a6 100644 (file)
@@ -1617,7 +1617,7 @@ int __ocfs2_add_entry(handle_t *handle,
        struct ocfs2_dir_entry *de, *de1;
        struct ocfs2_dinode *di = (struct ocfs2_dinode *)parent_fe_bh->b_data;
        struct super_block *sb = dir->i_sb;
-       int retval, status;
+       int retval;
        unsigned int size = sb->s_blocksize;
        struct buffer_head *insert_bh = lookup->dl_leaf_bh;
        char *data_start = insert_bh->b_data;
@@ -1695,25 +1695,25 @@ int __ocfs2_add_entry(handle_t *handle,
                        }
 
                        if (insert_bh == parent_fe_bh)
-                               status = ocfs2_journal_access_di(handle,
+                               retval = ocfs2_journal_access_di(handle,
                                                                 INODE_CACHE(dir),
                                                                 insert_bh,
                                                                 OCFS2_JOURNAL_ACCESS_WRITE);
                        else {
-                               status = ocfs2_journal_access_db(handle,
+                               retval = ocfs2_journal_access_db(handle,
                                                                 INODE_CACHE(dir),
                                                                 insert_bh,
                                              OCFS2_JOURNAL_ACCESS_WRITE);
 
-                               if (ocfs2_dir_indexed(dir)) {
-                                       status = ocfs2_dx_dir_insert(dir,
+                               if (!retval && ocfs2_dir_indexed(dir))
+                                       retval = ocfs2_dx_dir_insert(dir,
                                                                handle,
                                                                lookup);
-                                       if (status) {
-                                               mlog_errno(status);
-                                               goto bail;
-                                       }
-                               }
+                       }
+
+                       if (retval) {
+                               mlog_errno(retval);
+                               goto bail;
                        }
 
                        /* By now the buffer is marked for journaling */
@@ -3543,13 +3543,10 @@ static void dx_leaf_sort_swap(void *a, void *b, int size)
 {
        struct ocfs2_dx_entry *entry1 = a;
        struct ocfs2_dx_entry *entry2 = b;
-       struct ocfs2_dx_entry tmp;
 
        BUG_ON(size != sizeof(*entry1));
 
-       tmp = *entry1;
-       *entry1 = *entry2;
-       *entry2 = tmp;
+       swap(*entry1, *entry2);
 }
 
 static int ocfs2_dx_leaf_same_major(struct ocfs2_dx_leaf *dx_leaf)