]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - fs/ocfs2/namei.c
Merge tag 'ext4_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso...
[karo-tx-linux.git] / fs / ocfs2 / namei.c
index 3683643f3f0ecf4410e0d85549ca4494f60af7fb..2060fc398445a259d17167d43b97fed4ba7357ab 100644 (file)
@@ -450,7 +450,6 @@ leave:
 
        brelse(new_fe_bh);
        brelse(parent_fe_bh);
-       kfree(si.name);
        kfree(si.value);
 
        ocfs2_free_dir_lookup_result(&lookup);
@@ -495,6 +494,7 @@ static int __ocfs2_mknod_locked(struct inode *dir,
        struct ocfs2_dinode *fe = NULL;
        struct ocfs2_extent_list *fel;
        u16 feat;
+       struct ocfs2_inode_info *oi = OCFS2_I(inode);
 
        *new_fe_bh = NULL;
 
@@ -576,8 +576,8 @@ static int __ocfs2_mknod_locked(struct inode *dir,
                        mlog_errno(status);
        }
 
-       status = 0; /* error in ocfs2_create_new_inode_locks is not
-                    * critical */
+       oi->i_sync_tid = handle->h_transaction->t_tid;
+       oi->i_datasync_tid = handle->h_transaction->t_tid;
 
 leave:
        if (status < 0) {
@@ -1855,7 +1855,6 @@ bail:
 
        brelse(new_fe_bh);
        brelse(parent_fe_bh);
-       kfree(si.name);
        kfree(si.value);
        ocfs2_free_dir_lookup_result(&lookup);
        if (inode_ac)
@@ -2481,6 +2480,7 @@ int ocfs2_mv_orphaned_inode_to_new(struct inode *dir,
        di->i_orphaned_slot = 0;
        set_nlink(inode, 1);
        ocfs2_set_links_count(di, inode->i_nlink);
+       ocfs2_update_inode_fsync_trans(handle, inode, 1);
        ocfs2_journal_dirty(handle, di_bh);
 
        status = ocfs2_add_entry(handle, dentry, inode,