Latest Linux kernel releases

  19.12 6.12.6, 6.6.67, 6.1.121, 5.15.175, 5.10.232, 5.4.288
  05.12 6.11.11, 4.19.325

Significant pull requests for mainline kernel

 
21 Dec 2024: bpf for v6.13-rc4 [+ + +]
BPF fixes:

- Fix inlining of bpf_get_smp_processor_id helper for !CONFIG_SMP
  systems (Andrea Righi)

- Fix BPF USDT selftests helper code to use asm constraint "m"
  for LoongArch (Tiezhu Yang)

- Fix BPF selftest compilation error in get_uprobe_offset when
  PROCMAP_QUERY is not defined (Jerome Marchand)

- Fix BPF bpf_skb_change_tail helper when used in context of
  BPF sockmap to handle negative skb header offsets (Cong Wang)

- Several fixes to BPF sockmap code, among others, in the area
  of socket buffer accounting (Levi Zim, Zijian Zhang, Cong Wang)

Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>

 
19 Dec 2024: Networking for v6.13-rc4 [+ + +]
Happy winter holiday! hopefully nothing too scaring here.

Including fixes from can and netfilter.

Current release - regressions:

  - rtnetlink: try the outer netns attribute in rtnl_get_peer_net().

  - rust: net::phy fix module autoloading

Current release - new code bugs:

  - phy: avoid undefined behavior in *_led_polarity_set()

  - eth: octeontx2-pf: fix netdev memory leak in rvu_rep_create()

Previous releases - regressions:

  - smc: check sndbuf_space again after NOSPACE flag is set in smc_poll

  - ipvs: fix clamp() of ip_vs_conn_tab on small memory systems

  - dsa: restore dsa_software_vlan_untag() ability to operate on VLAN-untagged traffic

  - eth: tun: fix tun_napi_alloc_frags()

  - eth: ionic: no double destroy workqueue

  - eth: idpf: trigger SW interrupt when exiting wb_on_itr mode

  - eth: rswitch: rework ts tags management

  - eth: team: fix feature exposure when no ports are present

Previous releases - always broken:

  - core: fix repeated netlink messages in queue dump

  - mdiobus: fix an OF node reference leak

  - smc: check iparea_offset and ipv6_prefixes_cnt when receiving proposal msg

  - can: fix missed interrupts with m_can_pci

  - eth: oa_tc6: fix infinite loop error when tx credits becomes 0

Signed-off-by: Paolo Abeni <pabeni@redhat.com>

 
16 Dec 2024: platform-drivers-x86 for v6.13-3 [+ + +]
Here is a platform-drivers-x86 fixes PR for v6.13.

Fixes and new HW support:

 - alienware-wmi: Add support for Alienware m16 R1 AMD.

 - alienware-wmi: Do not setup legacy LED control with X and G Series.

 - intel/ifs: Clearwater Forest support.

 - intel/vsec: Panther Lake support.

 - p2sb: Do not hide the device if BIOS left it unhidden.

 - touchscreen_dmi: Add SARY Tab 3 tablet information.

Regards, i.


platform-drivers-x86 for v6.13-3

Fixes and new HW support:

 - alienware-wmi: Add support for Alienware m16 R1 AMD.

 - alienware-wmi: Do not setup legacy LED control with X and G Series.

 - intel/ifs: Clearwater Forest support.

 - intel/vsec: Panther Lake support.

 - p2sb: Do not hide the device if BIOS left it unhidden.

 - touchscreen_dmi: Add SARY Tab 3 tablet information.

The following is an automated shortlog grouped by driver:

alienware-wmi:
 -  Adds support to Alienware m16 R1 AMD
 -  Fix X Series and G Series quirks

intel/ifs:
 -  Add Clearwater Forest to CPU support list

intel/vsec:
 -  Add support for Panther Lake

p2sb:
 -  Do not scan and remove the P2SB device when it is unhidden
 -  Factor out p2sb_read_from_cache()
 -  Introduce the global flag p2sb_hidden_by_bios
 -  Move P2SB hide and unhide code to p2sb_scan_and_cache()

touchscreen_dmi:
 -  Add info for SARY Tab 3 tablet

 
15 Dec 2024: KVM changes for Linux 6.13-rc3 [+ + +]
ARM64:

* Fix confusion with implicitly-shifted MDCR_EL2 masks breaking
  SPE/TRBE initialization.

* Align nested page table walker with the intended memory attribute
  combining rules of the architecture.

* Prevent userspace from constraining the advertised ASID width,
  avoiding horrors of guest TLBIs not matching the intended context in
  hardware.

* Don't leak references on LPIs when insertion into the translation
  cache fails.

RISC-V:

* Replace csr_write() with csr_set() for HVIEN PMU overflow bit.

x86:

* Cache CPUID.0xD XSTATE offsets+sizes during module init - On Intel's
  Emerald Rapids CPUID costs hundreds of cycles and there are a lot of
  leaves under 0xD.  Getting rid of the CPUIDs during nested VM-Enter and
  VM-Exit is planned for the next release, for now just cache them: even
  on Skylake that is 40% faster.

 
14 Dec 2024: bpf for v6.13-rc3 [+ + +]
BPF fixes:

- Fix a bug in the BPF verifier to track changes to packet data
  property for global functions (Eduard Zingerman)

- Fix a theoretical BPF prog_array use-after-free in RCU handling
  of __uprobe_perf_func (Jann Horn)

- Fix BPF tracing to have an explicit list of tracepoints and
  their arguments which need to be annotated as PTR_MAYBE_NULL
  (Kumar Kartikeya Dwivedi)

- Fix a logic bug in the bpf_remove_insns code where a potential
  error would have been wrongly propagated (Anton Protopopov)

- Avoid deadlock scenarios caused by nested kprobe and fentry
  BPF programs (Priya Bala Govindasamy)

- Fix a bug in BPF verifier which was missing a size check for
  BTF-based context access (Kumar Kartikeya Dwivedi)

- Fix a crash found by syzbot through an invalid BPF prog_array
  access in perf_event_detach_bpf_prog (Jiri Olsa)

- Fix several BPF sockmap bugs including a race causing a
  refcount imbalance upon element replace (Michal Luczaj)

- Fix a use-after-free from mismatching BPF program/attachment
  RCU flavors (Jann Horn)

Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>

 
13 Dec 2024: USB-serial device ids for 6.13-rc3 [+ + +]
USB-serial device ids for 6.13-rc3

Here are some new modem device ids.

All have been in linux-next with no reported issues.

 
12 Dec 2024: Networking for v6.13-rc3 [+ + +]
The file rename may stand out, the code is from this merge window.

Including fixes from bluetooth, netfilter and wireless.

Current release - fix to a fix:

 - rtnetlink: fix error code in rtnl_newlink()

 - tipc: fix NULL deref in cleanup_bearer()

Current release - regressions:

 - ip: fix warning about invalid return from in ip_route_input_rcu()

Current release - new code bugs:

 - udp: fix L4 hash after reconnect

 - eth: lan969x: fix cyclic dependency between modules

 - eth: bnxt_en: fix potential crash when dumping FW log coredump

Previous releases - regressions:

 - wifi: mac80211:
   - fix a queue stall in certain cases of channel switch
   - wake the queues in case of failure in resume

 - splice: do not checksum AF_UNIX sockets

 - virtio_net: fix BUG()s in BQL support due to incorrect accounting
   of purged packets during interface stop

 - eth: stmmac: fix TSO DMA API mis-usage causing oops

 - eth: bnxt_en: fixes for HW GRO: GSO type on 5750X chips and
   oops due to incorrect aggregation ID mask on 5760X chips

Previous releases - always broken:

 - Bluetooth: improve setsockopt() handling of malformed user input

 - eth: ocelot: fix PTP timestamping in presence of packet loss

 - ptp: kvm: x86: avoid "fail to initialize ptp_kvm" when simply
   not supported

Signed-off-by: Jakub Kicinski <kuba@kernel.org>

 
6 Dec 2024: bpf for v6.13-rc2 [+ + +]
BPF fixes:

- Fix several issues for BPF LPM trie map which were found by
  syzbot and during addition of new test cases (Hou Tao)

- Fix a missing process_iter_arg register type check in the
  BPF verifier (Kumar Kartikeya Dwivedi, Tao Lyu)

- Fix several correctness gaps in the BPF verifier when
  interacting with the BPF stack without CAP_PERFMON
  (Kumar Kartikeya Dwivedi, Eduard Zingerman, Tao Lyu)

- Fix OOB BPF map writes when deleting elements for the case of
  xsk map as well as devmap (Maciej Fijalkowski)

- Fix xsk sockets to always clear DMA mapping information when
  unmapping the pool (Larysa Zaremba)

- Fix sk_mem_uncharge logic in tcp_bpf_sendmsg to only uncharge
  after sent bytes have been finalized (Zijian Zhang)

- Fix BPF sockmap with vsocks which was missing a queue check
  in poll and sockmap cleanup on close (Michal Luczaj)

- Fix tools infra to override makefile ARCH variable if defined
  but empty, which addresses cross-building tools. (Björn Töpel)

- Fix two resolve_btfids build warnings on unresolved bpf_lsm
  symbols (Thomas Weißschuh)

- Fix a NULL pointer dereference in bpftool (Amir Mohammadi)

- Fix BPF selftests to check for CONFIG_PREEMPTION instead of
  CONFIG_PREEMPT (Sebastian Andrzej Siewior)

Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>

 
5 Dec 2024: Networking for v6.13-rc2 [+ + +]
Including fixes from can and netfilter.

Current release - regressions:

  - rtnetlink: fix double call of rtnl_link_get_net_ifla()

  - tcp: populate XPS related fields of timewait sockets

  - ethtool: fix access to uninitialized fields in set RXNFC command

  - selinux: use sk_to_full_sk() in selinux_ip_output()

Current release - new code bugs:

  - net: make napi_hash_lock irq safe

  - eth: bnxt_en: support header page pool in queue API

  - eth: ice: fix NULL pointer dereference in switchdev

Previous releases - regressions:

  - core: fix icmp host relookup triggering ip_rt_bug

  - ipv6:
    - avoid possible NULL deref in modify_prefix_route()
    - release expired exception dst cached in socket

  - smc: fix LGR and link use-after-free issue

  - hsr: avoid potential out-of-bound access in fill_frame_info()

  - can: hi311x: fix potential use-after-free

  - eth: ice: fix VLAN pruning in switchdev mode

Previous releases - always broken:

  - netfilter:
    - ipset: hold module reference while requesting a module
    - nft_inner: incorrect percpu area handling under softirq

  - can: j1939: fix skb reference counting

  - eth: mlxsw: use correct key block on Spectrum-4

  - eth: mlx5: fix memory leak in mlx5hws_definer_calc_layout

Signed-off-by: Paolo Abeni <pabeni@redhat.com>

 
04 Dec 2024: platform-drivers-x86 for v6.13-2 [+ + +]
Here is a platform-drivers-x86 fixes PR for v6.13.

Fixes:

 - asus-nb-wmi: Silence unknown event warning when charger is plugged in

 - asus-wmi: Handle return code variations during thermal policy writing
   graciously

 - samsung-laptop: Correct module description

Regards, i.


platform-drivers-x86 for v6.13-2

Fixes:

 - asus-nb-wmi: Silence unknown event warning when charger is plugged in

 - asus-wmi: Handle return code variations during thermal policy writing
   graciously

 - samsung-laptop: Correct module description

The following is an automated shortlog grouped by driver:

asus-nb-wmi:
 -  Ignore unknown event 0xCF

asus-wmi:
 -  Ignore return value when writing thermal policy

samsung-laptop:
 -  Match MODULE_DESCRIPTION() to functionality

 
30 Nov 2024: turbostat 2024.11.30 for Linux 6.13-merge [+ + +]

thanks!
Len Brown, Intel Open Source Technology Center

turbostat version 2024.11.30

since 2024.07.26:

assorted minor bug fixes
assorted platform specific tweaks
initial RAPL PSYS (SysWatt) support

30 Nov 2024: TTY / Serial driver changes for 6.13-rc1 - try 2 [+ + +]
Second try, the offending commit that Geert found has now been reverted,
so all should be well.

TTY / Serial driver updates for 6.13-rc1

Here is a small set of tty and serial driver updates for 6.13-rc1.
Nothing major at all this time, only some small changes:
  - few device tree binding updates
  - 8250_exar serial driver updates
  - imx serial driver updates
  - sprd_serial driver updates
  - other tiny serial driver updates, full details in the shortlog

All of these have been in linux-next for a while with one reported
issue, but that commit has now been reverted.

Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

 
29 Nov 2024: Second batch of KVM changes for Linux 6.13 [+ + +]
ARM:

* Fixes.

RISC-V:

* Svade and Svadu (accessed and dirty bit) extension support for host and
  guest.  This was acked on the mailing list by the RISC-V maintainer, see
  https://patchew.org/linux/20240726084931.28924-1-yongxuan.wang@sifive.com/.

 
30 Nov 2024: JFFS, UBI and UBIFS changes for v6.13-rc1 [+ + +]
This pull request contains updates for JFFS2, UBI and UBIFS:

JFFS2:
- Bug fix for rtime compression
- Various cleanups

UBI:
- Cleanups for fastmap and wear leveling

UBIFS:
- Add support for FS_IOC_GETFSSYSFSPATH
- Remove dead ioctl code
- Fix UAF in ubifs_tnc_end_commit()

30 Nov 2024: UML changes for v6.13-rc1 [+ + +]
This pull request contains the following changes for UML:

- Lots of cleanups, mostly from Benjamin Berg and Tiwei Bie
 - Removal of unused code
 - Fix for sparse warnings
 - Cleanup around stub_exe()

 
29 Nov 2024: RTC for 6.13 [+ + +]
Here is the RTC subsystem pull request for 6.12. There are 3 new drivers
this cycle which are the bulk of the additions. Alarm support for
isl12022 is also a fairly large change.

I'm carrying an m68k change that we decide was worth having in this
release alongside the corresponding m48t59 change. It introduces a
somewhat trivial conflict as code has been added after code the patch is
removing. It has been solved properly in linux-next.


RTC for 6.13

New drivers:
 - Amlogic A4 and A5 RTC
 - Marvell 88PM886 PMIC RTC
 - Renesas RTCA-3 for Renesas RZ/G3S

Drivers:
 - ab-eoz9: fix temperature and alarm support
 - cmos: improve locking behaviour
 - isl12022: add alarm support
 - m48t59: improve epoch handling
 - mt6359: add range
 - rzn1: fix BCD conversions and simplify driver

 
30 Nov 2024: Kbuild updates for v6.13-rc1 [+ + +]


You will see conflicts in two files.

[1] arch/powerpc/Makefile

This is caused by:
 214c0eea43b2 ("kbuild: add $(objtree)/ prefix to some in-kernel build
artifacts")

The resolution is provided by:
https://lore.kernel.org/all/20241113095228.4ac96776@canb.auug.org.au/


[2] tools/objtool/check.c

This is caused by:
 315ad8780a12 ("kbuild: Add AutoFDO support for Clang build")
 d5dc95836147 ("kbuild: Add Propeller configuration for kernel build")

The resolution is provided by:
https://lore.kernel.org/all/20241112130136.52ffc457@canb.auug.org.au/



Thank you.



Kbuild updates for v6.13

 - Add generic support for built-in boot DTB files

 - Enable TAB cycling for dialog buttons in nconfig

 - Fix issues in streamline_config.pl

 - Refactor Kconfig

 - Add support for Clang's AutoFDO (Automatic Feedback-Directed
   Optimization)

 - Add support for Clang's Propeller, a profile-guided optimization.

 - Change the working directory to the external module directory for M=3D
   builds

 - Support building external modules in a separate output directory

 - Enable objtool for *.mod.o and additional kernel objects

 - Use lz4 instead of deprecated lz4c

 - Work around a performance issue with "git describe"

 - Refactor modpost

 
29 Nov 2024: Please pull NFS client changes for 6.13 [+ + +]
SGkgTGludXMsDQoNClRoZSBmb2xsb3dpbmcgY2hhbmdlcyBzaW5jZSBjb21taXQgZmY3YWZhZWNh
MWExNWZiZWFhMmM0Nzk1ZWU4MDZjMDY2N2JkNzdiMjoNCg0KICBNZXJnZSB0YWcgJ25mcy1mb3It
Ni4xMi0zJyBvZiBnaXQ6Ly9naXQubGludXgtbmZzLm9yZy9wcm9qZWN0cy9hbm5hL2xpbnV4LW5m
cyAoMjAyNC0xMS0wNiAxMzowOToyMiAtMTAwMCkNCg0KYXJlIGF2YWlsYWJsZSBpbiB0aGUgR2l0
IHJlcG9zaXRvcnkgYXQ6DQoNCiAgZ2l0Oi8vZ2l0LmxpbnV4LW5mcy5vcmcvcHJvamVjdHMvdHJv
bmRteS9saW51eC1uZnMuZ2l0IHRhZ3MvbmZzLWZvci02LjEzLTENCg0KZm9yIHlvdSB0byBmZXRj
aCBjaGFuZ2VzIHVwIHRvIDM4YTEyNWIzMTUwNGY5MWJmNmZkZDNjZmMzYTNlOWE3MjFlNmM5N2E6
DQoNCiAgZnMvbmZzL2lvOiBtYWtlIG5mc19zdGFydF9pb18qKCkga2lsbGFibGUgKDIwMjQtMTEt
MjggMTI6NTU6MzMgLTA1MDApDQoNCg0KQ2hhbmdlcyBzaW5jZSB2MTogUmVtb3ZlZCB0aGUgcGF0
Y2ggIm5mczogcGFzcyBmbGFncyB0byBzZWNvbmQgc3VwZXJibG9jayINCmFzIGFncmVlZC4NCg0K
Q2hlZXJzLA0KICBUcm9uZA0KDQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQpORlMgY2xpZW50IHVwZGF0ZXMgZm9yIExpbnV4
IDYuMTMNCg0KSGlnaGxpZ2h0cyBpbmNsdWRlOg0KDQpCdWdmaXhlczoNCi0gTkZTdjQuMDogRml4
IGEgdXNlLWFmdGVyLWZyZWUgcHJvYmxlbSBpbiBvcGVuKCkNCi0gbmZzL2xvY2FsaW86IGZpeCBm
b3IgYSBtZW1vcnkgY29ycnVwdGlvbiBpbiBuZnNfbG9jYWxfcmVhZF9kb25lDQotIFJldmVydCAi
bmZzOiBkb24ndCByZXVzZSBwYXJ0aWFsbHkgY29tcGxldGVkIHJlcXVlc3RzIGluIG5mc19sb2Nr
X2FuZF9qb2luX3JlcXVlc3RzIg0KLSBuZnN2NDogaWdub3JlIFNCX1JET05MWSB3aGVuIG1vdW50
aW5nIG5mcw0KLSBzdW5ycGM6IGNsZWFyIFhQUlRfU09DS19VUERfVElNRU9VVCB3aGVuIHJlc2V0
aW5nIHRoZSB0cmFuc3BvcnQNCi0gU1VOUlBDOiB0aW1lb3V0IGFuZCBjYW5jZWwgVExTIGhhbmRz
aGFrZSB3aXRoIC1FVElNRURPVVQNCi0gc3VucnBjOiBmaXggb25lIFVBRiBpc3N1ZSBjYXVzZWQg
Ynkgc3VucnBjIGtlcm5lbCB0Y3Agc29ja2V0DQotIHBORlMvYmxvY2tsYXlvdXQ6IEZpeCBkZXZp
Y2UgcmVnaXN0cmF0aW9uIGlzc3Vlcw0KLSBTVU5SUEM6IEZpeCBhIGhhbmcgaW4gVExTIHNvY2tf
Y2xvc2UgaWYgc2tfd3JpdGVfcGVuZGluZw0KDQpGZWF0dXJlcyBhbmQgY2xlYW51cHM6DQotIGxv
Y2FsaW8gY2xlYW51cHMgZnJvbSBNaWtlIFNuaXR6ZXINCi0gQ2xlYW4gdXAgcmVmY291bnRpbmcg
b24gdGhlIG5mcyB2ZXJzaW9uIG1vZHVsZXMNCi0gX19jb3VudGVkX2J5KCkgYW5ub3RhdGlvbnMN
Ci0gbmZzOiBtYWtlIHByb2Nlc3NlcyB0aGF0IGFyZSB3YWl0aW5nIGZvciBhbiBJL08gbG9jayBr
aWxsYWJsZQ0KDQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tDQpBbm5hIFNjaHVtYWtlciAoNSk6DQogICAgICBORlM6IENsZWFu
IHVwIGxvY2tpbmcgdGhlIG5mc192ZXJzaW9ucyBsaXN0DQogICAgICBORlM6IENvbnZlcnQgdGhl
IE5GUyBtb2R1bGUgbGlzdCBpbnRvIGFuIGFycmF5DQogICAgICBORlM6IFJlbmFtZSBnZXRfbmZz
X3ZlcnNpb24oKSAtPiBmaW5kX25mc192ZXJzaW9uKCkNCiAgICAgIE5GUzogQ2xlYW4gdXAgZmlu
ZF9uZnNfdmVyc2lvbigpDQogICAgICBORlM6IEltcGxlbWVudCBnZXRfbmZzX3ZlcnNpb24oKQ0K
DQpCZW5qYW1pbiBDb2RkaW5ndG9uICg0KToNCiAgICAgIFNVTlJQQzogRml4IGEgaGFuZyBpbiBU
TFMgc29ja19jbG9zZSBpZiBza193cml0ZV9wZW5kaW5nDQogICAgICBTVU5SUEM6IHRpbWVvdXQg
YW5kIGNhbmNlbCBUTFMgaGFuZHNoYWtlIHdpdGggLUVUSU1FRE9VVA0KICAgICAgbmZzL2Jsb2Nr
bGF5b3V0OiBEb24ndCBhdHRlbXB0IHVucmVnaXN0ZXIgZm9yIGludmFsaWQgYmxvY2sgZGV2aWNl
DQogICAgICBuZnMvYmxvY2tsYXlvdXQ6IExpbWl0IHJlcGVhdCBkZXZpY2UgcmVnaXN0cmF0aW9u
IG9uIGZhaWx1cmUNCg0KSmVmZiBMYXl0b24gKDEpOg0KICAgICAgc3VucnBjOiByZW1vdmUgbmV3
bGluZXMgZnJvbSB0cmFjZXBvaW50cw0KDQpMaSBMaW5nZmVuZyAoMSk6DQogICAgICBuZnM6IGln
bm9yZSBTQl9SRE9OTFkgd2hlbiBtb3VudGluZyBuZnMNCg0KTGl1IEppYW4gKDIpOg0KICAgICAg
c3VucnBjOiBjbGVhciBYUFJUX1NPQ0tfVVBEX1RJTUVPVVQgd2hlbiByZXNldCB0cmFuc3BvcnQN
CiAgICAgIHN1bnJwYzogZml4IG9uZSBVQUYgaXNzdWUgY2F1c2VkIGJ5IHN1bnJwYyBrZXJuZWwg
dGNwIHNvY2tldA0KDQpNYXggS2VsbGVybWFubiAoMSk6DQogICAgICBmcy9uZnMvaW86IG1ha2Ug
bmZzX3N0YXJ0X2lvXyooKSBraWxsYWJsZQ0KDQpNaWtlIFNuaXR6ZXIgKDQpOg0KICAgICAgbmZz
L2xvY2FsaW86IHJlbW92ZSByZWR1bmRhbnQgc3VpZC9zZ2lkIGhhbmRsaW5nDQogICAgICBuZnMv
bG9jYWxpbzogZWxpbWluYXRlIHVubmVjZXNzYXJ5IGtyZWYgaW4gbmZzX2xvY2FsX2ZzeW5jX2N0
eA0KICAgICAgbmZzL2xvY2FsaW86IHJlbW92ZSBleHRyYSBpbmRpcmVjdCBuZnNfdG8gY2FsbCB0
byBjaGVjayB7cmVhZCx3cml0ZX1faXRlcg0KICAgICAgbmZzL2xvY2FsaW86IGVsaW1pbmF0ZSBu
ZWVkIGZvciBuZnNfbG9jYWxfZnN5bmNfd29yayBmb3J3YXJkIGRlY2xhcmF0aW9uDQoNCk5laWxC
cm93biAoMSk6DQogICAgICBuZnMvbG9jYWxpbzogbXVzdCBjbGVhciByZXMucmVwbGVuIGluIG5m
c19sb2NhbF9yZWFkX2RvbmUNCg0KVGhvcnN0ZW4gQmx1bSAoMSk6DQogICAgICBuZnM6IEFubm90
YXRlIHN0cnVjdCBwbmZzX2NvbW1pdF9hcnJheSB3aXRoIF9fY291bnRlZF9ieSgpDQoNClRyb25k
IE15a2xlYnVzdCAoNCk6DQogICAgICBORlN2NC4wOiBGaXggdGhlIHdha2UgdXAgb2YgdGhlIG5l
eHQgd2FpdGVyIGluIG5mc19yZWxlYXNlX3NlcWlkKCkNCiAgICAgIE5GU3Y0LjA6IEZpeCBhIHVz
ZS1hZnRlci1mcmVlIHByb2JsZW0gaW4gdGhlIGFzeW5jaHJvbm91cyBvcGVuKCkNCiAgICAgIFJl
dmVydCAiZnM6IG5mczogZml4IG1pc3NpbmcgcmVmY250IGJ5IHJlcGxhY2luZyBmb2xpb19zZXRf
cHJpdmF0ZSBieSBmb2xpb19hdHRhY2hfcHJpdmF0ZSINCiAgICAgIFJldmVydCAibmZzOiBkb24n
dCByZXVzZSBwYXJ0aWFsbHkgY29tcGxldGVkIHJlcXVlc3RzIGluIG5mc19sb2NrX2FuZF9qb2lu
X3JlcXVlc3RzIg0KDQogZnMvbmZzL2Jsb2NrbGF5b3V0L2Jsb2NrbGF5b3V0LmMgfCAxNSArKysr
KystDQogZnMvbmZzL2Jsb2NrbGF5b3V0L2Rldi5jICAgICAgICAgfCAgNiArLS0NCiBmcy9uZnMv
Y2xpZW50LmMgICAgICAgICAgICAgICAgICB8IDY0ICsrKysrKysrKysrKysrLS0tLS0tLS0tLS0t
LQ0KIGZzL25mcy9kaXJlY3QuYyAgICAgICAgICAgICAgICAgIHwgMjEgKysrKysrKy0tDQogZnMv
bmZzL2ZpbGUuYyAgICAgICAgICAgICAgICAgICAgfCAxNCArKysrLS0NCiBmcy9uZnMvZnNfY29u
dGV4dC5jICAgICAgICAgICAgICB8ICA2ICstLQ0KIGZzL25mcy9pbnRlcm5hbC5oICAgICAgICAg
ICAgICAgIHwgIDkgKystLQ0KIGZzL25mcy9pby5jICAgICAgICAgICAgICAgICAgICAgIHwgNDQg
KysrKysrKysrKysrKy0tLS0tDQogZnMvbmZzL2xvY2FsaW8uYyAgICAgICAgICAgICAgICAgfCA5
NiArKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQogZnMvbmZzL25hbWVz
cGFjZS5jICAgICAgICAgICAgICAgfCAgMiArLQ0KIGZzL25mcy9uZnMuaCAgICAgICAgICAgICAg
ICAgICAgIHwgIDQgKy0NCiBmcy9uZnMvbmZzNHByb2MuYyAgICAgICAgICAgICAgICB8ICA4ICsr
LS0NCiBmcy9uZnMvbmZzNHN0YXRlLmMgICAgICAgICAgICAgICB8IDEwICsrLS0tDQogZnMvbmZz
L3dyaXRlLmMgICAgICAgICAgICAgICAgICAgfCA1NSArKysrKysrKysrKysrKy0tLS0tLS0tLQ0K
IGluY2x1ZGUvbGludXgvbmZzX3hkci5oICAgICAgICAgIHwgIDIgKy0NCiBpbmNsdWRlL3RyYWNl
L2V2ZW50cy9zdW5ycGMuaCAgICB8ICA0ICstDQogbmV0L3N1bnJwYy9zdmNzb2NrLmMgICAgICAg
ICAgICAgfCAgNCArKw0KIG5ldC9zdW5ycGMveHBydHNvY2suYyAgICAgICAgICAgIHwgMTggKysr
KystLS0NCiAxOCBmaWxlcyBjaGFuZ2VkLCAyMjkgaW5zZXJ0aW9ucygrKSwgMTUzIGRlbGV0aW9u
cygtKQ0KDQotLSANClRyb25kIE15a2xlYnVzdA0KTGludXggTkZTIGNsaWVudCBtYWludGFpbmVy
LCBIYW1tZXJzcGFjZQ0KdHJvbmQubXlrbGVidXN0QGhhbW1lcnNwYWNlLmNvbQ0KDQoNCg==
29 Nov 2024: more s390 updates for 6.13 merge window [+ + +]
please pull a couple more s390 updates for the 6.13 merge window.

Thanks,
Heiko

more s390 updates for 6.13 merge window

- Add swap entry for hugetlbfs support

- Add PTE_MARKER support for hugetlbs mappings; this fixes a regression
  (possible page fault loop) which was introduced when support for
  UFFDIO_POISON for hugetlbfs was added

- Add ARCH_HAS_PREEMPT_LAZY and PREEMPT_DYNAMIC support

- Mark IRQ entries in entry code, so that stack tracers can filter out the
  non-IRQ parts of stack traces. This fixes stack depot capacity limit
  warnings, since without filtering the number of unique stack traces is
  huge

