-
Notifications
You must be signed in to change notification settings - Fork 0
bsg: add io_uring command support for SCSI passthrough #488
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
Upstream branch: 944aacb |
|
Upstream branch: 944aacb |
ae062d3 to
954be0a
Compare
8a473ad to
fa94b37
Compare
|
Upstream branch: 944aacb |
954be0a to
40aae42
Compare
fa94b37 to
41a5848
Compare
|
Upstream branch: 6c79021 |
40aae42 to
30271e9
Compare
|
Upstream branch: 6c79021 |
30271e9 to
883d932
Compare
41a5848 to
30680e5
Compare
|
Upstream branch: a66191c |
883d932 to
3c85b4f
Compare
30680e5 to
067dca5
Compare
|
Upstream branch: 6208587 |
3c85b4f to
a77d06c
Compare
c12f288 to
73f7569
Compare
b44af19 to
483aa43
Compare
|
Upstream branch: 8dfce89 |
73f7569 to
bfed45d
Compare
483aa43 to
9d3c6de
Compare
|
Upstream branch: de0674d |
bfed45d to
d696004
Compare
9d3c6de to
7c2ae0a
Compare
|
Upstream branch: f14faaf |
d696004 to
cca85b4
Compare
7c2ae0a to
54294d6
Compare
|
Upstream branch: b7ff715 |
cca85b4 to
113bc86
Compare
54294d6 to
eb49f7b
Compare
|
Upstream branch: e7aa572 |
113bc86 to
167646f
Compare
eb49f7b to
30e5c22
Compare
|
Upstream branch: 05f7e89 |
Add the bsg_uring_cmd structure to the BSG UAPI header to support io_uring-based SCSI passthrough operations via IORING_OP_URING_CMD. Signed-off-by: Yang Xiuwei <[email protected]>
Add io_uring command handler to the generic BSG layer. This handler validates SQE128/CQE32 flags and command structure, then delegates to the protocol-specific handler via a callback function pointer registered during bsg_register_queue(). Signed-off-by: Yang Xiuwei <[email protected]>
Implement the SCSI-specific io_uring command handler for BSG. This handler processes SCSI passthrough commands asynchronously via io_uring, supporting both traditional user buffers and zero-copy fixed buffers. Key features: - Async command execution with proper completion handling - Zero-copy support via io_uring fixed buffers - Status information returned in CQE res2 field - Non-blocking I/O support via IO_URING_F_NONBLOCK - Proper error handling and validation The implementation uses a PDU structure overlaying io_uring_cmd.pdu[32] to store temporary state during command execution. Completion is handled via task work to safely access user space. This patch replaces the stub implementation from patch 2/3 with the full implementation. Signed-off-by: Yang Xiuwei <[email protected]>
167646f to
a875ad9
Compare
30e5c22 to
519f160
Compare
|
Upstream branch: c22e26b |
1 similar comment
|
Upstream branch: c22e26b |
|
Github failed to update this PR after force push. Close it. |
Pull request for series with
subject: bsg: add io_uring command support for SCSI passthrough
version: 2
url: https://patchwork.kernel.org/project/linux-block/list/?series=1042560