diff --git a/drivers/base/dma-buf.c b/drivers/base/dma-buf.c
index 460e22dee36dbb2389524f7287eb103b936e2c58..a3f79c495a411ea85b87604ab473fcef6b962558 100644
--- a/drivers/base/dma-buf.c
+++ b/drivers/base/dma-buf.c
@@ -298,6 +298,8 @@ void dma_buf_unmap_attachment(struct dma_buf_attachment *attach,
 				struct sg_table *sg_table,
 				enum dma_data_direction direction)
 {
+	might_sleep();
+
 	if (WARN_ON(!attach || !attach->dmabuf || !sg_table))
 		return;