- In PCI code fix leak of struct zpci_dev object, and fix potential double
  remove of hotplug slot

- Fix pagefault_disable() / pagefault_enable() unbalance in
  arch_stack_user_walk_common()

- A couple of inline assembly optimizations, more cmpxchg() to
  try_cmpxchg() conversions, and removal of usages of xchg() and cmpxchg()
  on one and two byte memory areas

- Various other small improvements and cleanups

29 Nov 2024: MIPS changes pt2 for v6.13 [+ + +]
- fix for loongson64 device tree
- add SPI nand to realtek device tree
- change clock tree for mobileye

29 Nov 2024: Char/Misc/IIO driver changes for 6.13-rc1 [+ + +]
Char/Misc/IIO/Whatever driver subsystem updates for 6.13-rc1

Here is the "big and hairy" char/misc/iio and other small driver
subsystem updates for 6.13-rc1.  Sorry for doing this at the end of the
merge window, conference and holiday travel got in the way on my side
(hence the 5am pull request emails...)

Loads of things in here, and even a fun merge conflict!
  - rust misc driver bindings and other rust changes to make misc
    drivers actually possible.  I think this is the tipping point,
    expect to see way more rust drivers going forward now that these
    bindings are present.  Next merge window hopefully we will have pci
    and platform drivers working, which will fully enable almost all
    driver subsystems to start accepting (or at least getting) rust
    drivers.  This is the end result of a lot of work from a lot of
    people, congrats to all of them for getting this far, you've proved
    many of us wrong in the best way possible, working code :)
  - IIO driver updates, too many to list individually, that subsystem
    keeps growing and growing...
  - Interconnect driver updates
  - nvmem driver updates
  - pwm driver updates
  - platform_driver::remove() fixups, loads of them
  - counter driver updates
  - misc driver updates (keba?)
  - binder driver updates and fixes
  - loads of other small char/misc/etc driver updates and additions,
    full details in the shortlog.

Note, there is a semi-hairy rust merge conflict when pulling this.  The
resolution has been in linux-next for a while and can be seen here:
https://lore.kernel.org/all/20241111173459.2646d4af@canb.auug.org.au/

All of these have been in linux-next for a while, with no other reported
issues other than that merge conflict.

Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

29 Nov 2024: Driver core changes for 6.13-rc1 [+ + +]
Driver core changes for 6.13-rc1

Here is a small set of driver core changes for 6.13-rc1.

Nothing major for this merge cycle, except for the 2 simple merge
conflicts are here just to make life interesting.

Included in here are:
  - sysfs core changes and preparations for more sysfs api cleanups that
    can come through all driver trees after -rc1 is out
  - fw_devlink fixes based on many reports and debugging sessions
  - list_for_each_reverse() removal, no one was using it!
  - last-minute seq_printf() format string bug found and fixed in many
    drivers all at once.
  - minor bugfixes and changes full details in the shortlog

As mentioned above, there is 2 merge conflicts with your tree, one is
where the file is removed (easy enough to resolve), the second is a
build time error, that has been found in linux-next and the fix can be
seen here:
https://lore.kernel.org/r/20241107212645.41252436@canb.auug.org.au

Other than that, the changes here have been in linux-next with no other
reported issues.

Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

29 Nov 2024: Staging driver changes for 6.13-rc1 [+ + +]
Staging driver changes for 6.13-rc1

Here is the big set of staging driver changes for 6.13-rc1.

Lots of changes this merge cycle, drivers removed and drivers added.
Highlights include:
  - removals of the following staging drivers due to no forward progress
    and no one having either the hardware or the time/energy to deal
    with them anymore:
      - fieldbus
      - gdm724x
      - olpc_dcon
      - rtl8712
      - rts5208
      - vt6655
      - vt6656
    If anyone has this hardware and wants to work on the drivers, it can
    be an easy revert to get them back.
 - addition of the gpib driver subsystem.  Lots of drivers for
   really old and semi-old interfaces to lab equipments.  We expect lots
   of churn in these drivers as they get cleaned up to "working" order.
   These were added at the request of a user and the maintainer/author
   of them is helping out with the effort
 - loads and loads of tiny coding style cleanups for almost all staging
   drivers.  Too many to list, see the shortlog for details.

Note, this pull request contains a portion of the wireless tree, as the
removal of some of the staging wifi drivers came in through there to
coordinate things.  These should already be in your tree already, so the
diffstat will (and should) look different when you do your merge.

All of these have been in linux-next for a very long time with no
reported issues.

Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

29 Nov 2024: TTY / Serial driver changes for 6.13-rc1 [+ + +]
TTY / Serial driver updates for 6.13-rc1

Here is a small set of tty and serial driver updates for 6.13-rc1.
Nothing major at all this time, only some small changes:
  - few device tree binding updates
  - 8250_exar serial driver updates
  - imx serial driver updates
  - sprd_serial driver updates
  - other tiny serial driver updates, full details in the shortlog

All of these have been in linux-next for a while with no reported
issues.

Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

29 Nov 2024: USB / Thunderbolt changes for 6.13-rc1 [+ + +]
USB / Thunderbolt (USB4) changes for 6.13-rc1

Here is the big set of USB and Thunderbolt changes for 6.13-rc1.

Overall, a pretty slow development cycle, the majority of the work going
into the debugfs interface for the thunderbolt (i.e. USB4) code, to help
with debugging the myrad ways that hardware vendors get their interfaces
messed up.  Other than that, here's the highlights:
  - thunderbolt changes and additions to debugfs interfaces
  - lots of device tree updates for new and old hardware
  - UVC configfs gadget updates and new apis for features
  - xhci driver updates and fixes
  - dwc3 driver updates and fixes
  - typec driver updates and fixes
  - lots of other small updates and fixes, full details in the shortlog

All of these have been in linux-next for a while with no reported
problems.

Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

 
28 Nov 2024: Networking for v6.13-rc1 - attempt II [+ + +]
The only difference WRT the first attempt is the fixup for the build
issue reported by Sasha. I'm very sorry for the additional noise.

Including fixes from bluetooth.

Current release - regressions:

  - rtnetlink: fix rtnl_dump_ifinfo() error path

  - bluetooth: remove the redundant sco_conn_put

Previous releases - regressions:

  - netlink: fix false positive warning in extack during dumps

  - sched: sch_fq: don't follow the fast path if Tx is behind now

  - ipv6: delete temporary address if mngtmpaddr is removed or unmanaged

  - tcp: fix use-after-free of nreq in reqsk_timer_handler().

  - bluetooth: fix slab-use-after-free Read in set_powered_sync

  - l2tp: fix warning in l2tp_exit_net found

  - eth: bnxt_en: fix receive ring space parameters when XDP is active

  - eth: lan78xx: fix double free issue with interrupt buffer allocation

  - eth: tg3: set coherent DMA mask bits to 31 for BCM57766 chipsets

Previous releases - always broken:

  - ipmr: fix tables suspicious RCU usage

  - iucv: MSG_PEEK causes memory leak in iucv_sock_destruct()

  - eth: octeontx2-af: fix low network performance

  - eth: stmmac: dwmac-socfpga: set RX watchdog interrupt as broken

  - eth: rtase: correct the speed for RTL907XD-V1

Misc:

  - some documentation fixup

Signed-off-by: Paolo Abeni <pabeni@redhat.com>

28 Nov 2024: Networking for v6.13-rc1 [+ + +]
Very calm week, thanks to US holidays.

Including fixes from bluetooth.

Current release - regressions:

  - rtnetlink: fix rtnl_dump_ifinfo() error path

  - bluetooth: remove the redundant sco_conn_put

Previous releases - regressions:

  - netlink: fix false positive warning in extack during dumps

  - sched: sch_fq: don't follow the fast path if Tx is behind now

  - ipv6: delete temporary address if mngtmpaddr is removed or unmanaged

  - tcp: fix use-after-free of nreq in reqsk_timer_handler().

  - bluetooth: fix slab-use-after-free Read in set_powered_sync

  - l2tp: fix warning in l2tp_exit_net found

  - eth: bnxt_en: fix receive ring space parameters when XDP is active

  - eth: lan78xx: fix double free issue with interrupt buffer allocation

  - eth: tg3: set coherent DMA mask bits to 31 for BCM57766 chipsets

Previous releases - always broken:

  - ipmr: fix tables suspicious RCU usage

  - iucv: MSG_PEEK causes memory leak in iucv_sock_destruct()

  - eth: octeontx2-af: fix low network performance

  - eth: stmmac: dwmac-socfpga: set RX watchdog interrupt as broken

  - eth: rtase: correct the speed for RTL907XD-V1

Misc:

  - some documentation fixup

Signed-off-by: Paolo Abeni <pabeni@redhat.com>

28 Nov 2024: Please pull NFS client changes for 6.13 [+ + +]
SGkgTGludXMsDQoNClRoZSBmb2xsb3dpbmcgY2hhbmdlcyBzaW5jZSBjb21taXQgZmY3YWZhZWNh
MWExNWZiZWFhMmM0Nzk1ZWU4MDZjMDY2N2JkNzdiMjoNCg0KICBNZXJnZSB0YWcgJ25mcy1mb3It
Ni4xMi0zJyBvZiBnaXQ6Ly9naXQubGludXgtbmZzLm9yZy9wcm9qZWN0cy9hbm5hL2xpbnV4LW5m
cyAoMjAyNC0xMS0wNiAxMzowOToyMiAtMTAwMCkNCg0KYXJlIGF2YWlsYWJsZSBpbiB0aGUgR2l0
IHJlcG9zaXRvcnkgYXQ6DQoNCiAgZ2l0Oi8vZ2l0LmxpbnV4LW5mcy5vcmcvcHJvamVjdHMvdHJv
bmRteS9saW51eC1uZnMuZ2l0IHRhZ3MvbmZzLWZvci02LjEzLTENCg0KZm9yIHlvdSB0byBmZXRj
aCBjaGFuZ2VzIHVwIHRvIDIwZmRlNmMzNGQ4ZTU2YWQ2YTA4Y2JkYTE5MzQyNzY5Y2FlNmE4ZWY6
DQoNCiAgZnMvbmZzL2lvOiBtYWtlIG5mc19zdGFydF9pb18qKCkga2lsbGFibGUgKDIwMjQtMTEt
MjIgMTA6NDU6MjggLTA1MDApDQoNCkhhcHB5IFRoYW5rc2dpdmluZyENCg0KVGhhbmtzDQogIFRy
b25kDQoNCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0NCk5GUyBjbGllbnQgdXBkYXRlcyBmb3IgTGludXggNi4xMw0KDQpIaWdo
bGlnaHRzIGluY2x1ZGU6DQoNCkJ1Z2ZpeGVzOg0KLSBORlN2NC4wOiBGaXggYSB1c2UtYWZ0ZXIt
ZnJlZSBwcm9ibGVtIGluIG9wZW4oKQ0KLSBuZnMvbG9jYWxpbzogZml4IGZvciBhIG1lbW9yeSBj
b3JydXB0aW9uIGluIG5mc19sb2NhbF9yZWFkX2RvbmUNCi0gUmV2ZXJ0ICJuZnM6IGRvbid0IHJl
dXNlIHBhcnRpYWxseSBjb21wbGV0ZWQgcmVxdWVzdHMgaW4gbmZzX2xvY2tfYW5kX2pvaW5fcmVx
dWVzdHMiDQotIG5mc3Y0OiBQcm9wYWdhdGUgbW91bnQgZmxhZ3MgdG8gdGhlIHN1Ym1vdW50ZWQg
c3VwZXJibG9ja3MNCi0gbmZzdjQ6IGlnbm9yZSBTQl9SRE9OTFkgd2hlbiBtb3VudGluZyBuZnMN
Ci0gc3VucnBjOiBjbGVhciBYUFJUX1NPQ0tfVVBEX1RJTUVPVVQgd2hlbiByZXNldGluZyB0aGUg
dHJhbnNwb3J0DQotIFNVTlJQQzogdGltZW91dCBhbmQgY2FuY2VsIFRMUyBoYW5kc2hha2Ugd2l0
aCAtRVRJTUVET1VUDQotIHN1bnJwYzogZml4IG9uZSBVQUYgaXNzdWUgY2F1c2VkIGJ5IHN1bnJw
YyBrZXJuZWwgdGNwIHNvY2tldA0KLSBwTkZTL2Jsb2NrbGF5b3V0OiBGaXggZGV2aWNlIHJlZ2lz
dHJhdGlvbiBpc3N1ZXMNCi0gU1VOUlBDOiBGaXggYSBoYW5nIGluIFRMUyBzb2NrX2Nsb3NlIGlm
IHNrX3dyaXRlX3BlbmRpbmcNCg0KRmVhdHVyZXMgYW5kIGNsZWFudXBzOg0KLSBsb2NhbGlvIGNs
ZWFudXBzIGZyb20gTWlrZSBTbml0emVyDQotIENsZWFuIHVwIHJlZmNvdW50aW5nIG9uIHRoZSBu
ZnMgdmVyc2lvbiBtb2R1bGVzDQotIF9fY291bnRlZF9ieSgpIGFubm90YXRpb25zDQotIG5mczog
bWFrZSBwcm9jZXNzZXMgdGhhdCBhcmUgd2FpdGluZyBmb3IgYW4gSS9PIGxvY2sga2lsbGFibGUN
Cg0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLQ0KQW5uYSBTY2h1bWFrZXIgKDUpOg0KICAgICAgTkZTOiBDbGVhbiB1cCBsb2Nr
aW5nIHRoZSBuZnNfdmVyc2lvbnMgbGlzdA0KICAgICAgTkZTOiBDb252ZXJ0IHRoZSBORlMgbW9k
dWxlIGxpc3QgaW50byBhbiBhcnJheQ0KICAgICAgTkZTOiBSZW5hbWUgZ2V0X25mc192ZXJzaW9u
KCkgLT4gZmluZF9uZnNfdmVyc2lvbigpDQogICAgICBORlM6IENsZWFuIHVwIGZpbmRfbmZzX3Zl
cnNpb24oKQ0KICAgICAgTkZTOiBJbXBsZW1lbnQgZ2V0X25mc192ZXJzaW9uKCkNCg0KQmVuamFt
aW4gQ29kZGluZ3RvbiAoNCk6DQogICAgICBTVU5SUEM6IEZpeCBhIGhhbmcgaW4gVExTIHNvY2tf
Y2xvc2UgaWYgc2tfd3JpdGVfcGVuZGluZw0KICAgICAgU1VOUlBDOiB0aW1lb3V0IGFuZCBjYW5j
ZWwgVExTIGhhbmRzaGFrZSB3aXRoIC1FVElNRURPVVQNCiAgICAgIG5mcy9ibG9ja2xheW91dDog
RG9uJ3QgYXR0ZW1wdCB1bnJlZ2lzdGVyIGZvciBpbnZhbGlkIGJsb2NrIGRldmljZQ0KICAgICAg
bmZzL2Jsb2NrbGF5b3V0OiBMaW1pdCByZXBlYXQgZGV2aWNlIHJlZ2lzdHJhdGlvbiBvbiBmYWls
dXJlDQoNCkplZmYgTGF5dG9uICgxKToNCiAgICAgIHN1bnJwYzogcmVtb3ZlIG5ld2xpbmVzIGZy
b20gdHJhY2Vwb2ludHMNCg0KTGkgTGluZ2ZlbmcgKDIpOg0KICAgICAgbmZzOiBwYXNzIGZsYWdz
IHRvIHNlY29uZCBzdXBlcmJsb2NrDQogICAgICBuZnM6IGlnbm9yZSBTQl9SRE9OTFkgd2hlbiBt
b3VudGluZyBuZnMNCg0KTGl1IEppYW4gKDIpOg0KICAgICAgc3VucnBjOiBjbGVhciBYUFJUX1NP
Q0tfVVBEX1RJTUVPVVQgd2hlbiByZXNldCB0cmFuc3BvcnQNCiAgICAgIHN1bnJwYzogZml4IG9u
ZSBVQUYgaXNzdWUgY2F1c2VkIGJ5IHN1bnJwYyBrZXJuZWwgdGNwIHNvY2tldA0KDQpNYXggS2Vs
bGVybWFubiAoMSk6DQogICAgICBmcy9uZnMvaW86IG1ha2UgbmZzX3N0YXJ0X2lvXyooKSBraWxs
YWJsZQ0KDQpNaWtlIFNuaXR6ZXIgKDQpOg0KICAgICAgbmZzL2xvY2FsaW86IHJlbW92ZSByZWR1
bmRhbnQgc3VpZC9zZ2lkIGhhbmRsaW5nDQogICAgICBuZnMvbG9jYWxpbzogZWxpbWluYXRlIHVu
bmVjZXNzYXJ5IGtyZWYgaW4gbmZzX2xvY2FsX2ZzeW5jX2N0eA0KICAgICAgbmZzL2xvY2FsaW86
IHJlbW92ZSBleHRyYSBpbmRpcmVjdCBuZnNfdG8gY2FsbCB0byBjaGVjayB7cmVhZCx3cml0ZX1f
aXRlcg0KICAgICAgbmZzL2xvY2FsaW86IGVsaW1pbmF0ZSBuZWVkIGZvciBuZnNfbG9jYWxfZnN5
bmNfd29yayBmb3J3YXJkIGRlY2xhcmF0aW9uDQoNCk5laWxCcm93biAoMSk6DQogICAgICBuZnMv
bG9jYWxpbzogbXVzdCBjbGVhciByZXMucmVwbGVuIGluIG5mc19sb2NhbF9yZWFkX2RvbmUNCg0K
VGhvcnN0ZW4gQmx1bSAoMSk6DQogICAgICBuZnM6IEFubm90YXRlIHN0cnVjdCBwbmZzX2NvbW1p
dF9hcnJheSB3aXRoIF9fY291bnRlZF9ieSgpDQoNClRyb25kIE15a2xlYnVzdCAoNCk6DQogICAg
ICBORlN2NC4wOiBGaXggdGhlIHdha2UgdXAgb2YgdGhlIG5leHQgd2FpdGVyIGluIG5mc19yZWxl
YXNlX3NlcWlkKCkNCiAgICAgIE5GU3Y0LjA6IEZpeCBhIHVzZS1hZnRlci1mcmVlIHByb2JsZW0g
aW4gdGhlIGFzeW5jaHJvbm91cyBvcGVuKCkNCiAgICAgIFJldmVydCAiZnM6IG5mczogZml4IG1p
c3NpbmcgcmVmY250IGJ5IHJlcGxhY2luZyBmb2xpb19zZXRfcHJpdmF0ZSBieSBmb2xpb19hdHRh
Y2hfcHJpdmF0ZSINCiAgICAgIFJldmVydCAibmZzOiBkb24ndCByZXVzZSBwYXJ0aWFsbHkgY29t
cGxldGVkIHJlcXVlc3RzIGluIG5mc19sb2NrX2FuZF9qb2luX3JlcXVlc3RzIg0KDQogZnMvbmZz
L2Jsb2NrbGF5b3V0L2Jsb2NrbGF5b3V0LmMgfCAxNSArKysrKystDQogZnMvbmZzL2Jsb2NrbGF5
b3V0L2Rldi5jICAgICAgICAgfCAgNiArLS0NCiBmcy9uZnMvY2xpZW50LmMgICAgICAgICAgICAg
ICAgICB8IDY0ICsrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLQ0KIGZzL25mcy9kaXJlY3QuYyAg
ICAgICAgICAgICAgICAgIHwgMjEgKysrKysrKy0tDQogZnMvbmZzL2ZpbGUuYyAgICAgICAgICAg
ICAgICAgICAgfCAxNCArKysrLS0NCiBmcy9uZnMvZnNfY29udGV4dC5jICAgICAgICAgICAgICB8
ICA2ICstLQ0KIGZzL25mcy9pbnRlcm5hbC5oICAgICAgICAgICAgICAgIHwgIDkgKystLQ0KIGZz
L25mcy9pby5jICAgICAgICAgICAgICAgICAgICAgIHwgNDQgKysrKysrKysrKysrKy0tLS0tDQog
ZnMvbmZzL2xvY2FsaW8uYyAgICAgICAgICAgICAgICAgfCA5NiArKysrKysrKysrKysrKysrKyst
LS0tLS0tLS0tLS0tLS0tLS0tLS0tDQogZnMvbmZzL25hbWVzcGFjZS5jICAgICAgICAgICAgICAg
fCAgMiArLQ0KIGZzL25mcy9uZnMuaCAgICAgICAgICAgICAgICAgICAgIHwgIDQgKy0NCiBmcy9u
ZnMvbmZzNHByb2MuYyAgICAgICAgICAgICAgICB8ICA4ICsrLS0NCiBmcy9uZnMvbmZzNHN0YXRl
LmMgICAgICAgICAgICAgICB8IDEwICsrLS0tDQogZnMvbmZzL25mczRzdXBlci5jICAgICAgICAg
ICAgICAgfCAgMSArDQogZnMvbmZzL3dyaXRlLmMgICAgICAgICAgICAgICAgICAgfCA1NSArKysr
KysrKysrKysrKy0tLS0tLS0tLQ0KIGluY2x1ZGUvbGludXgvbmZzX3hkci5oICAgICAgICAgIHwg
IDIgKy0NCiBpbmNsdWRlL3RyYWNlL2V2ZW50cy9zdW5ycGMuaCAgICB8ICA0ICstDQogbmV0L3N1
bnJwYy9zdmNzb2NrLmMgICAgICAgICAgICAgfCAgNCArKw0KIG5ldC9zdW5ycGMveHBydHNvY2su
YyAgICAgICAgICAgIHwgMTggKysrKystLS0NCiAxOSBmaWxlcyBjaGFuZ2VkLCAyMzAgaW5zZXJ0
aW9ucygrKSwgMTUzIGRlbGV0aW9ucygtKQ0KDQotLSANClRyb25kIE15a2xlYnVzdA0KTGludXgg
TkZTIGNsaWVudCBtYWludGFpbmVyLCBIYW1tZXJzcGFjZQ0KdHJvbmQubXlrbGVidXN0QGhhbW1l
cnNwYWNlLmNvbQ0KDQoNCg==
28 Nov 2024: sparc updates for v6.13 [+ + +]
This includes the following changes related to sparc64 for v6.13:

- Make sparc64 compilable with clang

- Replace one-element array with flexible array member

28 Nov 2024: exfat update for 6.13-rc1 [+ + +]
This is exfat update pull request for v6.13-rc1. I add description of

Thanks!

Description for this pull request:
- Handle it as the empty directory if the start cluster of stream entry
  is invalid.
- Valid size of steam entry cannot be greater than data size.
  If valid_size is invalid, Deal with data_size.
- Move Direct-IO alignment check to before extending the valid size.
- Fix uninit-value issue reported by syzbot.
- Optimize to find directory entry-set in write_inode, rename, unlink.

28 Nov 2024: power-supply changes for 6.13 [+ + +]
Subject: [GIT PULL] power-supply changes for 6.13
MIME-Version: 1.0

Hi Linus,

power supply and reset changes for the 6.13 series

 * power-supply core
  - replace power_supply_register_no_ws() with power_supply_register() and a
    new "no_wakeup_source" field in struct power_supply_config
  - constify battery info tables in the core and all drivers
  - switch back to remove callback for all platform drivers
  - allow power_supply_put() to be called from atomic context
  - mark attribute arrays read-only after init

 * power-supply drivers
  - new driver for TWL6030 and TWL6032
  - rk817: improve battery capacity calibration
  - misc. small cleanups and fixes

 
27 Nov 2024: AppArmor updates for 6.13 [+ + +]
This update is largely Bug fixes and cleanups. It has two small
developments, which I can drop and push to 6.14 if you would like. The
first increases the size of the policy state machine that can be
supported. At run time this is just swap out the next/check tables to
use u32, older policy is remains supported by mapping remapping the old
u16 to the u32 during policy load. The second is an improvement to age
the capability auditing cache.

These have all been in linux-next for more than two weeks, and I finally
managed to trace down and fix a bug in the regression tests that was causing
a failure, so these have been merge and regression tested against your tree
from this last weekend.

thanks
- john




* Features
   - extend next/check table to add support for 2^24 states to the
     state machine.
   - rework capability audit cache to use broader cred information
     instead of just the profile. Also add a time stamp so old
     entries can be aged out of the cache.

* Bug Fixes
   - fix 'Do simple duplicate message elimination' to clear previous
     state when updating in capability audit cache
   - Fix memory leak for aa_unpack_strdup()
   - properly handle cx/px lookup failure when in complain mode
   - allocate xmatch for nullpdb inside aa_alloc_null fixing a
     NULL ptr deref of tracking profiles in when in complain mode

* Cleanups
   - Remove everything being reported as deadcode
   - replace misleading 'scrubbing environment' phrase in debug print
   - Remove unnecessary NULL check before kvfree()
   - clean up duplicated parts of handle_onexec()
   - Use IS_ERR_OR_NULL() helper function
   - move new_profile declaration to top of block instead immediately
     after label to remove C23 extension warning

* Documentation
   - add comment to document capability.c:profile_capable ad ptr
     parameter can not be NULL
   - add comment to document first entry is in packed perms struct is
     reserved for future planned expansion.
   - Update LSM/apparmor.rst add blurb for
     CONFIG_DEFAULT_SECURITY_APPARMOR

27 Nov 2024: More ACPI updates for v6.13-rc1 [+ + +]

 acpi-6.13-rc1-2




 Merge tag 'acpi-6.13-rc1' of

to receive more ACPI updates for 6.13-rc1.

These add a common init function for arch-specific ACPI initialization,
clean up idle states initialization in the ACPI processor_idle driver
and update quirks:

 - Introduce acpi_arch_init() for architecture-specific ACPI subsystem
   initialization (Miao Wang).

 - Clean up Asus quirks in acpi_quirk_skip_dmi_ids[] and add a quirk
   to skip I2C clients on Acer Iconia One 8 A1-840 (Hans de Goede).

 - Make the ACPI processor_idle driver use acpi_idle_play_dead() for
   all idle states regardless of their types (Rafael Wysocki).

Thanks!



27 Nov 2024: Additional thermal control updates for v6.13-rc1 [+ + +]

 thermal-6.13-rc1-3


 Merge branch 'thermal-intel'


 Merge tag 'thermal-6.13-rc1-2' of

to receive additional thermal control updates for 6.13-rc1.

These fix a Power Allocator thermal governor issue reported recently,
update the Intel int3400 thermal driver and simplify DT data parsing in
the thermal control subsystem:

 - Add a NULL pointer check that was missed by recent modifications of
   the Power Allocator thermal governor (Rafael Wysocki).

 - Remove the data_vault attribute_group from int3400 because it is only
   used for exposing one binary file that can be exposed directly (Thomas
   Wei=C3=9Fschuh).

 - Prevent the current_uuid sysfs attribute in int3400 from mistakenly
   treating valid UUID values as invalid on some older systems (Srinivas
   Pandruvada).

 - Use the cleanup.h mechanics to simplify DT data parsing in the thermal
   core and some drivers (Krzysztof Kozlowski).

Thanks!



27 Nov 2024: Additional power management updates for v6.13-rc1 [+ + +]

 pm-6.13-rc1-3


 Merge branch 'pm-opp'


 Merge branch 'pm-cpuidle'

to receive additional power management updates for 6.13-rc1.

These update the OPP (Operating Performance Points) DT bindings for
ti-cpu (Dhruva Gole) and remove unused declarations from the OPP
header file (Zhang Zekun).

Thanks!



27 Nov 2024: tracing: More updates for 6.13 [+ + +]
[ Resend to include LKML ]


Tracing updates for 6.13:

- Add trace flag for NEED_RESCHED_LAZY

  Now that NEED_RESCHED_LAZY is upstream, add it to the status bits of the
  common_flags. This will now show when the NEED_RESCHED_LAZY flag is set that
  is used for debugging latency issues in the kernel via a trace.

- Remove leftover "__idx" variable when SRCU was removed from the tracepoint
  code

- Add rcu_tasks_trace guard

  To add a guard() around the tracepoint code, a rcu_tasks_trace guard needs
  to be created first.

- Remove __DO_TRACE() macro and just call __DO_TRACE_CALL() directly

  The DO_TRACE() macro has conditional locking depending on what was passed
  into the macro parameters. As the guts of the macro has been moved to
  __DO_TRACE_CALL() to handle static call logic, there's no reason to keep
  the __DO_TRACE() macro around. It is better to just do the locking in
  place without the conditionals and call __DO_TRACE_CALL() from those
  locations. The "cond" passed in can also be moved out of that macro.
  This simplifies the code.

- Remove the "cond" from the system call tracepoint macros

  The "cond" variable was added to allow some tracepoints to check a
  condition within the static_branch (jump/nop) logic. The system calls do
  not need this. Removing it simplifies the code.

- Replace scoped_guard() with just guard() in the tracepoint logic

  guard() works just as well as scoped_guard() in the tracepoint logic and
  the scoped_guard() causes some issues.

[
  NOTE: The rust tracepoint code added hooks to the same macros that were
  modified in this pull request. The merge has non-trivial conflicts. I
  fixed it up in my "for-next" branch in the same repository. That branch
  was a merge of this branch into the commit where you pulled the rust
  tracepoint code.

  To be consistent, I kept the rust hooks in the system call macros even
  though there are currently no Rust system calls. But if one day there is,
  then this could be useful.

  The rust folks may want to look at that merge too. I ran my normal tests
  but I don't yet have anything that tests Rust tracepoints.
]



trace-v6.13-2

27 Nov 2024: RISC-V Paches for the 6.13 Merge Window, Part 1 [+ + +]
RISC-V Paches for the 6.13 Merge Window, Part 1

