Tags

Tags give the ability to mark specific points in history as being important
  • v6.4-rc1

    ac9a7868 · Linux 6.4-rc1 ·
    Linux 6.4-rc1
    
  • core-debugobjects-2023-05-06

    A single fix for debugobjects:
    
      The recent fix to ensure atomicity of lookup and allocation inadvertently
      broke the pool refill mechanism, so that debugobject OOMs now in certain
      situations. The reason is that the functions which got updated no longer
      invoke debug_objecs_init(), which is now the only place to care about
      refilling the tracking object pool.
    
      Restore the original behaviour by adding explicit refill opportunities to
      those places.
    
  • locking-core-2023-05-05

    Locking changes in v6.4:
    
     - Introduce local{,64}_try_cmpxchg() - a slightly more optimal
       primitive, which will be used in perf events ring-buffer code.
    
     - Simplify/modify rwsems on PREEMPT_RT, to address writer starvation.
    
     - Misc cleanups/fixes.
    
    Signed-off-by: Ingo Molnar <mingo@kernel.org>
    
  • linux-watchdog-6.4-rc1

    linux-watchdog 6.4-rc1 tag
    
  • korg/for-next_2023-05-02

    autogenerated tag for korg/for-next
    
  • korg/for-next_2023-05-01

    autogenerated tag for korg/for-next
    
  • v6.3.1

    a83b81b7 · Linux 6.3.1 ·
    This is the 6.3.1 stable release
    
  • v6.2.14

    d89ac8ad · Linux 6.2.14 ·
    This is the 6.2.14 stable release
    
  • v6.1.27

    ca48fc16 · Linux 6.1.27 ·
    This is the 6.1.27 stable release
    
  • v5.15.110

    8a7f2a5c · Linux 5.15.110 ·
    This is the 5.15.110 stable release
    
  • rust-6.4

    Rust changes for v6.4
    
    More additions to the Rust core. Importantly, this adds the pin-init
    API, which will be used by other abstractions, such as the
    synchronization ones added here too:
    
      - pin-init API: a solution for the safe pinned initialization problem.
        This allows to reduce the need for 'unsafe' code in the kernel when
        dealing with data structures that require a stable address. Commit
        90e53c5e70a6 ("rust: add pin-init API core") contains a nice
        introduction -- here is an example of how it looks like:
    
            #[pin_data]
            struct Example {
                #[pin]
                value: Mutex<u32>,
    
                #[pin]
                value_changed: CondVar,
            }
    
            impl Example {
                fn new() -> impl PinInit<Self> {
                    pin_init!(Self {
                        value <- new_mutex!(0),
                        value_changed <- new_condvar!(),
                    })
                }
            }
    
            // In a `Box`.
            let b = Box::pin_init(Example::new())?;
    
            // In the stack.
            stack_pin_init!(let s = Example::new());
    
      - 'sync' module: new types 'LockClassKey' ('struct lock_class_key'),
        'Lock', 'Guard', 'Mutex' ('struct mutex'), 'SpinLock'
        ('spinlock_t'), 'LockedBy' and 'CondVar' (uses 'wait_queue_head_t'),
        plus macros such as 'static_lock_class!' and 'new_spinlock!'.
    
        In particular, 'Lock' and 'Guard' are generic implementations that
        contain code that is common to all locks. Then, different backends
        (the new 'Backend' trait) are implemented and used to define types
        like 'Mutex':
    
            type Mutex<T> = Lock<T, MutexBackend>;
    
        In addition, new methods 'assume_init()', 'init_with()' and
        'pin_init_with()' for 'UniqueArc<MaybeUninit<T>>' and 'downcast()'
        for 'Arc<dyn Any + Send + Sync>'; as well as 'Debug' and 'Display'
        implementations for 'Arc' and 'UniqueArc'. Reduced stack usage of
        'UniqueArc::try_new_uninit()', too.
    
      - 'types' module: new trait 'AlwaysRefCounted' and new type 'ARef'
        (an owned reference to an always-reference-counted object, meant to
        be used in wrappers for C types that have their own ref counting
        functions).
    
        Moreover, new associated functions 'raw_get()' and 'ffi_init()'
        for 'Opaque'.
    
      - New 'task' module with a new type 'Task' ('struct task_struct'), and
        a new macro 'current!' to safely get a reference to the current one.
    
      - New 'ioctl' module with new '_IOC*' const functions (equivalent to
        the C macros).
    
      - New 'uapi' crate, intended to be accessible by drivers directly.
    
      - 'macros' crate: new 'quote!' macro (similar to the one provided in
        userspace by the 'quote' crate); and the 'module!' macro now allows
        specifying multiple module aliases.
    
      - 'error' module: new associated functions for the 'Error' type,
        such as 'from_errno()' and new functions such as 'to_result()'.
    
      - 'alloc' crate: more fallible 'Vec' methods: 'try_resize` and
        'try_extend_from_slice' and the infrastructure (imported from
        the Rust standard library) they need.
    
  • xfs-6.4-merge-1

    xfs: New code for 6.4
    
    o Added detailed design documentation for the upcoming online repair feature
    o major update to online scrub to complete the reverse mapping cross-referencing
      infrastructure enabling us to fully validate allocated metadata against owner
      records. This is the last piece of scrub infrastructure needed before we can
      start merging online repair functionality.
    o Fixes for the ascii-ci hashing issues
    o deprecation of the ascii-ci functionality
    o on-disk format verification bug fixes
    o various random bug fixes for syzbot and other bug reports
    
    Signed-off-by: Dave Chinner <david@fromorbit.com>
    
  • timers-core-2023-04-28

    Timekeeping and clocksource/event driver updates the second batch:
    
      - A trivial documentation fix in the timekeeping core
    
      - A really boring set of small fixes, enhancements and cleanups in the
        drivers code. No new clocksource/clockevent drivers for a change.
    
  • x86_mm_for_6.4

    Add support for new Linear Address Masking CPU feature.  This is similar
    to ARM's Top Byte Ignore and allows userspace to store metadata in some
    bits of pointers without masking it out before use.
    
  • korg/for-next_2023-04-27

    autogenerated tag for korg/for-next
    
  • smp-core-2023-04-27

    SMP cross-CPU function-call updates for v6.4:
    
     - Remove diagnostics and adjust config for CSD lock diagnostics
    
     - Add a generic IPI-sending tracepoint, as currently there's no easy
       way to instrument IPI origins: it's arch dependent and for some
       major architectures it's not even consistently available.
    
    Signed-off-by: Ingo Molnar <mingo@kernel.org>
    
  • sched-core-2023-04-27

    Scheduler changes for v6.4:
    
     - Allow unprivileged PSI poll()ing
    
     - Fix performance regression introduced by mm_cid
    
     - Improve livepatch stalls by adding livepatch task switching to cond_resched(),
       this resolves livepatching busy-loop stalls with certain CPU-bound kthreads.
    
     - Improve sched_move_task() performance on autogroup configs.
    
     - On core-scheduling CPUs, avoid selecting throttled tasks to run
    
     - Misc cleanups, fixes and improvements.
    
    Signed-off-by: Ingo Molnar <mingo@kernel.org>
    
  • perf-core-2023-04-27

    Perf changes for v6.4:
    
     - Add Intel Granite Rapids support
    
     - Add uncore events for Intel SPR IMC PMU
    
     - Fix perf IRQ throttling bug
    
    Signed-off-by: Ingo Molnar <mingo@kernel.org>