Linux/linux c4b9570kernel auditfilter.c

Merge tag 'audit-pr-20250121' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/audit

Pull audit update from Paul Moore:
 "A single audit patch that fixes a problem when collecting pathnames
  for audit PATH records that was caused by some faulty pathname
  matching logic"

* tag 'audit-pr-20250121' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/audit:
  audit: fix suffixed '/' filename matching
DeltaFile
+11-4kernel/auditfilter.c
+11-41 files

Linux/linux 690ffcdsecurity/selinux/ss policydb.c services.c

Merge tag 'selinux-pr-20250121' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/selinux

Pull selinux updates from Paul Moore:

 - Extended permissions supported in conditional policy

   The SELinux extended permissions, aka "xperms", allow security admins
   to target individuals ioctls, and recently netlink messages, with
   their SELinux policy. Adding support for conditional policies allows
   admins to toggle the granular xperms using SELinux booleans, helping
   pave the way for greater use of xperms in general purpose SELinux
   policies. This change bumps the maximum SELinux policy version to 34.

 - Fix a SCTP/SELinux error return code inconsistency

   Depending on the loaded SELinux policy, specifically it's
   EXTSOCKCLASS support, the bind(2) LSM/SELinux hook could return
   different error codes due to the SELinux code checking the socket's
   SELinux object class (which can vary depending on EXTSOCKCLASS) and

    [30 lines not shown]
DeltaFile
+64-71security/selinux/ss/policydb.c
+16-14security/selinux/ss/services.c
+9-15security/selinux/ss/conditional.c
+12-10security/selinux/ss/policydb.h
+13-6security/selinux/ss/avtab.c
+7-7security/selinux/ss/context.h
+121-12316 files not shown
+170-16522 files

Linux/linux f96a974include/linux security.h, net/netlabel netlabel_unlabeled.c

Merge tag 'lsm-pr-20250121' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/lsm

Pull lsm updates from Paul Moore:

 - Improved handling of LSM "secctx" strings through lsm_context struct

   The LSM secctx string interface is from an older time when only one
   LSM was supported, migrate over to the lsm_context struct to better
   support the different LSMs we now have and make it easier to support
   new LSMs in the future.

   These changes explain the Rust, VFS, and networking changes in the
   diffstat.

 - Only build lsm_audit.c if CONFIG_SECURITY and CONFIG_AUDIT are
   enabled

   Small tweak to be a bit smarter about when we build the LSM's common
   audit helpers.

    [31 lines not shown]
DeltaFile
+30-37security/security.c
+30-22security/smack/smack_lsm.c
+34-15security/selinux/hooks.c
+18-26net/netlabel/netlabel_unlabeled.c
+17-21rust/kernel/security.rs
+24-13include/linux/security.h
+153-13425 files not shown
+351-30931 files

Linux/linux 678ca9fsecurity/smack smackfs.c smack_lsm.c

Merge tag 'Smack-for-6.14' of https://github.com/cschaufler/smack-next

Pull smack update from Casey Schaufler:
 "One minor code improvement for v6.14"

* tag 'Smack-for-6.14' of https://github.com/cschaufler/smack-next:
  smack: deduplicate access to string conversion
DeltaFile
+5-21security/smack/smackfs.c
+1-17security/smack/smack_lsm.c
+8-2security/smack/smack_access.c
+1-0security/smack/smack.h
+15-404 files

Linux/linux 0ca0cf9security/integrity/ima ima_queue.c ima_policy.c

Merge tag 'integrity-v6.14' of git://git.kernel.org/pub/scm/linux/kernel/git/zohar/linux-integrity

Pull integrity updates from Mimi Zohar:
 "There's just a couple of changes: two kernel messages addressed, a
  measurement policy collision addressed, and one policy cleanup.

  Please note that the contents of the IMA measurement list is
  potentially affected. The builtin tmpfs IMA policy rule change might
  introduce additional measurements, while detecting a reboot might
  eliminate some measurements"

* tag 'integrity-v6.14' of git://git.kernel.org/pub/scm/linux/kernel/git/zohar/linux-integrity:
  ima: ignore suffixed policy rule comments
  ima: limit the builtin 'tcb' dont_measure tmpfs policy rule
  ima: kexec: silence RCU list traversal warning
  ima: Suspend PCR extends and log appends when rebooting
DeltaFile
+44-0security/integrity/ima/ima_queue.c
+3-2security/integrity/ima/ima_policy.c
+2-1security/integrity/ima/ima_kexec.c
+2-0security/integrity/ima/ima_init.c
+1-0security/integrity/ima/ima.h
+52-35 files