* Support for pointer masking in userspace,
* Support for probing vector misaligned access performance.
* Support for qspinlock on systems with Zacas and Zabha.

27 Nov 2024: : Soundwire subsystem updates for v6.13 [+ + +]

Hello Linus,

subsystem updates which include bus structure optimization, support for
soundwire 2.0 disco spec and updates to amd and cadence drivers.

With this also, you might see a merge conflict with sound tree. Again,
the resolution should be simple and one exists in the next tree as well.

soundwire updates for 6.13

 - structure optimization of few bus structures and header updates
 - support for 2.0 disco spec
 - amd driver updates for acp revision, refactoring code and support for
   acp6.3
 - soft reset support for cadence driver

27 Nov 2024: : Generic phy subsystem updates for v6.13 [+ + +]

Hello Linus,

Here is the second request this evening to receive the generic phy
subsystem updates which as usual contains bunch on new phy driver and
device support along with bunch of updates and the platform_driver
remove subsystem update.

You might get a merge conflict when you merge, it is fairly simple one
and the next also contains a resolution.

phy-for-6.13

- New Support
  - ST STM32MP25 combophy support
  - Sparx5 support for lan969x serdes and updates to driver to support this
  - NXP PTN3222 eUSB2 to USB2 redriver
  - Qualcomm SAR2130P eusb2 support, QCS8300 USB DW3 and QMP USB2 support,
    X1E80100 QMP PCIe PHY Gen4 support, QCS615 and QCS8300 QMP UFS PHY
    support and SA8775P eDP PHY support
  - Rockchip rk3576 usbdp and rk3576 usb2 phy support
  - Binding for Microchip ATA6561 can phy

- Updates
  - Freescale driver updates from hdmi support
  - Conversion of rockchip rk3228 hdmi phy binding to yaml
  - Broadcom usb2-phy deprecated support dropped and USB init array update
    for BCM4908
  - TI USXGMII mode support in J7200
  - Switch back to platform_driver::remove() subsystem update

27 Nov 2024: : dmaengine subsystem updates for v6.13 [+ + +]

Hey Linus,

includes couple of new device support and updates to bunch of drivers
including the platform_driver remove update.


dmaengine updates for v6.13

 New support:
  - Qualcomm SAR2130P GPI dma support
  - Sifive PIC64GX pdma support
  - Rcar r7s72100 support and associated updates

 Updates:
  - STM32 DMA3 updates for packing/unpacking mode and prevention of
    additional xfers
  - Simplification of devm_acpi_dma_controller_register() and associate
    cleanup including headers
  - loongson prefix renames
  - Switch back to platform_driver::remove() subsystem update

27 Nov 2024: LoongArch changes for v6.13 [+ + +]
LoongArch changes for v6.13

1, Fix build failure with GCC 15 (-std=gnu23);
2, Add PREEMPT_RT/PREEMPT_LAZY support;
3, Add I2S in DTS for Loongson-2K1000/Loongson-2K2000;
4, Some bug fixes and other small changes.

27 Nov 2024: memblock updates for 6.13-rc1 [+ + +]
memblock: updates for 6.13-rc1

* replace hardcoded strings with str_on_off() in report_meminit()
* initialize reserved pages to MIGRATE_MOVABLE when deferred struct page
  initialization is enabled so that if the reserved pages are freed they
  are put on movable free lists like it is done now when deferred struct
  page initialization is disabled

 
26 Nov 2024: Modules changes for v6.13-rc1 [+ + +]
Modules changes for v6.13-rc1

Highlights for this merge window:

  * The whole caching of module code into huge pages by Mike Rapoport is going
    in through Andrew Morton's tree due to some other code dependencies. That's
    really the biggest highlight for Linux kernel modules in this release. With
    it we share huge pages for modules, starting off with x86. Expect to see that
    soon through Andrew!

  * Helge Deller addressed some lingering low hanging fruit alignment
    enhancements by. It is worth pointing out that from his old patch series
    I dropped his vmlinux.lds.h change at Masahiro's request as he would
    prefer this to be specified in asm code [0].

    [0] https://lore.kernel.org/all/20240129192644.3359978-5-mcgrof@kernel.org/T/#m9efef5e700fbecd28b7afb462c15eed8ba78ef5a

  * Matthew Maurer and Sami Tolvanen have been tag teaming to help
    get us closer to a modversions for Rust. In this cycle we take in
    quite a lot of the refactoring for ELF validation. I expect modversions
    for Rust will be merged by v6.14 as that code is mostly ready now.

  * Adds a new modules selftests: kallsyms which helps us tests find_symbol()
    and the limits of kallsyms on Linux today.

  * We have a realtime mailing list to kernel-ci testing for modules now
    which relies and combines patchwork, kpd and kdevops:

    - https://patchwork.kernel.org/project/linux-modules/list/
    - https://github.com/linux-kdevops/kdevops/blob/main/docs/kernel-ci/README.md
    - https://github.com/linux-kdevops/kdevops/blob/main/docs/kernel-ci/kernel-ci-kpd.md
    - https://github.com/linux-kdevops/kdevops/blob/main/docs/kernel-ci/linux-modules-kdevops-ci.md

    If you want to help avoid Linux kernel modules regressions, now its simple,
    just add a new Linux modules sefltests under tools/testing/selftests/module/
    That is it. All new selftests will be used and leveraged automatically by
    the CI.

26 Nov 2024: VFIO updates for v6.13-rc1 [+ + +]
VFIO updates for v6.13

 - Constify an unmodified structure used in linking vfio and kvm.
   (Christophe JAILLET)

 - Add ID for an additional hardware SKU supported by the nvgrace-gpu
   vfio-pci variant driver. (Ankit Agrawal)

 - Fix incorrect signed cast in QAT vfio-pci variant driver, negating
   test in check_add_overflow(), though still caught by later tests.
   (Giovanni Cabiddu)

 - Additional debugfs attributes exposed in hisi_acc vfio-pci variant
   driver for migration debugging. (Longfang Liu)

 - Migration support is added to the virtio vfio-pci variant driver,
   becoming the primary feature of the driver while retaining emulation
   of virtio legacy support as a secondary option. (Yishai Hadas)

 - Fixes to a few unwind flows in the mlx5 vfio-pci driver discovered
   through reviews of the virtio variant driver. (Yishai Hadas)

 - Fix an unlikely issue where a PCI device exposed to userspace with
   an unknown capability at the base of the extended capability chain
   can overflow an array index. (Avihai Horon)

26 Nov 2024: rpmsg updates for v6.13 [+ + +]
rpmsg updates for v6.13

Correct GLINK driver's decoding of the CMD_OPEN message, as upper half
of the second parameter encodes "priority", and "length" is only the
lower half.

26 Nov 2024: remoteproc updates for v6.13 [+ + +]
remoteproc updates for v6.13

Make Qualcomm TrustZone Peripherial Authentication Service-remoteproc
identifier/name human friendly. Add audio DSP support for the Qualcomm
SAR2130P. Ensure IMEM access in the Qualcomm modem remoteproc driver is
performed prior to the firmware enabling the XPU and locking us out.

Improve error handling, error logging, compile testing support, and a
few other stylistic things across a variety of the drivers.

26 Nov 2024: NFSD changes for v6.13 [+ + +]
NFSD 6.13 Release Notes

Jeff Layton contributed a scalability improvement to NFSD's NFSv4
backchannel session implementation. This improvement is intended to
increase the rate at which NFSD can safely recall NFSv4 delegations
from clients, to avoid the need to revoke them. Revoking requires
a slow state recovery process.

A wide variety of bug fixes and other incremental improvements make
up the bulk of commits in this series. As always I am grateful to
the NFSD contributors, reviewers, testers, and bug reporters who
participated during this cycle.

26 Nov 2024: Rust for 6.13 [+ + +]
This is the next round of the Rust support.

Most commits have been in linux-next for weeks, except the latest three
which are a couple fixes and a ignore-Clippy-warning flag addition to
keep things clean for the upcoming Rust release on Thrusday.

You already merged the vfs Rust file PR, the trace Rust support PR and
the net-next PR which had a small Rust change. You may also get a
char-misc PR as well as another vfs Rust PR (pid_namespace).

Conflicts expected with both the vfs ones, trace-rust and char-misc.
The conflicts aren't too bad -- the resolutions in -next are fine.


Cheers,
Miguel

Rust changes for v6.13

Toolchain and infrastructure:

 - Enable a series of lints, including safety-related ones, e.g. the
   compiler will now warn about missing safety comments, as well as
   unnecessary ones. How safety documentation is organized is a frequent
   source of review comments, thus having the compiler guide new
   developers on where they are expected (and where not) is very nice.

 - Start using '#[expect]': an interesting feature in Rust (stabilized
   in 1.81.0) that makes the compiler warn if an expected warning was
   _not_ emitted. This is useful to avoid forgetting cleaning up locally
   ignored diagnostics ('#[allow]'s).

 - Introduce '.clippy.toml' configuration file for Clippy, the Rust
   linter, which will allow us to tweak its behaviour. For instance, our
   first use cases are declaring a disallowed macro and, more
   importantly, enabling the checking of private items.

 - Lints-related fixes and cleanups related to the items above.

 - Migrate from 'receiver_trait' to 'arbitrary_self_types': to get the
   kernel into stable Rust, one of the major pieces of the puzzle is the
   support to write custom types that can be used as 'self', i.e. as
   receivers, since the kernel needs to write types such as 'Arc' that
   common userspace Rust would not. 'arbitrary_self_types' has been
   accepted to become stable, and this is one of the steps required to
   get there.

 - Remove usage of the 'new_uninit' unstable feature.

 - Use custom C FFI types. Includes a new 'ffi' crate to contain our
   custom mapping, instead of using the standard library 'core::ffi'
   one. The actual remapping will be introduced in a later cycle.

 - Map '__kernel_{size_t,ssize_t,ptrdiff_t}' to 'usize'/'isize' instead
   of 32/64-bit integers.

 - Fix 'size_t' in bindgen generated prototypes of C builtins.

 - Warn on bindgen < 0.69.5 and libclang >= 19.1 due to a double issue
   in the projects, which we managed to trigger with the upcoming
   tracepoint support. It includes a build test since some distributions
   backported the fix (e.g. Debian -- thanks!). All major distributions
   we list should be now OK except Ubuntu non-LTS.

'macros' crate:

 - Adapt the build system to be able run the doctests there too; and
   clean up and enable the corresponding doctests.

'kernel' crate:

 - Add 'alloc' module with generic kernel allocator support and remove
   the dependency on the Rust standard library 'alloc' and the extension
   traits we used to provide fallible methods with flags.

   Add the 'Allocator' trait and its implementations '{K,V,KV}malloc'.
   Add the 'Box' type (a heap allocation for a single value of type 'T'
   that is also generic over an allocator and considers the kernel's GFP
   flags) and its shorthand aliases '{K,V,KV}Box'. Add 'ArrayLayout'
   type. Add 'Vec' (a contiguous growable array type) and its shorthand
   aliases '{K,V,KV}Vec', including iterator support.

   For instance, now we may write code such as:

       let mut v = KVec::new();
       v.push(1, GFP_KERNEL)?;
       assert_eq!(&v, &[1]);

   Treewide, move as well old users to these new types.

 - 'sync' module: add global lock support, including the
   'GlobalLockBackend' trait; the 'Global{Lock,Guard,LockedBy}' types
    and the 'global_lock!' macro. Add the 'Lock::try_lock' method.

 - 'error' module: optimize 'Error' type to use 'NonZeroI32' and make
   conversion functions public.

 - 'page' module: add 'page_align' function.

 - Add 'transmute' module with the existing 'FromBytes' and 'AsBytes'
   traits.

 - 'block::mq::request' module: improve rendered documentation.

 - 'types' module: extend 'Opaque' type documentation and add simple
   examples for the 'Either' types.

drm/panic:

 - Clean up a series of Clippy warnings.

Documentation:

 - Add coding guidelines for lints and the '#[expect]' feature.

 - Add Ubuntu to the list of distributions in the Quick Start guide.

MAINTAINERS:
 - Add Danilo Krummrich as maintainer of the new 'alloc' module.

And a few other small cleanups and fixes.

 
25 Nov 2024: A bit more documentation for 6.13 [+ + +]
A few late-arriving fixes, plus two more significant changes that were
*almost* ready at the beginning of the merge window:

- A new document on debugging techniques from Sebastian Fricke

- A clarification on MODULE_LICENSE terms meant to head off the sort of
  confusion that led to the recent Tuxedo Computers mess.

 
26 Nov 2024: m68knommu changes for v6.13 [+ + +]

A couple of small fixes. One to fix compilation when including the FEC driver
(for compile testing) but the specific hardware does not have the hardware module.
And another to fix a typo in the config name used in an ifdef.

Regards
Greg




m68knommu: updates and fixes for v6.13

Fixes include:
. only include FEC platform entries when hardware supports it
. fix typo in ifdef config name

 
25 Nov 2024: I3C changes for 6.13 [+ + +]
Here is the i3c subsystem pull request for 6.13. We get support for
another I3C HCI controller used on AMD chips. We get more fixes for the
MIPI HCI and Silvaco drivers are they get more widespread testing.

I3C for 6.13

Core:
 - avoid possible deadlock on probe
 - ensured preferred address is used on hot-join

Drivers:
 - dw: add AMD I3C controller support
 - mipi-i3c-hci: fix SETDASA, DMA interrupts fixes
 - svc: many fixes for IBI and hotjoin

25 Nov 2024: PCI changes for v6.13 [+ + +]
Enumeration:

  - Make pci_stop_dev() and pci_destroy_dev() safe so concurrent callers
    can't stop a device multiple times, even as we migrate from the global
    pci_rescan_remove_lock to finer-grained locking (Keith Busch)

  - Improve pci_walk_bus() implementation by making it recursive and moving
    locking up to avoid need for a 'locked' parameter (Keith Busch)

  - Unexport pci_walk_bus_locked(), which is only used internally by the
    PCI core (Keith Busch)

  - Detect some Thunderbolt chips that are built-in and hence 'trustworthy'
    by a heuristic since the 'ExternalFacingPort' and 'usb4-host-interface'
    ACPI properties are not quite enough (Esther Shimanovich)

Resource management:

  - Use PCI bus addresses (not CPU addresses) in 'ranges' properties when
    building dynamic DT nodes so systems where PCI and CPU addresses differ
    work correctly (Andrea della Porta)

  - Tidy resource sizing and assignment with helpers to reduce redundancy
    (Ilpo Järvinen)

  - Improve pdev_sort_resources() 'bogus alignment' warning to be more
    specific (Ilpo Järvinen)

Driver binding:

  - Convert driver .remove_new() callbacks to .remove() again to finish the
    conversion from returning 'int' to being 'void' (Sergio Paracuellos)

  - Export pcim_request_all_regions(), a managed interface to request all
    BARs (Philipp Stanner)

  - Replace pcim_iomap_regions_request_all() with
    pcim_request_all_regions(), and pcim_iomap_table()[n] with
    pcim_iomap(n), in the following drivers: ahci, crypto qat, crypto
    octeontx2, intel_th, iwlwifi, ntb idt, serial rp2, ALSA korg1212
    (Philipp Stanner)

  - Remove the now unused pcim_iomap_regions_request_all() (Philipp
    Stanner)

  - Export pcim_iounmap_region(), a managed interface to unmap and release
    a PCI BAR (Philipp Stanner)

  - Replace pcim_iomap_regions(mask) with pcim_iomap_region(n), and
    pcim_iounmap_regions(mask) with pcim_iounmap_region(n), in the
    following drivers: fpga dfl-pci, block mtip32xx, gpio-merrifield,
    cavium (Philipp Stanner)

Error handling:

  - Add sysfs 'reset_subordinate' to reset the entire hierarchy below a
    bridge; previously Secondary Bus Reset could only be used when there
    was a single device below a bridge (Keith Busch)

  - Warn if we reset a running device where the driver didn't register
    pci_error_handlers notification callbacks (Keith Busch)

ASPM:

  - Disable ASPM L1 before touching L1 PM Substates to follow the spec
    closer and avoid a CPU load timeout on some platforms (Ajay Agarwal)

  - Set devices below Intel VMD to D0 before enabling ASPM L1 Substates as
    required per spec for all L1 Substates changes (Jian-Hong Pan)

Power management:

  - Enable starfive controller runtime PM before probing host bridge
    (Mayank Rana)

  - Enable runtime power management for host bridges (Krishna chaitanya
    chundru)

Power control:

  - Use of_platform_device_create() instead of of_platform_populate() to
    create pwrctl platform devices so we can control it based on the child
    nodes (Manivannan Sadhasivam)

  - Create pwrctrl platform devices only if there's a relevant power supply
    property (Manivannan Sadhasivam)

  - Add device link from the pwrctl supplier to the PCI dev to ensure
    pwrctl drivers are probed before the PCI dev driver; this avoids a race
    where pwrctl could change device power state while the PCI driver was
    active (Manivannan Sadhasivam)

  - Find pwrctl device for removal with of_find_device_by_node() instead of
    searching all children of the parent (Manivannan Sadhasivam)

  - Rename 'pwrctl' to 'pwrctrl' to match new bandwidth controller
    ('bwctrl') and hotplug files (Bjorn Helgaas)

Bandwidth control:

  - Add read/modify/write locking for Link Control 2, which is used to
    manage Link speed (Ilpo Järvinen)

  - Extract Link Bandwidth Management Status check into pcie_lbms_seen(),
    where it can be shared between the bandwidth controller and quirks that
    use it to help retrain failed links (Ilpo Järvinen)

  - Re-add Link Bandwidth notification support with updates to address the
    reasons it was previously reverted (Alexandru Gagniuc, Ilpo Järvinen)

  - Add pcie_set_target_speed() and related functionality so drivers can
    manage PCIe Link speed based on thermal or other constraints (Ilpo
    Järvinen)

  - Add a thermal cooling driver to throttle PCIe Links via the existing
    thermal management framework (Ilpo Järvinen)

  - Add a userspace selftest for the PCIe bandwidth controller (Ilpo
    Järvinen)

PCI device hotplug:

  - Add hotplug controller driver for Marvell OCTEON multi-function device
    where function 0 has a management console interface to enable/disable
    and provision various personalities for the other functions (Shijith
    Thotton)

  - Retain a reference to the pci_bus for the lifetime of a pci_slot to
    avoid a use-after-free when the thunderbolt driver resets USB4 host
    routers on boot, causing hotplug remove/add of downstream docks or
    other devices (Lukas Wunner)

  - Remove unused cpcihp struct cpci_hp_controller_ops.hardware_test
    (Guilherme Giacomo Simoes)

  - Remove unused cpqphp struct ctrl_dbg.ctrl (Christophe JAILLET)

  - Use pci_bus_read_dev_vendor_id() instead of hand-coded presence
    detection in cpqphp (Ilpo Järvinen)

  - Simplify cpqphp enumeration, which is already simple-minded and doesn't
    handle devices below hot-added bridges (Ilpo Järvinen)

Virtualization:

  - Add ACS quirk for Wangxun FF5xxx NICs, which don't advertise an ACS
    capability but do isolate functions as though PCI_ACS_RR and PCI_ACS_CR
    were set, so the functions can be in independent IOMMU groups (Mengyuan
    Lou)

TLP Processing Hints (TPH):

  - Add and document TLP Processing Hints (TPH) support so drivers can
    enable and disable TPH and the kernel can save/restore TPH
    configuration (Wei Huang)

  - Add TPH Steering Tag support so drivers can retrieve Steering Tag
    values associated with specific CPUs via an ACPI _DSM to improve
    performance by directing DMA writes closer to their consumers (Wei
    Huang)

Data Object Exchange (DOE):

  - Wait up to 1 second for DOE Busy bit to clear before writing a request
    to the mailbox to avoid failures if the mailbox is still busy from a
    previous transfer (Gregory Price)

Endpoint framework:

  - Skip attempts to allocate from endpoint controller memory window if the
    requested size is larger than the window (Damien Le Moal)

  - Add and document pci_epc_mem_map() and pci_epc_mem_unmap() to handle
    controller-specific size and alignment constraints, and add test cases
    to the endpoint test driver (Damien Le Moal)

  - Implement dwc pci_epc_ops.align_addr() so pci_epc_mem_map() can observe
    DWC-specific alignment requirements (Damien Le Moal)

  - Synchronously cancel command handler work in endpoint test before
    cleaning up DMA and BARs (Damien Le Moal)

  - Respect endpoint page size in dw_pcie_ep_align_addr() (Niklas Cassel)

  - Use dw_pcie_ep_align_addr() in dw_pcie_ep_raise_msi_irq() and
    dw_pcie_ep_raise_msix_irq() instead of open coding the equivalent
    (Niklas Cassel)

  - Avoid NULL dereference if Modem Host Interface Endpoint lacks 'mmio' DT
    property (Zhongqiu Han)

  - Release PCI domain ID of Endpoint controller parent (not controller
    itself) and before unregistering the controller, to avoid
    use-after-free (Zijun Hu)

  - Clear secondary (not primary) EPC in pci_epc_remove_epf() when removing
    the secondary controller associated with an NTB (Zijun Hu)

Cadence PCIe controller driver:

  - Lower severity of 'phy-names' message (Bartosz Wawrzyniak)

Freescale i.MX6 PCIe controller driver:

  - Fix suspend/resume support on i.MX6QDL, which has a hardware erratum
    that prevents use of L2 (Stefan Eichenberger)

Intel VMD host bridge driver:

  - Add 0xb60b and 0xb06f Device IDs for client SKUs (Nirmal Patel)

MediaTek PCIe Gen3 controller driver:

  - Update mediatek-gen3 DT binding to require the exact number of clocks
    for each SoC (Fei Shao)

  - Add support for DT 'max-link-speed' and 'num-lanes' properties to
    restrict the link speed and width (AngeloGioacchino Del Regno)

Microchip PolarFlare PCIe controller driver:

  - Add DT and driver support for using either of the two PolarFire Root
    Ports (Conor Dooley)

NVIDIA Tegra194 PCIe controller driver:

  - Move endpoint controller cleanups that depend on refclk from the host
    to the notifier that tells us the host has deasserted PERST#, when
    refclk should be valid (Manivannan Sadhasivam)

Qualcomm PCIe controller driver:

  - Add qcom SAR2130P DT binding with an additional clock (Dmitry
    Baryshkov)

  - Enable MSI interrupts if 'global' IRQ is supported, since a previous
    commit unintentionally masked them (Manivannan Sadhasivam)

  - Move endpoint controller cleanups that depend on refclk from the host
    to the notifier that tells us the host has deasserted PERST#, when
    refclk should be valid (Manivannan Sadhasivam)

  - Add DT binding and driver support for IPQ9574, with Synopsys IP v5.80a
    and Qcom IP 1.27.0 (devi priya)

  - Move the OPP "operating-points-v2" table from the qcom,pcie-sm8450.yaml
    DT binding to qcom,pcie-common.yaml, where it can be used by other Qcom
    platforms (Qiang Yu)

  - Add 'global' SPI interrupt for events like link-up, link-down to
    qcom,pcie-x1e80100 DT binding so we can start enumeration when the link
    comes up (Qiang Yu)

  - Disable ASPM L0s for qcom,pcie-x1e80100 since the PHY is not tuned to
    support this (Qiang Yu)

  - Add ops_1_21_0 for SC8280X family SoC, which doesn't use the
    'iommu-map' DT property and doesn't need BDF-to-SID translation (Qiang
    Yu)

Rockchip PCIe controller driver:

  - Define ROCKCHIP_PCIE_AT_SIZE_ALIGN to replace magic 256 endpoint .align
    value (Damien Le Moal)

  - When unmapping an endpoint window, compute the region index instead of
    searching for it, and verify that the address was mapped (Damien Le
    Moal)

  - When mapping an endpoint window, verify that the address hasn't been
    mapped already (Damien Le Moal)

  - Implement pci_epc_ops.align_addr() for rockchip-ep (Damien Le Moal)

  - Fix MSI IRQ data mapping to observe the alignment constraint, which
    fixes intermittent page faults in memcpy_toio() and memcpy_fromio()
    (Damien Le Moal)

  - Rename rockchip_pcie_parse_ep_dt() to rockchip_pcie_ep_get_resources()
    for consistency with similar DT interfaces (Damien Le Moal)

  - Skip the unnecessary link train in rockchip_pcie_ep_probe() and do it
    only in the endpoint start operation (Damien Le Moal)

  - Implement pci_epc_ops.stop_link() to disable link training and
    controller configuration (Damien Le Moal)

  - Attempt link training at 5 GT/s when both partners support it (Damien
    Le Moal)

  - Add a handler for PERST# signal so we can detect host-initiated resets
    and start link training after PERST# is deasserted (Damien Le Moal)

Synopsys DesignWare PCIe controller driver:

  - Clear outbound address on unmap so dw_pcie_find_index() won't match an
    ATU index that was already unmapped (Damien Le Moal)

  - Use of_property_present() instead of of_property_read_bool() when
    testing for presence of non-boolean DT properties (Rob Herring)

  - Advertise 1MB size if endpoint supports Resizable BARs, which was
    inadvertently lost in v6.11 (Niklas Cassel)

TI J721E PCIe driver:

  - Add PCIe support for J722S SoC (Siddharth Vadapalli)

  - Delay PCIE_T_PVPERL_MS (100 ms), not just PCIE_T_PERST_CLK_US (100 us),
    before deasserting PERST# to ensure power and refclk are stable
    (Siddharth Vadapalli)

TI Keystone PCIe controller driver:

  - Set the 'ti,keystone-pcie' mode so v3.65a devices work in Root Complex
    mode (Kishon Vijay Abraham I)

  - Try to avoid unrecoverable SError for attempts to issue config
    transactions when the link is down; this is racy but the best we can do
    (Kishon Vijay Abraham I)

Miscellaneous:

  - Reorganize kerneldoc parameter names to match order in function
    signature (Julia Lawall)

  - Fix sysfs reset_method_store() memory leak (Todd Kjos)

  - Simplify pci_create_slot() (Ilpo Järvinen)

  - Fix incorrect printf format specifiers in pcitest (Luo Yifan)

25 Nov 2024: f2fs for 6.13-rc1 [+ + +]
Could you please consideri this pull request?

Thanks,

f2fs-for-6.13-rc1

This series introduces a device aliasing feature where user can carve out
partitions but reclaim the space back by deleting aliased file in root dir.
In addition to that, there're numerous minor bug fixes in zoned device support,
checkpoint=disable, extent cache management, fiemap, and lazytime mount option.
The full list of noticeable changes can be found below.

Enhancement:
 - introduce device aliasing file
 - add stats in debugfs to show multiple devices
 - add a sysfs node to limit max read extent count per-inode
 - modify f2fs_is_checkpoint_ready logic to allow more data to be written with the CP disable
 - decrease spare area for pinned files for zoned devices

Bug fix:
 - Revert "f2fs: remove unreachable lazytime mount option parsing"
 - adjust unusable cap before checkpoint=disable mode
 - fix to drop all discards after creating snapshot on lvm device
 - fix to shrink read extent node in batches
 - fix changing cursegs if recovery fails on zoned device
 - fix to adjust appropriate length for fiemap
 - fix fiemap failure issue when page size is 16KB
 - fix to avoid forcing direct write to use buffered IO on inline_data inode
 - fix to map blocks correctly for direct write
 - fix to account dirty data in __get_secs_required()
 - fix null-ptr-deref in f2fs_submit_page_bio()
 - f2fs: compress: fix inconsistent update of i_blocks in release_compress_blocks and reserve_compress_blocks

25 Nov 2024: fuse update for 6.13 [+ + +]

tags/fuse-update-6.13

- Add page -> folio conversions (Joanne Koong, Josef Bacik)

- Allow max size of fuse requests to be configurable with a sysctl
(Joanne Koong)

- Allow FOPEN_DIRECT_IO to take advantage of async code path (yangyun)

- Fix large kernel reads (like a module load) in virtio_fs (Hou Tao)

- Fix attribute inconsistency in case readdirplus (and plain lookup in
corner cases) is racing with inode eviction (Zhang Tianci)

- Fix a WARN_ON triggered by virtio_fs (Asahi Lina)

Thanks,
Miklos
---

25 Nov 2024: gfs2 changes for 6.13 [+ + +]
please consider pulling the following gfs2 changes.

The top two commits have only been added to for-next a couple of days ago; they
fix a NULL pointer dereference in a previous patch in this pull request and an
unlikely race in the same code.  These fixes have passed several days of heavy
testing, so I hope you can agree to including them.

Thanks,
Andreas

gfs2 changes

- Fix the code that cleans up left-over unlinked files.  Various fixes
  and minor improvements in deleting files cached or held open remotely.

- Simplify the use of dlm's DLM_LKF_QUECVT flag.

- A few other minor cleanups.

25 Nov 2024: slab updates for 6.13 v2 [+ + +]
please pull the latest slab updates from:


One new feature and non-critical fixes (mostly related to debugging).
No conflicts to be expected, AFAIK.

After fixing up the bug that was in the v1 pull 9 days ago, I've only added
Geert's fix on top 5 days ago, and it was all in -next.

Thanks,
Vlastimil


- Add new slab_strict_numa boot parameter to enforce per-object memory policies
  on top of slab folio policies, for systems where saving cost of remote
  accesses is more important than minimizing slab allocation overhead
  (Christoph Lameter)

- Fix for freeptr_offset alignment check being too strict for m68k (Geert
  Uytterhoeven)

- krealloc() fixes for not violating __GFP_ZERO guarantees on krealloc() when
  slub_debug (redzone and object tracking) is enabled (Feng Tang)

