Messages in this thread | | | From | "Qingsong Chen" <> | Subject | [PATCH v3 0/3] Rust scatterlist abstractions | Date | Sat, 10 Jun 2023 18:49:06 +0800 |
| |
Hi All!
This is a version of scatterlist abstractions for Rust drivers.
Scatterlist is used for efficient management of memory buffers, which is essential for many kernel-level operations such as Direct Memory Access (DMA) transfers and crypto APIs.
This patch should be a good start to introduce the crypto APIs for Rust drivers and to develop cipher algorithms in Rust later.
Changelog: ---------- v2 -> v3: - Use `addr_of!` to avoid creating a reference to uninit memory. - Mark `ScatterList::as_ref` and `ScatterList::as_mut` as unsafe. - Revise some typos and check with `scripts/checkpatch.pl --codespell`. - Add `# Errors` doc comment to some methods of `SgTable`.
v1 -> v2: - Split the old patch into smaller parts. - Remove the selftest module, and place those use cases in the doc. - Repair some invalid hyperlinks in the doc. - Put some `cfgs` inside functions to avoid boilerplate. ====================
Qingsong Chen (3): rust: kernel: add ScatterList abstraction rust: kernel: implement iterators for ScatterList rust: kernel: add SgTable abstraction
rust/bindings/bindings_helper.h | 1 + rust/helpers.c | 14 + rust/kernel/lib.rs | 1 + rust/kernel/scatterlist.rs | 549 ++++++++++++++++++++++++++++++++ 4 files changed, 565 insertions(+) create mode 100644 rust/kernel/scatterlist.rs
-- 2.40.1
| |