NVMe: Remove the kthread from the wait queue
Once there are no more bios on the congestion list, we can stop waking
up the nvme kthread every time a completion happens.
Signed-off-by: Matthew Wilcox <matthew.r.wilcox@intel.com>
diff --git a/drivers/block/nvme.c b/drivers/block/nvme.c
index cf89db8..8d3c0b7 100644
--- a/drivers/block/nvme.c
+++ b/drivers/block/nvme.c
@@ -1162,6 +1162,9 @@
bio_list_add_head(&nvmeq->sq_cong, bio);
break;
}
+ if (bio_list_empty(&nvmeq->sq_cong))
+ remove_wait_queue(&nvmeq->sq_full,
+ &nvmeq->sq_cong_wait);
}
}