- Fix a memory leak in case sysfs registration fails for a slab cache, and also
  no longer fail to create the cache in that case (Hyeonggon Yoo)

- Fix handling of detected consistency problems (due to buggy slab user) with
  slub_debug enabled, so that it does not cause further list corruption bugs
  (yuan.gao)

- Code cleanup and kerneldocs polishing (Zhen Lei, Vlastimil Babka)

 
24 Nov 2024: perf-tools changes for v6.13 [+ + +]
Please consider pulling the following changes in perf tools for v6.13.

Thanks,
Namhyung


perf tools changes for v6.13

perf record
24 Nov 2024: Mailbox changes for v6.13 [+ + +]
common: switch back from remove_new() to remove() callback
imx: fix format specifier
zynqmp: setup IPI for each child node
thead: Add th1520 driver and bindings
qcom: add SM8750 and SAR2130p compatibles
      fix expected clocks for callbacks
      use IRQF_NO_SUSPEND for cpucp
mtk-cmdq: switch to __pm_runtime_put_autosuspend()
          fix alloc size of clocks
mpfs: fix reg properties
ti-msgmgr: don't use of_match_ptr helper
           enable COMPILE_TEST build
pcc: consider the PCC_ACK_FLAG
arm_mhuv2: fix non-fatal improper reuse of variable

24 Nov 2024: Input updates for v6.13-rc0 [+ + +]


to receive updates for the input subsystem. You will get:

- support for NT36672A touchscreen added to novatek-nvt-ts driver

- a change to ads7846 driver to prevent XPT2046 from locking up

- a change switching platform input dirves back to using remove() method
  (from remove_new())

- updates to a number of input drivers to use the new cleanup facilities
  (__free(...), guard(), and scoped-guard()) which ensure that the
  resources and locks are released properly and automatically

- other assorted driver cleanups and fixes.

Changelog:
---------

24 Nov 2024: non-MM updates for 6.13-rc1 [+ + +]

Merge issues along with their linux-next resolutions are as follows:

kernel/auditsc.c, vs security tree:
https://lkml.kernel.org/r/20241014144648.1923104a@canb.auug.org.au

lib/Makefile, vs asm-generic tree:
https://lkml.kernel.org/r/20241029095525.0fba9d23@canb.auug.org.au


- The series "resource: A couple of cleanups" from Andy Shevchenko
  performs some cleanups in the resource management code.

- The series "Improve the copy of task comm" from Yafang Shao addresses
  possible race-induced overflows in the management of task_struct.comm[].

- The series "Remove unnecessary header includes from
  {tools/}lib/list_sort.c" from Kuan-Wei Chiu adds some cleanups and a
  small fix to the list_sort library code and to its selftest.

- The series "Enhance min heap API with non-inline functions and
  optimizations" also from Kuan-Wei Chiu optimizes and cleans up the
  min_heap library code.

- The series "nilfs2: Finish folio conversion" from Ryusuke Konishi
  finishes off nilfs2's folioification.

- The series "add detect count for hung tasks" from Lance Yang adds more
  userspace visibility into the hung-task detector's activity.

- Apart from that, singelton patches in many places - please see the
  individual changelogs for details.

24 Nov 2024: i2c-host for v6.13, part 2 [+ + +]
Hi Wolfram,

please find the description for the second part of the pull 
request.

Thank you again for accepting this second part. I believe we've
now included all the accepted patches for I2C. For the next
release, I plan to focus on clearing out leftovers from the past.

As always, feel free to advise or correct the tag description.
I'm always open to suggestions and never bothered by them.

Thank you,
Andi

i2c-host updates for v6.13, part 2

Improvements and refactoring:
 - Qualcomm I2C now uses the generic device property functions.
 - Nomadik controller updated to use of_match_device().
 - Fixed the Baud Rate Counter (BRCR) calculation and handling in
   the Nomadik controller, enabling support for frequencies above
   1 MHz.

New feature support:
 - Added support for frequencies up to 3.4 MHz on Nomadik I2C.
 - DesignWare now accounts for bus capacitance and clock
   optimisation (declared as new parameters in the binding) to
   improve the calculation of signal rise and fall times
   (t_high and t_low).
 - Added atomic transfer support to the Xilinx IIC controller.

New Hardware support:
 - DWAPB I2C controller on FUJITSU-MONAKA (new ACPI HID).
 - Allwinner A523 (new compatible ID).
 - Mobileye EyeQ6H (new compatible ID).

Maintenance:
 - Ryan replaces Brendan as the maintainer for the ASPEED
   controller.

 
23 Nov 2024: pin control changes for v6.13 [+ + +]
here is the bulk of pin control changes for the v6.13 kernel cycle.

The contents are described in the signed tag, no big surprises,
no core changes whatsoever and just a big pile of new driver code.
Notably Qualcomm forge ahead with a lot of new silicon.

Some oneliners touch other subsystems but these should be
properly authorized, we had some buzz around who should merge
some DT bindings but this was resolved.

CONFLICTS:

- One trivial conflict will appear in MAINTAINERS, because the
  same entry is used for a bunch of subsystems. You know what
  to do.

- The second issue is more sneaky: a recent fixup patch to one
   of the rc:s (I think -rc4) fixed some error path bugs in
   the AW9523 driver, then a patch to the regular devel is
   improving the use of devres so the fixed errorpath fixes
   things broken.

I have been applying the following fixup patch for -next to work:

This is the bulk of the pin control changes for v6.13:

No core changes this time.

New drivers:

- Xlinix Versal pin control driver.

- Ocelot LAN969x pin control driver.

- T-Head TH1520 RISC-V SoC pin control driver.

- Qualcomm SM8750, IPQ5424, QCS8300, SAR2130P and QCS615 SoC
  pin control drivers.

- Qualcomm SM8750 LPASS (low power audio subsystem)
  pin control driver.

- Qualcomm PM8937 mixsig IC pin control support, GPIO and
  MPP (multi-purpose-pin).

- Samsung Exynos8895 and Exynos9810 SoC pin control driver.

- SpacemiT K1 SoC pin control driver.

- Airhoa EN7581 IC pin control driver.

Improvements:

- The Renesas subdriver now supports schmitt-trigger and
  open drain pin configurations if the hardware supports it.

- Support GPIOF and GPIOG banks in the Aspeed G6 SoC.

- Support the DSW community in the Intel Elkhartlake SoC.

23 Nov 2024: firewire updates for v6.13-rc1 [+ + +]
development activity has been relatively quiet, so only a few
commits are included in this PR.

firewire updates for v6.13

A few updates for the 6.13 kernel, including some typo corrections in the
software stack and some fixes for tools. Additionally, it includes a
change resulting from the deprecation of a kernel API in the PCI
subsystem.

 
22 Nov 2024: More thermal control updates for v6.13-rc1 [+ + +]

 thermal-6.13-rc1-2


 Merge tag 'thermal-v6.13-rc1' of
ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/thermal/linux


 Merge tag 'thermal-6.13-rc1' of

to receive more thermal control updates for 6.13-rc1.

These update a few thermal drivers used on ARM platforms and thermal tools:

 - Add SAR2130P compatible to DT bindings in the QCom Tsens driver (Dmitry
   Baryshkov).

 - Add static annotation to arrays describing platform sensors in the
   LVTS Mediatek driver (Colin Ian King).

 - Switch back to struct platform_driver::remove() from the previous
   callbacks prototype rework (Uwe Kleine-K=C3=B6nig).

 - Add MSM8937 compatible to DT bindings and its support in the QCom
   Tsens driver (Barnab=C3=A1s Cz=C3=A9m=C3=A1n).

 - Remove a pointless sign test on an unsigned value in k3_bgp_read_temp()
   in the k3_j72xx_bandgap driver (Rex Nie).

 - Fix a pointer reference loss when realloc() fails in the thermal
   library (Zhang Jiao).

Thanks!



22 Nov 2024: More power management updates for v6.13-rc1 [+ + +]

 pm-6.13-rc1-2


 Merge branch 'pm-cpuidle'


 Merge tag 'pm-6.13-rc1' of

to receive more power management updates for 6.13-rc1.

These mostly are updates of cpufreq drivers used on ARM platforms plus
one new DT-based cpufreq driver for virtualized guests and two cpuidle
changes that should not make any difference on systems currently in
the field, but will be needed for future development:

 - Add virtual cpufreq driver for guest kernels (David Dai).

 - Minor cleanup to various cpufreq drivers (Andy Shevchenko, Dhruva
   Gole, Jie Zhan, Jinjie Ruan, Shuosheng Huang, Sibi Sankar, and Yuan
   Can).

 - Revert "cpufreq: brcmstb-avs-cpufreq: Fix initial command check" (Colin
   Ian King).

 - Improve DT bindings for qcom-hw driver (Dmitry Baryshkov, Konrad
   Dybcio, and Nikunj Kela).

 - Make cpuidle_play_dead() try all idle states with :enter_dead()
   callbacks and change their return type to void (Rafael Wysocki).

Thanks!



22 Nov 2024: tracing: Add Rust support to trace events for v6.13 [+ + +]

Add Rust support for trace events:

- Allow Rust code to have trace events

  Trace events is a popular way to debug what is happening inside the kernel
  or just to find out what is happening. Rust code is being added to the
  Linux kernel but it currently does not support the tracing infrastructure.
  Add support of trace events inside Rust code.

[
   Note, this code and the diffstat are dependent on the trace topic branch
   getting pulled in first:

     https://lore.kernel.org/all/20241120214531.45d75a60@gandalf.local.home/

   This work was started on that branch to avoid conflicts. But they have
   since split, where the trace branch has code that is not in this branch.
]



trace-rust-v6.13

22 Nov 2024: NVDIMM and DAX for 6.13 [+ + +]

Changes for the nvdimm tree.

Most represent minor cleanups and code removals.  One patch fixes potential
NULL pointer arithmetic which was benign because the offset of the member was
0.  Never the less it should be cleaned up.

These have soaked in linux-next since Nov 15th without issues.

Thank you,
Ira

---

libnvdimm additions for 6.13

- typo fixes
- Clarify logic to remove potential NULL pointer math
- Remove dead code

22 Nov 2024: sysctl changes for v6.13-rc1 [+ + +]


Summary

* sysctl ctl_table constification

  Constifying ctl_table structs prevents the modification of proc_handler
  function pointers. All ctl_table struct arguments are const qualified in the
  sysctl API in such a way that the ctl_table arrays being defined elsewhere
  and passed through sysctl can be constified one-by-one. We kick the
  constification off by qualifying user_table in kernel/ucount.c and expect all
  the ctl_tables to be constified in the coming releases.

* Misc fixes

  Adjust comments in two places to better reflect the code. Remove superfluous
  dput calls. Remove Luis from sysctl maintainership. Replace comments about
  holding a lock with calls to lockdep_assert_held.

* Testing

  All these went through 0-day and they have all been in linux-next for at
  least 1 month (since Oct-24). I also rand these through the sysctl selftest
  for x86_64.

22 Nov 2024: overlayfs updates for 6.13 [+ + +]

This pull request has some changes in code outside of fs/overlayfs:

1. The backing_file API change touches fuse code - that was collaborated
   with Miklos who authored this API change

2. The additions of revert/override_creds_light() helpers in cred.{h,c}
   were collaborated with Christian who has suggested those helpers

There was also an overlayfs change in this cycle coming from Christian
(file descriptors based layer setup).  His changes do not conflict with
this branch and I have also tested his change along with the fs-next
community test branch.

Most of this branch has been sitting in linux-next for over a week except
for one syzbot issue fix that was added three days ago.

The code has gone through the usual overlayfs test routines.

The branch merges cleanly with master branch of the moment.

Thanks,
Amir.

overlayfs updates for 6.13

- Fix a syzbot reported NULL pointer deref with bfs lower layers

- Fix a copy up failure of large file from lower fuse fs

- Followup cleanup of backing_file API from Miklos

- Introduction and use of revert/override_creds_light() helpers, that were
  suggested by Christian as a mitigation to cache line bouncing and false
  sharing of fields in overlayfs creator_cred long lived struct cred copy.

- Store up to two backing file references (upper and lower) in an ovl_file
  container instead of storing a single backing file in file->private_data.

  This is used to avoid the practice of opening a short lived backing file
  for the duration of some file operations and to avoid the specialized use
  of FDPUT_FPUT in such occasions, that was getting in the way of Al's
  fd_file() conversions.

22 Nov 2024: IOMMU Updates for Linux v6.13 [+ + +]

Hi Linus,

This PR also comes with dependencies from the IOMMUFD tree via the
iommufd/arm-smmuv3-nested branch. It is possible that you already pulled
those from Jason. With that being said:

IOMMU Updates for Linux v6.13:

Including:

- Core Updates:
  - Convert call-sites using iommu_domain_alloc() to more specific
    versions and remove function.
  - Introduce iommu_paging_domain_alloc_flags().
  - Extend support for allocating PASID-capable domains to more
    drivers.
  - Remove iommu_present().
  - Some smaller improvements.

- New IOMMU driver for RISC-V.

- Intel VT-d Updates:
  - Add domain_alloc_paging support.
  - Enable user space IOPFs in non-PASID and non-svm cases.
  - Small code refactoring and cleanups.
  - Add domain replacement support for pasid.

- AMD-Vi Updates:
  - Adapt to iommu_paging_domain_alloc_flags() interface and alloc V2
    page-tables by default.
  - Replace custom domain ID allocator with IDA allocator.
  - Add ops->release_domain() support.
  - Other improvements to device attach and domain allocation code
    paths.

- ARM-SMMU Updates:
  - SMMUv2:
    - Return -EPROBE_DEFER for client devices probing before their SMMU.
    - Devicetree binding updates for Qualcomm MMU-500 implementations.
  - SMMUv3:
    - Minor fixes and cleanup for NVIDIA's virtual command queue driver.
  - IO-PGTable:
    - Fix indexing of concatenated PGDs and extend selftest coverage.
    - Remove unused block-splitting support.

- S390 IOMMU:
  - Implement support for blocking domain.

- Mediatek IOMMU:
  - Enable 35-bit physical address support for mt8186.

- OMAP IOMMU driver:
  - Adapt to recent IOMMU core changes and unbreak driver.

22 Nov 2024: bcachefs updates for 6.13, v2 [+ + +]
request.

bcachefs updates for 6.13 v2

- Self healing work:
  Allocator and reflink now run the exact same check/repair code that
  fsck does at runtime, where applicable.

  The long term goal here is to remove inconsistent() errors (that cause
  us to go emergency read only) by lifting fsck code up to normal
  runtime paths; we should only go emergency read-only if we detect an
  inconsistency that was due to a runtime bug - or truly catastrophic
  damage (corrupted btree roots/interior nodes).

- Reflink repair no longer deletes reflink pointers: instead we flip an
  error bit and log the error, and they can still be deleted by file
  deletion. This means a temporary failure to find an indirect extent
  (perhaps repaired later by btree node scan) won't result in
  unnecessary data loss

- Improvements to rebalance data path option handling: we can now
  correctly apply changed filesystem-level io path options to pending
  rebalance work, and soon we'll be able to apply file-level io path
  option changes to indirect extents.

Additions from last pull request:

- Fixes for compression inconsistencies with superblock feature bits,
  found by sizbot

- Fix some O(n^2) issues in journal replay

- Fix the evacuate_bucket tracepoint

 
21 Nov 2024: KUnit update for Linux 6.13-rc1-fixed [+ + +]
Hi Linus,


This pull request is fixed up with the right fix for the UAF bug and
includes other fixes.

linux_kselftest-kunit-6.13-rc1-fixed

kunit update for Linux 6.13-rc1

-- fixes user-after-free (UAF) bug in kunit_init_suite()

-- adds option to kunit tool to print just the summary of test results

-- adds option to kunit tool to print just the failed test results

-- fixes kunit_zalloc_skb() to use user passed in gfp value instead of
    hardcoding GFP_KERNEL

-- fixes kunit_zalloc_skb() kernel doc to include allocation flags variable

-- updates KUnit email address for Brendan Higgins

-- adds LoongArch config to qemu_configs

-- changes tool to allow overriding the shutdown mode from qemu config

-- enables shutdown in loongarch qemu_config

-- fixes potential null dereference in kunit_device_driver_test()

-- fixes debugfs to use IS_ERR() for alloc_string_stream() error check

diff is attached.

Tests passed on my kunit repo & linux-next:

- Build make allmodconfig

./tools/testing/kunit/kunit.py run
./tools/testing/kunit/kunit.py run --alltests

./tools/testing/kunit/kunit.py run --arch x86_64
./tools/testing/kunit/kunit.py run --alltests --arch x86_64

thanks,
-- Shuah


linux_kselftest-kunit-6.13-rc1-fixed

kunit update for Linux 6.13-rc1

-- fixes user-after-free (UAF) bug in kunit_init_suite()

-- adds option to kunit tool to print just the summary of test results

-- adds option to kunit tool to print just the failed test results

-- fixes kunit_zalloc_skb() to use user passed in gfp value instead of
    hardcoding GFP_KERNEL

-- fixes kunit_zalloc_skb() kernel doc to include allocation flags variable

-- updates KUnit email address for Brendan Higgins

-- adds LoongArch config to qemu_configs

-- changes tool to allow overriding the shutdown mode from qemu config

-- enables shutdown in loongarch qemu_config

-- fixes potential null dereference in kunit_device_driver_test()

-- fixes debugfs to use IS_ERR() for alloc_string_stream() error check

21 Nov 2024: jfs updates for v6.13 [+ + +]
A few more patches to add sanity checks in jfs

21 Nov 2024: dlm updates for 6.13 [+ + +]


Summary:

- Fix recovery of locks that are being converted between PR/CW modes.
- Fix cleanup of rsb list if recovery is interrupted during recover_members.
- Fix null dereference in debug code if dlm api is called improperly.
- Fix wrong args passed to trace function.
- Move error checks out of add_to_waiters so the function can't fail.
- Clean up some code for configfs.

Thanks,
Dave


21 Nov 2024: execve updates for v6.13-rc1 (take 2) [+ + +]
the argv[0] vs "comm" setting patches. We'll work on the better solution
for the next merge window.

Thanks!

-Kees

execve updates for v6.13-rc1 (take2)

- binfmt_misc: Fix comment typos (Christophe JAILLET)

- exec: move empty argv[0] warning closer to actual logic (Nir Lichtman)

- exec: remove legacy custom binfmt modules autoloading (Nir Lichtman)

- coredump: Do not lock when copying "comm"

- MAINTAINERS: add auxvec.h and set myself as maintainer

21 Nov 2024: hardening updates for v6.13-rc1 [+ + +]
this for several days just to make sure the Kconfig and compiler.h
changes got a little more bake-time in -next since they were added to my
tree pretty late in the cycle. All seems well, so here's the PR.

Thanks!

-Kees

hardening updates for v6.13-rc1

- Disable __counted_by in Clang < 19.1.3 (Jan Hendrik Farr)

- string_helpers: Silence output truncation warning (Bartosz Golaszewski)

- compiler.h: Avoid needing BUILD_BUG_ON_ZERO() (Philipp Reisner)

- MAINTAINERS: Add kernel hardening keywords __counted_by{_le|_be}
  (Thorsten Blum)

21 Nov 2024: Backlight for v6.13 [+ + +]
- Improved handling of LCD power states and interactions with the fbdev subsystem.
- Introduced new LCD_POWER_ constants to decouple the LCD subsystem from fbdev.
- Clarified the semantics of the lcd_ops.controls_device callback.
- Removed unnecessary includes and dependencies.
- Removed unused notifier functionality.
- Simplified code with scoped for-each loops.
- Fixed module autoloading for the ktz8866 driver.
- Updated device tree bindings to yaml format.
- Minor cleanups and improvements in various drivers.

21 Nov 2024: LEDs for v6.13 [+ + +]
- Removed unused local header files from various drivers.
- Reverted platform driver removal to the original method for consistency.
- Introduced ordered workqueues for LED events, replacing the less efficient system_wq.
- Switched to a safer iteration macro in several drivers to prevent potential memory leaks.
- Fixed a refcounting bug in the mt6360 flash LED driver.
- Fixed an uninitialized variable in the mt6370_mc_pattern_clear() function.
- Resolved Smatch warnings in the leds-bcm6328 driver.
- Addressed a potential NULL pointer dereference in the brightness_show() function.
- Fixed an incorrect format specifier in the ss4200 driver.
- Prevented a resource leak in the max5970 driver's probe function.
- Added support for specifying the number of serial shift bits in the device tree for the BCM63138 family.
- Implemented multicolor brightness control in the lp5562 driver.
- Added a device tree property to override the default LED pin polarity.
- Added a property to specify the default brightness value when the LED is initially on.
- Set missing timing properties for the ktd2692 driver.
- Documented the "rc-feedback" trigger for controlling LEDs based on remote control activity.
- Converted text bindings to YAML for the pca955x driver to enable device tree validation.
- Removed redundant checks for invalid channel numbers in the lp55xx driver.
- Updated the MAINTAINERS file with current contact information.

21 Nov 2024: MFD for v6.13 [+ + +]
- Several drivers, including atmel-flexcom/rk8xx-core, palmas, and
  tps65010, have undergone minor code improvements to enhance consistency and
  fix race conditions.

- The syscon driver now utilizes the regmap max_register_is_0 capability
  for consistent register map configuration across syscons of all sizes.

- New device support has been added for QCS8300, qcs615, SA8255p, and
  samsung,s2dos05, expanding the range of compatible hardware.

- The cros_ec driver now supports loading cros_ec_ucsi on supported ECs
  and avoids loading the charger with UCSI, streamlining functionality.

- The bd96801 driver now utilizes the more modern maple tree register
  cache, improving performance.

- The da9052-spi driver has undergone a fix to change the read-mask to
  write-mask, preventing potential issues.

- Unused declarations in max77693 have been removed, and support for
  samsung,s2dos05 has been added, enhancing code clarity and device compatibility.

- Error handling in cs42l43 has been fixed to avoid unbalanced regulator
  put and ensure proper synchronization during driver removal.

- The wcd934x driver now uses MODULE_DEVICE_TABLE() instead of
  MODULE_ALIAS(), improving code consistency.

- Documentation for qcom,tcsr, syscon, and atmel-smc has been updated
  and reorganized for better clarity and maintainability.

- The intel_soc_pmic_bxtwc driver has undergone significant improvements,
  including the use of IRQ domains for various devices, fixing IRQ domain names
  duplication, and code refactoring for better consistency and maintainability.

- The ipaq-micro driver has received a fix for a missing break statement in
  the default case, enhancing code robustness.

- Support for the AXP323 PMIC has been added to the axp20x driver, along
  with ensuring a clear relationship between IDs and model names, and allowing
  multiple regulators, broadening hardware compatibility.

- The cs42l43 driver now disables IRQs during suspend for improved power
  management.

- The adp5585 driver has reduced its dependencies by dropping the obsolete
  dependency on COMPILE_TEST.

- Initial support for the MT6328 PMIC has been added to the mt6397 driver,
  expanding the range of supported hardware.

- The rtc-bd70528 driver has been simplified by dropping the IC name from
  IRQ, improving code readability.

- Documentation for qcom,spmi-pmic, ti,twl, and zii,rave-sp has been
  updated to enhance clarity and incorporate new features.

- The rt5033 driver has received a fix for a missing regmap_del_irq_chip()
  in the error handling path.

- New device support has been added for MSM8917, and the
  intel_soc_pmic_crc driver now supports non-ACPI instantiated i2c_client.

- The 88pm886 driver has added support for the RTC cell, and the tqmx86
  driver has improved its GPIO IRQ setup and added I2C IRQ support,
  increasing functionality.

- The sprd,sc2731 DT schema has been updated and converted to YAML format
  for better readability and maintainability.

21 Nov 2024: sound updates for 6.13-rc1 [+ + +]
please pull sound updates for v6.13-rc1 from:


The topmost commit is e3f8064d8b29036f037fd1ff6000e5d959d84843


sound updates for 6.13-rc1

This is a relatively calm cycle, and majority of changes are about
ASoC.  There are little changes in the core side but we received
lots of new drivers for new vendors.

* ALSA Core:
- The new accel operation mode for compress-offload API;
  only the core part, and the actual user will follow at next

* ASoC:
- Continued API simplification works
- Renaming of the sh directory to Renesas
- Factoring out of some of the common code for Realtek devices
- Ussal ASoC Intel SOF, AMD and SoundWire updates
- Support for Allwinner H616, AMD ACP 6.3 systems, AWInic AW88081,
  Cirrus Logic CS32L84, Everest ES8328, Iron Devices SMA1307,
  Longsoon I2S, NeoFidelity NTP8918 and NTP8835, Philips UDA1342,
  Qualcomm SM8750, RealTek RT721, and ST Microelectronics STM32MP25

* HD- and USB-audio:
- Clean up of IRQ handling in legacy HD-audio driver
- Fix soft lockup at disconnection of non-standard USB drivers
- Scarlett2 mixer improvements
- New quirks and cleanups in HD- and USB-audio


 
20 Nov 2024: tracing: Updates for v6.13 [+ + +]

tracing updates for v6.13:

- Addition of faultable tracepoints

  There's a tracepoint attached to both a system call entry and exit. This
  location is known to allow page faults. The tracepoints are called under
  an rcu_read_lock() which does not allow faults that can sleep. This limits
  the ability of tracepoint handlers to page fault in user space system call
  parameters. Now these tracepoints have been made "faultable", allowing the
  callbacks to fault in user space parameters and record them.

  Note, only the infrastructure has been implemented. The consumers (perf,
  ftrace, BPF) now need to have their code modified to allow faults.

- Fix up of BPF code for the tracepoint faultable logic

- Update tracepoints to use the new static branch API

- Remove trace_*_rcuidle() variants and the SRCU protection they used

- Remove unused TRACE_EVENT_FL_FILTERED logic

- Replace strncpy() with strscpy() and memcpy()

- Use replace per_cpu_ptr(smp_processor_id()) with this_cpu_ptr()

- Fix perf events to not duplicate samples when tracing is enabled

- Replace atomic64_add_return(1, counter) with atomic64_inc_return(counter)

- Make stack trace buffer 4K instead of PAGE_SIZE

- Remove TRACE_FLAG_IRQS_NOSUPPORT flag as it was never used

- Get the true return address for function tracer when function graph tracer
  is also running.

  When function_graph trace is running along with function tracer,
  the parent function of the function tracer sometimes is
  "return_to_handler", which is the function graph trampoline to record
  the exit of the function. Use existing logic that calls into the
  fgraph infrastructure to find the real return address.

- Remove (un)regfunc pointers out of tracepoint structure

- Added last minute bug fix for setting pending modules in stack function
  filter.

  echo "write*:mod:ext3" > /sys/kernel/tracing/stack_trace_filter

  Would cause a kernel NULL dereference.

- Minor clean ups




trace-v6.13

 
21 Nov 2024: drm for 6.13-rc1 [+ + +]
This is the main drm pull request for 6.13.

I've done a test merge into your tree, there were two conflicts both
of which seem easy enough to resolve for you.

There's a lot of rework, the panic helper support is being added to
more drivers, v3d gets support for HW superpages, scheduler
documentation, drm client and video aperture reworks, some new
MAINTAINERS added, amdgpu has the usual lots of IP refactors, Intel
has some Pantherlake enablement and xe is getting some SRIOV bits, but
just lots of stuff everywhere.

Let me know if there are any issues,
Thanks,
Dave.

drm-next-2024-11-21:
drm for 6.13-rc1

core:
- split DSC helpers from DP helpers
- clang build fixes for drm/mm test
- drop simple pipeline support for gem vram
- document submission error signaling
- move drm_rect to drm core module from kms helper
- add default client setup to most drivers
- move to video aperture helpers instead of drm ones

tests:
- new framebuffer tests

ttm:
- remove swapped and pinned BOs from TTM lru

panic:
- fix uninit spinlock
- add ABGR2101010 support

bridge:
- add TI TDP158 support
- use standard PM OPS

dma-fence:
- use read_trylock instead of read_lock to help lockdep

scheduler:
- add errno to sched start to report different errors
- add locking to drm_sched_entity_modify_sched
- improve documentation

xe:
- add drm_line_printer
- lots of refactoring
- Enable Xe2 + PES disaggregation
- add new ARL PCI ID
- SRIOV development work
- fix exec unnecessary implicit fence
- define and parse OA sync props
- forcewake refactoring

i915:
- Enable BMG/LNL ultra joiner
- Enable 10bpx + CCS scanout on ICL+, fp16/CCS on TGL+
- use DSB for plane/color mgmt
- Arrow lake PCI IDs
- lots of i915/xe display refactoring
- enable PXP GuC autoteardown
- Pantherlake (PTL) Xe3 LPD display enablement
- Allow fastset HDR infoframe changes
- write DP source OUI for non-eDP sinks
- share PCI IDs between i915 and xe

amdgpu:
- SDMA queue reset support
- SMU 13.0.6, JPEG 4.0.3 updates
- Initial runtime repartitioning support
- rework IP structs for multiple IP instances
- Fetch EDID from _DDC if available
- SMU13 zero rpm user control
- lots of fixes/cleanups

amdkfd:
- Increase event FIFO size
- add topology cap flag for per queue reset

msm:
- DPU:
- SA8775P support
- (disabled by default) MSM8917, MSM8937, MSM8953 and MSM8996 support
- Enable large framebuffer support
- Drop MSM8998 and SDM845
- DP:
- SA8775P support
- GPU:
- a7xx preemption support
- Adreno A663 support

ast:
- warn about unsupported TX chips

ivpu:
- add coredump
- add pantherlake support

