diff --git a/fs/minix/namei.c b/fs/minix/namei.c index a8d5a7e22b7b..8648d860ef0c 100644 --- a/fs/minix/namei.c +++ b/fs/minix/namei.c @@ -218,6 +218,13 @@ static int minix_rename(struct mnt_idmap *idmap, if (dir_de && !minix_empty_dir(new_inode)) goto out_dir; + err = -EFSCORRUPTED; + if (dir_de && new_inode->i_nlink != 2) { + printk(KERN_CRIT "minix-fs error: directory inode has " + "corrupted nlink"); + goto out_dir; + } + err = -ENOENT; new_de = minix_find_entry(new_dentry, &new_folio); if (!new_de)