diff --git a/drivers/gpu/drm/nouveau/nouveau_ramht.c b/drivers/gpu/drm/nouveau/nouveau_ramht.c
index de34b6bb059f5789cdcf2fd83a3dcac1506bb664..f240ba2419434182884f508f2d9551764b3fd964 100644
--- a/drivers/gpu/drm/nouveau/nouveau_ramht.c
+++ b/drivers/gpu/drm/nouveau/nouveau_ramht.c
@@ -197,6 +197,9 @@ nouveau_ramht_find(struct nouveau_channel *chan, u32 handle)
 	struct nouveau_gpuobj *gpuobj = NULL;
 	unsigned long flags;
 
+	if (unlikely(!chan->ramht))
+		return NULL;
+
 	spin_lock_irqsave(&ramht->lock, flags);
 	list_for_each_entry(entry, &chan->ramht->entries, head) {
 		if (entry->channel == chan && entry->handle == handle) {