mirror of
https://github.com/raspberrypi/linux.git
synced 2025-12-06 10:00:17 +00:00
nvme-tcp: fix wrong stop condition in io_work
[ Upstream commit ddef29578a ]
Allow the do/while statement to continue if current time
is not after the proposed time 'deadline'. Intent is to
allow loop to proceed for a specific time period. Currently
the loop, as coded, will exit after first pass.
Signed-off-by: Mark Wunderlich <mark.wunderlich@intel.com>
Reviewed-by: Sagi Grimberg <sagi@grimberg.me>
Signed-off-by: Sagi Grimberg <sagi@grimberg.me>
Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
282c88c2c8
commit
b9e1d38d0e
@@ -1039,7 +1039,7 @@ static void nvme_tcp_io_work(struct work_struct *w)
|
||||
{
|
||||
struct nvme_tcp_queue *queue =
|
||||
container_of(w, struct nvme_tcp_queue, io_work);
|
||||
unsigned long start = jiffies + msecs_to_jiffies(1);
|
||||
unsigned long deadline = jiffies + msecs_to_jiffies(1);
|
||||
|
||||
do {
|
||||
bool pending = false;
|
||||
@@ -1064,7 +1064,7 @@ static void nvme_tcp_io_work(struct work_struct *w)
|
||||
if (!pending)
|
||||
return;
|
||||
|
||||
} while (time_after(jiffies, start)); /* quota is exhausted */
|
||||
} while (!time_after(jiffies, deadline)); /* quota is exhausted */
|
||||
|
||||
queue_work_on(queue->io_cpu, nvme_tcp_wq, &queue->io_work);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user