Linux/linux 7dd457adrivers/firmware/google cbmem.c vpd.c

Merge tag 'chrome-platform-firmware-v6.14' of git://git.kernel.org/pub/scm/linux/kernel/git/chrome-platform/linux

Pull chrome platform firmware updates from Tzung-Bi Shih:

 - Constify 'struct bin_attribute'.

* tag 'chrome-platform-firmware-v6.14' of git://git.kernel.org/pub/scm/linux/kernel/git/chrome-platform/linux:
  firmware: google: vpd: Use const 'struct bin_attribute' callback
  firmware: google: memconsole: Use const 'struct bin_attribute' callback
  firmware: google: gsmi: Constify 'struct bin_attribute'
  firmware: google: cbmem: Constify 'struct bin_attribute'
DeltaFile
+5-5drivers/firmware/google/cbmem.c
+4-4drivers/firmware/google/vpd.c
+3-3drivers/firmware/google/gsmi.c
+2-2drivers/firmware/google/memconsole.c
+14-144 files

Linux/linux b394eabDocumentation/devicetree/bindings/chrome google,cros-kbd-led-backlight.yaml, drivers/platform/chrome cros_ec_lpc.c cros_kbd_led_backlight.c

Merge tag 'chrome-platform-v6.14' of git://git.kernel.org/pub/scm/linux/kernel/git/chrome-platform/linux

Pull chrome platform updates from Tzung-Bi Shih:
 "New:
   - Support new EC if the memory region information comes from the CRS
     ACPI resource descriptor in cros_ec_lpc

  Improvements:
   - Make sure EC is in RW before probing
   - Only check events on MKBP notifies to reduce the number of query
     commands in cros_ec_lpc

  Cleanups:
   - Remove unused code and DT bindings for cros-kbd-led-backlight
   - Constify 'struct bin_attribute' in cros_ec_vbc
   - Use str_enabled_disabled() in cros_usbpd_logger"

* tag 'chrome-platform-v6.14' of git://git.kernel.org/pub/scm/linux/kernel/git/chrome-platform/linux:
  platform/chrome: cros_ec_lpc: Handle EC without CRS section

    [11 lines not shown]
DeltaFile
+136-65drivers/platform/chrome/cros_ec_lpc.c
+18-61drivers/platform/chrome/cros_kbd_led_backlight.c
+60-9drivers/platform/chrome/cros_ec_proto.c
+0-36Documentation/devicetree/bindings/chrome/google,cros-kbd-led-backlight.yaml
+10-0drivers/platform/chrome/cros_ec_trace.c
+5-5drivers/platform/chrome/cros_ec_vbc.c
+229-1769 files not shown
+250-18615 files

Linux/linux d0f93acDocumentation/arch/x86 boot.rst, Documentation/dev-tools kgdb.rst

Merge tag 'docs-6.14' of git://git.lwn.net/linux

Pull Documentation updates from Jonathan Corbet:

 - Quite a bit of Chinese and Spanish translation work

 - Clarifying that Git commit IDs >12chars are OK

 - A new nvme-multipath document

 - A reorganization of the admin-guide top-level page to make it
   readable

 - Clarification of the role of Acked-by and maintainer discretion on
   their acceptance

 - Some reorganization of debugging-oriented docs

... and typo fixes, documentation updates, etc as usual

    [23 lines not shown]
DeltaFile
+937-0Documentation/process/debugging/kgdb.rst
+0-937Documentation/dev-tools/kgdb.rst
+461-2Documentation/translations/sp_SP/process/4.Coding.rst
+384-4Documentation/translations/sp_SP/process/5.Posting.rst
+184-185Documentation/arch/x86/boot.rst
+232-2Documentation/translations/sp_SP/process/3.Early-stage.rst
+2,198-1,13065 files not shown
+4,097-1,58371 files

Linux/linux e361044rust ffi.rs, rust/kernel types.rs rbtree.rs

Merge tag 'rust-6.14' of git://git.kernel.org/pub/scm/linux/kernel/git/ojeda/linux

Pull rust updates from Miguel Ojeda:
 "Toolchain and infrastructure:

   - Finish the move to custom FFI integer types started in the previous
     cycle and finally map 'long' to 'isize' and 'char' to 'u8'. Do a
     few cleanups on top thanks to that.

   - Start to use 'derive(CoercePointee)' on Rust >= 1.84.0.

     This is a major milestone on the path to build the kernel using
     only stable Rust features. In particular, previously we were using
     the unstable features 'coerce_unsized', 'dispatch_from_dyn' and
     'unsize', and now we will use the new 'derive_coerce_pointee' one,
     which is on track to stabilization. This new feature is a macro
     that essentially expands into code that internally uses the
     unstable features that we were using before, without having to
     expose those.

    [92 lines not shown]