rockchip:
- 4K@60Hz display enablement
- generate pll programming tables

panthor:
- add timestamp query API
- add realtime group priority
- add fdinfo support

etnaviv:
- improve handling of DMA address limits
- improve GPU hangcheck

exynos:
- Decon Exynos7870 support

mediatek:
- add OF graph support

omap:
- locking fixes

bochs:
- convert to gem/shmem from simpledrm

v3d:
- support big/super pages
- add gemfs

vc4:
- BCM2712 support refactoring
- add YUV444 format support

udmabuf:
- folio related fixes

nouveau:
- add panic support on nv50+
drm for 6.13-rc1

core:
- split DSC helpers from DP helpers
- clang build fixes for drm/mm test
- drop simple pipeline support for gem vram
- document submission error signaling
- move drm_rect to drm core module from kms helper
- add default client setup to most drivers
- move to video aperture helpers instead of drm ones

tests:
- new framebuffer tests

ttm:
- remove swapped and pinned BOs from TTM lru

panic:
- fix uninit spinlock
- add ABGR2101010 support

bridge:
- add TI TDP158 support
- use standard PM OPS

dma-fence:
- use read_trylock instead of read_lock to help lockdep

scheduler:
- add errno to sched start to report different errors
- add locking to drm_sched_entity_modify_sched
- improve documentation

xe:
- add drm_line_printer
- lots of refactoring
- Enable Xe2 + PES disaggregation
- add new ARL PCI ID
- SRIOV development work
- fix exec unnecessary implicit fence
- define and parse OA sync props
- forcewake refactoring

i915:
- Enable BMG/LNL ultra joiner
- Enable 10bpx + CCS scanout on ICL+, fp16/CCS on TGL+
- use DSB for plane/color mgmt
- Arrow lake PCI IDs
- lots of i915/xe display refactoring
- enable PXP GuC autoteardown
- Pantherlake (PTL) Xe3 LPD display enablement
- Allow fastset HDR infoframe changes
- write DP source OUI for non-eDP sinks
- share PCI IDs between i915 and xe

amdgpu:
- SDMA queue reset support
- SMU 13.0.6, JPEG 4.0.3 updates
- Initial runtime repartitioning support
- rework IP structs for multiple IP instances
- Fetch EDID from _DDC if available
- SMU13 zero rpm user control
- lots of fixes/cleanups

amdkfd:
- Increase event FIFO size
- add topology cap flag for per queue reset

msm:
- DPU:
- SA8775P support
- (disabled by default) MSM8917, MSM8937, MSM8953 and MSM8996 support
- Enable large framebuffer support
- Drop MSM8998 and SDM845
- DP:
- SA8775P support
- GPU:
- a7xx preemption support
- Adreno A663 support

ast:
- warn about unsupported TX chips

ivpu:
- add coredump
- add pantherlake support

rockchip:
- 4K@60Hz display enablement
- generate pll programming tables

panthor:
- add timestamp query API
- add realtime group priority
- add fdinfo support

etnaviv:
- improve handling of DMA address limits
- improve GPU hangcheck

exynos:
- Decon Exynos7870 support

mediatek:
- add OF graph support

omap:
- locking fixes

bochs:
- convert to gem/shmem from simpledrm

v3d:
- support big/super pages
- add gemfs

vc4:
- BCM2712 support refactoring
- add YUV444 format support

udmabuf:
- folio related fixes

nouveau:
- add panic support on nv50+

 
20 Nov 2024: soc updates for 6.13 [+ + +]
The SoC tree this time has a moderate 840 patches from 203
contributors. There is not much remarkable in there, overall
we have a lot of new SoCs and board files in the devicetree
updates, but not as many changes to the Snapdragon platform
as we've had most of last year.

The most active contributors by number of patches this
time were:

     32 Geert Uytterhoeven
     29 Krzysztof Kozlowski
     26 Marek Vasut
     26 Konrad Dybcio
     23 Frank Li
     22 Dmitry Baryshkov
     21 Fei Shao
     18 Wolfram Sang
     18 Fabio Estevam
     17 Manorit Chawdhry
     14 Andreas Kemnade
     12 Nick Chan
     12 Neil Armstrong
     12 Jo=EF=BF=BD=EF=BF=BDo Paulo Gon=EF=BF=BD=EF=BF=BDalves
     12 Ivaylo Ivanov

and the overall dirstat shows nxp, qualcomm, rockchip
and ti as the largest changes, with only NXP i.MX6
still seeing a lot of work on 32-bit boards.

   0.4% Documentation/devicetree/bindings/arm/
   0.5% Documentation/devicetree/bindings/clock/
   0.1% Documentation/devicetree/bindings/soc/mediatek/
   0.2% Documentation/devicetree/bindings/
   0.2% arch/arm/boot/dts/allwinner/
   0.1% arch/arm/boot/dts/amlogic/
   1.9% arch/arm/boot/dts/microchip/
  17.7% arch/arm/boot/dts/nxp/imx/
   0.5% arch/arm/boot/dts/qcom/
   0.4% arch/arm/boot/dts/renesas/
   0.7% arch/arm/boot/dts/rockchip/
   0.2% arch/arm/boot/dts/st/
   0.3% arch/arm/boot/dts/ti/omap/
   0.3% arch/arm/
   0.2% arch/arm64/boot/dts/allwinner/
   0.4% arch/arm64/boot/dts/amlogic/
   3.0% arch/arm64/boot/dts/apple/
   4.5% arch/arm64/boot/dts/exynos/
   8.2% arch/arm64/boot/dts/freescale/
   2.1% arch/arm64/boot/dts/mediatek/
   1.0% arch/arm64/boot/dts/nvidia/
  12.6% arch/arm64/boot/dts/qcom/
   0.7% arch/arm64/boot/dts/renesas/
  19.6% arch/arm64/boot/dts/rockchip/
   0.1% arch/arm64/boot/dts/st/
  11.4% arch/arm64/boot/dts/ti/
   0.1% arch/arm64/boot/dts/xilinx/
   0.2% arch/riscv/boot/dts/sophgo/
   0.4% arch/riscv/boot/dts/thead/
   0.1% arch/
   0.1% drivers/firmware/arm_scmi/transports/
   0.2% drivers/firmware/arm_scmi/
   0.4% drivers/firmware/xilinx/
   0.8% drivers/firmware/
   0.4% drivers/misc/
   0.4% drivers/reset/amlogic/
   0.4% drivers/reset/
   0.5% drivers/soc/hisilicon/
   0.1% drivers/soc/imx/
   0.8% drivers/soc/mediatek/
   3.4% drivers/soc/qcom/
   0.1% drivers/soc/
   0.1% drivers/
   1.1% include/dt-bindings/clock/
   0.1% include/linux/soc/
   0.6% include/linux/
20 Nov 2024: asm-generic updates for 6.13 [+ + +]
asm-generic updates for 6.13

These are a number of unrelated cleanups, generally simplifying the
architecture specific header files:

 - A series from Al Viro simplifies asm/vga.h, after it turns out that
   most of it can be generalized.

 - A series from Julian Vetter adds a common version of
   memcpy_{to,from}io() and memset_io() and changes most architectures
   to use that instead of their own implementation

 - A series from Niklas Schnelle concludes his work to make PC
   style inb()/outb() optional

 - Nicolas Pitre contributes improvements for the generic do_div()
   helper

 - Christoph Hellwig adds a generic version of page_to_phys()
   and phys_to_page(), replacing the slightly different architecture
   specific definitions.

 - Uwe Kleine-Koenig has a minor cleanup for ioctl definitions

20 Nov 2024: tracing/tools: Updates for v6.13 [+ + +]

tracing/tools: Updates for 6.13

- Add ':' to getopt option 'trace-buffer-size' in timerlat_hist for
  consistency

- Remove unused sched_getattr define

- Rename sched_setattr() helper to syscall_sched_setattr() to avoid
  conflicts

- Update counters to long from int to avoid overflow

- Add libcpupower dependency detection

- Add --deepest-idle-state to timerlat to limit deep idle sleeps

- Other minor clean ups and documentation changes




trace-tools-v6.13

20 Nov 2024: ring-buffer: Updates for 6.13 [+ + +]

trace ring-buffer updates for v6.13

