diff options
| author | Linus Torvalds <torvalds@linux-foundation.org> | 2025-09-30 19:12:49 -0700 | 
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2025-09-30 19:12:49 -0700 | 
| commit | f4e0ff7e45c30f4665cfbbe2f0538e9c5789bebc (patch) | |
| tree | 6703541ef1fec9d20dafc751d2e971879c429884 /rust/kernel/pid_namespace.rs | |
| parent | ae28ed4578e6d5a481e39c5a9827f27048661fdd (diff) | |
| parent | f3f6b3664302e16ef1c6b91034a72df5564d6b8a (diff) | |
Merge tag 'rust-6.18' of git://git.kernel.org/pub/scm/linux/kernel/git/ojeda/linux
Pull rust updates from Miguel Ojeda:
 "Toolchain and infrastructure:
   - Derive 'Zeroable' for all structs and unions generated by 'bindgen'
     where possible and corresponding cleanups. To do so, add the
     'pin-init' crate as a dependency to 'bindings' and 'uapi'.
     It also includes its first use in the 'cpufreq' module, with more
     to come in the next cycle.
   - Add warning to the 'rustdoc' target to detect broken 'srctree/'
     links and fix existing cases.
   - Remove support for unused (since v6.16) host '#[test]'s,
     simplifying the 'rusttest' target. Tests should generally run
     within KUnit.
  'kernel' crate:
   - Add 'ptr' module with a new 'Alignment' type, which is always a
     power of two and is used to validate that a given value is a valid
     alignment and to perform masking and alignment operations:
         // Checked at build time.
         assert_eq!(Alignment::new::<16>().as_usize(), 16);
         // Checked at runtime.
         assert_eq!(Alignment::new_checked(15), None);
         assert_eq!(Alignment::of::<u8>().log2(), 0);
         assert_eq!(0x25u8.align_down(Alignment::new::<0x10>()), 0x20);
         assert_eq!(0x5u8.align_up(Alignment::new::<0x10>()), Some(0x10));
         assert_eq!(u8::MAX.align_up(Alignment::new::<0x10>()), None);
     It also includes its first use in Nova.
   - Add 'core::mem::{align,size}_of{,_val}' to the prelude, matching
     Rust 1.80.0.
   - Keep going with the steps on our migration to the standard library
     'core::ffi::CStr' type (use 'kernel::{fmt, prelude::fmt!}' and use
     upstream method names).
   - 'error' module: improve 'Error::from_errno' and 'to_result'
     documentation, including examples/tests.
   - 'sync' module: extend 'aref' submodule documentation now that it
     exists, and more updates to complete the ongoing move of 'ARef' and
     'AlwaysRefCounted' to 'sync::aref'.
   - 'list' module: add an example/test for 'ListLinksSelfPtr' usage.
   - 'alloc' module:
      - Implement 'Box::pin_slice()', which constructs a pinned slice of
        elements.
      - Provide information about the minimum alignment guarantees of
        'Kmalloc', 'Vmalloc' and 'KVmalloc'.
      - Take minimum alignment guarantees of allocators for
        'ForeignOwnable' into account.
      - Remove the 'allocator_test' (including 'Cmalloc').
      - Add doctest for 'Vec::as_slice()'.
      - Constify various methods.
   - 'time' module:
      - Add methods on 'HrTimer' that can only be called with exclusive
        access to an unarmed timer, or from timer callback context.
      - Add arithmetic operations to 'Instant' and 'Delta'.
      - Add a few convenience and access methods to 'HrTimer' and
        'Instant'.
  'macros' crate:
   - Reduce collections in 'quote!' macro.
  And a few other cleanups and improvements"
* tag 'rust-6.18' of git://git.kernel.org/pub/scm/linux/kernel/git/ojeda/linux: (58 commits)
  gpu: nova-core: use Alignment for alignment-related operations
  rust: add `Alignment` type
  rust: macros: reduce collections in `quote!` macro
  rust: acpi: use `core::ffi::CStr` method names
  rust: of: use `core::ffi::CStr` method names
  rust: net: use `core::ffi::CStr` method names
  rust: miscdevice: use `core::ffi::CStr` method names
  rust: kunit: use `core::ffi::CStr` method names
  rust: firmware: use `core::ffi::CStr` method names
  rust: drm: use `core::ffi::CStr` method names
  rust: cpufreq: use `core::ffi::CStr` method names
  rust: configfs: use `core::ffi::CStr` method names
  rust: auxiliary: use `core::ffi::CStr` method names
  drm/panic: use `core::ffi::CStr` method names
  rust: device: use `kernel::{fmt,prelude::fmt!}`
  rust: sync: use `kernel::{fmt,prelude::fmt!}`
  rust: seq_file: use `kernel::{fmt,prelude::fmt!}`
  rust: kunit: use `kernel::{fmt,prelude::fmt!}`
  rust: file: use `kernel::{fmt,prelude::fmt!}`
  rust: device: use `kernel::{fmt,prelude::fmt!}`
  ...
Diffstat (limited to 'rust/kernel/pid_namespace.rs')
0 files changed, 0 insertions, 0 deletions
