diff --git a/fs/ubifs/dir.c b/fs/ubifs/dir.c index 3b13c648d4900efeca9f17f118f2dbd0c5e1e8be..e413a9cf8ee38b9e0f9fad3d9234653626dbf1d7 100644 --- a/fs/ubifs/dir.c +++ b/fs/ubifs/dir.c @@ -1234,6 +1234,8 @@ static int ubifs_symlink(struct mnt_idmap *idmap, struct inode *dir, 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: