aboutsummaryrefslogtreecommitdiffstats
path: root/rust
AgeCommit message (Expand)AuthorFilesLines
2023-08-30Merge tag 'docs-6.6' of git://git.lwn.net/linuxLinus Torvalds1-6/+9
2023-08-29Merge tag 'rust-6.6' of https://github.com/Rust-for-Linux/linuxLinus Torvalds25-735/+1324
2023-08-28Merge tag 'linux-kselftest-kunit-6.6-rc1' of git://git.kernel.org/pub/scm/lin...Linus Torvalds12-15/+236
2023-08-21rust: init: update expanded macro explanationBenno Lossin1-57/+69
2023-08-21rust: init: add `{pin_}chain` functions to `{Pin}Init<T, E>`Benno Lossin2-1/+143
2023-08-21rust: init: make `PinInit<T, E>` a supertrait of `Init<T, E>`Benno Lossin2-13/+20
2023-08-21rust: init: implement `Zeroable` for `UnsafeCell<T>` and `Opaque<T>`Benno Lossin1-1/+7
2023-08-21rust: init: add support for arbitrary paths in init macrosBenno Lossin1-19/+35
2023-08-21rust: init: add functions to create array initializersBenno Lossin1-0/+88
2023-08-21rust: init: add `..Zeroable::zeroed()` syntax for zeroing all missing fieldsBenno Lossin2-2/+129
2023-08-21rust: init: make initializer values inaccessible after initializingBenno Lossin1-9/+11
2023-08-21rust: init: wrap type checking struct initializers in a closureBenno Lossin1-4/+4
2023-08-21rust: init: make guards in the init macros hygienicBenno Lossin3-86/+56
2023-08-21rust: add derive macro for `Zeroable`Benno Lossin5-1/+140
2023-08-21rust: init: make `#[pin_data]` compatible with conditional compilation of fieldsBenno Lossin1-0/+2
2023-08-21rust: init: consolidate init macrosBenno Lossin2-366/+259
2023-08-20scripts: generate_rust_analyzer: provide `cfg`s for `core` and `alloc`Martin Rodriguez Reboredo1-0/+1
2023-08-15rust: bindgen: upgrade to 0.65.1Aakash Sen Sharma3-14/+10
2023-08-14rust: upgrade to Rust 1.71.1Miguel Ojeda12-251/+206
2023-08-10btf, scripts: rust: drop is_rust_module.shAndrea Righi1-1/+1
2023-08-10rust: macros: add `paste!` proc macroGary Guo2-0/+193
2023-08-10rust: types: make `Opaque` be `!Unpin`Benno Lossin1-5/+14
2023-08-10rust: make `UnsafeCell` the outer type in `Opaque`Alice Ryhl1-5/+5
2023-08-09rust: macros: vtable: fix `HAS_*` redefinition (`gen_const_name`)Qingsong Chen1-0/+1
2023-08-07scripts: `make rust-analyzer` for out-of-tree modulesVinay Varma1-2/+4
2023-08-07rust: alloc: Add realloc and alloc_zeroed to the GlobalAlloc implBjörn Roy Baron1-0/+27
2023-08-07rust: allocator: Use krealloc_aligned() in KernelAllocator::allocBoqun Feng1-3/+3
2023-08-07rust: helpers: sort includes alphabetically in rust/helpers.cAriel Miculas1-2/+4
2023-08-07rust: lock: Add intra-doc links to the Backend traitBen Gooding1-3/+3
2023-08-04rust: fix bindgen build error with UBSAN_BOUNDS_STRICTAndrea Righi1-1/+1
2023-08-04rust: delete `ForeignOwnable::borrow_mut`Alice Ryhl2-22/+3
2023-08-04rust: allocator: Prevent mis-aligned allocationBoqun Feng2-15/+60
2023-07-21docs: Move rustdoc output, cross-reference itCarlos Bilbao1-6/+9
2023-07-19rust: support running Rust documentation tests as KUnit onesMiguel Ojeda6-0/+204
2023-07-19rust: types: make doctests compilable/testableMiguel Ojeda1-3/+3
2023-07-19rust: sync: make doctests compilable/testableMiguel Ojeda3-2/+9
2023-07-19rust: str: make doctests compilable/testableMiguel Ojeda1-1/+3
2023-07-18rust: init: make doctests compilable/testableMiguel Ojeda1-9/+17
2023-06-13rust: error: `impl Debug` for `Error` with `errname()` integrationGary Guo3-0/+47
2023-05-31rust: task: add `Send` marker to `Task`Alice Ryhl1-2/+8
2023-05-31rust: specify when `ARef` is thread safeAlice Ryhl1-0/+13
2023-05-31rust: sync: reword the `Arc` safety comment for `Sync`Alice Ryhl1-3/+5
2023-05-31rust: sync: reword the `Arc` safety comment for `Send`Alice Ryhl1-2/+2
2023-05-31rust: sync: implement `AsRef<T>` for `Arc<T>`Alice Ryhl1-0/+6
2023-05-31rust: sync: add `Arc::ptr_eq`Alice Ryhl1-0/+5
2023-05-31rust: error: add missing error codesAlice Ryhl1-0/+20
2023-05-31rust: str: add conversion from `CStr` to `CString`Alice Ryhl1-0/+22
2023-05-31rust: error: allow specifying error type on `Result`Alice Ryhl1-1/+1
2023-05-31rust: init: update macro expansion example in docsBenno Lossin1-37/+48
2023-05-31rust: macros: replace Self with the concrete type in #[pin_data]Benno Lossin1-4/+104
2023-05-31rust: macros: refactor generics parsing of `#[pin_data]` into its own functionBenno Lossin2-62/+94
2023-05-31rust: macros: fix usage of `#[allow]` in `quote!`Benno Lossin1-6/+8
2023-05-31rust: upgrade to Rust 1.68.2Miguel Ojeda19-677/+1270
2023-05-31rust: arc: fix intra-doc link in `Arc<T>::init`Miguel Ojeda1-1/+1
2023-05-31rust: alloc: clarify what is the upstream versionMiguel Ojeda1-0/+3
2023-04-30Merge tag 'rust-6.4' of https://github.com/Rust-for-Linux/linuxLinus Torvalds32-23/+4952
2023-04-22rust: ioctl: Add ioctl number manipulation functionsAsahi Lina2-0/+73
2023-04-22rust: uapi: Add UAPI crateAsahi Lina5-5/+61
2023-04-22rust: sync: introduce `CondVar`Wedson Almeida Filho5-1/+184
2023-04-22rust: lock: add `Guard::do_unlocked`Wedson Almeida Filho2-2/+30
2023-04-22rust: sync: introduce `LockedBy`Wedson Almeida Filho3-1/+159
2023-04-22rust: introduce `current`Wedson Almeida Filho3-1/+89
2023-04-22rust: add basic `Task`Wedson Almeida Filho4-0/+96
2023-04-22rust: introduce `ARef`Wedson Almeida Filho1-0/+107
2023-04-22rust: lock: introduce `SpinLock`Wedson Almeida Filho4-1/+142
2023-04-22rust: lock: introduce `Mutex`Wedson Almeida Filho4-0/+128
2023-04-22rust: sync: introduce `Lock` and `Guard`Wedson Almeida Filho2-1/+163
2023-04-21rust: sync: introduce `LockClassKey`Wedson Almeida Filho1-0/+45
2023-04-21rust: init: broaden the blanket impl of `Init`Benno Lossin1-2/+2
2023-04-19rust: allow to use INIT_STACK_ALL_ZEROAndrea Righi1-0/+14
2023-04-12rust: sync: add functions for initializing `UniqueArc<MaybeUninit<T>>`Benno Lossin1-0/+24
2023-04-12rust: sync: reduce stack usage of `UniqueArc::try_new_uninit`Benno Lossin2-4/+13
2023-04-12rust: types: add `Opaque::ffi_init`Benno Lossin2-0/+29
2023-04-12rust: prelude: add `pin-init` API items to preludeBenno Lossin1-1/+5
2023-04-12rust: init: add `Zeroable` trait and `init::zeroed` functionBenno Lossin1-2/+95
2023-04-12rust: init: add `stack_pin_init!` macroBenno Lossin2-6/+191
2023-04-12rust: init: add `PinnedDrop` trait and macrosBenno Lossin5-0/+488
2023-04-12rust: init/sync: add `InPlaceInit` trait to pin-initialize smart pointersBenno Lossin2-13/+139
2023-04-12rust: init: add initialization macrosBenno Lossin6-7/+1747
2023-04-12rust: add pin-init API coreBenno Lossin3-0/+226
2023-04-12rust: types: add `Opaque::raw_get`Benno Lossin1-0/+8
2023-04-12rust: sync: change error type of constructor functionsBenno Lossin1-4/+4
2023-04-12rust: macros: add `quote!` macroGary Guo2-0/+147
2023-04-12rust: enable the `pin_macro` featureBenno Lossin1-0/+1
2023-04-12rust: error: Add from_result() helperWedson Almeida Filho1-0/+39
2023-04-12rust: error: Add a helper to convert a C ERR_PTR to a `Result`Sven Van Asbroeck2-1/+61
2023-04-12rust: error: Add to_result() helperWedson Almeida Filho1-1/+10
2023-04-12rust: error: Add Error::from_errno{_unchecked}()Miguel Ojeda1-0/+32
2023-04-12rust: error: Add Error::to_ptr()Asahi Lina2-0/+14
2023-04-12rust: error: Rename to_kernel_errno() -> to_errno()Asahi Lina2-2/+2
2023-04-12rust: sync: arc: Add UniqueArc<MaybeUninit<T>::assume_init()Asahi Lina1-0/+11
2023-04-10rust: sync: arc: Implement Arc<dyn Any + Send + Sync>::downcast()Asahi Lina2-0/+30
2023-04-10rust: macros: Allow specifying multiple module aliasesAsahi Lina2-6/+34
2023-04-10rust: alloc: vec: Add some try_* methods we needMiguel Ojeda2-3/+219
2023-04-10rust: Add SPDX headers to alloc::vec::{spec_extend, set_len_on_drop}Asahi Lina2-0/+4
2023-04-10rust: Import upstream `alloc::vec::spec_extend` moduleAsahi Lina1-0/+87
2023-04-10rust: Import upstream `alloc::vec::set_len_on_drop` moduleAsahi Lina1-0/+28
2023-04-10rust: Enable the new_uninit feature for kernel and driver cratesAsahi Lina1-0/+1
2023-04-10rust: sync: impl {Debug,Display} for {Unique,}ArcBoqun Feng1-0/+25
2023-04-07rust: build: Fix grep warningVincenzo Palazzo1-1/+1
2023-04-06rust: kernel: Mark rust_fmt_argument as extern "C"David Gow1-1/+5
2023-04-06rust: str: fix requierments->requirements typoPatrick Blass1-1/+1
2023-03-03Merge tag 'rust-fixes-6.3-rc1' of https://github.com/Rust-for-Linux/linuxLinus Torvalds1-0/+1
2023-03-02rust: bindgen: Add `alt_instr` as opaque typeArnaldo Carvalho de Melo1-0/+1
2023-02-26Merge tag 'kbuild-v6.3' of git://git.kernel.org/pub/scm/linux/kernel/git/masa...Linus Torvalds2-20/+8
2023-02-20Merge tag 'rust-6.3' of https://github.com/Rust-for-Linux/linuxLinus Torvalds13-502/+806
2023-02-07rust: types: implement `ForeignOwnable` for `Arc<T>`Wedson Almeida Filho1-1/+31
2023-02-01rust: types: implement `ForeignOwnable` for the unit typeWedson Almeida Filho1-0/+12
2023-02-01rust: types: implement `ForeignOwnable` for `Box<T>`Wedson Almeida Filho1-0/+23
2023-02-01rust: types: introduce `ForeignOwnable`Wedson Almeida Filho2-0/+55
2023-02-01rust: types: introduce `ScopeGuard`Wedson Almeida Filho1-1/+125
2023-01-22kbuild: rust: move rust/target.json to scripts/Masahiro Yamada2-10/+1
2023-01-22kbuild: remove sed commands after rustc rulesMasahiro Yamada1-4/+2
2023-01-22kbuild: specify output names separately for each emission type from rustcMasahiro Yamada1-6/+5
2023-01-16rust: prelude: prevent doc inline of external importsFinn Behrens1-1/+7
2023-01-16rust: sync: add support for dispatching on Arc and ArcBorrow.Wedson Almeida Filho2-2/+19
2023-01-16rust: sync: introduce `UniqueArc`Wedson Almeida Filho2-3/+151
2023-01-16rust: sync: allow type of `self` to be `ArcBorrow<T>`Wedson Almeida Filho1-0/+23
2023-01-16rust: sync: introduce `ArcBorrow`Wedson Almeida Filho2-1/+98
2023-01-16rust: sync: allow coercion from `Arc<T>` to `Arc<U>`Wedson Almeida Filho2-1/+28
2023-01-16rust: sync: allow type of `self` to be `Arc<T>` or variantsWedson Almeida Filho2-0/+29
2023-01-16rust: sync: add `Arc` for ref-counted allocationsWedson Almeida Filho6-0/+189
2023-01-16rust: compiler_builtins: make stubs non-globalGary Guo2-1/+18
2023-01-16rust: alloc: remove the `borrow` module (`ToOwned`, `Cow`)Miguel Ojeda4-499/+6
2023-01-16rust: print: avoid evaluating arguments in `pr_*` macros in `unsafe` blocksMiguel Ojeda1-11/+18
2022-12-04rust: types: add `Opaque` typeWedson Almeida Filho1-0/+25
2022-12-04rust: types: add `Either` typeWedson Almeida Filho2-0/+13
2022-12-04rust: build_assert: add `build_{error,assert}!` macrosGary Guo3-0/+88
2022-12-04rust: add `build_error` crateGary Guo3-5/+53
2022-12-04rust: static_assert: add `static_assert!` macroMiguel Ojeda3-0/+37
2022-12-04rust: std_vendor: add `dbg!` macro based on `std`'s oneNiklas Mohrin3-1/+166
2022-12-04rust: str: add `fmt!` macroWedson Almeida Filho1-0/+6
2022-12-04rust: str: add `CString` typeWedson Almeida Filho1-2/+89
2022-12-04rust: str: add `Formatter` typeWedson Almeida Filho1-0/+57
2022-12-04rust: str: add `c_str!` macroGary Guo1-0/+23
2022-12-04rust: str: add `CStr` unit testsMilan Landaverde1-0/+29
2022-12-04rust: str: implement several traits for `CStr`Gary Guo1-1/+123
2022-12-04rust: str: add `CStr` typeGary Guo2-1/+170
2022-12-04rust: str: add `b_str!` macroGary Guo1-0/+21
2022-12-04rust: str: add `BStr` typeGary Guo1-0/+5
2022-12-04rust: alloc: add `Vec::try_with_capacity{,_in}()` constructorsMiguel Ojeda2-1/+89
2022-12-04rust: alloc: add `RawVec::try_with_capacity_in()` constructorMiguel Ojeda1-1/+33
2022-12-04rust: prelude: add `error::code::*` constant itemsWedson Almeida Filho1-1/+1
2022-12-04rust: error: add `From` implementations for `Error`Wedson Almeida Filho2-1/+45
2022-12-04rust: error: add codes from `errno-base.h`Viktor Garske1-0/+33
2022-12-04rust: error: declare errors using macroFinn Behrens1-2/+10
2022-12-04rust: macros: take string literals in `module!`Gary Guo3-17/+29
2022-12-04rust: macros: add `#[vtable]` proc macroGary Guo3-1/+148
2022-12-04rust: macros: add `concat_idents!` proc macroBjörn Roy Baron2-0/+67
2022-12-01rust: print: add `pr_cont!` macroMiguel Ojeda1-9/+63
2022-12-01rust: print: add more `pr_*!` levelsMiguel Ojeda2-1/+155
2022-12-01rust: prelude: split re-exports into groupsMiguel Ojeda1-5/+9
2022-09-28Kbuild: add Rust supportMiguel Ojeda3-0/+410
2022-09-28rust: export generated symbolsMiguel Ojeda1-0/+21
2022-09-28rust: add `kernel` crateWedson Almeida Filho6-0/+491
2022-09-28rust: add `bindings` crateMiguel Ojeda2-0/+66
2022-09-28rust: add `macros` crateMiguel Ojeda3-0/+405
2022-09-28rust: add `compiler_builtins` crateMiguel Ojeda1-0/+63
2022-09-28rust: adapt `alloc` crate to the kernelMiguel Ojeda14-1/+100
2022-09-28rust: import upstream `alloc` crateMiguel Ojeda13-0/+9037
2022-09-28rust: add C helpersMiguel Ojeda1-0/+51