don't open-code d_rehash() in d_materialise_unique()

... and get rid of duplicate BUG_ON() there

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
diff --git a/fs/dcache.c b/fs/dcache.c
index 36d84ec..2210763 100644
--- a/fs/dcache.c
+++ b/fs/dcache.c
@@ -2804,12 +2804,8 @@
 	actual = __d_instantiate_unique(dentry, inode);
 	if (!actual)
 		actual = dentry;
-	else
-		BUG_ON(!d_unhashed(actual));
 
-	spin_lock(&actual->d_lock);
-	_d_rehash(actual);
-	spin_unlock(&actual->d_lock);
+	d_rehash(actual);
 found:
 	spin_unlock(&inode->i_lock);
 out_nolock: