Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 4093d306 authored by Al Viro's avatar Al Viro
Browse files

securityfs: ->d_parent is never NULL or negative



Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
parent 07a8e62f
Loading
Loading
Loading
Loading
+6 −5
Original line number Diff line number Diff line
@@ -186,20 +186,21 @@ EXPORT_SYMBOL_GPL(securityfs_create_dir);
 */
void securityfs_remove(struct dentry *dentry)
{
	struct dentry *parent;
	struct inode *dir;

	if (!dentry || IS_ERR(dentry))
		return;

	inode_lock(d_inode(parent));
	dir = d_inode(dentry->d_parent);
	inode_lock(dir);
	if (simple_positive(dentry)) {
		if (d_is_dir(dentry))
			simple_rmdir(d_inode(parent), dentry);
			simple_rmdir(dir, dentry);
		else
			simple_unlink(d_inode(parent), dentry);
			simple_unlink(dir, dentry);
		dput(dentry);
	}
	inode_unlock(d_inode(parent));
	inode_unlock(dir);
	simple_release_fs(&mount, &mount_count);
}
EXPORT_SYMBOL_GPL(securityfs_remove);