 +		else {
 +			return -ENOENT;
 +		}
-+#endif
 +	}
 +
 +	nouveau_bo_ref(NULL, &bo);

+
+	vma = nouveau_bo_vma_find(bo, chan->vm);
+	if (vma) {
+#if 0 /* this function call crushes the system sometimes... */
+		nouveau_bo_vma_del(bo, vma);
+		kfree(vma);
+#endif
+	}
+	else
+		return -ENOENT;

+
+	if (addr) {
+		vma = nouveau_bo_vma_find(bo, chan->vm);
+		/* this function call crushes the system sometimes... */
+		if (vma) {
+			nouveau_bo_vma_del(bo, vma);
+			kfree(vma);
