diff --git a/mm/filemap.c b/mm/filemap.c
index dc3e5fce0b7b0f4217757ed0c418b43070bb0908..5b4dd03130da33b91cca705e6d202fffed177b55 100644
--- a/mm/filemap.c
+++ b/mm/filemap.c
@@ -167,14 +167,7 @@ static void page_cache_tree_delete(struct address_space *mapping,
 		__radix_tree_lookup(&mapping->page_tree, page->index + i,
 				    &node, &slot);
 
-		if (!node) {
-			VM_BUG_ON_PAGE(nr != 1, page);
-			/*
-			 * We need a node to properly account shadow
-			 * entries. Don't plant any without. XXX
-			 */
-			shadow = NULL;
-		}
+		VM_BUG_ON_PAGE(!node && nr != 1, page);
 
 		radix_tree_clear_tags(&mapping->page_tree, node, slot);
 		__radix_tree_replace(&mapping->page_tree, node, slot, shadow,