DeltaFile
+69-24rust/kernel/types.rs
+48-17rust/kernel/sync/arc.rs
+42-11rust/kernel/alloc/kbox.rs
+23-23rust/kernel/rbtree.rs
+23-15rust/kernel/str.rs
+36-1rust/ffi.rs
+241-9131 files not shown
+437-21737 files

Linux/linux 1d6d399arch/arm64/kernel cpufeature.c, include/linux kthread.h

Merge tag 'kthread-for-6.14-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/frederic/linux-dynticks

Pull kthread updates from Frederic Weisbecker:
 "Kthreads affinity follow either of 4 existing different patterns:

   1) Per-CPU kthreads must stay affine to a single CPU and never
      execute relevant code on any other CPU. This is currently handled
      by smpboot code which takes care of CPU-hotplug operations.
      Affinity here is a correctness constraint.

   2) Some kthreads _have_ to be affine to a specific set of CPUs and
      can't run anywhere else. The affinity is set through
      kthread_bind_mask() and the subsystem takes care by itself to
      handle CPU-hotplug operations. Affinity here is assumed to be a
      correctness constraint.

   3) Per-node kthreads _prefer_ to be affine to a specific NUMA node.
      This is not a correctness constraint but merely a preference in
      terms of memory locality. kswapd and kcompactd both fall into this

    [75 lines not shown]
DeltaFile
+181-22kernel/kthread.c
+19-75kernel/rcu/tree.c
+51-5include/linux/kthread.h
+3-40mm/compaction.c
+5-14lib/test_objpool.c
+14-1arch/arm64/kernel/cpufeature.c
+273-15741 files not shown
+341-22147 files

Linux/linux 96c8470drivers/gpu/drm/amd/display/dc/dml2/dml21/src/dml2_core dml2_core_dcn4_calcs.c, drivers/gpu/drm/amd/include/asic_reg/dcn dcn_2_0_1_sh_mask.h dcn_2_0_3_sh_mask.h

Merge tag 'drm-next-2025-01-17' of https://gitlab.freedesktop.org/drm/kernel

Pull drm updates from Dave Airlie:
 "There are two external interactions of note, the msm tree pull in some
  opp tree, hopefully the opp tree arrives from the same git tree
  however it normally does.

  There is also a new cgroup controller for device memory, that is used
  by drm, so is merging through my tree. This will hopefully help open
  up gpu cgroup usage a bit more and move us forward.

  There is a new accelerator driver for the AMD XDNA Ryzen AI NPUs.

  Then the usual xe/amdgpu/i915/msm leaders and lots of changes and
  refactors across the board:

  core:
   - device memory cgroup controller added
   - Remove driver date from drm_driver

    [169 lines not shown]
DeltaFile
+22,091-0drivers/gpu/drm/amd/include/asic_reg/dcn/dcn_2_0_1_sh_mask.h
+0-22,091drivers/gpu/drm/amd/include/asic_reg/dcn/dcn_2_0_3_sh_mask.h
+6,193-0drivers/gpu/drm/amd/include/asic_reg/dcn/dcn_2_0_1_offset.h
+0-6,193drivers/gpu/drm/amd/include/asic_reg/dcn/dcn_2_0_3_offset.h
+928-484drivers/gpu/drm/amd/display/dc/dml2/dml21/src/dml2_core/dml2_core_dcn4_calcs.c
+666-599drivers/gpu/drm/i915/display/intel_dp.c
+29,878-29,3671,181 files not shown
+79,742-44,1221,187 files

Linux/linux c0e7590scripts sorttable.c sorttable.h

Merge tag 'trace-sorttable-v6.14' of git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace

Pull scipts/sorttable updates from Steven Rostedt:
 "The sorttable.c was a copy from recordmcount.c which is very hard to
  maintain. That's because it uses macro helpers and places the code in
  a header file sorttable.h to handle both the 64 bit and 32 bit version
  of the Elf structures. It also uses _r()/r()/r2() wrappers around
  accessing the data which will read the 64 bit or 32 bit version of the
  data as well as handle endianess. If the wrong wrapper is used, an
  invalid value will result, and this has been a cause for bugs in the
  past. In fact the new ORC code doesn't even use it. That's fine
  because ORC is only for 64 bit x86 which is the default parsing.

  Instead of having a bunch of macros defined and then include the code
  twice from a header, the Elf structures are each wrapped in a union.
  The union holds the 64 bit and 32 bit version of the needed structure.
  Then a structure of function pointers is used, along with helper
  macros to access the ELF types appropriately for their byte size and
  endianess. How to reference the data fields is moved from the code

    [26 lines not shown]
DeltaFile
+685-55scripts/sorttable.c
+0-500scripts/sorttable.h
+685-5552 files

Linux/linux 2e04247arch/arm64/kernel ftrace.c, include/linux ftrace.h

Merge tag 'ftrace-v6.14' of git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace

Pull ftrace updates from Steven Rostedt:

 - Have fprobes built on top of function graph infrastructure

   The fprobe logic is an optimized kprobe that uses ftrace to attach to
   functions when a probe is needed at the start or end of the function.
   The fprobe and kretprobe logic implements a similar method as the
   function graph tracer to trace the end of the function. That is to
   hijack the return address and jump to a trampoline to do the trace
   when the function exits. To do this, a shadow stack needs to be
   created to store the original return address. Fprobes and function
   graph do this slightly differently. Fprobes (and kretprobes) has
   slots per callsite that are reserved to save the return address. This
   is fine when just a few points are traced. But users of fprobes, such
   as BPF programs, are starting to add many more locations, and this
   method does not scale.


    [68 lines not shown]
DeltaFile
+493-185kernel/trace/fprobe.c
+134-136kernel/trace/trace_fprobe.c
+109-98kernel/trace/ftrace.c
+108-8include/linux/ftrace.h
+77-1arch/arm64/kernel/ftrace.c
+39-26kernel/trace/fgraph.c
+960-45451 files not shown
+1,515-86357 files

Linux/linux 0074adekernel/trace ring_buffer.c

Merge tag 'trace-ringbuffer-v6.14' of git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace

Pull trace ring-buffer updates from Steven Rostedt:

 - Clean up the __rb_map_vma() logic

   The logic of __rb_map_vma() has a error check with WARN_ON() that
   makes sure that the index does not go past the end of the array of
   buffers. The test in the loop pretty much guarantees that it will
   never happen, but since the relation of the variables used is a
   little complex, the WARN_ON() check was added. It was noticed that
   the array was dereferenced before this check and if the logic does
   break and for some reason the logic goes past the array, there will
   be an out of bounds access here. Move the access to after the
   WARN_ON().

 - Consolidate how the ring buffer is determined to be empty

   Currently there's two ways that are used to determine if the ring

    [10 lines not shown]
DeltaFile
+17-46kernel/trace/ring_buffer.c
+17-461 files

Linux/linux 9f3ee94Documentation/admin-guide kernel-parameters.txt, kernel/rcu rcutorture.c tree_exp.h

Merge tag 'rcu.release.v6.14' of git://git.kernel.org/pub/scm/linux/kernel/git/rcu/linux

Pull RCU updates from Uladzislau Rezki:
 "Misc fixes:
   - check if IRQs are disabled in rcu_exp_need_qs()
   - instrument KCSAN exclusive-writer assertions
   - add extra WARN_ON_ONCE() check
   - set the cpu_no_qs.b.exp under lock
   - warn if callback enqueued on offline CPU

  Torture-test updates:
   - add rcutorture.preempt_duration kernel module parameter
   - make the TREE03 scenario do preemption
   - improve pooling timeouts for rcu_torture_writer()
   - improve output of "Failure/close-call rcutorture reader segments"
   - add some reader-state debugging checks
   - update doc of polled APIs
   - add extra diagnostics for per-reader-segment preemption
   - add an extra test for sched_clock()

    [29 lines not shown]
DeltaFile
+196-41kernel/rcu/rcutorture.c
+89-1Documentation/admin-guide/kernel-parameters.txt
+46-26kernel/rcu/tree_exp.h
+37-3kernel/rcu/refscale.c
+31-0kernel/rcu/Kconfig.debug
+21-4tools/testing/selftests/rcutorture/bin/kvm-remote.sh
+420-7511 files not shown
+465-10117 files

Linux/linux ad37df3include/linux slab.h, init main.c

Merge tag 'slab-for-6.14' of git://git.kernel.org/pub/scm/linux/kernel/git/vbabka/slab

Pull slab updates from Vlastimil Babka:

 - Move the kfree_rcu() implementation from RCU to SLAB subsystem
   (Uladzislau Rezki)

   The kfree_rcu() implementation has been historically maintained in
   the RCU subsystem. At LSF/MM we agreed to move it to SLAB, where it
   more logically belongs. The batching is planned be more integrated
   with SLUB internals in the future, while using the RCU APIs like any
   other subsystem.

 - Fix for kernel-doc warning (Randy Dunlap)

