linux/rust/kernel
Asahi Lina 4e17466568 rust: uapi: Add UAPI crate
This crate mirrors the `bindings` crate, but will contain only UAPI
bindings. Unlike the bindings crate, drivers may directly use this crate
if they have to interface with userspace.

Initially, just bind the generic ioctl stuff.

In the future, we would also like to add additional checks to ensure
that all types exposed by this crate satisfy UAPI-safety guarantees
(that is, they are safely castable to/from a "bag of bits").

[ Miguel: added support for the `rustdoc` and `rusttest` targets,
  since otherwise they fail, and we want to keep them working. ]

Reviewed-by: Martin Rodriguez Reboredo <yakoyoku@gmail.com>
Signed-off-by: Asahi Lina <lina@asahilina.net>
Link: https://lore.kernel.org/r/20230329-rust-uapi-v2-1-bca5fb4d4a12@asahilina.net
Signed-off-by: Miguel Ojeda <ojeda@kernel.org>
2023-04-22 01:46:45 +02:00
..
init rust: init: add stack_pin_init! macro 2023-04-12 18:41:05 +02:00
sync rust: sync: introduce CondVar 2023-04-22 01:46:45 +02:00
allocator.rs rust: add kernel crate 2022-09-28 08:58:24 +02:00
build_assert.rs rust: build_assert: add build_{error,assert}! macros 2022-12-04 01:59:16 +01:00
error.rs rust: error: Add from_result() helper 2023-04-12 18:41:04 +02:00
init.rs rust: init: broaden the blanket impl of Init 2023-04-21 00:35:26 +02:00
lib.rs rust: uapi: Add UAPI crate 2023-04-22 01:46:45 +02:00
prelude.rs rust: introduce current 2023-04-22 00:20:00 +02:00
print.rs rust: print: avoid evaluating arguments in pr_* macros in unsafe blocks 2023-01-16 00:54:35 +01:00
static_assert.rs rust: static_assert: add static_assert! macro 2022-12-04 01:59:16 +01:00
std_vendor.rs rust: std_vendor: add dbg! macro based on std's one 2022-12-04 01:59:16 +01:00
str.rs rust: str: add fmt! macro 2022-12-04 01:59:16 +01:00
sync.rs rust: sync: introduce CondVar 2023-04-22 01:46:45 +02:00
task.rs rust: introduce current 2023-04-22 00:20:00 +02:00
types.rs rust: introduce ARef 2023-04-22 00:20:00 +02:00