]> www.pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - fs/nilfs2/mdt.c
nilfs2: avoid double error caused by nilfs_transaction_end
[linux-2.6-omap-h63xx.git] / fs / nilfs2 / mdt.c
index 6ab847578615ec89d2843584c34121f5c6b85d70..e0a632b86febda04da448b1ec2bd8ee23b536443 100644 (file)
@@ -123,7 +123,10 @@ static int nilfs_mdt_create_block(struct inode *inode, unsigned long block,
        brelse(bh);
 
  failed_unlock:
-       nilfs_transaction_end(sb, !err);
+       if (likely(!err))
+               err = nilfs_transaction_commit(sb);
+       else
+               nilfs_transaction_abort(sb);
        if (writer)
                nilfs_put_writer(nilfs);
  out: