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>
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>
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
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.
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>
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.
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>
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>
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>
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
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
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>
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/.
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()
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()
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
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
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==
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
- fix for loongson64 device tree - add SPI nand to realtek device tree - change clock tree for mobileye
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>
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>
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>
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>
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>
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>
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>
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==
This includes the following changes related to sparc64 for v6.13: - Make sparc64 compilable with clang - Replace one-element array with flexible array member
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.
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
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
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!
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!
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!
[ 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
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.
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
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
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
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.
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
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.
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)
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.
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.
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.
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.
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.
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
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
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)
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
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 ---
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.
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)
Please consider pulling the following changes in perf tools for v6.13. Thanks, Namhyung perf tools changes for v6.13 perf record
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
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: ---------
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.
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.
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.
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.
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!
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!
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
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
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.
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.
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.
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
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
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
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
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)
- 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.
- 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.
- 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.
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
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
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+
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/
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
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
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
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.
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
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
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
one this round. -- - Use vmalloc_array() instead of vmalloc()
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)
OpenRISC updates for 6.13 A single fixup from me: - Fix bug with earlycon being broken due to removal of early_ioremap.
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)
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
configfs updates for Linux 6.13 - remove unused code (Dr. David Alan Gilbert) - improve item creation performance (Seamus Connor)
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
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.
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
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()
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.
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!
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
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
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
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
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
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
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
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
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
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
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
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
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.
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.
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>
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
cgroup: Changes for v6.13 - cpu.stat now also shows niced CPU time. - Freezer and cpuset optimizations. - Other misc changes.
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()
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
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.
please a single x86/platform cleanup for v6.13. Thx. --- - Replace deprecated PCI functions used in intel-mid
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
please pull the x86/cache lineup for v6.13. Thx. --- - Add support for 6-node sub-NUMA clustering on Intel - Cleanup
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.
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
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.
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.
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
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
please pull the latest changes for the kernel livepatching from - A new selftest for livepatching of a kprobed function.
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
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
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!
A lot of miscellaneous ext4 bug fixes and cleanups this cycle, most notably in the journaling code, bufered I/O, and compiler warning cleanups.
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
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)
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!
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
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!
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!
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
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.
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
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.
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
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
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
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.
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.
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().
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.
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
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.
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.
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
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
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)
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.
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.
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
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.
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
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)
AFAIK, there are no conflicts or dependencies with other architectures or trees.
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)
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>
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
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
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
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).
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
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.
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.
Samsung SoC drivers for v6.13 Add Samsung ChipID driver support for new SoCs: Exynos8895, Exynos990 and Exynos9810.
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.
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.
SGkgR3JlZyENCg0KUGxlYXNlIHB1bGwgUEVDSSB1cGRhdGUgZm9yIExpbnV4IHY2LjEzLg0KDQpU aGFua3MNCi1Jd29uYQ0KDQpUaGUgZm9sbG93aW5nIGNoYW5nZXMgc2luY2UgY29tbWl0IDQyZjc2 NTJkM2ViNTI3ZDAzNjY1YjA5ZWRhYzQ3Zjg1ZmI2MDA5MjQ6DQoNCiAgTGludXggNi4xMi1yYzQg KDIwMjQtMTAtMjAgMTU6MTk6MzggLTA3MDApDQoNCmFyZSBhdmFpbGFibGUgaW4gdGhlIEdpdCBy ZXBvc2l0b3J5IGF0Og0KDQogIGdpdDovL2dpdC5rZXJuZWwub3JnL3B1Yi9zY20vbGludXgva2Vy bmVsL2dpdC9pd2kvbGludXguZ2l0IHRhZ3MvcGVjaS1uZXh0LTYuMTMtcmMxDQoNCmZvciB5b3Ug dG8gZmV0Y2ggY2hhbmdlcyB1cCB0byA3MzNkYzk3OGZhYjY1OWRlZTk5Mzg3MzllMmI5ZTg4Y2U3 MmYwNDA4Og0KDQogIHBlY2k6IG5wY206IENvbnN0aWZ5IHN0cnVjdCBwZWNpX2NvbnRyb2xsZXJf b3Bz4oCLICgyMDI0LTEwLTI1IDEwOjU4OjA3ICswMjAwKQ0KDQotLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQpVcGRhdGUgcGVj aS1uZXh0IGZvciB2Ni4xMy1yYzENCg0KQSBzbWFsbCBjaGFuZ2UgaW4gcGVjaS1ucGNtIGRyaXZl ciB0byBtYXJrIHBlY2lfY29udHJvbGxlcl9vcHMgYXMgY29uc3QuDQoNCi0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCkNocmlz dG9waGUgSkFJTExFVCAoMSk6DQogICAgICBwZWNpOiBucGNtOiBDb25zdGlmeSBzdHJ1Y3QgcGVj aV9jb250cm9sbGVyX29wc+KAiw0KDQogZHJpdmVycy9wZWNpL2NvbnRyb2xsZXIvcGVjaS1ucGNt LmMgfCAyICstDQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0p DQo=
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>
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.
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.
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.