Rust device mapper abstractions
From: | Qingsong Chen <changxian.cqs-AT-antgroup.com> | |
To: | linux-kernel-AT-vger.kernel.org | |
Subject: | [RFC PATCH 0/8] Rust device mapper abstractions | |
Date: | Sun, 25 Jun 2023 20:16:49 +0800 | |
Message-ID: | <20230625121657.3631109-1-changxian.cqs@antgroup.com> | |
Cc: | "田洪亮" <tate.thl-AT-antgroup.com>, "Qingsong Chen" <changxian.cqs-AT-antgroup.com>, "Miguel Ojeda" <ojeda-AT-kernel.org>, "Alex Gaynor" <alex.gaynor-AT-gmail.com>, "Wedson Almeida Filho" <wedsonaf-AT-gmail.com>, "Boqun Feng" <boqun.feng-AT-gmail.com>, "Gary Guo" <gary-AT-garyguo.net>, "Björn Roy Baron" <bjorn3_gh-AT-protonmail.com>, "Benno Lossin" <benno.lossin-AT-proton.me>, <rust-for-linux-AT-vger.kernel.org> | |
Archive-link: | Article |
Hello! This is a version of device mapper abstractions. Based on these, we also implement a linear target as a PoC. Any suggestions are welcomed, thanks! Additionally, there are some dummy codes used to wrap the block layer structs, i.e., `bio` and `request`, which seems being in the review process, so I just place it in the same file. Qingsong Chen (8): rust: kernel: add basic abstractions for device-mapper rust: kernel: add request related TargetOperations rust: kernel: add some hook TargetOperations rust: kernel: add some info handler TargetOperations rust: kernel: add underlying device related TargetOperations rust: kernel: add DAX related TargetOperations rust: kernel: prepare to implement dm target in Rust samples: rust: add a device mapper linear target rust/bindings/bindings_helper.h | 2 + rust/helpers.c | 7 + rust/kernel/device_mapper.rs | 1279 +++++++++++++++++++++++++++++++ rust/kernel/lib.rs | 1 + samples/rust/Kconfig | 10 + samples/rust/Makefile | 1 + samples/rust/rust_dm_linear.rs | 257 +++++++ 7 files changed, 1557 insertions(+) create mode 100644 rust/kernel/device_mapper.rs create mode 100644 samples/rust/rust_dm_linear.rs -- 2.40.1