]> bbs.cooldavid.org Git - net-next-2.6.git/blobdiff - fs/jffs2/fs.c
jffs2: Fix NFS race by using insert_inode_locked()
[net-next-2.6.git] / fs / jffs2 / fs.c
index 86e0821fc989303d6ccd297e74c18606d45db3ba..26037e2d6154b2aa6d16127f5cd7f1c08ed9fad2 100644 (file)
@@ -465,7 +465,12 @@ struct inode *jffs2_new_inode (struct inode *dir_i, int mode, struct jffs2_raw_i
        inode->i_blocks = 0;
        inode->i_size = 0;
 
-       insert_inode_hash(inode);
+       if (insert_inode_locked(inode) < 0) {
+               make_bad_inode(inode);
+               unlock_new_inode(inode);
+               iput(inode);
+               return ERR_PTR(-EINVAL);
+       }
 
        return inode;
 }