diff options
author | Ming Lei <ming.lei@redhat.com> | 2025-06-24 18:41:21 +0800 |
---|---|---|
committer | Jens Axboe <axboe@kernel.dk> | 2025-06-24 20:45:31 -0600 |
commit | 4c8a951787ffc4b61a547db9866196104971b5fd (patch) | |
tree | edfd040d6c9cf64b210c2753b475c42ab52ea542 /scripts/lib/kdoc/kdoc_parser.py | |
parent | 81b4d1a1d03301dcca8af5c58eded9e535f1f6ed (diff) |
ublk: setup ublk_io correctly in case of ublk_get_data() failure
If ublk_get_data() fails, -EIOCBQUEUED is returned and the current command
becomes ASYNC. And the only reason is that mapping data can't move on,
because of no enough pages or pending signal, then the current ublk request
has to be requeued.
Once the request need to be requeued, we have to setup `ublk_io` correctly,
including io->cmd and flags, otherwise the request may not be forwarded to
ublk server successfully.
Fixes: 9810362a57cb ("ublk: don't call ublk_dispatch_req() for NEED_GET_DATA")
Reported-by: Changhui Zhong <czhong@redhat.com>
Closes: https://lore.kernel.org/linux-block/CAGVVp+VN9QcpHUz_0nasFf5q9i1gi8H8j-G-6mkBoqa3TyjRHA@mail.gmail.com/
Signed-off-by: Ming Lei <ming.lei@redhat.com>
Tested-by: Changhui Zhong <czhong@redhat.com>
Link: https://lore.kernel.org/r/20250624104121.859519-1-ming.lei@redhat.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'scripts/lib/kdoc/kdoc_parser.py')
0 files changed, 0 insertions, 0 deletions