/* If this is the root of the dentry tree, return NULL.  */
static struct dentry* d_kill(struct dentry *dentry) __releases(dentry -> d_lock) __releases(dcache_lock)
/* If this is the root of the dentry tree, return NULL.  */
static struct dentry* d_kill(struct dentry *dentry) __releases(dentry -> d_lock) __releases(dcache_lock)
{
	struct dentry *parent;
	list_del(&dentry->d_u.d_child);
	dentry_stat.nr_dentry--;
	dentry_iput(dentry);
	if (IS_ROOT(dentry))
		parent = NULL;
	else
		parent = dentry->d_parent;
	d_free(dentry);
	return parent;
}