summaryrefslogtreecommitdiffstats
path: root/drivers/infiniband/sw/siw/siw_qp_rx.c
diff options
context:
space:
mode:
authorJens Axboe <axboe@kernel.dk>2019-08-21 22:19:11 -0600
committerJens Axboe <axboe@kernel.dk>2019-08-22 15:32:28 -0600
commit08f5439f1df25a6cf6cf4c72cf6c13025599ce67 (patch)
tree13c09fd0f29e89e733080f92239c76f97e6a018d /drivers/infiniband/sw/siw/siw_qp_rx.c
parent7035eef4496d95b69b0bc18e0bced09304e0afdf (diff)
downloadlinux-08f5439f1df25a6cf6cf4c72cf6c13025599ce67.tar.bz2
io_uring: add need_resched() check in inner poll loop
The outer poll loop checks for whether we need to reschedule, and returns to userspace if we do. However, it's possible to get stuck in the inner loop as well, if the CPU we are running on needs to reschedule to finish the IO work. Add the need_resched() check in the inner loop as well. This fixes a potential hang if the kernel is configured with CONFIG_PREEMPT_VOLUNTARY=y. Reported-by: Sagi Grimberg <sagi@grimberg.me> Reviewed-by: Sagi Grimberg <sagi@grimberg.me> Tested-by: Sagi Grimberg <sagi@grimberg.me> Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'drivers/infiniband/sw/siw/siw_qp_rx.c')
0 files changed, 0 insertions, 0 deletions