diff --git a/drivers/base/dma-contiguous.c b/drivers/base/dma-contiguous.c
index 857f5785dc08370bda3c0e4da7260a43f4bb81e5..afc19e23cdbb126d71ce7ef2f60ea74fd21ec5dc 100644
--- a/drivers/base/dma-contiguous.c
+++ b/drivers/base/dma-contiguous.c
@@ -550,6 +550,7 @@ unsigned long dma_alloc_from_contiguous(struct device *dev, int count,
 		pageno = bitmap_find_next_zero_area(cma->bitmap, cma->count,
 						    start, count, mask);
 		if (pageno >= cma->count) {
+			pfn = 0;
 			mutex_unlock(&cma->lock);
 			break;
 		}