- Limit the time interrupts are disabled in rb_check_pages()

  The rb_check_pages() is called after the ring buffer size is updated to
  make sure that the ring buffer has not been corrupted. Commit
  c2274b908db05 ("ring-buffer: Fix a race between readers and resize
  checks") fixed a race with the check pages and simultaneous resizes to the
  ring buffer by adding a raw_spin_lock_irqsave() around the check
  operation. Although this was a simple fix, it would hold interrupts
  disabled for non determinative amount of time. This could harm PREEMPT_RT
  operations.

  Instead, modify the logic by adding a counter when the buffer is modified
  and to release the raw_spin_lock() at each iteration. It checks the
  counter under the lock to see if a modification happened during the loop,
  and if it did, it would restart the loop up to 3 times. After 3 times, it
  will simply exit the check, as it is unlikely that would ever happen as
  buffer resizes are rare occurrences.

- Replace some open coded str_low_high() with the helper

- Fix some documentation/comments




trace-ring-buffer-v6.13

20 Nov 2024: First batch of KVM changes for Linux 6.13 merge window [+ + +]
The biggest change here is eliminating the awful idea that KVM had, of
essentially guessing which pfns are refcounted pages.  The reason to
do so was that KVM needs to map both non-refcounted pages (for example
BARs of VFIO devices) and VM_PFNMAP/VM_MIXMEDMAP VMAs that contain
refcounted pages.  However, the result was security issues in the past,
and more recently the inability to map VM_IO and VM_PFNMAP memory
that _is_ backed by struct page but is not refcounted.  In particular
this broke virtio-gpu blob resources (which directly map host graphics
buffers into the guest as "vram" for the virtio-gpu device) with the
amdgpu driver, because amdgpu allocates non-compound higher order pages
and the tail pages could not be mapped into KVM.

This requires adjusting all uses of struct page in the per-architecture
code, to always work on the pfn whenever possible.  The large series that
did this, from David Stevens and Sean Christopherson, also cleaned up
substantially the set of functions that provided arch code with the
pfn for a host virtual addresses.  The previous maze of twisty little
passages, all different, is replaced by five functions (__gfn_to_page,
__kvm_faultin_pfn, the non-__ versions of these two, and kvm_prefetch_pages)
saving almost 200 lines of code.

ARM:

* Support for stage-1 permission indirection (FEAT_S1PIE) and
  permission overlays (FEAT_S1POE), including nested virt + the
  emulated page table walker

* Introduce PSCI SYSTEM_OFF2 support to KVM + client driver. This call
  was introduced in PSCIv1.3 as a mechanism to request hibernation,
  similar to the S4 state in ACPI

* Explicitly trap + hide FEAT_MPAM (QoS controls) from KVM guests. As
  part of it, introduce trivial initialization of the host's MPAM
  context so KVM can use the corresponding traps

* PMU support under nested virtualization, honoring the guest
  hypervisor's trap configuration and event filtering when running a
  nested guest

* Fixes to vgic ITS serialization where stale device/interrupt table
  entries are not zeroed when the mapping is invalidated by the VM

* Avoid emulated MMIO completion if userspace has requested synchronous
  external abort injection

* Various fixes and cleanups affecting pKVM, vCPU initialization, and
  selftests

LoongArch:

* Add iocsr and mmio bus simulation in kernel.

* Add in-kernel interrupt controller emulation.

* Add support for virtualization extensions to the eiointc irqchip.

PPC:

* Drop lingering and utterly obsolete references to PPC970 KVM, which was
  removed 10 years ago.

* Fix incorrect documentation references to non-existing ioctls

RISC-V:

* Accelerate KVM RISC-V when running as a guest

* Perf support to collect KVM guest statistics from host side

s390:

* New selftests: more ucontrol selftests and CPU model sanity checks

* Support for the gen17 CPU model

* List registers supported by KVM_GET/SET_ONE_REG in the documentation

x86:

* Cleanup KVM's handling of Accessed and Dirty bits to dedup code, improve
  documentation, harden against unexpected changes.  Even if the hardware
  A/D tracking is disabled, it is possible to use the hardware-defined A/D
  bits to track if a PFN is Accessed and/or Dirty, and that removes a lot
  of special cases.

* Elide TLB flushes when aging secondary PTEs, as has been done in x86's
  primary MMU for over 10 years.

* Recover huge pages in-place in the TDP MMU when dirty page logging is
  toggled off, instead of zapping them and waiting until the page is
  re-accessed to create a huge mapping.  This reduces vCPU jitter.

* Batch TLB flushes when dirty page logging is toggled off.  This reduces
  the time it takes to disable dirty logging by ~3x.

* Remove the shrinker that was (poorly) attempting to reclaim shadow page
  tables in low-memory situations.

* Clean up and optimize KVM's handling of writes to MSR_IA32_APICBASE.

* Advertise CPUIDs for new instructions in Clearwater Forest

* Quirk KVM's misguided behavior of initialized certain feature MSRs to
  their maximum supported feature set, which can result in KVM creating
  invalid vCPU state.  E.g. initializing PERF_CAPABILITIES to a non-zero
  value results in the vCPU having invalid state if userspace hides PDCM
  from the guest, which in turn can lead to save/restore failures.

* Fix KVM's handling of non-canonical checks for vCPUs that support LA57
  to better follow the "architecture", in quotes because the actual
  behavior is poorly documented.  E.g. most MSR writes and descriptor
  table loads ignore CR4.LA57 and operate purely on whether the CPU
  supports LA57.

* Bypass the register cache when querying CPL from kvm_sched_out(), as
  filling the cache from IRQ context is generally unsafe; harden the
  cache accessors to try to prevent similar issues from occuring in the
  future.  The issue that triggered this change was already fixed in 6.12,
  but was still kinda latent.

* Advertise AMD_IBPB_RET to userspace, and fix a related bug where KVM
  over-advertises SPEC_CTRL when trying to support cross-vendor VMs.

* Minor cleanups

* Switch hugepage recovery thread to use vhost_task.  These kthreads can
  consume significant amounts of CPU time on behalf of a VM or in response
  to how the VM behaves (for example how it accesses its memory); therefore
  KVM tried to place the thread in the VM's cgroups and charge the CPU
  time consumed by that work to the VM's container.  However the kthreads
  did not process SIGSTOP/SIGCONT, and therefore cgroups which had KVM
  instances inside could not complete freezing.  Fix this by replacing the
  kthread with a PF_USER_WORKER thread, via the vhost_task abstraction.
  Another 100+ lines removed, with generally better behavior too like
  having these threads properly parented in the process tree.

* Revert a workaround for an old CPU erratum (Nehalem/Westmere) that didn't
  really work; there was really nothing to work around anyway: the broken
  patch was meant to fix nested virtualization, but the PERF_GLOBAL_CTRL
  MSR is virtualized and therefore unaffected by the erratum.

* Fix 6.12 regression where CONFIG_KVM will be built as a module even
  if asked to be builtin, as long as neither KVM_INTEL nor KVM_AMD is 'y'.

x86 selftests:

* x86 selftests can now use AVX.

Documentation:

* Use rST internal links

* Reorganize the introduction to the API document

Generic:

* Protect vcpu->pid accesses outside of vcpu->mutex with a rwlock instead
  of RCU, so that running a vCPU on a different task doesn't encounter long
  due to having to wait for all CPUs become quiescent.  In general both reads
  and writes are rare, but userspace that supports confidential computing is
  introducing the use of "helper" vCPUs that may jump from one host processor
  to another.  Those will be very happy to trigger a synchronize_rcu(), and
  the effect on performance is quite the disaster.

20 Nov 2024: platform-drivers-x86 for v6.13-1 [+ + +]
Here is the main PDx86 PR for v6.13.

Note there's an expected conflict in this merge window for amd/hsmp.
Given what's merged so far into your tree, it might not trigger yet but
when merging the other change from driver-core.

Highlights:
 - alienware-wmi:WMAX thermal interface support
 - amd/hsmp:Split ACPI and platform device based drivers
 - amd/x3d_vcache:X3D frequency/cache mode switching support
 - asus-wmi:Thermal policy fixes
 - intel/pmt:Disable C1 auto-demotion in suspend to allow
entering the deepest C-states
 - intel-hid:Fix volume buttons on Thinkpad X12 Detachable
Tablet Gen 1
 - intel_scu_ipc:Replace "workaround" with 32-bit IO
 - panasonic-laptop:Correct *_show() function error handling
 - p2sb:Gemini Lake P2SB devfn correction
 - think-lmi:Admin/System certificate authentication support
 - wmi:Disable WMI devices for shutdown, refactoring
continues
 - x86-android-tablets:Vexia EDU ATLA 10 tablet support
 - platform/surface:Surface Pro 9 5G (Arm/QCOM) support
 - Miscellaneous cleanups / refactoring / improvements

Expected conflicts:
 - hsmp driver split into two vs constifying bin_attribute [1]

[1] https://lore.kernel.org/all/20241107212645.41252436@canb.auug.org.au/

Regards, i.


platform-drivers-x86 for v6.13-1

Highlights:
 - alienware-wmi:WMAX thermal interface support
 - amd/hsmp:Split ACPI and platform device based drivers
 - amd/x3d_vcache:X3D frequency/cache mode switching support
 - asus-wmi:Thermal policy fixes
 - intel/pmt:Disable C1 auto-demotion in suspend to allow
entering the deepest C-states
 - intel-hid:Fix volume buttons on Thinkpad X12 Detachable
Tablet Gen 1
 - intel_scu_ipc:Replace "workaround" with 32-bit IO
 - panasonic-laptop:Correct *_show() function error handling
 - p2sb:Gemini Lake P2SB devfn correction
 - think-lmi:Admin/System certificate authentication support
 - wmi:Disable WMI devices for shutdown, refactoring
continues
 - x86-android-tablets:Vexia EDU ATLA 10 tablet support
 - platform/surface:Surface Pro 9 5G (Arm/QCOM) support
 - Miscellaneous cleanups / refactoring / improvements

Expected conflicts:
 - hsmp driver split into two vs constifying bin_attribute [1]

[1] https://lore.kernel.org/all/20241107212645.41252436@canb.auug.org.au/

The following is an automated shortlog grouped by driver:

alienware-wmi:
 -  added force module parameters
 -  added platform profile support
 -  Adds support to Alienware x17 R2
 -  alienware_wmax_command() is now input size agnostic
 -  create_thermal_profile() no longer brute-forces IDs
 -  extends the list of supported models
 -  fixed indentation and clean up
 -  Fix spelling mistake "requieres" -> "requires"
 -  order alienware_quirks[] alphabetically
 -  WMAX interface documentation

amd: amd_3d_vcache:
 -  Add AMD 3D V-Cache optimizer driver
 -  Add sysfs ABI documentation

amd/hsmp:
 -  Add new error code and error logs
 -  Change generic plat_dev name to hsmp_pdev
 -  Change the error type
 -  Convert amd_hsmp_rdwr() to a function pointer
 -  Create hsmp/ directory
 -  Create separate ACPI, plat and common drivers
 -  Create wrapper function init_acpi()
 -  Make hsmp_pdev static instead of global
 -  mark hsmp_msg_desc_table[] as maybe_unused
 -  Move ACPI code to acpi.c
 -  Move platform device specific code to plat.c
 -  Move structure and macros to header file
 -  Use dev_groups in the driver structure
 -  Use name space while exporting module symbols

amd/pmf:
 -  Switch to platform_get_resource() and devm_ioremap_resource()
 -  Use dev_err_probe() to simplify error handling

asus-laptop:
 -  prefer strscpy() over strcpy()

asus-wmi:
 -  Fix inconsistent use of thermal policies
 -  Use platform_profile_cycle()

classmate-laptop:
 -  Replace snprintf in show functions with sysfs_emit

compal-laptop:
 -  use sysfs_emit() instead of sprintf()

dell-dcdbase:
 -  Replace snprintf in show functions with sysfs_emit

Documentation: alienware-wmi:
 -  Describe THERMAL_INFORMATION operation 0x02

eeepc-laptop:
 -  use sysfs_emit() instead of sprintf()

hp: hp-bioscfg:
 -  remove redundant if statement

intel:
 -  Add 'intel' prefix to the modules automatically

intel-hid:
 -  fix volume buttons on Thinkpad X12 Detachable Tablet Gen 1

intel/pmc:
 -  Disable C1 auto-demotion during suspend
 -  Refactor platform resume functions to use cnl_resume()

intel/pmt:
 -  allow user offset for PMT callbacks
 -  Correct the typo 'ACCCESS_LOCAL'

intel_scu_ipc:
 -  Convert to check for errors first
 -  Don't use "proxy" headers
 -  Replace workaround by 32-bit IO
 -  Save a copy of the entire struct intel_scu_ipc_data
 -  Simplify code with cleanup helpers
 -  Unify the flow in pwr_reg_rdwr()

intel/vsec:
 -  Remove a useless mutex

MAINTAINERS:
 -  adjust file entry in INTEL TPMI DRIVER
 -  Change AMD PMF driver status to "Supported"
 -  Update ISHTP ECLITE maintainer entry

p2sb:
 -  Cache correct PCI bar for P2SB on Gemini Lake

panasonic-laptop:
 -  Return errno correctly in show callback

surface: aggregator_registry:
 -  Add Surface Pro 9 5G

Switch back to struct platform_driver::
 - remove()

think-lmi:
 -  Add certificate as mechanism
 -  Allow empty admin password
 -  improve check if BIOS account security enabled
 -  Multi-certificate support

wmi:
 -  Implement proper shutdown handling
 -  Introduce to_wmi_driver()
 -  Remove wmi_block_list
 -  Replace dev_to_wdev() with to_wmi_device()

x86: acer-wmi:
 -  remove unused macros

x86-android-tablets:
 -  Add get_i2c_adap_by_handle() helper
 -  Add support for getting i2c_adapter by PCI parent devname()
 -  Add support for Vexia EDU ATLA 10 tablet

 
19 Nov 2024: x86/tdx for 6.13-rc1 [+ + +]
refine some interactions between TDX guests and VMMs.

The first leverages a new TDX module feature to runtime disable the
ability for a VM to inject #VE exceptions. Before this feature, there
was only a static on/off switch and the guest had to panic if it was
configured in a bad state.

The second lets the guest opt in to be able to access the topology
CPUID leaves. Before this, accesses to those leaves would #VE.

For both of these, it would have been nicest to just change the
default behavior, but some pesky "other" OSes evidently need to retain
the legacy behavior.

--

 - Add new infrastructure for reading TDX metadata
 - Use the newly-available metadata to:
  - Disable potentially nasty #VE exceptions
  - Get more complete CPU topology information from the VMM

19 Nov 2024: x86/misc for 6.13-rc1 [+ + +]
branch, these are super random: a compile fix for some newish LLVM
checks and making sure a Kconfig text reference to "RSB" matches the
normal definition.

--

 - Rework some CPU setup code to keep LLVM happy on 32-bit
 - Correct RSB terminology in Kconfig text

19 Nov 2024: x86/sgx for 6.13-rc1 [+ + +]
one this round.

--

 - Use vmalloc_array() instead of vmalloc()

19 Nov 2024: dma-mapping updates for Linux 6.13 [+ + +]
dma-mapping updates for Linux 6.13

 - improve the DMA API tracing code (Sean Anderson)
 - misc cleanups (Christoph Hellwig, Sui Jingfeng)
 - fix pointer abuse when finding the shared DMA pool (Geert Uytterhoeven)
 - fix a deadlock in dma-debug (Levi Yun)

19 Nov 2024: OpenRISC updates for 6.13 [+ + +]

OpenRISC updates for 6.13

A single fixup from me:

 - Fix bug with earlycon being broken due to removal of early_ioremap.

19 Nov 2024: seccomp update for v6.13-rc1 [+ + +]

to port arm32 to the generic entry code.

Thanks!

-Kees

seccomp update for v6.13-rc1

- Provide stub for !HAVE_ARCH_SECCOMP_FILTER (Linus Walleij)

19 Nov 2024: execve updates for v6.13-rc1 [+ + +]

Thanks!

-Kees

execve updates for v6.13-rc1

- binfmt: Fix comment typos (Christophe JAILLET)

- exec: Use argv[0] for "comm" with AT_EMPTY_PATH (Tycho Andersen,
  Dan Carpenter, Nir Lichtman)

- exec: remove legacy custom binfmt modules autoloading (Nir Lichtman)

- coredump: Do not lock when copying "comm"

- MAINTAINERS: add auxvec.h and set myself as maintainer

19 Nov 2024: configfs updates for Linux 6.13 [+ + +]
configfs updates for Linux 6.13

 - remove unused code (Dr. David Alan Gilbert)
 - improve item creation performance (Seamus Connor)

19 Nov 2024: Networking for v6.13 [+ + +]
Stephen reported a trivial conflict in the MAINTAINERS file:
https://lore.kernel.org/linux-next/20241107214351.59b251f1@canb.auug.org.au/

and another one in tools/testing/selftests/bpf/Makefile:
https://lore.kernel.org/linux-next/20241104115924.2615858f@canb.auug.org.au/

Networking changes for 6.13.

The most significant set of changes is the per netns RTNL. The new
behavior is disabled by default, regression risk should be contained.

Notably the new config knob PTP_1588_CLOCK_VMCLOCK will inherit its
default value from PTP_1588_CLOCK_KVM, as the first is intended to be
a more reliable replacement for the latter.

Core
----

 - Started a very large, in-progress, effort to make the RTNL lock
   scope per network-namespace, thus reducing the lock contention
   significantly in the containerized use-case, comprising:
   - RCU-ified some relevant slices of the FIB control path
   - introduce basic per netns locking helpers
   - namespacified the IPv4 address hash table
   - remove rtnl_register{,_module}() in favour of rtnl_register_many()
   - refactor rtnl_{new,del,set}link() moving as much validation as
     possible out of RTNL lock
   - convert all phonet doit() and dumpit() handlers to RCU
   - convert IPv4 addresses manipulation to per-netns RTNL
   - convert virtual interface creation to per-netns RTNL
   the per-netns lock infra is guarded by the CONFIG_DEBUG_NET_SMALL_RTNL
   knob, disabled by default ad interim.

 - Introduce NAPI suspension, to efficiently switching between busy
   polling (NAPI processing suspended) and normal processing.

 - Migrate the IPv4 routing input, output and control path from direct
   ToS usage to DSCP macros. This is a work in progress to make ECN
   handling consistent and reliable.

 - Add drop reasons support to the IPv4 rotue input path, allowing
   better introspection in case of packets drop.

 - Make FIB seqnum lockless, dropping RTNL protection for read
   access.

 - Make inet{,v6} addresses hashing less predicable.

 - Allow providing timestamp OPT_ID via cmsg, to correlate TX packets
   and timestamps

Things we sprinkled into general kernel code
19 Nov 2024: erofs updates for 6.13-rc1 [+ + +]
Could you consider this pull request for 6.13-rc1?

There is no outstanding feature for this cycle.  The most useful changes
are SEEK_{DATA,HOLE} support and some decompression micro-optimization.
Other than those, there are some bugfixes and cleanups as usual.

All commits have been in -next for a while and no potential merge
conflict is observed.

Thanks,
Gao Xiang

Changes since last update:

 - Add SEEK_{DATA,HOLE} support;

 - Free redundant pclusters if no cached compressed data is valid;

 - Add sysfs entry to drop internal caches;

 - Several bugfixes & cleanups.

19 Nov 2024: media updates [+ + +]

dia/v6.13-1


For:

- removal of the old omap4iss media driver;
- mantis: remove orphan mantis_core.h;
- add support for Raspberypi CFE;
- uvc driver got a co-maintainer;
- main media tree moved to git://linuxtv.org/media.git;
- lots of driver cleanups, updates and fixes.

Regards,
Mauro

media updates for v6.13-rc1

19 Nov 2024: arch/microblaze patches for 6.13-rc1 [+ + +]
please pull these 3 simple patches to your tree.

Thanks,
Michal


Microblaze patches for 6.13-rc1

- Export xmb_manager functions
- Remove empty #ifndef __ASSEMBLY__ statement
- Use str_yes_no() helper in show_cpuinfo()

 
18 Nov 2024: MM updates for 6.13-rc1 [+ + +]
thanks.


I'm not seeing any conflicts at this time.  Upcoming merge issues along
with their linux-next resolutions are as follows:

kernel/auditsc.c, vs security tree:
https://lkml.kernel.org/r/20241014144648.1923104a@canb.auug.org.au

security/lsm_audit.c, vs security tree:
https://lkml.kernel.org/r/20241023123139.127ad800@canb.auug.org.au

arch/arm64/mm/pageattr.c, vs arm tree:
https://lkml.kernel.org/r/20241024103709.082a6950@canb.auug.org.au

include/linux/mm.h, vs arm tree:
https://lkml.kernel.org/r/20241028111058.4419a9ed@canb.auug.org.au

arch/s390/include/asm/set_memory.h and arch/s390/mm/pageattr.c, vs s390
tree:
https://lkml.kernel.org/r/20241028111606.5c009055@canb.auug.org.au

lib/Makefile, vs asm-generic tree:
https://lkml.kernel.org/r/20241029095525.0fba9d23@canb.auug.org.au

arch/arm64/include/asm/mman.h, vs arm64 tree:
https://lkml.kernel.org/r/20241031104247.65c76c00@canb.auug.org.au

drivers/block/zram/zram_drv.c, vs block tree:
https://lkml.kernel.org/r/20241111135241.1640f547@canb.auug.org.au

arch/s390/mm/pageattr.c, vs s390 tree:
https://lkml.kernel.org/r/20241114101639.282d82a8@canb.auug.org.au



- The series "zram: optimal post-processing target selection" from
  Sergey Senozhatsky improves zram's post-processing selection algorithm.
  This leads to improved memory savings.

- Wei Yang has gone to town on the mapletree code, contributing several
  series which clean up the implementation:

- "refine mas_mab_cp()"
- "Reduce the space to be cleared for maple_big_node"
- "maple_tree: simplify mas_push_node()"
- "Following cleanup after introduce mas_wr_store_type()"
- "refine storing null"

- The series "selftests/mm: hugetlb_fault_after_madv improvements" from
  David Hildenbrand fixes this selftest for s390.

- The series "introduce pte_offset_map_{ro|rw}_nolock()" from Qi Zheng
  implements some rationaizations and cleanups in the page mapping code.

- The series "mm: optimize shadow entries removal" from Shakeel Butt
  optimizes the file truncation code by speeding up the handling of shadow
  entries.

- The series "Remove PageKsm()" from Matthew Wilcox completes the
  migration of this flag over to being a folio-based flag.

- The series "Unify hugetlb into arch_get_unmapped_area functions" from
  Oscar Salvador implements a bunch of consolidations and cleanups in the
  hugetlb code.

- The series "Do not shatter hugezeropage on wp-fault" from Dev Jain
  takes away the wp-fault time practice of turning a huge zero page into
  small pages.  Instead we replace the whole thing with a THP.  More
  consistent cleaner and potentiall saves a large number of pagefaults.

- The series "percpu: Add a test case and fix for clang" from Andy
  Shevchenko enhances and fixes the kernel's built in percpu test code.

- The series "mm/mremap: Remove extra vma tree walk" from Liam Howlett
  optimizes mremap() by avoiding doing things which we didn't need to do.

- The series "Improve the tmpfs large folio read performance" from
  Baolin Wang teaches tmpfs to copy data into userspace at the folio size
  rather than as individual pages.  A 20% speedup was observed.

- The series "mm/damon/vaddr: Fix issue in
  damon_va_evenly_split_region()" fro Zheng Yejian fixes DAMON splitting.

- The series "memcg-v1: fully deprecate charge moving" from Shakeel Butt
  removes the long-deprecated memcgv2 charge moving feature.

- The series "fix error handling in mmap_region() and refactor" from
  Lorenzo Stoakes cleanup up some of the mmap() error handling and
  addresses some potential performance issues.

- The series "x86/module: use large ROX pages for text allocations" from
  Mike Rapoport teaches x86 to use large pages for read-only-execute
  module text.

- The series "page allocation tag compression" from Suren Baghdasaryan
  is followon maintenance work for the new page allocation profiling
  feature.

- The series "page->index removals in mm" from Matthew Wilcox remove
  most references to page->index in mm/.  A slow march towards shrinking
  struct page.

- The series "damon/{self,kunit}tests: minor fixups for DAMON debugfs
  interface tests" from Andrew Paniakin performs maintenance work for
  DAMON's self testing code.

- The series "mm: zswap swap-out of large folios" from Kanchana Sridhar
  improves zswap's batching of compression and decompression.  It is a
  step along the way towards using Intel IAA hardware acceleration for
  this zswap operation.

- The series "kasan: migrate the last module test to kunit" from
  Sabyrzhan Tasbolatov completes the migration of the KASAN built-in tests
  over to the KUnit framework.

- The series "implement lightweight guard pages" from Lorenzo Stoakes
  permits userapace to place fault-generating guard pages within a single
  VMA, rather than requiring that multiple VMAs be created for this.
  Improved efficiencies for userspace memory allocators are expected.

- The series "memcg: tracepoint for flushing stats" from JP Kobryn uses
  tracepoints to provide increased visibility into memcg stats flushing
  activity.

- The series "zram: IDLE flag handling fixes" from Sergey Senozhatsky
  fixes a zram buglet which potentially affected performance.

- The series "mm: add more kernel parameters to control mTHP" from
  Ma=EDra Canal enhances our ability to control/configuremultisize THP from
  the kernel boot command line.

- The series "kasan: few improvements on kunit tests" from Sabyrzhan
  Tasbolatov has a couple of fixups for the KASAN KUnit tests.

- The series "mm/list_lru: Split list_lru lock into per-cgroup scope"
  from Kairui Song optimizes list_lru memory utilization when lockdep is
  enabled.

18 Nov 2024: HID for 6.13 [+ + +]
please pull from

nus-2024111801

to receive HID subsystem queue for 6.13 merge window.

Please note: there is one SHA that you might notice was not present in=20
linux-next, and that's e8a0581914bd ("HID: multitouch: make mt_set_mode()=
=20
less cryptic").

The reason for this is that there was a hiccup when merging this patch=20
originally, and the topic branch was based on some random state of the=20
for-next branch, so it contained a lot of unrelated churn. And I've=20
noticed that only now, when preparing the pull request. The end result is=
=20
identical on a code level, but I didn't want to send you the branch with=20
git merge history that makes no sense [1], so I've created [2] instead,=20
and that's the one present in this pull request.

r-6.13/multitouch

Highlights:

=3D=3D=3D=3D=3D
- improvement of the way hid-bpf coexists with specific drivers=20
  (others than hid-generic) that are already bound to devices (Benjamin=20
  Tissoires)
- removal of three way-too-aggressive BUG_ON()s from HID drivers (He=20
  Lugang)
- assorted cleanups and small code fixes to HID core (Dmitry Torokhov, Yan=
=20
  Zhen, Nathan Chancellor, Andy Shevchenko)
- support for Corsair Void headset family (Stuart Hayhurst)
- Support for Goodix GT7986U SPI (Charles Wang)
- initial vendor-specific driver for Kysona, currently adding support for
  Kysona M600 (Lode Willems)
- other assorted code cleanups and small bugfixes all over the place
=3D=3D=3D=3D=3D

Thanks!

18 Nov 2024: Devicetree updates for v6.13 [+ + +]
normal spots in arch/ and sound/ which are some updates to callers of DT 
functions.

Rob


Devicetree updates for v6.13:

Bindings:

- Enable dtc "interrupt_provider" warnings for binding examples.
  Fix the warnings in fsl,mu-msi and ti,sci-inta due to this.

- Convert zii,rave-sp-wdt, zii,rave-sp-pwrbutton,  and
  altr,fpga-passive-serial to DT schema format

- Add some documentation on the different forms of YAML text blocks
  which are a constant source of review comments

- Fix some schema errors in constraints for arrays

- Add compatibles for qcom,sar2130p-pdc and onnn,adt7462

DT core:

- Allow overlay kunit tests to run CONFIG_OF_OVERLAY=n

- Add some warnings on deprecated address handling

- Rework early_init_dt_scan() so the arch can pass in the phys address
  of the DTB as __pa() is not always valid to use. This fixes a warning
  for arm64 with kexec.

- Add and use some new DT graph iterators for iterating over ports and
  endpoints

- Rework reserved-memory handling to be sized dynamically for fixed
  regions

- Optimize of_modalias() to avoid a strlen() call

- Constify struct device_node and property pointers where ever possible

18 Nov 2024: x86/cpu for v6.13 [+ + +]
please pull the x86/cpu lineup for v6.13.

Thx.

---

- Add a feature flag which denotes AMD CPUs supporting workload classification
  with the purpose of using such hints when making scheduling decisions

- Determine the boost enumerator for each AMD core based on its type: efficiency
  or performance, in the cppc driver

- Add the type of a CPU to the topology CPU descriptor with the goal of
  supporting and making decisions based on the type of the respective core

- Add a feature flag to denote AMD cores which have heterogeneous topology and
  enable SD_ASYM_PACKING for those

- Check microcode revisions before disabling PCID on Intel

- Cleanups and fixlets

18 Nov 2024: Kselftest update for Linux 6.13-rc1 [+ + +]
Hi Linus,


kselftest update for Linux 6.13-rc1

-- timers test - removes duplicates defines
-- timers test - fixes to improve error reporting
-- rtc test - adds check rtc alarm status to alarm test
-- resctrl test - adds array overrun checks during iMC config parsing code
-- resctrl test - adds array overflow checks when reading strings
-- resctrl test - fixes and reorganizing code

Looks like I forgot to mention signal test changes in my tag
message. :(

diff is attached.

Tests passed on my kselftest next branch:

- Individual test runs of signal, timers, rtc, and resctrl

thanks,
-- Shuah

linux_kselftest-next-6.13-rc1

kselftest update for Linux 6.13-rc1

-- timers test - removes duplicates defines
-- timers test - fixes to improve error reporting
-- rtc test - adds check rtc alarm status to alarm test
-- resctrl test - adds array overrun checks during iMC config parsing code
-- resctrl test - adds array overflow checks when reading strings
-- resctrl test - fixes and reorganizing code

18 Nov 2024: timers/core for v6.13-rc1 [+ + +]
please pull the latest timers/core branch from:

-11-18

rsus do_exit()


A rather large update for timekeeping and timers:

  - The final step to get rid of auto-rearming posix-timers

    posix-timers are currently auto-rearmed by the kernel when the signal
    of the timer is ignored so that the timer signal can be delivered once
    the corresponding signal is unignored.

    This requires to throttle the timer to prevent a DoS by small intervals
    and keeps the system pointlessly out of low power states for no value.
    This is a long standing non-trivial problem due to the lock order of
    posix-timer lock and the sighand lock along with life time issues as
    the timer and the sigqueue have different life time rules.

    Cure this by:

     * Embedding the sigqueue into the timer struct to have the same life
       time rules. Aside of that this also avoids the lookup of the timer
       in the signal delivery and rearm path as it's just a always valid
       container_of() now.

     * Queuing ignored timer signals onto a seperate ignored list.

     * Moving queued timer signals onto the ignored list when the signal is
       switched to SIG_IGN before it could be delivered.

     * Walking the ignored list when SIG_IGN is lifted and requeue the
       signals to the actual signal lists. This allows the signal delivery
       code to rearm the timer.

    This also required to consolidate the signal delivery rules so they are
    consistent across all situations. With that all self test scenarios
    finally succeed.


  - Core infrastructure for VFS multigrain timestamping

    This is required to allow the kernel to use coarse grained time stamps
    by default and switch to fine grained time stamps when inode attributes
    are actively observed via getattr().

    These changes have been provided to the VFS tree as well, so that the
    VFS specific infrastructure could be built on top.


  - Cleanup and consolidation of the sleep() infrastructure

    * Move all sleep and timeout functions into one file

    * Rework udelay() and ndelay() into proper documented inline functions
      and replace the hardcoded magic numbers by proper defines.

    * Rework the fsleep() implementation to take the reality of the timer
      wheel granularity on different HZ values into account. Right now the
      boundaries are hard coded time ranges which fail to provide the
      requested accuracy on different HZ settings.

    * Update documentation for all sleep/timeout related functions and fix
      up stale documentation links all over the place

    * Fixup a few usage sites


  - Rework of timekeeping and adjtimex(2) to prepare for multiple PTP clocks

    A system can have multiple PTP clocks which are participating in
    seperate and independent PTP clock domains. So far the kernel only
    considers the PTP clock which is based on CLOCK TAI relevant as that's
    the clock which drives the timekeeping adjustments via the various user
    space daemons through adjtimex(2).

    The non TAI based clock domains are accessible via the file descriptor
    based posix clocks, but their usability is very limited. They can't be
    accessed fast as they always go all the way out to the hardware and
    they cannot be utilized in the kernel itself.

    As Time Sensitive Networking (TSN) gains traction it is required to
    provide fast user and kernel space access to these clocks.

    The approach taken is to utilize the timekeeping and adjtimex(2)
    infrastructure to provide this access in a similar way how the kernel
    provides access to clock MONOTONIC, REALTIME etc.

    Instead of creating a duplicated infrastructure this rework converts
    timekeeping and adjtimex(2) into generic functionality which operates
    on pointers to data structures instead of using static variables.

    This allows to provide time accessors and adjtimex(2) functionality for
    the independent PTP clocks in a subsequent step.


  - Consolidate hrtimer initialization

    hrtimers are set up by initializing the data structure and then
    seperately setting the callback function for historical reasons.

    That's an extra unnecessary step and makes Rust support less straight
    forward than it should be.

    Provide a new set of hrtimer_setup*() functions and convert the core
    code and a few usage sites of the less frequently used interfaces over.

    The bulk of the htimer_init() to hrtimer_setup() conversion is already
    prepared and scheduled for the next merge window.


  - Drivers:

    * Ensure that the global timekeeping clocksource is utilizing the
      cluster 0 timer on MIPS multi-cluster systems.

      Otherwise CPUs on different clusters use their cluster specific
      clocksource which is not guaranteed to be synchronized with other
      clusters.

    * Mostly boring cleanups, fixes, improvements and code movement

Thanks,

tglx

18 Nov 2024: timers/vdso for v6.13-rc1 [+ + +]
please pull the latest timers/vdso branch from:

-11-18



First step of consolidating the VDSO data page handling:

  The VDSO data page handling is architecture specific for historical
  reasons, but there is no real technical reason to do so.

  Aside of that VDSO data has become a dump ground for various mechanisms
  and fail to provide a clear separation of the functionalities.

  Clean this up by:

    * consolidating the VDSO page data by getting rid of architecture
      specific warts especially in x86 and PowerPC.

    * removing the last includes of header files which are pulling in other
      headers outside of the VDSO namespace.

    * seperating timekeeping and other VDSO data accordingly.

  Further consolidation of the VDSO page handling is done in subsequent
  changes scheduled for the next merge window.

  This also lays the ground for expanding the VDSO time getters for
  independent PTP clocks in a generic way without making every architecture
  add support seperately.

Thanks,

tglx

18 Nov 2024: core/debugobjects for v6.13-rc1 [+ + +]
please pull the latest core/debugobjects branch from:

s-2024-11-18

eing of objects

A set of changes for debugobjects:

  - Prevent destroying the kmem_cache on early failure.

    Destroying a kmem_cache requires work queues to be set up, but in the
    early failure case they are not yet initializated. So rather leak the
    cache instead of triggering a BUG.

  - Reduce parallel pool fill attempts.

    Refilling the object pool requires to take the global pool lock, which
    causes a massive performance issue when a large number of CPUs attempt
    to refill concurrently. It turns out that it's sufficient to let one
    CPU handle the refill from the to free list and in case there are not
    enough objects on it to allocate new objects from the kmem cache.

    This also splits the free list handling from the actual allocation path
    as that yields better results on RT where allocation is restricted to
    preemptible code paths. The refill from free list has no such
    restrictions.

  - Consolidate the global and the per CPU pools to use the same data
    structure, so all helper functions can be shared.

  - Simplify the object allocation/free logic.

    The allocation/free logic is an incomprehensible maze, which tries to
    utilize the to free list and the global pool in the best way. This all
    can be simplified into a straight forward comprehensible code flow.

  - Convert the allocation/free mechanism to batch mode.

    Transferring objects from the global pool to the per CPU pools or vice
    versa is done by walking the hlist and moving object by object. That
    not only increases the pool lock held time, it also dirties up to 17
    cache lines.

    This can be avoided by storing the pointer to the first object in a
    batch of 16 objects in the objects themself and propagate it through
    the batch when an object is enqueued into a pool or to a temporary
    hlist head on allocation.

    This allows to move batches of objects with at max four cache lines
    dirtied and reduces the pool lock held time and therefore contention
    significantly.

  - Improve the object reusage

    The current implementation is too agressively freeing unused objects,
    which is counterproductive on bursty workloads like a kernel compile.

    Address this by:

    * increasing the per CPU pool size

* refilling the per CPU pool from the to be freed pool when the per
          CPU pool emptied a batch

* keeping track of object usage with a exponentially wheighted
          moving average which prevents the work queue callback to free
          objects prematuraly.

    This combined reduces the allocation/free rate for a full kernel
    compile significantly:

                kmem_cache_alloc()  kmem_cache_free()
    Baseline:   380k                330k
    Improved:   170k                117k

  - A few cleanups and a more cache line friendly layout of debug
    information on top.

Thanks,

tglx

18 Nov 2024: irq/core for v6.13-rc1 [+ + +]
please pull the latest irq/core branch from:

-18

issing

A set of updates for the interrupt subsystem:

  - Tree wide:

    * Make nr_irqs static to the core code and provide accessor functions
      to remove existing and prevent future aliasing problems with local
      variables or function arguments of the same name.

  - Core code:

    * Prevent freeing an interrupt in the devres code which is not managed
      by devres in the first place.

    * Use seq_put_decimal_ull_width() for decimal values output in
      /proc/interrupts which increases performance significantly as it
      avoids parsing the format strings over and over.

    * Optimize raising the timer and hrtimer soft interrupts by using the
      'set bit only' variants instead of the combined version which checks
      whether ksoftirqd should be woken up. The latter is a pointless
      exercise as both soft interrupts are raised in the context of the
      timer interrupt and therefore never wake up ksoftirqd.

    * Delegate timer/hrtimer soft interrupt processing to a dedicated thread
      on RT.

      Timer and hrtimer soft interrupts are always processed in ksoftirqd
      on RT enabled kernels. This can lead to high latencies when other
      soft interrupts are delegated to ksoftirqd as well.

      The separate thread allows to run them seperately under a RT
      scheduling policy to reduce the latency overhead.

  - Drivers:

    * New drivers or extensions of existing drivers to support Renesas
      RZ/V2H(P), Aspeed AST27XX, T-HEAD C900 and ATMEL sam9x7 interrupt
      chips

    * Support for multi-cluster GICs on MIPS.

      MIPS CPUs can come with multiple CPU clusters, where each CPU cluster
      has its own GIC (Generic Interrupt Controller). This requires to
      access the GIC of a remote cluster through a redirect register block.

      This is encapsulated into a set of helper functions to keep the
      complexity out of the actual code paths which handle the GIC details.

    * Support for encrypted guests in the ARM GICV3 ITS driver

      The ITS page needs to be shared with the hypervisor and therefore
      must be decrypted.

    * Small cleanups and fixes all over the place

Thanks,

tglx

18 Nov 2024: KUnit update for Linux 6.13-rc1 [+ + +]
Hi Linus,


kunit update for Linux 6.13-rc1

-- fixes user-after-free (UAF) bug in kunit_init_suite()

-- adds option to kunit tool to print just the summary of test results

-- adds option to kunit tool to print just the failed test results

-- fixes kunit_zalloc_skb() to use user passed in gfp value instead of
    hardcoding GFP_KERNEL

-- fixes kunit_zalloc_skb() kernel doc to include allocation flags variable

diff is attached.

Tests passed on my kunit repo:

- Build make allmodconfig

./tools/testing/kunit/kunit.py run
./tools/testing/kunit/kunit.py run --alltests

./tools/testing/kunit/kunit.py run --arch x86_64
./tools/testing/kunit/kunit.py run --alltests --arch x86_64

thanks,
-- Shuah

linux_kselftest-kunit-6.13-rc1

kunit update for Linux 6.13-rc1

-- fixes user-after-free (UAF) bug in kunit_init_suite()

-- adds option to kunit tool to print just the summary of test results

-- adds option to kunit tool to print just the failed test results

-- fixes kunit_zalloc_skb() to use user passed in gfp value instead of
    hardcoding GFP_KERNEL

-- fixes kunit_zalloc_skb() kernel doc to include allocation flags variable

18 Nov 2024: x86/mm changes for v6.13 [+ + +]



x86/mm changes for v6.13:

 - x86/mm/tlb: Put cpumask_test_cpu() check in switch_mm_irqs_off()
               under CONFIG_DEBUG_VM, to micro-optimize the context-switching
       code (Rik van Riel)

 - x86/mm/doc: Add missing details in virtual memory layout (Kirill A. Shutemov)

 Thanks,

Ingo

18 Nov 2024: x86/splitlock changes for v6.13 [+ + +]



x86/splitlock changes for v6.13:

 - Move Split and Bus lock code to a dedicated file (Ravi Bangoria)
 - Add split/bus lock support for AMD (Ravi Bangoria)

 Thanks,

Ingo

18 Nov 2024: Scheduler changes for v6.13 [+ + +]




Scheduler changes for v6.13:

 - Core facilities:

    - Add the "Lazy preemption" model (CONFIG_PREEMPT_LAZY=y), which optimizes
      fair-class preemption by delaying preemption requests to the
      tick boundary, while working as full preemption for RR/FIFO/DEADLINE
      classes. (Peter Zijlstra)

        - x86:   Enable Lazy preemption (Peter Zijlstra)
        - riscv: Enable Lazy preemption (Jisheng Zhang)

    - Initialize idle tasks only once (Thomas Gleixner)

    - sched/ext: Remove sched_fork() hack (Thomas Gleixner)

 - Fair scheduler:
    - Optimize the PLACE_LAG when se->vlag is zero (Huang Shijie)

 - Idle loop:
      Optimize the generic idle loop by removing unnecessary
      memory barrier (Zhongqiu Han)

 - RSEQ:
    - Improve cache locality of RSEQ concurrency IDs for
      intermittent workloads (Mathieu Desnoyers)

 - Waitqueues:
    - Make wake_up_{bit,var} less fragile (Neil Brown)

 - PSI:
    - Pass enqueue/dequeue flags to psi callbacks directly (Johannes Weiner)

 - Preparatory patches for proxy execution:
    - core: Add move_queued_task_locked helper (Connor O'Brien)
    - core: Consolidate pick_*_task to task_is_pushable helper (Connor O'Brien)
    - core: Split out __schedule() deactivate task logic into a helper (John Stultz)
    - core: Split scheduler and execution contexts (Peter Zijlstra)
    - locking/mutex: Make mutex::wait_lock irq safe (Juri Lelli)
    - locking/mutex: Expose __mutex_owner() (Juri Lelli)
    - locking/mutex: Remove wakeups from under mutex::wait_lock (Peter Zijlstra)

 - Misc fixes and cleanups:
    - core: Remove unused __HAVE_THREAD_FUNCTIONS hook support (David Disseldorp)
    - core: Update the comment for TIF_NEED_RESCHED_LAZY (Sebastian Andrzej Siewior)
    - wait: Remove unused bit_wait_io_timeout (Dr. David Alan Gilbert)
    - fair: remove the DOUBLE_TICK feature (Huang Shijie)
    - fair: fix the comment for PREEMPT_SHORT (Huang Shijie)
    - uclamp: Fix unnused variable warning (Christian Loehle)
    - rt: No PREEMPT_RT=y for all{yes,mod}config

 Thanks,

Ingo

18 Nov 2024: Performance events changes for v6.13 [+ + +]



Performance events changes for v6.13:

 - Uprobes:
    - Add BPF session support (Jiri Olsa)
    - Switch to RCU Tasks Trace flavor for better performance (Andrii Nakryiko)
    - Massively increase uretprobe SMP scalability by SRCU-protecting
      the uretprobe lifetime (Andrii Nakryiko)
    - Kill xol_area->slot_count (Oleg Nesterov)

 - Core facilities:
    - Implement targeted high-frequency profiling by adding the ability
      for an event to "pause" or "resume" AUX area tracing (Adrian Hunter)

 - VM profiling/sampling:
    - Correct perf sampling with guest VMs (Colton Lewis)

 - New hardware support:
    - x86/intel: Add PMU support for Intel ArrowLake-H CPUs (Dapeng Mi)

 - Misc fixes and enhancements:
    - x86/intel/pt: Fix buffer full but size is 0 case (Adrian Hunter)
    - x86/amd: Warn only on new bits set (Breno Leitao)
    - x86/amd/uncore: Avoid a false positive warning about snprintf
                      truncation in amd_uncore_umc_ctx_init (Jean Delvare)
    - uprobes: Re-order struct uprobe_task to save some space (Christophe JAILLET)
    - x86/rapl: Move the pmu allocation out of CPU hotplug (Kan Liang)
    - x86/rapl: Clean up cpumask and hotplug (Kan Liang)
    - uprobes: Deuglify xol_get_insn_slot/xol_free_insn_slot paths (Oleg Nesterov)

 Thanks,

Ingo

18 Nov 2024: Documentation for 6.13 [+ + +]
Another moderately busy cycle in docsland:

- Work on Chinese translations has picked up again.  Happily, they are
  maintaining the existing translations and not just adding new ones.

- Some maintenance of the Japanese and Italian translations as well.

- The removal of the venerable "dontdiff" file.  It has long outlived its
  usefulness and contained entries ("parse.*") that would actively mask
  actual source change.

- The addition of enforcement information to the code-of-conduct
  documentation.

Along with some build-system fixes and a lot of typo and language fixes.

18 Nov 2024: sched_ext: Changes for v6.13 [+ + +]
sched_ext: Change for v6.13

- Improve the default select_cpu() implementation making it topology aware
  and handle WAKE_SYNC better.

- set_arg_maybe_null() was used to inform the verifier which ops args could
  be NULL in a rather hackish way. Use the new __nullable CFI stub tags
  instead.

- On Sapphire Rapids multi-socket systems, a BPF scheduler, by hammering on
  the same queue across sockets, could live-lock the system to the point
  where the system couldn't make reasonable forward progress. This could
  lead to soft-lockup triggered resets or stalling out bypass mode switch
  and thus BPF scheduler ejection for tens of minutes if not hours. After
  trying a number of mitigations, the following set worked reliably:

  - Injecting artificial cpu_relax() loops in two places while sched_ext is
    trying to turn on the bypass mode.

  - Triggering scheduler ejection when soft-lockup detection is imminent (a
    quarter of threshold left).

  While not the prettiest, the impact both in terms of code complexity and
  overhead is minimal.

- A common complaint on the API is the overuse of the word "dispatch" and
  the confusion around "consume". This is due to how the dispatch queues
  became more generic over time. Rename the affected kfuncs for clarity.
  Thanks to BPF's compatibility features, this change can be made in a way
  that's both forward and backward compatible. The compatibility code will
  be dropped in a few releases.

- Pull sched_ext/for-6.12-fixes to receive a prerequisite change. Other misc
  changes.

18 Nov 2024: kgdb changes for v6.13 [+ + +]
kgdb patches for 6.13

A relatively modest collection of changes:

* Adopt kstrtoint() and kstrtol() instead of the simple_strtoXX family
  for better error checking of user input.
* Align the print behavour when breakpoints are enabled and disabled by
  adopting the current behaviour of breakpoint disable for both.
* Remove some of the (rather odd and user hostile) hex fallbacks and
  require kdb users to prefix with 0x instead.
* Tidy up (and fix) control code handling in kdb's keyboard code. This
  makes the control code handling at the keyboard behave the same way
  as it does via the UART.
* Switch my own entry in MAINTAINERS to my @kernel.org address.

Signed-off-by: Daniel Thompson <daniel.thompson@linaro.org>

18 Nov 2024: ftrace: Updates for v6.13 [+ + +]

ftrace updates for v6.13:

- Merged tag ftrace-v6.12-rc4

  There was a fix to locking in register_ftrace_graph() for shadow stacks
  that was sent upstream. But this code was also being rewritten, and the
  locking fix was needed. Merging this fix was required to continue the
  work.

- Restructure the function graph shadow stack to prepare it for use with
  kretprobes

  With the goal of merging the shadow stack logic of function graph and
  kretprobes, some more restructuring of the function shadow stack is
  required.

  Move out function graph specific fields from the fgraph infrastructure and
  store it on the new stack variables that can pass data from the entry
  callback to the exit callback.

  Hopefully, with this change, the merge of kretprobes to use fgraph shadow
  stacks will be ready by the next merge window.

- Make shadow stack 4k instead of using PAGE_SIZE.

  Some architectures have very large PAGE_SIZE values which make its use for
  shadow stacks waste a lot of memory.

- Give shadow stacks its own kmem cache.

  When function graph is started, every task on the system gets a shadow
  stack. In the future, shadow stacks may not be 4K in size. Have it have
  its own kmem cache so that whatever size it becomes will still be
  efficient in allocations.

- Initialize profiler graph ops as it will be needed for new updates to fgraph

- Convert to use guard(mutex) for several ftrace and fgraph functions

- Add more comments and documentation

- Show function return address in function graph tracer

  Add an option to show the caller of a function at each entry of the
  function graph tracer, similar to what the function tracer does.

- Abstract out ftrace_regs from being used directly like pt_regs

  ftrace_regs was created to store a partial pt_regs. It holds only the
  registers and stack information to get to the function arguments and
  return values. On several archs, it is simply a wrapper around pt_regs.
  But some users would access ftrace_regs directly to get the pt_regs which
  will not work on all archs. Make ftrace_regs an abstract structure that
  requires all access to its fields be through accessor functions.

- Show how long it takes to do function code modifications

  When code modification for function hooks happen, it always had the time
  recorded in how long it took to do the conversion. But this value was
  never exported. Recently the code was touched due to new ROX modification
  handling that caused a large slow down in doing the modifications and
  had a significant impact on boot times.

  Expose the timings in the dyn_ftrace_total_info file. This file was
  created a while ago to show information about memory usage and such to
  implement dynamic function tracing. It's also an appropriate file to store
  the timings of this modification as well. This will make it easier to see
  the impact of changes to code modification on boot up timings.

- Other clean ups and small fixes


[
  NOTE: Reminder that this has a conflict with the powerpc tree.
  https://lore.kernel.org/all/20241106140414.760b502c@canb.auug.org.au/
]



ftrace-v6.13

18 Nov 2024: cgroup: Changes for v6.13 [+ + +]
cgroup: Changes for v6.13

- cpu.stat now also shows niced CPU time.

- Freezer and cpuset optimizations.

- Other misc changes.

18 Nov 2024: pmdomain updates for v6.13 [+ + +]
Here's the pull-request with the pmdomain updates for v6.13. Details about
the highlights are as usual found in the signed tag.

Note that, this time there is also a signed-tag that I have pulled from Mark's
regulator tree.


Kind regards
Ulf Hansson


pmdomain core:
 - Set the required dev for a required OPP during genpd attach
 - Add support for required OPPs to dev_pm_domain_attach_list()

pmdomain providers:
 - ti: Enable GENPD_FLAG_ACTIVE_WAKEUP flag for ti_sci PM domains
 - mediatek: Add support for MT6735 PM domains
 - mediatek: Use OF-specific regulator API to get power domain supply
 - qcom: Add support for the SM8750/SAR2130P/qcs615/qcs8300 rpmhpds

pmdomain consumers:
 - Convert a couple of consumer drivers to *_pm_domain_attach|detach_list()

opp core:
 - Rework and cleanup some code that manages required OPPs
 - Remove *_opp_attach|detach_genpd()

18 Nov 2024: x86/sev for v6.13 [+ + +]
please pull the SEV lineup for v6.13.

Thx.

---

- Do the proper memory conversion of guest memory in order to be able to kexec
  kernels in SNP guests along with other adjustments and cleanups to that
  effect

- Start converting and moving functionality from the sev-guest driver into
  core code with the purpose of supporting the secure TSC SNP feature where
  the hypervisor cannot influence the TSC exposed to the guest anymore

- Add a "nosnp" cmdline option in order to be able to disable SNP support in
  the hypervisor and thus free-up resources which are not going to be used

- Cleanups

18 Nov 2024: workqueue: Changes for v6.13 [+ + +]
workqueue: Changes for v6.13

- Maximum concurrency limit of 512 which was set a long time ago is too low
  now. A legitimate use (BPF cgroup release) of system_wq could saturate it
  under stress test conditions leading to false dependencies and deadlocks.
  While the offending use was switched to a dedicated workqueue, use the
  opportunity to bump WQ_MAX_ACTIVE four fold and document that system
  workqueue shouldn't be saturated. Workqueue should add at least a warning
  mechanism for cases where system workqueues are saturated.

- Recent workqueue updates to support more flexible execution topology made
  unbound workqueues use per-cpu worker pool frontends which pushed up
  workqueue flush overhead. As consecutive CPUs are likely to be pointing to
  the same worker pool, reduce overhead by switching locks only when
  necessary.

18 Nov 2024: x86/platform for v6.13 [+ + +]
please a single x86/platform cleanup for v6.13.

Thx.

---

- Replace deprecated PCI functions used in intel-mid

18 Nov 2024: x86/microcode for v6.13 [+ + +]
please pull a single microcode loader optimization for v6.13.

Thx.

---

- Remove the unconditional cache writeback and invalidation after loading the
  microcode patch on Intel as this was addressing a microcode bug for which
  there is a concrete microcode revision check instead

18 Nov 2024: x86/cache for v6.13 [+ + +]
please pull the x86/cache lineup for v6.13.

Thx.

---

- Add support for 6-node sub-NUMA clustering on Intel

- Cleanup

18 Nov 2024: printk for 6.13 [+ + +]
please pull the latest printk changes from



- Print more precise information about the printk log buffer memory usage.

- Make sure that the sysrq title is shown on the console even
  when deferred.

- Do not enable earlycon by `console=` which is meant to disable
  the default console.

18 Nov 2024: SPI updates for v6.13 [+ + +]
spi: Updates for v6.13

The only real core work we've got this time around is the completion of
the transition to the new host/target naming for the core APIs, Kconfig
still needs doing but that's a lot less invasive.  Otherwise the big
changes are the new drivers that have been added:

 - Completion of the conversion to spi_alloc_host()/_target() and
   removal of the old naming.
 - Cleanups for Rockchip drivers, these brought in a new logging helper
   in the driver core for warnings during probe.
 - Support for configuration of the word delay via spidev_test.
 - Support for AMD HID2 controllers, Apple SPI controller and Realtek
   SPI-NAND controllers.

The Rockchip cleanups

18 Nov 2024: regmap updates for v6.13 [+ + +]
regmap: Updates for v6.13

The main thing for regmap this time around is some improvements of the
lockdep annotations which stop some false positives.  We also have one
new helper for setting a bitmask to the same value, and several test
improvements.

18 Nov 2024: regulator updates for v6.13 [+ + +]
regulator: Updates for v6.13

This was a quite quiet release for regulators on the drivers front, but
we do have two small but useful core improvements:

 - Improve handling of cases where DT platforms specify both DT and
   init_data based configuration for a single regulator.
 - A helper of_regulator_get_optional() to simplify writing generic
   bindings for regulator consumers in subsystems.

There's also some YAML conversions for the DT bindings which are a big
part of the diffstat.

18 Nov 2024: MMC and MEMSTICK updates for v6.13 [+ + +]
Here's the pull-request with updates for MMC and MEMSTICK for v6.13. Details
about the highlights are as usual found in the signed tag.


Kind regards
Ulf Hansson


MMC core:
 - Add support for Ultra Capacity SD cards (SDUC, 2TB to 128TB)
 - Add support for Ultra High-Speed II SD cards (UHS-II)
 - Use a reset control for pwrseq_simple
 - Add SD card quirk for broken poweroff notification
 - Use GFP_NOIO for SD ACMD22

MMC host:
 - bcm2835: Introduce proper clock handling
 - mtk-sd: Add support for the Host-Software-Queue interface
 - mtk-sd: Add support for the mt7988/mt8196 variants
 - mtk-sd: Fix a couple of error paths in ->probe()
 - sdhci: Add interface to support UHS-II SD cards
 - sdhci_am654: Fixup support for changing the signal voltage level
 - sdhci-cadence: Add support for the Microchip PIC64GX variant
 - sdhci-esdhc-imx: Add support for eMMC HW-reset
 - sdhci-msm: Add support for the X1E80100/IPQ5424/SAR2130P/QCS615 variants
 - sdhci-of-arasan: Add support for eMMC HW-reset
 - sdhci-pci-gli: Add UHS-II support for the GL9767/GL9755 variants

MEMSTICK:
 - A couple of minor updates

18 Nov 2024: power sequencing updates for v6.13-rc1 [+ + +]
From: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>


The first commit makes the QCom WCN pwrseq driver depend on CONFIG_OF and
the second extends its support for the wcn6855 BT/WLAN chip.

Best Regards,
Bartosz Golaszewski

power sequencing updates for v6.13-rc1

- extend support for the wcn6855 model in the pwrseq-qcom-wcn driver
- make this driver depend on CONFIG_OF=y as it uses some very
  OF-specific interfaces and depends on phandle parsing

18 Nov 2024: livepatching for 6.13 [+ + +]
please pull the latest changes for the kernel livepatching from



- A new selftest for livepatching of a kprobed function.

18 Nov 2024: RAS updates for v6.13 [+ + +]
please pull the RAS updates for v6.13.

Thx.

---

- Log and handle twp new AMD-specific MCA registers: SYND1 and SYND2 and
  report the Field Replaceable Unit text info reported through them

- Add support for handling variable-sized SMCA BERT records

- Add the capability for reporting vendor-specific RAS error info without
  adding vendor-specific fields to struct mce

- Cleanups

18 Nov 2024: gpio updates for v6.13-rc1 [+ + +]
From: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>


Here's the majority of changes for this merge window from the GPIO subsystem.

We have three new drivers, support for some new models in existing ones and
lots of various tweaks and improvements across the board (switching to using
recommended APIs, code shrink and simplification, etc.).

We also have a new feature in the character device uAPI where we now notify
the user-space about changes triggered by in-kernel users as well, not only
when they were done by other user-space agents.

Details are in the signed tag as usual.

The merge commits you'll see here were done to pull Intel changes from Andy,
MFD dependencies from Lee and to pull back upstream fixes to avoid conflicts.

The non-gpio commits in this PR are either pulled from the MFD tree or were
acked by relevant maintainers and concern the removal of a deprecated GPIO
symbol from various drivers across the kernel tree.

I will be picking up some more fixes over the course of this week so there'll
be another small PR in the second week.


Best Regards,
Bartosz Golaszewski

gpio updates for v6.13-rc1

GPIOLIB core:
- use the new mem_is_zero() instead of memchr_inv(s, 0, n)
- don't store debounce period twice needlessly
- clean-up debugfs handling
- remove leftover comments referring to no longer used spinlocks
- unduplicate some operations like SRCU locks and initializing GPIO descriptors
- constify the sysfs class struct
- use lock guards in GPIO sysfs code
- update GPIO uAPI internal flags all at once atomically for consistency with
  other places
- modify the behavior of the sysfs interface by no longer exporting lines that
  are named inside the driver code or board files with the sysfs links bearing
  the line names as this has for many years been largely unused due to the
  prevalence of DT, ACPI and firmware nodes over board files and made the API
  inconsistent
- for GPIO interrupt providers: free irqs that are still requested by users
  when removing the chip

GPIO uAPI:
- notify user-space about changes to GPIO lines' state (requested, released,
  reconfigured) triggered from the kernel as well (until now we'd only do
  this for changes triggered from user-space)
- to that end: modify the internal workings of the notification mechanism by
  switching to an atomic notifier which allows us to send events from atomic
  context
- also to that end store the debounce period in the GPIO descriptor struct
  and not in the character device context struct
- while at it, also cover the corner-case of users introducing changes over
  sysfs while others watch them via the character device
- don't report GPIO lines requested as interrupts as "used" to user-space as it
  can still request them as GPIOs

New drivers:
- add a driver for the GPIO functionality of the MFD Congatec Board Controller
- add a driver for the PolarFire GPIO controller
- add a driver supporting the GPIOs on FTDI FT2232H

Driver improvements:
- use generic device property accessors instead of OF-specific ones across
  many GPIO drivers (mpc8xxx, vf610, eic-sprd, davinci, ts4900, xilinx, mvebu)
- use devres helpers to simplify error paths and either shrink or entirely
  remove the driver's remove() callback (grgpio, amdpt, menz127, max730x,
  ftgpio010, 74x164, ljca)
- use helper variables to store the address of pdev->dev and avoid some
  line-breaks
- use device_for_each_child_node_scoped() to avoid having to put the fwnode
  on breaks or errors (gpio-sim, gpio-dwapb, gpiolib-acpi)
- use a scoped bitmap to simplify the code and drop goto labels in
  gpio-aggregator
- drop unneeded Kconfig dependencies on OF_GPIO (grgpio, mveby, xilinx)
- add support for new models to gpio-aspeed, gpio-rockchip and gpio-dwapb
- clean-up ACPI handling and some other bits in gpio-xgene-sb
- replace deprecated PCI functions in pcie-idio-24 and pci-idio-16
- allow to build davinci and mvebu drivers with COMPILE_TEST=y
- remove dead code in gpio-mb86s7x
- switch back to using platform_driver::remove() (after the conversion to
  remove_new()) across the GPIO drivers
- remove remaining uses of GPIOF_ACTIVE_LOW across the tree and drop this
  deprecated symbol
- convert the gpio-altera driver to no longer pull in the deprecated
  legacy-of-mm-gpiochip.h header
- use of_property_present() instead of of_property_read_bool() in gpiolib-of
  and gpio-rockchip
- allow to build the tegra186 driver on Tegra234 platforms in Kconfig

Late fixes:
- add a missing return value check after devm_kasprintf() to gpio-grgpio

DT bindings:
- document the ngpios property of gpio-mmio
- add support for a new aspeed model
- fix the example for st,nomadik-gpio

Other:
- kernel doc and comments tweaks
- fix typos in TODO
- reorder headers alphabetically in some drivers
- fix incorrect format specifiers in gpio tools

18 Nov 2024: m68k updates for v6.13 [+ + +]
m68k updates for v6.13

  - Revive SCSI and early console support on MVME147,
  - Fix early kernel parameters using static keys,
  - Prevent and improve handling of kernel configurations that lack
    specific platform, CPU, or MMU support, to avoid build failures,
  - Miscellaneous fixes and improvements,
  - Defconfig updates.

Thanks for pulling!

18 Nov 2024: ext4 updates for v6.13-rc1 [+ + +]
A lot of miscellaneous ext4 bug fixes and cleanups this cycle, most
notably in the journaling code, bufered I/O, and compiler warning
cleanups.

18 Nov 2024: EDAC updates for v6.13 [+ + +]
please pull the EDAC pile for v6.13.

Thx.

---

- Add support for Bluefield-2 SOCs to bluefield_edac

- Add support for Intel Panther Lake-H to igen6_edac

- Add polling support to igen6_edac as some Intel M100 chips have trouble with
  error interrupts

- Add Kaby Lake-S support to ie31200_edac

- Fix memory source detection in the SKX common module which is used by
  a couple of Intel EDAC drivers

- Add support for the NXP i.MX9 memory controller to fsl_edac

- The usual fixes and cleanups all over the place

18 Nov 2024: thermal drivers for v6.13-rc1 [+ + +]
Hi Rafael,

please consider the following changes since commit 
c285b11e289dbe8973735ab8dc84210bde417673:

   Merge back thermal control material for 6.13 (2024-11-11 15:20:44 +0100)

are available in the Git repository at:

  
ssh://git@gitolite.kernel.org/pub/scm/linux/kernel/git/thermal/linux.git 
tags/thermal-v6.13-rc1

for you to fetch changes up to d303e3dd8d4648f2a1bb19944d4fb1c4a5030354:

   tools/thermal: Fix common realloc mistake (2024-11-15 14:29:03 +0100)

- Add the SAR2130P compatible in the DT bindings for the QCom Tsens
   driver (Dmitry Baryshkov)

- Add the static annotation to the arrays describing the platform
   sensors on the LVTS Mediatek driver (Colin Ian King)

- Switch back to the struct platform_driver::remove() from the
   previous callbacks prototype rework (Uwe Kleine-König)

- Add the MSM8937 compatible in the DT bindings and its support in the
   QCom Tsens driver (Barnabás Czémán)

- Remove a pointless sign test on an unsigned value in
   k3_bgp_read_temp() function on the k3_j72xx_bandgap driver (Rex Nie)

- Fix a pointer reference lost when the call to realloc() fails in the
   thermal library (Zhang Jiao)

18 Nov 2024: ACPI updates for v6.13-rc1 [+ + +]

 acpi-6.13-rc1


 Merge branch 'acpi-misc'


 Linux 6.12-rc7

to receive ACPI updates for 6.13-rc1.

These include a couple of fixes, a new ACPI backlight quirk for Apple
MacbookPro11,2 and Air7,2 and a bunch of cleanups:

 - Fix _CPC register setting issue for registers located in memory in
   the ACPI CPPC library code (Lifeng Zheng).

 - Use DEFINE_SIMPLE_DEV_PM_OPS in the ACPI battery driver, make it use
   devm_ for initializing mutexes and allocating driver data, and make
   it check the register_pm_notifier() return value (Thomas Wei=C3=9Fschuh,
   Andy Shevchenko).

 - Make the ACPI EC driver support compile-time conditional and allow
   ACPI to be built without CONFIG_HAS_IOPORT (Arnd Bergmann).

 - Remove a redundant error check from the pfr_telemetry driver (Colin
   Ian King).

 - Rearrange the processor_perflib code in the ACPI processor driver
   to avoid compiling x86-specific code on other architectures (Arnd
   Bergmann).

 - Add adev NULL check to acpi_quirk_skip_serdev_enumeration() and
   make UART skip quirks work on PCI UARTs without an UID (Hans de
   Goede).

 - Force native backlight handling Apple MacbookPro11,2 and Air7,2 in
   the ACPI video driver (Jonathan Denose).

 - Switch several ACPI platform drivers back to using struct
   platform_driver::remove() (Uwe Kleine-K=C3=B6nig).

 - Replace strcpy() with strscpy() in multiple places in the ACPI
   subsystem (Muhammad Qasim Abdul Majeed, Abdul Rahim).

Thanks!



18 Nov 2024: objtool changes for v6.13 [+ + +]




Objtool changes for v6.13:

 - Detect non-relocated text references for more robust
   IBT sealing (Josh Poimboeuf)

 - Fix build error when building stripped down
   UAPI headers (HONG Yifan)

 - Exclude __tracepoints data from ENDBR checks to fix
   false positives on clang builds (Peter Zijlstra)

 - Fix ORC unwind for newly forked tasks (Zheng Yejian)

 - Fix readelf related faddr2line regression (Carlos Llamas)

 Thanks,

Ingo

18 Nov 2024: Thermal control updates for v6.13-rc1 [+ + +]

 thermal-6.13-rc1


 thermal: testing: Initialize some variables annoteded with _free()


 Merge tag 'thermal-v6.12-rc7' of
ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/thermal/linux

to receive thermal control updates for 6.13-rc1.

These are thermal core changes, including the addition of support for
temperature thresholds that can be set from user space, fixes related
to thermal zone initialization, suspend/resume and exit, locking rework
and rearrangement of the code handling thermal zone temperature updates.

Specifics:

 - Add support for thermal thresholds that can be added and removed from
   user space via netlink along with a related library update (Daniel
   Lezcano).

 - Fix thermal zone initialization, suspend/resume and exit
   synchronization issues (Rafael Wysocki).

 - Rearrange locking in the thermal core to use guards (Rafael Wysocki).

 - Make the code handling thermal zone temperature updates use sorted
   lists of trip points to reduce the number of trip points table walks
   in the thermal core (Rafael Wysocki).

 - Fix and clean up the thermal testing facility code (Rafael Wysocki).

 - Fix a Power Allocator thermal governor issue (ZhengShaobo).

Thanks!



18 Nov 2024: Power management updates for v6.13-rc1 [+ + +]

 pm-6.13-rc1


 Merge branch 'pm-tools'


 cpufreq: intel_pstate: Rearrange locking in hybrid_init_cpu_capacity_scali=
ng()

to receive power management updates for 6.13-rc1.

The amd-pstate cpufreq driver gets the majority of changes this time.
They are mostly fixes and cleanups, but one of them causes it to become
the default cpufreq driver on some AMD server platforms.

Apart from that, the menu cpuidle governor is modified to not use iowait
any more, the intel_idle gets a custom C-states table for Granite Rapids
Xeon D, and the intel_pstate driver will use a more aggressive Balance-
performance default EPP value on Granite Rapids now.

There are also some fixes, cleanups and tooling updates.

Specifics:

 - Update the amd-pstate driver to set the initial scaling frequency
   policy lower bound to be the lowest non-linear frequency (Dhananjay
   Ugwekar).

 - Enable amd-pstate by default on servers starting with newer AMD Epyc
   processors (Swapnil Sapkal).

 - Align more codepaths between shared memory and MSR designs in
   amd-pstate (Dhananjay Ugwekar).

 - Clean up amd-pstate code to rename functions and remove redundant
   calls (Dhananjay Ugwekar, Mario Limonciello).

 - Do other assorted fixes and cleanups in amd-pstate (Dhananjay Ugwekar
   and Mario Limonciello).

 - Change the Balance-performance EPP value for Granite Rapids in the
   intel_pstate driver to a more performance-biased one (Srinivas
   Pandruvada).

 - Simplify MSR read on the boot CPU in the ACPI cpufreq driver (Chang
   S. Bae).

 - Ensure sugov_eas_rebuild_sd() is always called when sugov_init()
   succeeds to always enforce sched domains rebuild in case EAS needs
   to be enabled (Christian Loehle).

 - Switch cpufreq back to platform_driver::remove() (Uwe Kleine-K=C3=B6nig)=
.

 - Use proper frequency unit names in cpufreq (Marcin Juszkiewicz).

 - Add a built-in idle states table for Granite Rapids Xeon D to the
   intel_idle driver (Artem Bityutskiy).

 - Fix some typos in comments in the cpuidle core and drivers (Shen
   Lichuan).

 - Remove iowait influence from the menu cpuidle governor (Christian
   Loehle).

 - Add min/max available performance state limits to the Energy Model
   management code (Lukasz Luba).

 - Update pm-graph to v5.13 (Todd Brandt).

 - Add documentation for some recently introduced cpupower utility
   options (Tor Vic).

 - Make cpupower inform users where cpufreq-bench.conf should be located
   when opening it fails (Peng Fan).

 - Allow overriding cross-compiling env params in cpupower (Peng Fan).

 - Add compile_commands.json to .gitignore in cpupower (John B. Wyatt
   IV).

 - Improve disable c_state block in cpupower bindings and add a test to
   confirm that CPU state is disabled to it (John B. Wyatt IV).

 - Add Chinese Simplified translation to cpupower (Kieran Moy).

 - Add checks for xgettext and msgfmt to cpupower (Siddharth Menon).

Thanks!



18 Nov 2024: arm64 updates for 6.13-rc1 [+ + +]
Here are the arm64 updates for 6.13. The major features are support to
run Linux in a protected VM (a.k.a. realm) under the Arm CCA and the
user Guarded Control Stack (GCS). There are a few smaller scale
additions for in-kernel memcpy instructions, MTE hugetlbfs support,
optimised CRC32, non-leaf pmd_young(), the usual perf/PMU updates and
various fixes and cleanups. We are also introducing HWCAP3 as we'll
likely run out of HWCAP2 bits in a year or so.

There's a trivial conflict with mainline due to a recent upstream fix:
commit 5baf8b037deb ("mm: refactor arch_calc_vm_flag_bits() and arm64
MTE handling") and the MTE hugetlbfs support. My fixup:

arm64 updates for 6.13:

* Support for running Linux in a protected VM under the Arm Confidential
  Compute Architecture (CCA)

* Guarded Control Stack user-space support. Current patches follow the
  x86 ABI of implicitly creating a shadow stack on clone(). Subsequent
  patches (already on the list) will add support for clone3() allowing
  finer-grained control of the shadow stack size and placement from libc

* AT_HWCAP3 support (not running out of HWCAP2 bits yet but we are
  getting close with the upcoming dpISA support)

* Other arch features:

  - In-kernel use of the memcpy instructions, FEAT_MOPS (previously only
    exposed to user; uaccess support not merged yet)

  - MTE: hugetlbfs support and the corresponding kselftests

  - Optimise CRC32 using the PMULL instructions

  - Support for FEAT_HAFT enabling ARCH_HAS_NONLEAF_PMD_YOUNG

  - Optimise the kernel TLB flushing to use the range operations

  - POE/pkey (permission overlays): further cleanups after bringing the
    signal handler in line with the x86 behaviour for 6.12

* arm64 perf updates:

  - Support for the NXP i.MX91 PMU in the existing IMX driver

  - Support for Ampere SoCs in the Designware PCIe PMU driver

  - Support for Marvell's 'PEM' PCIe PMU present in the 'Odyssey' SoC

  - Support for Samsung's 'Mongoose' CPU PMU

  - Support for PMUv3.9 finer-grained userspace counter access control

  - Switch back to platform_driver::remove() now that it returns 'void'

  - Add some missing events for the CXL PMU driver

* Miscellaneous arm64 fixes/cleanups:

  - Page table accessors cleanup: type updates, drop unused macros,
    reorganise arch_make_huge_pte() and clean up pte_mkcont(), sanity
    check addresses before runtime P4D/PUD folding

  - Command line override for ID_AA64MMFR0_EL1.ECV (advertising the
    FEAT_ECV for the generic timers) allowing Linux to boot with
    firmware deployments that don't set SCTLR_EL3.ECVEn

  - ACPI/arm64: tighten the check for the array of platform timer
    structures and adjust the error handling procedure in
    gtdt_parse_timer_block()

  - Optimise the cache flush for the uprobes xol slot (skip if no
    change) and other uprobes/kprobes cleanups

  - Fix the context switching of tpidrro_el0 when kpti is enabled

  - Dynamic shadow call stack fixes

  - Sysreg updates

  - Various arm64 kselftest improvements

18 Nov 2024: pwm: Changes for 6.13-rc1 [+ + +]
Subject: [GIT PULL] pwm: Changes for 6.13-rc1
MIME-Version: 1.0

Hello Linus,

pwm: Changes for v6.13-rc1

This pull request prominently contains a new abstraction for PWM
waveforms that is more expressive that the legacy one. Compared to the
old abstraction it contains a duty_offset member instead of polarity.
This new abstraction is already used in an ADC driver merged into the
iio tree. So I expect you will get a part of this tree also via the iio
pull request for 6.13-rc1 (tag pwm/duty_offset-for-6.13-rc1).

Otherwise it's the usual collection of fixes, cleanups and dt doc
updates.

This time around thanks go to Andy Shevchenko, Clark Wang, Conor Dooley,
David Lechner, Dimitri Fedrau, Frank Li, Jun Li, Kelvin Zhang, Krzysztof
Kozlowski, Nuno Sa, Shen Lichuan and Trevor Gamblin for code
contributions, testing and review.

18 Nov 2024: RCU changes for v6.13 [+ + +]
RCU pull request for v6.13

SRCU:

- Introduction of the new SRCU-lite flavour with a new pair of
  srcu_read_[un]lock_lite() APIs. In practice the read side using
  this flavour becomes lighter by removing a full memory barrier on
  LOCK and a full memory barrier on UNLOCK. This comes at the
  expense of a higher latency write side with two (in the best case
  of a snaphot of unused read-sides) or more RCU grace periods on
  the update side which now assumes by itself the whole full
  ordering guarantee against the LOCK/UNLOCK counters on both
  indexes, along with the accesses performed inside.

  Uretprobes is a known potential user.

  Note this doesn't replace the default normal flavour of SRCU which
  still behaves the same as usual.

- Add testing of SRCU-lite through rcutorture and rcuscale

- Various cleanups on the way.

FIXES:

- Allow short-circuiting RCU-TASKS-RUDE grace periods on architectures
  that have sane noinstr boundaries forbidding tracing on low-level
  idle and kernel entry code. RCU-TASKS is enough on such configurations
  because it involves an RCU grace period that waits for all idle
  tasks to either schedule out voluntarily or enter into RCU
  unwatched noinstr code.

- Allow and test start_poll_synchronize_rcu() with IRQs disabled.

- Mention rcuog kthreads in relevant documentation and Kconfig help

- Various fixes and consolidations

RCUTORTURE:

- Add --no-affinity on tools to leave the affinity setting of guests
  up to the user.

- Add guest_os_delay parameter to rcuscale for better warm-up
  control.

- Fix and improve some rcuscale error handling.

- Various cleanups and fixes

STALL:

- Remove dead code

- Stop dumping tasks if a stalled grace period eventually ended
  midway as that only produces confusing output.

- Optimize detection of stalling CPUs and avoid useless node
  locking otherwise.

NOCB:

- Fix rcu_barrier() hang due to a race against callbacks
  deoffloading. This is not yet used, except by rcutorture, and
  waits for its promised cpusets interface.

- Remove leftover function declaration

18 Nov 2024: KCSAN updates for v6.13 [+ + +]

Many thanks,
-- Marco

------ >8 ------

Kernel Concurrency Sanitizer (KCSAN) updates for v6.13

- Fixes to make KCSAN compatible with PREEMPT_RT

- Minor cleanups

All changes have been in linux-next for the past 4 weeks.

18 Nov 2024: locking changes for v6.13 [+ + +]



Locking changes for v6.13 are:

 - lockdep:
    - Enable PROVE_RAW_LOCK_NESTING with PROVE_LOCKING (Sebastian Andrzej Siewior)
    - Add lockdep_cleanup_dead_cpu() (David Woodhouse)

 - futexes:
    - Use atomic64_inc_return() in get_inode_sequence_number() (Uros Bizjak)
    - Use atomic64_try_cmpxchg_relaxed() in get_inode_sequence_number() (Uros Bizjak)

 - RT locking:
    - Add sparse annotation PREEMPT_RT's locking (Sebastian Andrzej Siewior)

 - spinlocks:
    - Use atomic_try_cmpxchg_release() in osq_unlock() (Uros Bizjak)

 - atomics:
    - x86: Use ALT_OUTPUT_SP() for __alternative_atomic64() (Uros Bizjak)
    - x86: Use ALT_OUTPUT_SP() for __arch_{,try_}cmpxchg64_emu() (Uros Bizjak)

 - KCSAN, seqlocks:
    - Support seqcount_latch_t (Marco Elver)

 - <linux/cleanup.h>:
    - Add if_not_cond_guard() conditional guard helper (David Lechner)
    - Adjust scoped_guard() macros to avoid potential warning (Przemek Kitszel)
    - Remove address space of returned pointer (Uros Bizjak)

 - WW mutexes:
    - locking/ww_mutex: Adjust to lockdep nest_lock requirements (Thomas Hellström)

 - Rust integration:
    - Fix raw_spin_lock initialization on PREEMPT_RT (Eder Zulian)

 - miscellaneous cleanups & fixes:
    - lockdep: Fix wait-type check related warnings (Ahmed Ehab)
    - lockdep: Use info level for initial info messages (Jiri Slaby)
    - spinlocks: Make __raw_* lock ops static (Geert Uytterhoeven)
    - pvqspinlock: Convert fields of 'enum vcpu_state' to uppercase (Qiuxu Zhuo)
    - iio: magnetometer: Fix if () scoped_guard() formatting (Stephen Rothwell)
    - rtmutex: Fix misleading comment (Peter Zijlstra)
    - percpu-rw-semaphores: Fix grammar in percpu-rw-semaphore.rst (Xiu Jianfeng)

 Thanks,

Ingo

18 Nov 2024: MIPS changes for v6.13 [+ + +]
just cleanups and fixes

18 Nov 2024: probes: Updates for v6.13 [+ + +]
Probes update for v6.13:

Kprobes cleanups. Functionality does not change.
- kprobes: Cleanup the config comment
  Adjust #endif comments.
- kprobes: Cleanup collect_one_slot() and __disable_kprobe()
  Make fail fast to reduce code nested level.
- kprobes: Use struct_size() in __get_insn_slot()
  Use struct_size() to avoid special macro.
- x86/kprobes: Cleanup kprobes on ftrace code
  Use macro instead of direct field access/magic number, and avoid
  redundant instruction pointer setting.




probes-v6.13

 
17 Nov 2024: hwmon updates for v6.13-rc1 [+ + +]


Thanks,
Guenter
------

hmon updates for v6.13-rc1

* New drivers

  - ISL28022 power monitor

  - Nuvoton NCT7363Y

* Added support for new chips to existing drivers

  - The tmp180 driver now supports NXP p3t1085, including its I3C mode

  - The ina2xx driver now supports SY24655 and INA260

  - The amc6821 driver now supports tsd,mule

* Other notable improvements

  - The sht4x driver now supports the chip heater

  - The pmbus/isl68137 driver now supports a voltage divider on Vout

  - The cros_ec driver registers with the thermal framework

  - The pmbus/ltc2978 driver now supports LTC7841

  - The PMBus core now allow drivers to override WRITE_PROTECT

* Various other minor improvements and cleanups

 
18 Nov 2024: random number generator updates for 6.13-rc1 [+ + +]
This pull request contains a single series from Uros to replace uses of
#include <linux/random.h> with prandom.h or other more specific headers, as
needed, in order to avoid a circular header issue. Uros' goal is to be able to
use percpu.h from prandom.h, which will then allow him to define __percpu in
percpu.h rather than in compiler_types.h.

This has been sitting in next for most of the 6.12 cycle.


Thanks,
Jason

Random number generator updates for Linux 6.13-rc1.
18 Nov 2024: chrome-platform-firmware changes for v6.13 [+ + +]

chrome platform firmware changes for 6.13

* Fixes

  - Do not double register "simple-framebuffer" platform device if
    Generic System Framebuffers (sysfb) already did that.
  - Fix a missing of unregistering platform driver in error handling
    path.

18 Nov 2024: chrome-platform changes for v6.13 [+ + +]

chrome platform changes for 6.13

* Fixes

  - Fix a leak of fwnode refcount.

* Cleanups

  - Drop unused I2C driver data.
  - Move back from platform_driver::remove_new() to
    platform_driver::remove().

 
17 Nov 2024: scftorture changes for v6.13 [+ + +]
Once the v6.13 merge window opens, please pull these scftorture changes
from:


scftorture changes for v6.13

oAvoid divide operation.

oFix cleanup code waiting for IPI handlers.

oMove memory allocations out of preempt-disable region of code
for PREEMPT_RT compatibility.

oUse a lockless list to avoid freeing memory while interrupts
are disabled, again for PREEMPT_RT compatibility.

oMake lockless list scf_add_to_free_list() correctly handle
freeing a NULL pointer.

17 Nov 2024: nolibc changes for v6.13 [+ + +]
Once the v6.13 merge window opens, please pull the latest nolibc
changes from:


nolibc changes for 6.13

Changes
-------

* Fix potential error due to missing #include on s390
* Compatibility with -Wmissing-fallthrough
* Run qemu with more memory during tests

17 Nov 2024: CSD-lock changes for v6.13 [+ + +]
When the v6.13 merge window opens, please pull this CSD-lock update from:


CSD-lock diagnostic updates for v6.13

This commit switches from sched_clock() to ktime_get_mono_fast_ns(), which
on x86 switches from the rdtsc instruction to the rdtscp instruction,
thus avoiding instruction reorderings that cause false-positive reports
of CSD-lock stalls of almost 2^46 nanoseconds.  These false positives
are rare, but really are seen in the wild.

17 Nov 2024: i2c-host for v6.13, part 1 [+ + +]
Hi Wolfram,

I'm a bit late with this pull request as I've been extremely
busy over the last couple of weeks.

I've checked the tag description multiple times to ensure it
won't upset our big boss :-) I hope I've struck the right
balance — descriptive but not overly so. Please feel free to
suggest or recommend any changes.

As I mentioned earlier, I'm slightly behind on reviews and
merges. Thank you for allowing a pull request in the middle of
the merge window (likely next Saturday or Sunday).

In the meantime, if anyone needs me to take a closer look at
anything I've missed, don't hesitate to ping me on those or
reach out privately.

Thank you,
Andi

i2c-host updates for v6.13, part 1

Improvements and Refactoring:

 - All controllers using the 'remove_new' callback have been
   reverted to use the 'remove' callback.

 - Makefile improvements (switched from '*-objs' to '*-y')

 - Intel SCH controller underwent significant refactoring:
   - Improved usage of private data references.
   - Transitioned to memory-mapped I/O functions.
   - Adopted 'devm' functions for resource management.
   - Added kernel-doc compatible comments.
   - Used 'const' where applicable.
   - Numerous smaller refinements.
   This brings love and a modern look to the driver.

 - Additional cleanups in the DesignWare driver.

 - PIIX4 driver updates:
   - Exposed functions and definitions in the header file to
     enable usage by other drivers (e.g., AMD ASF).

 - Nuvoton NPCM I2C controller:
   - Enhanced read/write operations and bus error (BER) flag
     management to address corner cases that could lead to
     timeouts.

 - Qualcomm CCI driver received several cleanups.

 - iMX/MXC:
   - Improved message handling to reduce I2C protocol overhead.
   - Refactored DMA/non-DMA read/write and bus polling mechanisms
     to achieve this.

New Features:

 - i2c-cadence:
   - Added support for atomic transfers.
   - Refactored to group generic code into separate functions.

 - Qualcomm CCI:
   - Added support for a 32MHz serial engine clock.

 - Added support for:
   - HJMC01 DesignWare ACPI HID.
   - ACPI documentation for PIIX4.

Deprecated Features:

 - Dropped support for AMD756 S4882 and NFORCE2 S4985.

New Hardware Support:

 - Added support for:
   - Intel Panther Lake.
   - AMD ASF.
   - S32G2/S32G3 SoCs.
   - Realtek RTL I2C Controller.

 - New drivers:
   - 'i2c-amd-asf-plat.c' for AMD ASF.
   - 'i2c-rtl9300.c' for Realtek RTL.

Fixes:

 - AMD ASF driver:
   - Fixed an uninitialised 'len' variable.

Devicetree Updates:

 - Documented Qualcomm SDM670.
 - Added 'PIC64GX' compatibility to Microchip Core I2C binding.
 - Added support for S32G.

 
15 Nov 2024: xen: branch for v6.13-rc1 [+ + +]
Please git pull the following tag:


xen: branch for v6.13-rc1

It contains:

- a series for booting as a PVH guest, doing some cleanups after the
  previous work to make PVH boot code position independent

- a fix of the xenbus driver avoiding a leak in an error case

Thanks.

Juergen

15 Nov 2024: s390 updates for 6.13 merge window [+ + +]
please pull s390 updates for the 6.13 merge window.

Thanks,
Heiko

s390 updates for 6.13 merge window

- Add firmware sysfs interface which allows user space to retrieve the dump
  area size of the machine

- Add 'measurement_chars_full' CHPID sysfs attribute to make the complete
  associated Channel-Measurements Characteristics Block available

- Add virtio-mem support

- Move gmap aka KVM page fault handling from the main fault handler to KVM
  code. This is the first step to make s390 KVM page fault handling similar
  to other architectures. With this first step the main fault handler does
  not have any special handling anymore, and therefore convert it to
  support LOCK_MM_AND_FIND_VMA

- With gcc 14 s390 support for flag output operand support for inline
  assemblies was added. This allows for several optimizations

  - Provide a cmpxchg inline assembly which makes use of this, and provide
    all variants of arch_try_cmpxchg() so that the compiler can generate
    slightly better code

  - Convert a few cmpxchg() loops to try_cmpxchg() loops

  - Similar to x86 add a CC_OUT() helper macro (and other macros), and
    convert all inline assemblies to make use of them, so that depending on
    compiler version better code can be generated

- List installed host-key hashes in sysfs if the machine supports the Query
  Ultravisor Keys UVC

- Add 'Retrieve Secret' ioctl which allows user space in protected
  execution guests to retrieve previously stored secrets from the
  Ultravisor

- Add pkey-uv module which supports the conversion of Ultravisor
  retrievable secrets to protected keys

- Extend the existing paes cipher to exploit the full AES-XTS hardware
  acceleration introduced with message-security assist extension 10

- Convert hopefully all sysfs show functions to use sysfs_emit() so that
  the constant flow of such patches stop

- For PCI devices make use of the newly added Topology ID attribute to
  enable whole card multi-function support despite the change to PCHID per
  port. Additionally improve the overall robustness and usability of
  the multifunction support

- Various other small improvements, fixes, and cleanups

15 Nov 2024: slab updates for 6.13 [+ + +]
please pull the latest slab updates from:


One new feature and non-critical fixes (mostly related to debugging).
No conflicts to be expected, AFAIK.

Thanks,
Vlastimil


- Add new slab_strict_numa boot parameter to enforce per-object memory policies
  on top of slab folio policies, for systems where saving cost of remote
  accesses is more important than minimizing slab allocation overhead
  (Christoph Lameter)

- krealloc() fixes for not violating __GFP_ZERO guarantees on krealloc() when
  slub_debug (redzone and object tracking) is enabled (Feng Tang)

- Fix a memory leak in case sysfs registration fails for a slab cache, and also
  no longer fail to create the cache in that case (Hyeonggon Yoo)

- Fix handling of detected consistency problems (due to buggy slab user) with
  slub_debug enabled, so that it does not cause further list corruption bugs
  (yuan.gao)

- Code cleanup and kerneldocs polishing (Zhen Lei, Vlastimil Babka)

15 Nov 2024: USB-serial updates for 6.13-rc1 [+ + +]
USB-serial updates for 6.13-rc1

Here are the USB-serial updates for 6.13-rc1, including:

 - improved support for quirky pl2303 hxd devices
 - make sure ftdi_sio TIOCGSERIAL returns consistent data

Everything has been in linux-next with no reported issues.

 
14 Nov 2024: iommu/arm-smmu: Updates for 6.13 [+ + +]
Hi Joerg,


The summary is in the tag, but the highlight is definitely the removal
of the complicated block-splitting code from the Arm page-table
implementations. It even means that we have a negative diffstat!

As with 6.12, I've already pushed this lot to the arm/smmu branch in
the iommu tree. Please can you merge that into 'next'?

Cheers,

Will

--->8

Arm SMMU updates for 6.13

- SMMUv2:
  * Return -EPROBE_DEFER for client devices probing before their SMMU.
  * Devicetree binding updates for Qualcomm MMU-500 implementations.

- SMMUv3:
  * Minor fixes and cleanup for NVIDIA's virtual command queue driver.

- IO-PGTable:
  * Fix indexing of concatenated PGDs and extend selftest coverage.
  * Remove unused block-splitting support.

14 Nov 2024: SOC FSL for 6.13 [+ + +]
Hi Arnd,


Thanks
Christophe

FSL SOC changes for 6.13:

- Fix a missing of_node_put() in RCPM
- Fix a missing error code on failure in CPM1 QMC
- Switch to using for_each_available_child_of_node_scoped() in CPM1 TSA

14 Nov 2024: LoongArch KVM changes for v6.13 [+ + +]
LoongArch KVM changes for v6.13

1. Add iocsr and mmio bus simulation in kernel.
2. Add in-kernel interrupt controller emulation.
3. Add virt extension support for eiointc irqchip.

 
13 Nov 2024: Btrfs updates for 6.13 [+ + +]
Hi,

please pull the following updates for btrfs.

Changes outside of btrfs: add io_uring command flag to track a dying
task (the rest will go via the block git tree).

User visible changes:

- wire encoded read (ioctl) to io_uring commands, this can be used on
  itself, in the future this will allow 'send' to be asynchronous
  - as a consequence, the encoded read ioctl can also work in
    non-blocking mode

- new ioctl to wait for cleaned subvolumes, no need to use the generic
  and root-only SEARCH_TREE ioctl, will be used by "btrfs subvol sync"

- recognize different paths/symlinks for the same devices and don't
  report them during rescanning, this can be observed with LVM or DM

- seeding device use case change, the sprout device (the one capturing
  new writes) will not clear the read-only status of the super block;
  this prevents accumulating space from deleted snapshots

Performance improvements:

- reduce lock contention when traversing extent buffers

- reduce extent tree lock contention when searching for inline backref

- switch from rb-trees to xarray for delayed ref tracking, improvements
  due to better cache locality, branching factors and more compact data
  structures

- enable extent map shrinker again (prevent memory exhaustion under
  some types of IO load), reworked to run in a single worker thread
  (there used to be problems causing long stalls under memory pressure)

Core changes:

- raid-stripe-tree feature updates
  - make device replace and scrub work
  - implement partial deletion of stripe extents
  - new selftests

- split the config option BTRFS_DEBUG and add EXPERIMENTAL for features
  that are experimental or with known problems so we don't misuse
  debugging config for that

- subpage mode updates (sector < page)
  - update compression implementations
  - update writepage, writeback

- continued folio API conversions
  - buffered writes

- make buffered write copy one page at a time, preparatory work for
  future integration with large folios, may cause performance drop

- proper locking of root item regarding starting send

- error handling improvements

- code cleanups and refactoring
  - dead code removal
  - unused parameter reduction
  - lockdep assertions

13 Nov 2024: timer drivers for v6.13-rc1 [+ + +]
Hi Thomas,

please consider the following changes for the timer drivers v6.13-rc1

- Remove unused dw_apb_clockevent_[pause|resume|stop] functions as
   they are unused since 2021 (David Alan Gilbert)

- Make the sp804 driver user selectable as they may be unused on some
   platforms (Mark Brown)

- Don't fail if the ti-dm does not describe an interrupt in the DT as
   this could be a normal situation if the PWM is used (Judith Mendez)

- Always use cluster 0 counter as a clocksource on a multi-cluster
   system to prevent problems related to the time shifting between
   clusters if multiple per cluster clocksource is used (Paul Burton)

- Move the RaLink system tick counter from the arch directory to the
   clocksource directory (Sergio Paracuellos)

- Convert the owl-timer bindings into yaml schema (Ivaylo Ivanov)

- Fix child node refcount handling on the TI DM by relying on the
   __free annotation to automatically release the refcount on the node
   (Javier Carrasco)

- Remove pointless cast in the GPX driver as PTR_ERR already does that
   (Tang Bin)

- Use of_property_present() for non-boolean properties where it is
   possible in the different drivers (Rob Herring)

 
12 Nov 2024: KVM: x86 changes for 6.13 [+ + +]
AFAIK, there are no conflicts or dependencies with other architectures or
trees.
 
11 Nov 2024: Apple SoC DT updates for v6.13 [+ + +]
Hi SoC folks,

Please merge these DT changes for v6.13.

This batch adds a bunch of pre-M1 Apple iDevice SoC and board device
trees. These are bare-bones right now, just basic bring-up.

-Hector

Apple SoC DT updates for 6.13:

- Added base DTs for a bunch of non-Mac Apple iDevices (pre-M1)

11 Nov 2024: interconnect changes for 6.13 [+ + +]
This is the pull request with interconnect changes for the v6.13-rc1 merge
window. It contains new drivers and clean-ups. As always, the summary is
in the signed tag.

All patches have been in linux-next for at least a week. There are no

Thanks,
Georgi


interconnect changes for 6.13

This pull request contains the interconnect changes for the 6.13-rc1 merge
window. It contains new drivers and clean-ups with the following highlights:

Core changes:
- Remove a useless kfree_const() usage
- Switch back to struct platform_driver::remove()
- Use of_property_present() for non-boolean properties

Driver changes:
- New driver for QCS615 platforms
- New driver for SAR2130P platforms
- New driver for QCS8300 platforms
- Probe defer incase of missing QoS clock dependency in rpmh driver
- Rename qos_clks_required flag to qos_requires_clocks in rpmh driver
- Constify pointers to qcom_icc_node in msm8937 driver

Signed-off-by: Georgi Djakov <djakov@kernel.org>

 
8 Nov 2024: [PULL REQUEST] Intel IOMMU updates for v6.13 (2nd [+ + +]
Hi Joerg,

I apologize, I should have put all patches in a single pull request.
However, the feature introduced in this pull request needed extra rounds
of review and is now ready for merge.  I'm trying to merge this series
in this merge window because it's self-contained and other series, for
vfio and iommufd, depend on it. Merging this series in time will
simplify the upstream process for those series.

With above explained, the following changes have been queued for
v6.13-rc1, including:

 - Add domain replacement support for pasid

These patches are based on the vtd branch of the iommu tree. The complete
patches are also available at:

https://github.com/LuBaolu/intel-iommu/commits/vtd-update-for-v6.13

Please consider them for iommu next.

Best regards,
baolu

 
6 Nov 2024: clk: imx: Updates for v6.13 [+ + +]
i.MX clocks changes for 6.13

- Document the compatible for i.MX95 HSIO BLK CTRL
- Add the HSIO BLK CTRL provider to the i.MX95 driver
- Moved the CLK_END macro from bindings to driver for i.MX93
- Add support for i.MX91 CCM to the i.MX93 driver
- Add workaround as a fix for errata e10858 to the lpcg-scu driver
- Fix PLL initialization and power up for i.MX93 in fracn-gppll clock type
- Fix clock enable state save/restore in clk-scu clock implementation
- Skip HDMI LPCG clocks save/restore in lpcg-scu clock implementation
- Fix return value check on PM domains attach in imx8-acm driver

6 Nov 2024: arm64: dts: ti: K3 devicetree updates for v6.13 [+ + +]
 protected-headers="v1"
From: Vignesh Raghavendra <vigneshr@ti.com>
To: Olof Johansson <olof@lixom.net>, Arnd Bergmann <arnd@arndb.de>,
 arm-soc <arm@kernel.org>, SoC <soc@kernel.org>
Cc: Tero Kristo <kristo@kernel.org>, linux-arm-kernel@lists.infradead.org,
 linux-kernel@vger.kernel.org, Nishanth Menon <nm@ti.com>
Message-ID: <3ded4795-2186-4e06-bda6-9c9a65a3fdb9@ti.com>
Subject: [GIT PULL 1/2] arm64: dts: ti: K3 devicetree updates for v6.13

--------------sUPnlalQ0bVwG0NLg6o4u8wc

Hi ARM SoC Maintainers,

TI K3 device tree updates for v6.13

Generic Fixups/Cleanups:
- Cleanup bootph-* tags to limit to leaf nodes only
- clock IDs for MCSPI instances fixed up across J7xx family
- Misc indentation and whitespace cleanup across dts

New SoC
- J742s2 which is a cutdown of existing J784s4 and uses same EVM

SoC Specific features and Fixes:
- eQEP (counter) support across AM64/AM62/AM62A

AM64
- M4F Remoteproc support
- stats collection support for ICSSGs via ti,pa-stats
- Add PCIe EP overlays

AM65
- stats collection support for ICSSGs via ti,pa-stats

AM62:
- M4F Remoteproc support
- eMMC/SD TAP value updates
- dtbs_check fixes for opp_efuse_table

AM62A
- 1.4GHz opp entry

AM62P
- 1.4GHz opp entry

J7200
- Add PCIe EP overlays
- Pinmux node reg range fixes

Board Specific

AM62
- am62 verdin ivy carrier board support
- am625-verdin TPM device support
- am62 verdin ivy board support
- Beagleplay Mikrobus PWM header support
- am62-verdin increase SD regulator startup delay

AM64
- am642-phyboard-electra-rdk trickle charger support
- am64-phy* drop buswidth from sdhci nodes

6 Nov 2024: soc: ti: Driver updates for v6.13 [+ + +]
Hi,


TI SoC driver updates for v6.13

- knav_qmss_queue: Cleanups around request_irq params and redundant code.
- ti_sci: Power management ops in preperation for suspend/resume capability.
  Also includes dependency patch to export dev_pm_qos_read_value
  (acked by Rafael).

6 Nov 2024: auxdisplay for 6.13-1 [+ + +]
New cycle new tiny update to auxdisplay subsystem. The changes were
a few weeks in Linux Next without reported problems. Please, apply
to v6.13-rc1 (or to current cycle if you want, there shouldn't be
any dependencies or conflicts),

Thanks,

With Best Regards,
Andy Shevchenko

auxdisplay for v6.13-1

 * Move Holtek 16k33 driver to use agnostic i2c_get_match_data()
 * Miscellaneuous cleanups

The following is an automated git shortlog grouped by driver:

cfag12864b:
 - Remove unused functions

ht16k33:
 - Make use of i2c_get_match_data()
 - Drop explicit initialization of struct i2c_device_id::driver_data to 0

lcd2s:
 - Drop explicit initialization of struct i2c_device_id::driver_data to 0

 
4 Nov 2024: clk: samsung: drivers for v6.13 [+ + +]
Samsung SoC clock drivers changes for 6.13

1. Tesla FSD: Move number of clocks from DT binding headers to driver,
   because these are not an ABI and might change while finishing support
   for the hardware.

2. ExynosAutov920: Add clock controller drivers for PERIC1, MISC, HSI0
   and HSI1.  Context of patch depends on a fix from fixes branch, thus
   pull in my earlier pull request with fixes.

3. Google GS101: Do not disable UFS host controller clocks, ever,
   because gating them does not work well with UFS sleep/power savings.
   Downstream does not gate them via OS, but uses hardware feature -
   Automatic Clock Gating - which is not yet supported in upstream.

4. Exynos8895: New SoC with initial support for clock controllers:
   FSYS0/1, PERIC0/1, PERIS and TOP.

5. Few code style improvements.

4 Nov 2024: [PULL REQUEST] Intel IOMMU updates for v6.13 [+ + +]
Hi Joerg,

 
1 Nov 2024: cpupower second update for Linux 6.13-rc1 [+ + +]
Hi Rafael,


cpupower second update for Linux 6.13-rc1

- add Chinese Simplified translation for cpufrequtils package
- add checks for dependencies, xgettext and msgfmt before
   attempting to generate GNU gettext Language Translations.

diff is attached.

thanks,
-- Shuah

linux-cpupower-6.13-rc1-update2

cpupower second update for Linux 6.13-rc1

- add Chinese Simplified translation for cpufrequtils package
- add checks for dependencies, xgettext and msgfmt before
   attempting to generate GNU gettext Language Translations.

 
29 Oct 2024: samsung: drivers for v6.13 [+ + +]
Samsung SoC drivers for v6.13

Add Samsung ChipID driver support for new SoCs: Exynos8895, Exynos990
and Exynos9810.

29 Oct 2024: memory: drivers for v6.13 [+ + +]
Memory controller drivers for v6.13

1. Freescale IFC: Split handling of child nodes in the bindings to
   fix dtbs_check warning.
2. ARM64 defconfig: Nothing selects CONFIG_FSL_IFC anymore since
   commit 9ba0cae3cac0 ("memory: fsl_ifc: Make FSL_IFC config visible
   and selectable") and actually CONFIG_MTD_NAND_FSL_IFC depends on it
   now.  Enable CONFIG_FSL_IFC in ARM64 defconfig, so users of it won't
   lose these two drivers.

29 Oct 2024: pinctrl: samsung: drivers for v6.13 [+ + +]
Samsung pinctrl drivers changes for v6.13

1. Add new pin controller drivers for new Samsung SoCs: Exynos8895,
   Exynos9810, Exynos990.

2. Correct the condition when applying further interrupt constraints on
   certain Samsung pin controllers.  The condition was simply not
   effective.

 
25 Oct 2024: PECI changes for v6.13-rc1 [+ + +]
SGkgR3JlZyENCg0KUGxlYXNlIHB1bGwgUEVDSSB1cGRhdGUgZm9yIExpbnV4IHY2LjEzLg0KDQpU
aGFua3MNCi1Jd29uYQ0KDQpUaGUgZm9sbG93aW5nIGNoYW5nZXMgc2luY2UgY29tbWl0IDQyZjc2
NTJkM2ViNTI3ZDAzNjY1YjA5ZWRhYzQ3Zjg1ZmI2MDA5MjQ6DQoNCiAgTGludXggNi4xMi1yYzQg
KDIwMjQtMTAtMjAgMTU6MTk6MzggLTA3MDApDQoNCmFyZSBhdmFpbGFibGUgaW4gdGhlIEdpdCBy
ZXBvc2l0b3J5IGF0Og0KDQogIGdpdDovL2dpdC5rZXJuZWwub3JnL3B1Yi9zY20vbGludXgva2Vy
bmVsL2dpdC9pd2kvbGludXguZ2l0IHRhZ3MvcGVjaS1uZXh0LTYuMTMtcmMxDQoNCmZvciB5b3Ug
dG8gZmV0Y2ggY2hhbmdlcyB1cCB0byA3MzNkYzk3OGZhYjY1OWRlZTk5Mzg3MzllMmI5ZTg4Y2U3
MmYwNDA4Og0KDQogIHBlY2k6IG5wY206IENvbnN0aWZ5IHN0cnVjdCBwZWNpX2NvbnRyb2xsZXJf
b3Bz4oCLICgyMDI0LTEwLTI1IDEwOjU4OjA3ICswMjAwKQ0KDQotLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQpVcGRhdGUgcGVj
aS1uZXh0IGZvciB2Ni4xMy1yYzENCg0KQSBzbWFsbCBjaGFuZ2UgaW4gcGVjaS1ucGNtIGRyaXZl
ciB0byBtYXJrIHBlY2lfY29udHJvbGxlcl9vcHMgYXMgY29uc3QuDQoNCi0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCkNocmlz
dG9waGUgSkFJTExFVCAoMSk6DQogICAgICBwZWNpOiBucGNtOiBDb25zdGlmeSBzdHJ1Y3QgcGVj
aV9jb250cm9sbGVyX29wc+KAiw0KDQogZHJpdmVycy9wZWNpL2NvbnRyb2xsZXIvcGVjaS1ucGNt
LmMgfCAyICstDQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0p
DQo=
 
20 Oct 2024: RISC-V T-HEAD Devicetrees for v6.13 [+ + +]
Hi Arnd,

have been in linux-next since October 15th.

Thanks,
Drew

T-HEAD Devicetrees for v6.13

Add nodes for pin controllers on the T-Head TH1520 RISC-V SoC. The
yaml binding and pinctrl-th1520 driver has been merged into next by
Linus W and will be included in the 6.13 pinctrl PR.

The TH1520 GPIO controllers are already supported by the gpio-dwapb
driver. This PR improves GPIO support by adding GPIO ranges and GPIO
line names for the BeagleV Ahead and LicheePi 4A boards. Support is
added for the built-in LEDs on the Ahead board.

Signed-off-by: Drew Fustini <drew@pdp7.com>

 
17 Oct 2024: LOCKDEP changes for v6.13 [+ + +]
Hi Peter & Ingo,


Lockdep changes for v6.13:

- Add a cpu-offline callback for lockdep to reset hardirq tracing status, this provides
  more information to locate issues other than a triple fault on x86.
- Fix an issue that lockdep_set_subclass() can set the lockdep_map::name into a newly
  created one instead of the existing, this can end up with a WARN triggered in
  look_up_lock_class(), because class->name != lock->name while the key is the same.
  A test case is also added to prevent this from happening in the future.
- Use pr_info() to print lockdep initial information instead of printk().
- Enable PROVE_RAW_LOCK_NESTING with PROVE_LOCKING.
- (non lockdep) Convert fields of 'enum vcpu_state' to uppercase.

 
11 Oct 2024: cpupower update for Linux 6.13-rc1 [+ + +]
Hi Rafael,


This cpupower update for Linux 6.13-rc1 consists of changes to:

-- bindings:
    - add generated files to gitignore
    - improve disable c_state block
    - new test to confirm cpu state is disabled

-- bench:
    - print config file path when open cpufreq-bench.conf fails

-- Makefile
    - override cross-compiling env params to make it easier for builds
      in Yocto environment.

-- add documentation for new EPP value change, amd_pstate mode change,
    and turbo-boost features.

diff is attached.

Sending it early to get the Yacto build available in next.

thanks,
-- Shuah

linux-cpupower-6.13-rc1

This cpupower update for Linux 6.13-rc1 consists of changes to:

-- bindings:
    - add generated files to gitignore
    - improve disable c_state block
    - new test to confirm cpu state is disabled

-- bench:
    - print config file path when open cpufreq-bench.conf fails

-- Makefile
    - override cross-compiling env params to make it easier for builds
      in Yocto environment.

-- add documentation for new EPP value change, amd_pstate mode change,
    and turbo-boost features.

 
4 Oct 2024: spi-mem/swap16 changes for v6.13 [+ + +]
Hi, Mark,

I've made an immutable tag for the spi-mem swap16 changes. I let the
0day bot run on them, I got no complains. Pull if you need them.

Thanks,
ta

This allows specifying the byte order in Octal DTR mode.

There are NOR flashes (Macronix) that swap the bytes on a 16-bit
boundary when configured in Octal DTR mode. The byte order of
16-bit words is swapped when read or written in Octal Double
Transfer Rate (DTR) mode compared to Single Transfer Rate (STR)
modes. If one writes D0 D1 D2 D3 bytes using 1-1-1 mode, and uses
8D-8D-8D SPI mode for reading, it will read back D1 D0 D3 D2.
Swapping the bytes may introduce some endianness problems. It can
affect the boot sequence if the entire boot sequence is not handled
in either 8D-8D-8D mode or 1-1-1 mode. Therefore, it is necessary
to swap the bytes back to ensure the same byte order as in STR modes.
Fortunately there are controllers that could swap the bytes back at
runtime, addressing the flash's endianness requirements. Provide a
way for the upper layers to specify the byte order in Octal DTR mode.