summaryrefslogtreecommitdiff
path: root/lib/find_bit.c
diff options
context:
space:
mode:
authorJens Axboe <axboe@kernel.dk>2022-10-04 20:29:48 -0600
committerJens Axboe <axboe@kernel.dk>2022-10-12 16:30:56 -0600
commit3fb1bd68817288729179444caf1fd5c5c4d2d65d (patch)
tree611bbd549bd257bcaabec648722bc1e06fbc8720 /lib/find_bit.c
parentb7a817752efc850603c4c23ed78da2b990a6a34a (diff)
downloadlinux-rpi-3fb1bd68817288729179444caf1fd5c5c4d2d65d.tar.gz
linux-rpi-3fb1bd68817288729179444caf1fd5c5c4d2d65d.tar.bz2
linux-rpi-3fb1bd68817288729179444caf1fd5c5c4d2d65d.zip
io_uring/net: handle -EINPROGRESS correct for IORING_OP_CONNECT
We treat EINPROGRESS like EAGAIN, but if we're retrying post getting EINPROGRESS, then we just need to check the socket for errors and terminate the request. This was exposed on a bluetooth connection request which ends up taking a while and hitting EINPROGRESS, and yields a CQE result of -EBADFD because we're retrying a connect on a socket that is now connected. Cc: stable@vger.kernel.org Fixes: 87f80d623c6c ("io_uring: handle connect -EINPROGRESS like -EAGAIN") Link: https://github.com/axboe/liburing/issues/671 Reported-by: Aidan Sun <aidansun05@gmail.com> Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'lib/find_bit.c')
0 files changed, 0 insertions, 0 deletions