* tag 'slab-for-6.14' of git://git.kernel.org/pub/scm/linux/kernel/git/vbabka/slab:
  mm/slab: fix kernel-doc func param names
  mm/slab: Move kvfree_rcu() into SLAB
  rcu/kvfree: Adjust a shrinker name

    [3 lines not shown]
DeltaFile
+880-0mm/slab_common.c
+0-876kernel/rcu/tree.c
+2-2mm/slab.h
+1-0init/main.c
+1-0include/linux/slab.h
+884-8785 files

Linux/linux 4c55116arch/arm/kernel machine_kexec.c, arch/arm64/kernel machine_kexec.c

Merge tag 'irq-core-2025-01-21' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull interrupt subsystem updates from Thomas Gleixner:

 - Consolidate the machine_kexec_mask_interrupts() by providing a
   generic implementation and replacing the copy & pasta orgy in the
   relevant architectures.

 - Prevent unconditional operations on interrupt chips during kexec
   shutdown, which can trigger warnings in certain cases when the
   underlying interrupt has been shut down before.

 - Make the enforcement of interrupt handling in interrupt context
   unconditionally available, so that it actually works for non x86
   related interrupt chips. The earlier enablement for ARM GIC chips set
   the required chip flag, but did not notice that the check was hidden
   behind a config switch which is not selected by ARM[64].

 - Decrapify the handling of deferred interrupt affinity setting.

    [40 lines not shown]
DeltaFile
+18-25kernel/irq/manage.c
+36-0kernel/irq/kexec.c
+0-31arch/arm64/kernel/machine_kexec.c
+1-27drivers/irqchip/irq-brcmstb-l2.c
+0-23arch/arm/kernel/machine_kexec.c
+0-23arch/riscv/kernel/machine_kexec.c
+55-12935 files not shown
+108-23041 files

Linux/linux f200c31include/linux timekeeping.h, kernel/time timekeeping.c timer_migration.h

Merge tag 'timers-core-2025-01-21' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull timer and timekeeping updates from Thomas Gleixner:

 - Just boring cleanups, typo and comment fixes and trivial optimizations

* tag 'timers-core-2025-01-21' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  timers/migration: Simplify top level detection on group setup
  timers: Optimize get_timer_[this_]cpu_base()
  timekeeping: Remove unused ktime_get_fast_timestamps()
  timer/migration: Fix kernel-doc warnings for union tmigr_state
  tick/broadcast: Add kernel-doc for function parameters
  hrtimers: Update the return type of enqueue_hrtimer()
  clocksource/wdtest: Print time values for short udelay(1)
  posix-timers: Fix typo in __lock_timer()
  vdso: Correct typo in PAGE_SHIFT comment
DeltaFile
+13-74kernel/time/timekeeping.c
+9-12kernel/time/timer_migration.h
+6-10kernel/time/timer.c
+0-15include/linux/timekeeping.h
+3-4kernel/time/hrtimer.c
+1-3kernel/time/timer_migration.c
+32-1184 files not shown
+38-12110 files

Linux/linux 3360882Documentation/ABI/testing sysfs-kernel-livepatch, kernel/livepatch core.c

Merge tag 'livepatching-for-6.14' of git://git.kernel.org/pub/scm/linux/kernel/git/livepatching/livepatching

Pull livepatching updates from Petr Mladek:

 - Add a sysfs attribute showing the livepatch ordering

 - Some code clean up

* tag 'livepatching-for-6.14' of git://git.kernel.org/pub/scm/linux/kernel/git/livepatching/livepatching:
  selftests: livepatch: add test cases of stack_order sysfs interface
  livepatch: Add stack_order sysfs attribute
  selftests/livepatch: Replace hardcoded module name with variable in test-callbacks.sh
DeltaFile
+71-0tools/testing/selftests/livepatch/test-sysfs.sh
+24-0kernel/livepatch/core.c
+9-0Documentation/ABI/testing/sysfs-kernel-livepatch
+1-1tools/testing/selftests/livepatch/test-callbacks.sh
+105-14 files

Linux/linux 4ca6c02kernel/printk printk_safe.c printk.c

Merge tag 'printk-for-6.14' of git://git.kernel.org/pub/scm/linux/kernel/git/printk/linux

Pull printk updates from Petr Mladek:

 - Prevent possible deadlocks, caused by the lock serializing per-CPU
   backtraces, by entering the deferred printk context

 - Enforce the right casting in LOG_BUF_LEN_MAX definition

* tag 'printk-for-6.14' of git://git.kernel.org/pub/scm/linux/kernel/git/printk/linux:
  printk: Defer legacy printing when holding printk_cpu_sync
  printk: Remove redundant deferred check in vprintk()
  printk: Fix signed integer overflow when defining LOG_BUF_LEN_MAX
DeltaFile
+6-10kernel/printk/printk_safe.c
+6-1kernel/printk/printk.c
+6-0kernel/printk/internal.h
+18-113 files

Linux/linux 62de6e1Documentation/scheduler sched-stats.rst, arch/x86/kernel itmt.c

Merge tag 'sched-core-2025-01-21' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull scheduler updates from Ingo Molnar:
 "Fair scheduler (SCHED_FAIR) enhancements:

   - Behavioral improvements:
      - Untangle NEXT_BUDDY and pick_next_task() (Peter Zijlstra)

   - Delayed-dequeue enhancements & fixes: (Vincent Guittot)
      - Rename h_nr_running into h_nr_queued
      - Add new cfs_rq.h_nr_runnable
      - Use the new cfs_rq.h_nr_runnable
      - Removed unsued cfs_rq.h_nr_delayed
      - Rename cfs_rq.idle_h_nr_running into h_nr_idle
      - Remove unused cfs_rq.idle_nr_running
      - Rename cfs_rq.nr_running into nr_queued
      - Do not try to migrate delayed dequeue task
      - Fix variable declaration position
      - Encapsulate set custom slice in a __setparam_fair() function

    [113 lines not shown]
DeltaFile
+257-187kernel/sched/fair.c
+76-52Documentation/scheduler/sched-stats.rst
+89-30kernel/sched/deadline.c
+98-0kernel/rseq.c
+45-49kernel/sched/core.c
+33-48arch/x86/kernel/itmt.c
+598-36617 files not shown
+721-47923 files

Linux/linux 858df1dDocumentation/admin-guide kernel-parameters.txt, Documentation/arch/x86/x86_64 boot-options.rst

Merge tag 'x86-cleanups-2025-01-21' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull x86 cleanups from Ingo Molnar:
 "Miscellaneous x86 cleanups and typo fixes, and also the removal of
  the 'disablelapic' boot parameter"

* tag 'x86-cleanups-2025-01-21' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  x86/ioapic: Remove a stray tab in the IO-APIC type string
  x86/cpufeatures: Remove "AMD" from the comments to the AMD-specific leaf
  Documentation/kernel-parameters: Fix a typo in kvm.enable_virt_at_load text
  x86/cpu: Fix typo in x86_match_cpu()'s doc
  x86/apic: Remove "disablelapic" cmdline option
  Documentation: Merge x86-specific boot options doc into kernel-parameters.txt
  x86/ioremap: Remove unused size parameter in remapping functions
  x86/ioremap: Simplify setup_data mapping variants
  x86/boot/compressed: Remove unused header includes from kaslr.c
DeltaFile
+0-312Documentation/arch/x86/x86_64/boot-options.rst
+226-13Documentation/admin-guide/kernel-parameters.txt
+40-79arch/x86/mm/ioremap.c
+6-6arch/x86/include/asm/cpufeatures.h
+1-8arch/x86/kernel/apic/apic.c
+0-4arch/x86/boot/compressed/kaslr.c
+273-4228 files not shown
+278-43514 files

Linux/linux 6c4aa89arch/x86/events rapl.c, arch/x86/events/amd ibs.c

Merge tag 'perf-core-2025-01-20' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull performance events updates from Ingo Molnar:
 "Seqlock optimizations that arose in a perf context and were merged
  into the perf tree:

   - seqlock: Add raw_seqcount_try_begin (Suren Baghdasaryan)
   - mm: Convert mm_lock_seq to a proper seqcount (Suren Baghdasaryan)
   - mm: Introduce mmap_lock_speculate_{try_begin|retry} (Suren
     Baghdasaryan)
   - mm/gup: Use raw_seqcount_try_begin() (Peter Zijlstra)

  Core perf enhancements:

   - Reduce 'struct page' footprint of perf by mapping pages in advance
     (Lorenzo Stoakes)
   - Save raw sample data conditionally based on sample type (Yabin Cui)
   - Reduce sampling overhead by checking sample_type in
     perf_sample_save_callchain() and perf_sample_save_brstack() (Yabin

    [64 lines not shown]
DeltaFile
+264-149arch/x86/events/rapl.c
+168-57kernel/events/uprobes.c
+116-82arch/x86/events/intel/ds.c
+100-56kernel/events/core.c
+86-40include/linux/mmap_lock.h
+43-21arch/x86/events/amd/ibs.c
+777-40530 files not shown
+958-49936 files

Linux/linux a6640c8arch/loongarch/include/asm bug.h, arch/x86/include/asm alternative.h nospec-branch.h

Merge tag 'objtool-core-2025-01-20' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull objtool updates from Ingo Molnar:

 - Introduce the generic section-based annotation infrastructure a.k.a.
   ASM_ANNOTATE/ANNOTATE (Peter Zijlstra)

 - Convert various facilities to ASM_ANNOTATE/ANNOTATE: (Peter Zijlstra)
    - ANNOTATE_NOENDBR
    - ANNOTATE_RETPOLINE_SAFE
    - instrumentation_{begin,end}()
    - VALIDATE_UNRET_BEGIN
    - ANNOTATE_IGNORE_ALTERNATIVE
    - ANNOTATE_INTRA_FUNCTION_CALL
    - {.UN}REACHABLE

 - Optimize the annotation-sections parsing code (Peter Zijlstra)

 - Centralize annotation definitions in <linux/objtool.h>

    [37 lines not shown]
DeltaFile
+129-313tools/objtool/check.c
+78-48include/linux/objtool.h
+7-30include/linux/compiler.h
+1-21arch/x86/include/asm/alternative.h
+0-18arch/x86/include/asm/nospec-branch.h
+7-6arch/loongarch/include/asm/bug.h
+222-43616 files not shown
+275-47122 files

Linux/linux 8838a1ainclude/linux/sched wake_q.h, kernel/locking rtmutex.c mutex.c

Merge tag 'locking-core-2025-01-20' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull locking updates from Ingo Molnar:
 "Lockdep:

   - Improve and fix lockdep bitsize limits, clarify the Kconfig
     documentation (Carlos Llamas)

   - Fix lockdep build warning on Clang related to
     chain_hlock_class_idx() inlining (Andy Shevchenko)

   - Relax the requirements of PROVE_RAW_LOCK_NESTING arch support by
     not tying it to ARCH_SUPPORTS_RT unnecessarily (Waiman Long)

  Rust integration:

   - Support lock pointers managed by the C side (Lyude Paul)

   - Support guard types (Lyude Paul)

    [44 lines not shown]
DeltaFile
+34-1rust/kernel/sync/lock.rs
+34-0include/linux/sched/wake_q.h
+5-27kernel/locking/rtmutex.c
+11-11lib/Kconfig.debug
+4-12kernel/locking/mutex.c
+13-0rust/kernel/sync/lock/mutex.rs
+101-5111 files not shown
+152-6917 files

Linux/linux b9d8a29. MAINTAINERS, arch/x86/include/asm amd_node.h amd_nb.h

Merge tag 'x86_misc_for_v6.14_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull misc x86 updates from Borislav Petkov:

 - The first part of a restructuring of AMD's representation of a
   northbridge which is legacy now, and the creation of the new AMD node
   concept which represents the Zen architecture of having a collection
   of I/O devices within an SoC. Those nodes comprise the so-called data
   fabric on Zen.

   This has at least one practical advantage of not having to add a PCI
   ID each time a new data fabric PCI device releases. Eventually, the
   lot more uniform provider of data fabric functionality amd_node.c
   will be used by all the drivers which need it

 - Smaller cleanups

* tag 'x86_misc_for_v6.14_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  x86/amd_node: Use defines for SMN register offsets

    [12 lines not shown]
DeltaFile
+21-279arch/x86/kernel/amd_nb.c
+215-0arch/x86/kernel/amd_node.c
+36-0arch/x86/include/asm/amd_node.h
+1-20arch/x86/include/asm/amd_nb.h
+5-5arch/x86/include/asm/mtrr.h
+8-0MAINTAINERS
+286-30418 files not shown
+317-32024 files

Linux/linux 48795f9arch/x86/events/intel core.c, arch/x86/include/asm cpu_device_id.h

Merge tag 'x86_cpu_for_v6.14_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull x86 cpuid updates from Borislav Petkov:

 - Remove the less generic CPU matching infra around struct x86_cpu_desc
   and use the generic struct x86_cpu_id thing

 - Remove magic naked numbers for CPUID functions and use proper defines
   of the prefix CPUID_LEAF_*. Consolidate some of the crazy use around
   the tree

 - Smaller cleanups and improvements

* tag 'x86_cpu_for_v6.14_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  x86/cpu: Make all all CPUID leaf names consistent
  x86/fpu: Remove unnecessary CPUID level check
  x86/fpu: Move CPUID leaf definitions to common code
  x86/tsc: Remove CPUID "frequency" leaf magic numbers.
  x86/tsc: Move away from TSC leaf magic numbers

    [13 lines not shown]
DeltaFile
+43-42arch/x86/kernel/cpu/common.c
+26-36arch/x86/events/intel/core.c
+9-42arch/x86/include/asm/cpu_device_id.h
+4-24arch/x86/kernel/cpu/match.c
+11-15arch/x86/kernel/fpu/xstate.c
+12-11drivers/edac/i10nm_base.c
+105-17027 files not shown
+179-27833 files

Linux/linux 13b6931Documentation/arch/x86 amd-memory-encryption.rst, arch/x86/coco/sev core.c shared.c

Merge tag 'x86_sev_for_v6.14_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull x86 SEV updates from Borislav Petkov:

 - A segmented Reverse Map table (RMP) is a across-nodes distributed
   table of sorts which contains per-node descriptors of each node-local
   4K page, denoting its ownership (hypervisor, guest, etc) in the realm
   of confidential computing. Add support for such a table in order to
   improve referential locality when accessing or modifying RMP table
   entries

 - Add support for reading the TSC in SNP guests by removing any
   interference or influence the hypervisor might have, with the goal of
   making a confidential guest even more independent from the hypervisor

* tag 'x86_sev_for_v6.14_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  x86/sev: Add the Secure TSC feature for SNP guests
  x86/tsc: Init the TSC for Secure TSC guests
  x86/sev: Mark the TSC in a secure TSC guest as reliable

    [16 lines not shown]
DeltaFile
+570-97arch/x86/virt/svm/sev.c
+642-10arch/x86/coco/sev/core.c
+20-465drivers/virt/coco/sev-guest/sev-guest.c
+118-0Documentation/arch/x86/amd-memory-encryption.rst
+38-10arch/x86/include/asm/sev.h
+10-0arch/x86/coco/sev/shared.c
+1,398-58213 files not shown
+1,441-59219 files

Linux/linux 254d763arch/x86/kernel/cpu/microcode amd.c

Merge tag 'x86_microcode_for_v6.14_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull x86 microcode loader updates from Borislav Petkov:

 - A bunch of minor cleanups

* tag 'x86_microcode_for_v6.14_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  x86/microcode/AMD: Remove ret local var in early_apply_microcode()
  x86/microcode/AMD: Have __apply_microcode_amd() return bool
  x86/microcode/AMD: Make __verify_patch_size() return bool
  x86/microcode/AMD: Remove bogus comment from parse_container()
  x86/microcode/AMD: Return bool from find_blobs_in_containers()
DeltaFile
+28-26arch/x86/kernel/cpu/microcode/amd.c
+28-261 files

Linux/linux 3357d1dDocumentation/arch/x86 resctrl.rst, arch/x86/kernel/cpu/resctrl monitor.c ctrlmondata.c

Merge tag 'x86_cache_for_v6.14_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull x86 resource control updates from Borislav Petkov:

 - Extend resctrl with the capability of total memory bandwidth
   monitoring, thus accomodating systems which support only total but
   not local memory bandwidth monitoring. Add the respective new mount
   options

 - The usual cleanups

* tag 'x86_cache_for_v6.14_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  x86/resctrl: Document the new "mba_MBps_event" file
  x86/resctrl: Add write option to "mba_MBps_event" file
  x86/resctrl: Add "mba_MBps_event" file to CTRL_MON directories
  x86/resctrl: Make mba_sc use total bandwidth if local is not supported
  x86/resctrl: Compute memory bandwidth for all supported events
  x86/resctrl: Modify update_mba_bw() to use per CTRL_MON group event
  x86/resctrl: Prepare for per-CTRL_MON group mba_MBps control

    [2 lines not shown]
DeltaFile
+46-48arch/x86/kernel/cpu/resctrl/monitor.c
+70-0arch/x86/kernel/cpu/resctrl/ctrlmondata.c
+28-15arch/x86/kernel/cpu/resctrl/rdtgroup.c
+8-20arch/x86/kernel/cpu/resctrl/pseudo_lock.c
+8-3arch/x86/kernel/cpu/resctrl/internal.h
+10-0Documentation/arch/x86/resctrl.rst
+170-861 files not shown
+178-877 files