diff --git a/fs/ubifs/dir.c b/fs/ubifs/dir.c index 33f2da805c977c4419ddbb3778e8260a9220fa8a..6e87964c5c0a3f8640711041dfefb267f4090d6b 100644 --- a/fs/ubifs/dir.c +++ b/fs/ubifs/dir.c @@ -1223,6 +1223,8 @@ static int ubifs_symlink(struct inode *dir, struct dentry *dentry, dir_ui->ui_size = dir->i_size; mutex_unlock(&dir_ui->ui_mutex); out_inode: + /* Free inode->i_link before inode is marked as bad. */ + fscrypt_free_inode(inode); make_bad_inode(inode); iput(inode); out_fname: