rust: block: safely abstract the blk-mq poll callback#734
rust: block: safely abstract the blk-mq poll callback#734blktests-ci[bot] wants to merge 2 commits intolinus-master_basefrom
Conversation
|
Upstream branch: 9a9c8ce |
78a4682 to
8f17195
Compare
|
Upstream branch: 028ef9c |
fe31e19 to
0c32672
Compare
8f17195 to
6b4d829
Compare
|
Upstream branch: d60bc14 |
0c32672 to
aac046b
Compare
|
Upstream branch: b4e0758 |
aac046b to
fed67db
Compare
ceec5ed to
3b54e52
Compare
|
Upstream branch: 6596a02 |
fed67db to
f2bf5f7
Compare
3b54e52 to
6a0b974
Compare
|
Upstream branch: 507bd4b |
f2bf5f7 to
4828c89
Compare
6a0b974 to
59ca59b
Compare
|
Upstream branch: dd6c438 |
4828c89 to
47d4530
Compare
94f0438 to
857ada9
Compare
|
Upstream branch: dd6c438 |
47d4530 to
6bac353
Compare
857ada9 to
482ce5b
Compare
|
Upstream branch: dca922e |
6bac353 to
0b2942f
Compare
482ce5b to
5a9f7c7
Compare
Add a minimal poll abstraction for Rust blk-mq drivers. Model the hardware queue context as a shared HwCtx borrow and map the optional io_comp_batch pointer to Option<&IoCompBatch>. This keeps the callback on borrowed data owned by blk-mq and avoids exposing raw pointers in driver implementations. Use a typed PollResult to represent either a completion count or a request to stop polling, and wire the callback into the blk-mq vtable behind HAS_POLL so existing drivers keep poll: None. Signed-off-by: Wenzhao Liao <[email protected]>
|
Upstream branch: e75a43c |
Implement the new Operations::poll callback for rnull and return a zero-completion PollResult. This keeps rnull's current behavior unchanged while validating that the borrowed poll abstraction wires cleanly into a Rust blk-mq driver. Signed-off-by: Wenzhao Liao <[email protected]>
0b2942f to
9ddc4cb
Compare
Pull request for series with
subject: rust: block: safely abstract the blk-mq poll callback
version: 1
url: https://patchwork.kernel.org/project/linux-block/list/?series=1079895