rust block-mq TagSet flags plumbing and rnull blocking wiring#730
rust block-mq TagSet flags plumbing and rnull blocking wiring#730blktests-ci[bot] wants to merge 2 commits intolinus-master_basefrom
Conversation
|
Upstream branch: 9a9c8ce |
78a4682 to
8f17195
Compare
|
Upstream branch: 028ef9c |
98fddac to
6bd8420
Compare
8f17195 to
6b4d829
Compare
|
Upstream branch: d60bc14 |
6bd8420 to
380cec2
Compare
|
Upstream branch: b4e0758 |
380cec2 to
72ebaa4
Compare
ceec5ed to
3b54e52
Compare
|
Upstream branch: 6596a02 |
72ebaa4 to
46cf338
Compare
3b54e52 to
6a0b974
Compare
|
Upstream branch: 507bd4b |
46cf338 to
1195660
Compare
6a0b974 to
59ca59b
Compare
|
Upstream branch: dd6c438 |
1195660 to
cf0059f
Compare
94f0438 to
857ada9
Compare
TagSet::new() currently hardcodes blk_mq_tag_set.flags to 0. That prevents Rust block drivers from declaring blk-mq queue flags. Introduce TagSetFlags as a typed wrapper for BLK_MQ_F_* bits. Add TagSet::new_with_flags() so drivers can pass flags explicitly. Keep TagSet::new() as a compatibility wrapper using empty flags. Re-export TagSetFlags from kernel::block::mq for driver imports. Build-tested with LLVM=-15 in an out-of-tree rust-next build. Validation includes vmlinux and drivers/block/rnull/rnull_mod.ko. Signed-off-by: Wenzhao Liao <[email protected]>
Add a new configfs boolean attribute named blocking. Advertise blocking in the rnull features list. On power-on, map blocking=1 to TagSetFlags::BLOCKING. Create the tag set with TagSet::new_with_flags(). Keep default blocking=0 to preserve existing behavior. Like other parameters, blocking writes return -EBUSY while powered on. Validated with LLVM=-15 out-of-tree builds and QEMU runtime tests. Signed-off-by: Wenzhao Liao <[email protected]>
|
Upstream branch: dd6c438 |
cf0059f to
498eaf1
Compare
Pull request for series with
subject: rust block-mq TagSet flags plumbing and rnull blocking wiring
version: 1
url: https://patchwork.kernel.org/project/linux-block/list/?series=1079650