Do not always honor guest PAT on CPUs that support self-snoop. This triggers an issue in the bochsdrm driver, which used ioremap() instead of ioremap_wc() to map the video RAM. The revert lets video RAM use the WB memory type instead of the slower UC memory type.
There is a recently notified BT regression with no fix yet. I *think* such fix will not land in the next week. Including fixes from netfilter. Current release - regressions: - core: tighten bad gso csum offset check in virtio_net_hdr - netfilter: move nf flowtable bpf initialization in nf_flow_table_module_init() - eth: ice: stop calling pci_disable_device() as we use pcim - eth: fou: fix null-ptr-deref in GRO. Current release - new code bugs: - hsr: prevent NULL pointer dereference in hsr_proxy_announce() Previous releases - regressions: - hsr: remove seqnr_lock - netfilter: nft_socket: fix sk refcount leaks - mptcp: pm: fix uaf in __timer_delete_sync - phy: dp83822: fix NULL pointer dereference on DP83825 devices - eth: revert "virtio_net: rx enable premapped mode by default" - eth: octeontx2-af: Modify SMQ flush sequence to drop packets Previous releases - always broken: - eth: mlx5: fix bridge mode operations when there are no VFs - eth: igb: Always call igb_xdp_ring_update_tail() under Tx lock Signed-off-by: Paolo Abeni <[email protected]>
Here is a platform-drivers-x86 fixes PR for v6.11. Fixes: - asus-wmi: Disable OOBE that interferes with backlight control - panasonic-laptop: Two fixes to SINF array handling Regards, i. platform-drivers-x86 for v6.11-7 Fixes: - asus-wmi: Disable OOBE that interferes with backlight control - panasonic-laptop: Two fixes to SINF array handling The following is an automated shortlog grouped by driver: asus-wmi: - Disable OOBE experience on Zenbook S 16 panasonic-laptop: - Allocate 1 entry extra in the sinf array - Fix SINF array out of bounds accesses
Including fixes from can, bluetooth and wireless. No known regressions at this point. Another calm week, but chances are that has more to do with vacation season than the quality of our work. Current release - new code bugs: - smc: prevent NULL pointer dereference in txopt_get - eth: ti: am65-cpsw: number of XDP-related fixes Previous releases - regressions: - Revert "Bluetooth: MGMT/SMP: Fix address type when using SMP over BREDR/LE", it breaks existing user space - Bluetooth: qca: if memdump doesn't work, re-enable IBS to avoid later problems with suspend - can: mcp251x: fix deadlock if an interrupt occurs during mcp251x_open - eth: r8152: fix the firmware communication error due to use of bulk write - ptp: ocp: fix serial port information export - eth: igb: fix not clearing TimeSync interrupts for 82580 - Revert "wifi: ath11k: support hibernation", fix suspend on Lenovo Previous releases - always broken: - eth: intel: fix crashes and bugs when reconfiguration and resets happening in parallel - wifi: ath11k: fix NULL dereference in ath11k_mac_get_eirp_power() Misc: - docs: netdev: document guidance on cleanup.h Signed-off-by: Jakub Kicinski <[email protected]>
Here is a platform-drivers-x86 fixes PR for v6.11. Changes: - amd/pmf: ASUS GA403 quirk matching tweak - dell-smbios: Fix to the init function rollback path Regards, i. platform-drivers-x86 for v6.11-6 Changes: - amd/pmf: ASUS GA403 quirk matching tweak - dell-smbios: Fix to the init function rollback path The following is an automated shortlog grouped by driver: amd: pmf: - Make ASUS GA403 quirk generic dell-smbios: - Fix error path in dell_smbios_init()
to receive updates for the input subsystem. You will get: - a fix for Cypress PS/2 touchpad for regression introduced in 6.11 merge window where timeout condition is incorrectly reported for all extended Cypress commands. Changelog: ---------
USB-serial device id for 6.11-rc6 Here's a new modem device id. This one has been in linux-next with no reported issues.
Including fixes from bluetooth, wireless and netfilter. No known outstanding regressions. Current release - regressions: - wifi: iwlwifi: fix hibernation - eth: ionic: prevent tx_timeout due to frequent doorbell ringing Previous releases - regressions: - sched: fix sch_fq incorrect behavior for small weights - wifi: - iwlwifi: take the mutex before running link selection - wfx: repair open network AP mode - netfilter: restore IP sanity checks for netdev/egress - tcp: fix forever orphan socket caused by tcp_abort - mptcp: close subflow when receiving TCP+FIN - bluetooth: fix random crash seen while removing btnxpuart driver Previous releases - always broken: - mptcp: more fixes for the in-kernel PM - eth: bonding: change ipsec_lock from spin lock to mutex - eth: mana: fix race of mana_hwc_post_rx_wqe and new hwc response Misc: - documentation: drop special comment style for net code Signed-off-by: Paolo Abeni <[email protected]>
Here is a platform-drivers-x86 fixes PR for v6.11. None of the change looks complicated. In case you wonder, there are more IDs added to AMD PMC in this PR as it turned out the previous ones were not sufficient. Changes: - platform/x86/amd/pmc: AMD 1Ah model 60h series support (2nd attempt). - asus-wmi: Prevent spurious rfkill on Asus Zenbook Duo. - x86-android-tablets: Relax DMI match to cover another model. Regards, i. platform-drivers-x86 for v6.11-5 Changes: - platform/x86/amd/pmc: AMD 1Ah model 60h series support (2nd attempt). - asus-wmi: Prevent spurious rfkill on Asus Zenbook Duo. - x86-android-tablets: Relax DMI match to cover another model. The following is an automated shortlog grouped by driver: amd/pmc: - Extend support for PMC features on new AMD platform - Fix SMU command submission path on new AMD platform asus-wmi: - Fix spurious rfkill on UX8406MA x86-android-tablets: - Make Lenovo Yoga Tab 3 X90F DMI match less strict
please pull s390 fixes for 6.11-rc5. Thank you, Vasily s390 updates for 6.11-rc5 - Fix KASLR base offset to account for symbol offsets in the vmlinux ELF file, preventing tool breakages like the drgn debugger - Fix potential memory corruption of physmem_info during kernel physical address randomization - Fix potential memory corruption due to overlap between the relocated lowcore and identity mapping by correctly reserving lowcore memory - Fix performance regression and avoid randomizing identity mapping base by default - Fix unnecessary delay of AP bus binding complete uevent to prevent startup lag in KVM guests using AP
to receive updates for the input subsystem. You will get: - a tweak to uinput interface to reject requests with abnormally large number of slots. 100 slots/contacts should be enough for real devices - support for FocalTech FT8201 added to the edt-ft5x06 driver - tweaks to i8042 to handle more devices that have issue with its emulation - Synaptics touchpad switched to native SMbus/RMI mode on HP Elitebook 840 G2 - other minor fixes. Changelog: ---------
Including fixes from bluetooth and netfilter. Current release - regressions: - virtio_net: avoid crash on resume - move netdev_tx_reset_queue() call before RX napi enable Current release - new code bugs: - net/mlx5e: fix page leak and incorrect header release w/ HW GRO Previous releases - regressions: - udp: fix receiving fraglist GSO packets - tcp: prevent refcount underflow due to concurrent execution of tcp_sk_exit_batch() Previous releases - always broken: - ipv6: fix possible UAF when incrementing error counters on output - ip6: tunnel: prevent merging of packets with different L2 - mptcp: pm: fix IDs not being reusable - bonding: fix potential crashes in IPsec offload handling - Bluetooth: HCI: - MGMT: add error handling to pair_device() to avoid a crash - invert LE State quirk to be opt-out rather then opt-in - fix LE quote calculation - drv: dsa: VLAN fixes for Ocelot driver - drv: igb: cope with large MAX_SKB_FRAGS Kconfig settings - drv: ice: fi Rx data path on architectures with PAGE_SIZE >= 8192 Misc: - netpoll: do not export netpoll_poll_[disable|enable]() - MAINTAINERS: update the list of networking headers Signed-off-by: Jakub Kicinski <[email protected]>
Here is a platform-drivers-x86 fixes PR for v6.11. Changes: - ISST: Fix an error-handling corner case. - platform/surface: aggregator: Minor corner case fix and new HW support. Regards, i. platform-drivers-x86 for v6.11-4 Changes: - ISST: Fix an error-handling corner case. - platform/surface: aggregator: Minor corner case fix and new HW support. The following is an automated shortlog grouped by driver: asus-wmi: - Add quirk for ROG Ally X ISST: - Fix return value on last invalid resource surface: aggregator: - Fix warning when controller is destroyed in probe surface: aggregator_registry: - Add fan and thermal sensor support for Surface Laptop 5 - Add support for Surface Laptop 6 - Add support for Surface Laptop Go 3 - Add support for Surface Laptop Studio 2 - Add Support for Surface Pro 10
Hi Linux, please pull from To get a fix for filesystem DAX. It has been in -next since August 12th without any reported issues. Thanks, Ira Weiny --- libnvdimm fixes for v6.11-rc4 Commit f467fee48da4 ("block: move the dax flag to queue_limits") broke the DAX tests by skipping over the legacy pmem mapping pages case. - Set the DAX flag in this case as well.
Including fixes from wireless and netfilter Current release - regressions: - udp: fall back to software USO if IPv6 extension headers are present - wifi: iwlwifi: correctly lookup DMA address in SG table Current release - new code bugs: - eth: mlx5e: fix queue stats access to non-existing channels splat Previous releases - regressions: - eth: mlx5e: take state lock during tx timeout reporter - eth: mlxbf_gige: disable RX filters until RX path initialized - eth: igc: fix reset adapter logics when tx mode change Previous releases - always broken: - tcp: update window clamping condition - netfilter: - nf_queue: drop packets with cloned unconfirmed conntracks - nf_tables: Add locking for NFT_MSG_GETOBJ_RESET requests - vsock: fix recursive ->recvmsg calls - dsa: vsc73xx: fix MDIO bus access and PHY opera - eth: gtp: pull network headers in gtp_dev_xmit() - eth: igc: fix packet still tx after gate close by reducing i226 MAC retry buffer - eth: mana: fix RX buf alloc_size alignment and atomic op panic - eth: hns3: fix a deadlock problem when config TC during resetting Signed-off-by: Paolo Abeni <[email protected]>
s390: * Fix failure to start guests with kvm.use_gisa=0 * Panic if (un)share fails to maintain security. ARM: * Use kvfree() for the kvmalloc'd nested MMUs array * Set of fixes to address warnings in W=1 builds * Make KVM depend on assembler support for ARMv8.4 * Fix for vgic-debug interface for VMs without LPIs * Actually check ID_AA64MMFR3_EL1.S1PIE in get-reg-list selftest * Minor code / comment cleanups for configuring PAuth traps * Take kvm->arch.config_lock to prevent destruction / initialization race for a vCPU's CPUIF which may lead to a UAF x86: * Disallow read-only memslots for SEV-ES and SEV-SNP (and TDX) * Fix smatch issues * Small cleanups * Make x2APIC ID 100% readonly * Fix typo in uapi constant Generic: * Use synchronize_srcu_expedited() on irqfd shutdown
Here is a platform-drivers-x86 fixes PR for v6.11. While the ideapad concurrency fix itself is relatively straightforward, it required moving code around and adding a bit of supporting infrastructure to have a clean inter-driver interface. This shows up in the diffstats. Fixes: - ideapad-laptop / lenovo-ymc: Protect VPC calls with a mutex - amd/pmf: Query HPD data also when ALS is disabled Regards, i. platform-drivers-x86 for v6.11-3 Fixes: - ideapad-laptop / lenovo-ymc: Protect VPC calls with a mutex - amd/pmf: Query HPD data also when ALS is disabled The following is an automated shortlog grouped by driver: amd/pmf: - Fix to Update HPD Data When ALS is Disabled ideapad-laptop: - add a mutex to synchronize VPC commands - introduce a generic notification chain - move ymc_trigger_ec from lenovo-ymc
pm-6.11-rc3 cpufreq: intel_pstate: Update Balance performance EPP for Emerald Rapids Linux 6.11-rc1 to receive a power management update for 6.11-rc3. This changes the default EPP (energy-performance preference) value for the Emerald Rapids processor in the intel_pstate driver which should improve both the performance and energy efficiency (Pedro Henrique Kopper). Thanks!
Including fixes from bluetooth. Current release - regressions: - eth: bnxt_en: fix memory out-of-bounds in bnxt_fill_hw_rss_tbl() on older chips Current release - new code bugs: - ethtool: fix off-by-one error / kdoc contradicting the code for max RSS context IDs - Bluetooth: hci_qca: - QCA6390: fix support on non-DT platforms - QCA6390: don't call pwrseq_power_off() twice - fix a NULL-pointer derefence at shutdown - eth: ice: fix incorrect assigns of FEC counters Previous releases - regressions: - mptcp: fix handling endpoints with both 'signal' and 'subflow' flags set - virtio-net: fix changing ring count when vq IRQ coalescing not supported - eth: gve: fix use of netif_carrier_ok() during reconfig / reset Previous releases - always broken: - eth: idpf: fix bugs in queue re-allocation on reconfig / reset - ethtool: fix context creation with no parameters Misc: - linkwatch: use system_unbound_wq to ease RTNL contention Signed-off-by: Jakub Kicinski <[email protected]>
tracing fixes for v6.11: - Have reading of event format files test if the meta data still exists. When an event is freed, a flag (EVENT_FILE_FL_FREED) in the meta data is set to state that it is to prevent any new references to it from happening while waiting for existing references to close. When the last reference closes, the meta data is freed. But the "format" file was missing a check to this flag (along with some other files) that allowed new references to happen, and a use-after-free bug to occur. - Have the trace event meta data use the refcount infrastructure instead of relying on its own atomic counters. - Have tracefs inodes use alloc_inode_sb() for allocation instead of using kmem_cache_alloc() directly. - Have eventfs_create_dir() return an ERR_PTR instead of NULL as the callers expect a real object or an ERR_PTR. - Have release_ei() use call_srcu() and not call_rcu() as all the protection is on SRCU and not RCU. - Fix ftrace_graph_ret_addr() to use the task passed in and not current. - Fix overflow bug in get_free_elt() where the counter can overflow the integer and cause an infinite loop. - Remove unused function ring_buffer_nr_pages() - Have tracefs freeing use the inode RCU infrastructure instead of creating its own. When the kernel had randomize structure fields enabled, the rcu field of the tracefs_inode was overlapping the rcu field of the inode structure, and corrupting it. Instead, use the destroy_inode() callback to do the initial cleanup of the code, and then have free_inode() free it. trace-v6.11-rc2
Hi Linus, Power Supply Fixes for 6.11 cycle * rt5033: fix driver regression causing kernel oops * axp288-charger: fix charge voltage setup * qcom-battmgr: fix thermal zone spamming errors * qcom-battmgr: fix init on Qualcomm X Elite
Here is a platform-drivers-x86 fixes PR for v6.11. Fixes: - intel-vbtn: ACPI notifier racing with itself. - intel/ifs: Init local variable to cover a timeout corner case. - WMI docs spelling New HW Support: - amd/{pmc,pmf}: AMD 1Ah model 60h series. - amd/pmf: SPS quirk support for ASUS ROG Ally X Regards, i. platform-drivers-x86 for v6.11-2 Fixes: - intel-vbtn: ACPI notifier racing with itself. - intel/ifs: Init local variable to cover a timeout corner case. - WMI docs spelling New HW Support: - amd/{pmc,pmf}: AMD 1Ah model 60h series. - amd/pmf: SPS quirk support for ASUS ROG Ally X The following is an automated shortlog grouped by driver: amd/pmc: - Send OS_HINT command for new AMD platform amd/pmf: - Add new ACPI ID AMDI0107 amd: pmf: - Add quirk for ROG Ally X intel/ifs: - Initialize union ifs_status to zero intel-vbtn: - Protect ACPI notify handler against recursion msi-wmi-platform: - Fix spelling mistakes
* fix latent bug in how usage of large pages is determined for confidential VMs * fix "underline too short" in docs * eliminate log spam from limited APIC timer periods * disallow pre-faulting of memory before SEV-SNP VMs are initialized * delay clearing and encrypting private memory until it is added to guest page tables * this change also enables another small cleanup: the checks in SNP_LAUNCH_UPDATE that limit it to non-populated, private pages can now be moved in the common kvm_gmem_populate() function * fix compilation error that the RISC-V merge introduced in selftests
please pull s390 changes for 6.11-rc2. Thank you, Vasily s390 updates for 6.11-rc2 - Remove unused empty CPU alternatives header file - Fix recently and erroneously removed exception handling when loading an invalid floating point register - Couple of ptdump fixes to reflect the recent changes due to the uncoupling of physical vs virtual kernel address spaces - Couple of changes to avoid the unnecessary splitting of large pages in kernel mappings - Add the missing MODULE_DESCRIPTION for the CIO modules
Including fixes from wireless, bleutooth, BPF and netfilter. Current release - regressions: - core: drop bad gso csum_start and offset in virtio_net_hdr - wifi: mt76: fix null pointer access in mt792x_mac_link_bss_remove - eth: tun: add missing bpf_net_ctx_clear() in do_xdp_generic() - phy: aquantia: only poll GLOBAL_CFG regs on aqr113, aqr113c and aqr115c Current release - new code bugs: - smc: prevent UAF in inet_create() - bluetooth: btmtk: fix kernel crash when entering btmtk_usb_suspend - eth: bnxt: reject unsupported hash functions Previous releases - regressions: - sched: act_ct: take care of padding in struct zones_ht_key - netfilter: fix null-ptr-deref in iptable_nat_table_init(). - tcp: adjust clamping window for applications specifying SO_RCVBUF Previous releases - always broken: - ethtool: rss: small fixes to spec and GET - mptcp: - fix signal endpoint re-add - pm: fix backup support in signal endpoints - wifi: ath12k: fix soft lockup on suspend - eth: bnxt_en: fix RSS logic in __bnxt_reserve_rings() - eth: ice: fix AF_XDP ZC timeout and concurrency issues - eth: mlx5: - fix missing lock on sync reset reload - fix error handling in irq_pool_request_irq Signed-off-by: Paolo Abeni <[email protected]>
As discussed, this is the updated PR for v6.11-rc1, it includes the section mismatch fix. This pull request contains updates (actually, just fixes) for UBI and UBIFS: - Many fixes for power-cut issues by Zhihao Cheng - Another ubiblock error path fix - ubiblock section mismatch fix - Misc fixes all over the place
turbostat release 2024.07.26 Enable turbostat extensions to add both perf and PMT (Intel Platform Monitoring Technology) counters via the cmdline. Demonstrate PMT access with built-in support for Meteor Lake's Die%c6 counter.
merged tag 'riscv-for-linus-6.11-mw1' RISC-V Patches for the 6.11 Merge Window, Part 2 * Support for NUMA (via SRAT and SLIT), console output (via SPCR), and cache info (via PPTT) on ACPI-based systems. * The trap entry/exit code no longer breaks the return address stack predictor on many systems, which results in an improvement to trap latency. * Support for HAVE_ARCH_STACKLEAK. * The sv39 linear map has been extended to support 128GiB mappings. * The frequency of the mtime CSR is now visible via hwprobe.
This pull request contains updates (actually, just fixes) for UBI and UBIFS: - Many fixes for power-cut issues by Zhihao Cheng - Another ubiblock error path fix - Misc fixes all over the place
change to of_property_for_each_u32() which was small enough to do in one go before rc1 and avoids the need to create of_property_for_each_u32_some_new_name(). Rob Devicetree fixes for 6.11, part 1 - Treewide conversion of of_property_for_each_u32() to drop internal arguments making struct property opaque - Add binding for Amlogic A4 SoC watchdog - Fix constraints for AD7192 'single-channel' property
please pull more s390 updates for 6.11 merge window. Thank you, Vasily more s390 updates for 6.11 merge window - Fix KMSAN build breakage caused by the conflict between s390 and mm-stable trees - Add KMSAN page markers for ptdump - Add runtime constant support - Fix __pa/__va for modules under non-GPL licenses by exporting necessary vm_layout struct with EXPORT_SYMBOL to prevent linkage problems - Fix an endless loop in the CF_DIAG event stop in the CPU Measurement Counter Facility code when the counter set size is zero - Remove the PROTECTED_VIRTUALIZATION_GUEST config option and enable its functionality by default - Support allocation of multiple MSI interrupts per device and improve logging of architecture-specific limitations - Add support for lowcore relocation as a debugging feature to catch all null ptr dereferences in the kernel address space, improving detection beyond the current implementation's limited write access protection - Clean up and rework CPU alternatives to allow for callbacks and early patching for the lowcore relocation
Could you consider these extra patches for 6.11-rc1? Two patches add STATX_DIOALIGN and FS_IOC_GETFSSYSFSPATH support and another one gets rid of the remaining page->index in the codebase according to [1]. I tend to resolve them in this cycle since those improvements are actually straight-forward. The remaining fix addresses a LZ4 decompression race introduced in v6.10 found by regular stress tests. All commits have been in -next except for Chao's new reviewed-bys, so I re-pushed them again. No potential merge conflict is observed. [1] https://lore.kernel.org/r/[email protected] Thanks, Gao Xiang Changes since last update: - Support STATX_DIOALIGN and FS_IOC_GETFSSYSFSPATH; - Fix a race of LZ4 decompression due to recent refactoring; - Another multi-page folio adaption in erofs_bread().
Here is the i3c subsystem pull request for 6.11. This cycle, there are new features for the Designware controller and fixes for the other IPs. I3C for 6.11 Drivers: - dw: optional apb clock and power management support, IBI handling fixes - mipi-i3c-hci: IBI handling fixes - svc: few fixes
Please git pull the following tag: xen: branch for v6.11-rc1 take 2 It contains 2 fixes for issues introduced in this merge window: - one for enhanced debugging in the Xen multicall handling - a series with 2 patches fixing a boot failure when running as dom0 in PVH mode Thanks. Juergen arch/x86/include/asm/xen/hypervisor.h | 5 -- arch/x86/platform/pvh/enlighten.c | 3 -
I know this is running extremely late so I have only included bug fixes and a few small cleanups. In particular the cleanup optimization: try to avoid refing the label in apparmor_file_open is nice to have for scaling on large systems, as it avoids take a ref count when it isn't necessary. For the file open test resulting in kernel test robot noticed a 93.1% improvement of will-it-scale.per_process_ops on: These patches have all been merge tested against your tree as of this morning and regression tested against your tree as of yesterday. thanks - john apparmor-pr-2024-07-24 PR 2024-07-25 + Cleanups - optimization: try to avoid refing the label in apparmor_file_open - remove useless static inline function is_deleted - use kvfree_sensitive to free data->data - fix typo in kernel doc + Bug fixes - unpack transition table if dfa is not present - test: add MODULE_DESCRIPTION() - take nosymfollow flag into account - fix possible NULL pointer dereference - fix null pointer deref when receiving skb during sock creation
- Use improved timer sync for Loongson64 - Fix address of GCR_ACCESS register - Add missing MODULE_DESCRIPTION
A lot of networking people were at a conference last week, busy catching COVID, so relatively short PR. Including fixes from bpf and netfilter. Current release - regressions: - tcp: process the 3rd ACK with sk_socket for TFO and MPTCP Current release - new code bugs: - l2tp: protect session IDR and tunnel session list with one lock, make sure the state is coherent to avoid a warning - eth: bnxt_en: update xdp_rxq_info in queue restart logic - eth: airoha: fix location of the MBI_RX_AGE_SEL_MASK field Previous releases - regressions: - xsk: require XDP_UMEM_TX_METADATA_LEN to actuate tx_metadata_len, the field reuses previously un-validated pad Previous releases - always broken: - tap/tun: drop short frames to prevent crashes later in the stack - eth: ice: add a per-VF limit on number of FDIR filters - af_unix: disable MSG_OOB handling for sockets in sockmap/sockhash Signed-off-by: Jakub Kicinski <[email protected]>
please pull the two trivial changes for 6.11 from - Misc clean up.
Sorry this is so late in the window. It's not even a good reason... I just lost track of which week it was. Happily this is only three small changes and all have been soaking in linux-next for a month or so. kgdb patches for 6.11 Three small changes this cycle: 1. Cleaning up an architecture abstraction that is no longer needed because all the architectures have converged. 2. Actually use the prompt argument to kdb_position_cursor() instead of ignoring it (functionally this fix is a nop but that was due to luck rather than good judgement) 3. Fix a -Wformat-security warning. Signed-off-by: Daniel Thompson <[email protected]>
auxdisplay updates for v6.11 - Add support for configuring the boot message on line displays, - Miscellaneous fixes and improvements. As Andy is on holidays[1], and after checking with him earlier today, I imported his branch, tagged it, and am sending a PR. All of this has been in linux-next for a while, through Andy's auxdisplay repo. Thanks for pulling! [1] https://lore.kernel.org/CAHp75VehHDikSSPJhc4c8t7jp81bQ_Z+pkqYnM_F87xdJP4Xew@mail.gmail.com/
*************** This merge request is coming late in the -rc1 cycle on purpose. I wanted to make sure that the merge issues and other problems were all resoved due to some core api changes (platform and bus structures) happening in this tree. You will have merge conflicts with your tree when you pull from here in the following two files: drivers/fsi/fsi-occ.c drivers/reset/reset-meson-audio-arb.c the resolution for them should be "obvious", and has been in linux-next for a while now. You will also get build errors for the following two platform drivers: drivers/net/ethernet/renesas/rtsn.c drivers/gpu/drm/stm/lvds.c due to these new files coming in during the merge window and them not being in my branch. They too have fixups that have been in linux-next for a while. I have all of the above problems resolved in the following branch: if you want to compare things, OR you can just pull from that point as well, I can make a signed tag for you there if that makes it simpler. Sorry for the conflicts, greg k-h *************** Driver core changes for 6.11-rc1 Here is the big set of driver core changes for 6.11-rc1. Lots of stuff in here, with not a huge diffstat, but apis are evolving which required lots of files to be touched. Highlights of the changes in here are: - platform remove callback api final fixups (Uwe took many releases to get here, finally!) - Rust bindings for basic firmware apis and initial driver-core interactions. It's not all that useful for a "write a whole driver in rust" type of thing, but the firmware bindings do help out the phy rust drivers, and the driver core bindings give a solid base on which others can start their work. There is still a long way to go here before we have a multitude of rust drivers being added, but it's a great first step. - driver core const api changes. This reached across all bus types, and there are some fix-ups for some not-common bus types that linux-next and 0-day testing shook out. This work is being done to help make the rust bindings more safe, as well as the C code, moving toward the end-goal of allowing us to put driver structures into read-only memory. We aren't there yet, but are getting closer. - minor devres cleanups and fixes found by code inspection - arch_topology minor changes - other minor driver core cleanups All of these have been in linux-next for a very long time with no reported problems. Signed-off-by: Greg Kroah-Hartman <[email protected]>
This is the next round of the Rust support. Later than usual, but all the commits have been in linux-next for about 2 weeks. A trivial conflict with the block pull you already merged expected (resolved in linux -next). In addition, there is a small change to the C side from Arnd that akpm ack'ed. Cheers, Miguel Rust changes for v6.11 The highlight is the establishment of a minimum version for the Rust toolchain, including 'rustc' (and bundled tools) and 'bindgen'. The initial minimum will be the pinned version we currently have, i.e. we are just widening the allowed versions. That covers 3 stable Rust releases: 1.78.0, 1.79.0, 1.80.0 (getting released tomorrow), plus beta, plus nightly. This should already be enough for kernel developers in distributions that provide recent Rust compiler versions routinely, such as Arch Linux, Debian Unstable (outside the freeze period), Fedora Linux, Gentoo Linux (especially the testing channel), Nix (unstable) and openSUSE Slowroll and Tumbleweed. In addition, the kernel is now being built-tested by Rust's pre-merge CI. That is, every change that is attempting to land into the Rust compiler is tested against the kernel, and it is merged only if it passes. Similarly, the bindgen tool has agreed to build the kernel in their CI too. Thus, with the pre-merge CI in place, both projects hope to avoid unintentional changes to Rust that break the kernel. This means that, in general, apart from intentional changes on their side (that we will need to workaround conditionally on our side), the upcoming Rust compiler versions should generally work. In addition, the Rust project has proposed getting the kernel into stable Rust (at least solving the main blockers) as one of its three flagship goals for 2024H2 [1]. I would like to thank Niko, Sid, Emilio et al. for their help promoting the collaboration between Rust and the kernel. [1] https://rust-lang.github.io/rust-project-goals/2024h2/index.html#flagship-goals Toolchain and infrastructure: - Support several Rust toolchain versions. - Support several bindgen versions. - Remove 'cargo' requirement and simplify 'rusttest', thanks to 'alloc' having been dropped last cycle. - Provide proper error reporting for the 'rust-analyzer' target. 'kernel' crate: - Add 'uaccess' module with a safe userspace pointers abstraction. - Add 'page' module with a 'struct page' abstraction. - Support more complex generics in workqueue's 'impl_has_work!' macro. 'macros' crate: - Add 'firmware' field support to the 'module!' macro. - Improve 'module!' macro documentation. Documentation: - Provide instructions on what packages should be installed to build the kernel in some popular Linux distributions. - Introduce the new kernel.org LLVM+Rust toolchains. - Explain '#[no_std]'. And a few other small bits.
Constifying ctl_table structs will prevent the modification of proc_handler function pointers as they would reside in .rodata. To get there, the proc_handler arguments must first be const qualified which requires this (fairly large) treewide PR. Sending it in the tail end of of the merge window after a suggestion from Kees to avoid unneeded merge conflicts. It has been rebased on top of 7a3fad30fd8b4b5e370906b3c554f64026f56c2f. I can send it later if it makes more sense on your side; please tell me what you prefer. This PR applies on top of what I see as your latest master, but if you need to generate it, you can do so by executing two commands: 1. Semantic patch: The coccinelle script is here [1] `make coccicheck MODE=patch SPFLAGS="--in-place --include-headers --smpl-spacing" COCCI=COCCI_SCRIPT` 2. Sed command: The sed script is here [2] `sed --in-place -f SED_SCRIPT fs/xfs/xfs_sysctl.c kernel/watchdog.c` This is my first time sending out a semantic patch, so get back to me if you have issues or prefer some other way of receiving it. Testing was done in sysctl-testing (0-day) to avoid generating unnecessary merge conflicts in linux-next. I do not expect any error/regression given that all changes contained in this PR are non-functional. [1] ``` virtual patch @r1@ identifier ctl, write, buffer, lenp, ppos; identifier func !~ "appldata_(timer|interval)_handler|sched_(rt|rr)_handler|rds_tcp_skbuf_handler|proc_sctp_do_(hmac_alg|rto_min|rto_max|udp_port|alpha_beta|auth|probe_interval)"; @@ int func( - struct ctl_table *ctl + const struct ctl_table *ctl ,int write, void *buffer, size_t *lenp, loff_t *ppos); @r2@ identifier func, ctl, write, buffer, lenp, ppos; @@ int func( - struct ctl_table *ctl + const struct ctl_table *ctl ,int write, void *buffer, size_t *lenp, loff_t *ppos) { ... } @r3@ identifier func; @@ int func( - struct ctl_table * + const struct ctl_table * ,int , void *, size_t *, loff_t *); @r4@ identifier func, ctl; @@ int func( - struct ctl_table *ctl + const struct ctl_table *ctl ,int , void *, size_t *, loff_t *); @r5@ identifier func, write, buffer, lenp, ppos; @@ int func( - struct ctl_table * + const struct ctl_table * ,int write, void *buffer, size_t *lenp, loff_t *ppos); ``` [2] ``` s/^xfs_stats_clear_proc_handler(const struct ctl_table \*ctl,$/xfs_stats_clear_proc_handler(\ \tconst struct ctl_table\t*ctl,/ s/^xfs_panic_mask_proc_handler(const struct ctl_table \*ctl,$/xfs_panic_mask_proc_handler(\ \tconst struct ctl_table\t*ctl,/ s/^xfs_deprecated_dointvec_minmax(const struct ctl_table \*ctl,$/xfs_deprecated_dointvec_minmax(\ \tconst struct ctl_table\t*ctl,/ s/proc_watchdog_common(int which, struct ctl_table \*table/proc_watchdog_common(int which, const struct ctl_table *table/ ``` sysctl: treewide: constify the ctl_table argument of proc_handlers Summary - const qualify struct ctl_table args in proc_handlers: This is a prerequisite to moving the static ctl_table structs into .rodata data which will ensure that proc_handler function pointers cannot be modified.
This pull request contains the following changes for UML: - Support for preemption - i386 Rust support - Huge cleanup by Benjamin Berg - UBSAN support - Removal of dead code
Hello Linus, Last one in the lot for the soundwire subsystem updates. Fairly small one with a cleanup pile, debugfs command support and typical updates to drivers soundwire updates for 6.11 - Simplification across subsystem using cleanup.h - Support for debugfs to read/write commands - Few Intel and Qualcomm driver updates
Hello again, Second request for generic phy subsystem feature bunch of new driver and device support and updates to few of the drivers phy-for-6.11 - New Support - Samsung Exynos gs101 drd combo phy - Qualcomm SC8180x USB uniphy, IPQ9574 QMP PCIe phy - Airoha EN7581 PCIe phy - Freescale i.MX8Q HSIO SerDes phy - Starfive jh7110 dphy tx - Updates - Resume support for j721e-wiz driver - Updates to Exynos usbdrd driver - Support for optional power domains in g12a usb2-phy driver - Debugfs support and updates to zynqmp driver
Hello Linus, API with its user is the key feature of this request along with yaml conversion and updates to bunch of drivers. Please note that the tag dmaengine_topic_dma_vec was pulled into the iio tree so you might have recieved that or might receive it from iio people. dmaengine updates for v6.11 New support: - New dmaengine_prep_peripheral_dma_vec() to support transfers using dma vectors and documentation and user in AXI dma - STMicro STM32 DMA3 support and new capabilities of cyclic dma Updates: - Yaml conversion for Freescale imx dma and qdma bindings, sprd sc9860 dma binding - Altera msgdma updates for descriptor management
Two small fixes to silent the compiler and static analyzers tools from Ben Dooks and Jeff Johnson.
Could you please consider this pull request? Thanks, f2fs update for 6.11-rc1 It's a pretty small update including mostly minor bug fixes in zoned storage along with the large section support. Enhancement: - add support for FS_IOC_GETFSSYSFSPATH - enable atgc dynamically if conditions are met - use new ioprio Macro to get ckpt thread ioprio level - remove unreachable lazytime mount option parsing Bug fix: - fix null reference error when checking end of zone - fix start segno of large section - fix to cover read extent cache access with lock - don't dirty inode for readonly filesystem - allocate a new section if curseg is not the first seg in its zone - only fragment segment in the same section - truncate preallocated blocks in f2fs_file_open() - fix to avoid use SSR allocate when do defragment - fix to force buffered IO on inline_data inode And, it includes some minor code clean-ups, and sanity checks.
binfmt_elf tests out of your way and into the tests/ subdirectory, following the newly ratified KUnit naming conventions. :) Thanks! -Kees execve fix for v6.11-rc1 - Move KUnit tests to tests/ subdirectory
You will get a merge conflict in scripts/Makefile.lib It is a conflict between the following two commits: 49636c5680b977d8a39263c6c8db6061c427346e 712aba5543b88996bc4682086471076fbf048927 The resolution exists in linux-next. Thank you. Kbuild updates for v6.11 - Remove tristate choice support from Kconfig - Stop using the PROVIDE() directive in the linker script - Reduce the number of links for the combination of CONFIG_DEBUG_INFO_BTF and CONFIG_KALLSYMS - Enable the warning for symbol reference to .exit.* sections by default - Fix warnings in RPM package builds - Improve scripts/make_fit.py to generate a FIT image with separate base DTB and overlays - Improve choice value calculation in Kconfig - Fix conditional prompt behavior in choice in Kconfig - Remove support for the uncommon EMAIL environment variable in Debian package builds - Remove support for the uncommon "name <email>" form for the DEBEMAIL environment variable - Raise the minimum supported GNU Make version to 4.0 - Remove stale code for the absolute kallsyms - Move header files commonly used for host programs to scripts/include/ - Introduce the pacman-pkg target to generate a pacman package used in Arch Linux - Clean up Kconfig
rpmsg updates for v6.11 This corrects interrupt handling in the stm32 remoteproc driver when being attached to an already running remote processor. It fixes invalid kernel-doc and adds missing MODULE_DESCRIPTION() in the rpmsg char driver.
remoteproc updates for v6.11 The maximum amount of DDR memory used by the Mediatek MT8188/MT8195 SCP is increased, to handle new use cases. Handling of optional L1TCM memory is made actually optional. An optimization is introduced to only clear the unused portion of IPI shared buffers, rather than the entire buffer before writing the message. Detection for IPC-only mode in the TI K3 DSP remoteproc driver is corrected. The loglevel of a debug print in the same is lowered from error. Support for attaching to an running remote processor is added to the Xilinx R5F. An in-kernel implementation of the Qualcomm "protected domain mapper" (aka service registry) service is introduced, to remove the dependency on a userspace implementation to detect when the battery monitor and USB Type-C port manager becomes available. This is then integrated with the Qualcomm remoteproc driver. The Qualcomm PAS remoteproc driver gains support for attempting to bust hwspinlocks held by the remote processor when it crashed/stopped. The TI OMAP remoteproc driver is transitioned to use devres helpers for various forms of allocations. Parsing of memory-regions in the i.MX remoteproc driver is improved to avoid a NULL pointer dereference if the phandle reference is empty. of_node reference counting is corrected in the same.
hwspinlock updates for v6.11 This introduces a mechanism in the hardware spinlock framework, and the Qualcomm TCSR mutex driver, for allowing clients to bust locks held by a remote processor in the event that this enters a faulty state while holding the shared lock.
Modules changes for v6.11-rc1 This is a super boring development cycle this time around for modules, there is only one patch in this pull request. The patch deals with a corner case set of dependencies which is not resolved today to ensure users get the modules they need on initramfs. Currently only one modules is known to exist which needs this, however this can grow to capture other corner cases likely escaped and not reported before. The kernel change is just a section update, the real work is done and merged already on upstream kmod. This has been on linux-next for 3 weeks now.
please pull the latest changes for the kernel livepatching from - Show also patch->replace flag in sysfs. - Add or improve few selftests.
please pull the latest printk changes from Next preparation step for introducing printk kthreads. This part wires up flushing consoles via con->write_atomic() callback. The write_atomic() callback can be used for flushing nbcon consoles in any context. It is needed when the console could not be reliably flushed using the printk kthread. Namely, it is used: - During the early boot, from the legacy loop in console_unlock(). It allows to see the messages before processes (kthreads) could get started. Note that it must be used as long as there is a boot console registered. The console_lock() serializes accesses to the same HW port between the early and normal console driver. - In an emergency section, directly from nbcon_cpu_emergency_exit() or nbcon_cpu_emergency_flush(). It allows to see the messages when the system is in an unexpected state and might not be able to continue properly. The messages are flushed at the end of the emergency section to allow storing the full log (backtrace) first. It helps to see it even when other CPUs add messages in parallel. The flush() API is used to explicitly flush parts of longer logs which might not fit into the buffer or might cause a softlockup. The emergency section is used for WARN(), Oops, RCU stall, and lockdep reports. - In panic(), directly from printk() on the panic-CPU. Note that other CPUs are not allowed to add new messages at this point. There is also a new uart_port_lock() API in serial_core.h. It allows to take port->lock and also acquire the nbcon console context when the particular port gets registered as a console. The port->lock serializes code for non-printing activities, for example, for writing or setting the port speed. The nbcon context allows to serialize the access in emergency or panic situations where the classic spin lock (port->lock) could cause a deadlock. Note that the nbcon context allows a safe takeover in the middle of a printed message. IMPORTANT: The changes do not affect the behavior of legacy consoles, except for two situations: - Legacy consoles are not longer flushed directly from printk() in emergency sections. The flush is done on exit from the emergency section or by nbcon_cpu_emergency_flush(). The motivation is the same as for nbcon consoles. - Legacy consoles are not longer flushed directly from printk() in panic() when crash dump is created and a nbcon console is registered. They could create a deadlock in compare with nbcon consoles.
broadcom: remove unused pdc_dma_map imx: fix TXDB_V2 channel race condition mediatek: cleanup and refactor driver add bindings for gce-props omap: fix mailbox interrupt sharing qcom: add bindings for SA8775p add CPUCP driver zynqmp: make polling period configurable
a few PCMCIA changes since commit f2661062f16b2de5d7b6a5c42a9a5c96326b8454 are available in the Git repository at: for you to fetch changes up to 0630e3bc0e91b57288921df2927859b23184ca45: pcmcia: add missing MODULE_DESCRIPTION() macros (2024-06-30 15:51:34 +0200) PCMCIA: improvements for v6.11-rc1 A number of tiny cleanups of the PCMCIA subsystem by Jeff Johnson, Jules Irenge, and Krzysztof Kozlowski.
Hi Linus, This time Stephen Rothwell noticed one merge conflict with the LED tree. The discussion around that can be found here: https://lore.kernel.org/all/[email protected]/ All changes have been in -next for 3 weeks and are well-hung by now. Greetings, -- Sebastian power supply and reset changes for the 6.11 series * power-supply core - new charging_orange_full_green RGB LED trigger - simplify and cleanup power-supply LED trigger code - expose power information via hwmon compatibility layer * new hardware support - enable battery support for Qualcomm Snapdragon X Elite - new battery driver for Maxim MAX17201/MAX17205 - new battery driver for Lenovo Yoga C630 laptop (custom EC) * cleanup 'struct i2c_device_id' initializations * misc. small battery driver cleanups and fixes
Folio conversion from Matthew Wilcox and a few various fixes
please pull the latest irq/core branch from: -15 ation [ Same as V1 minus the MSI conversion ] Updates for the interrupt subsystem: - Core: - Provide a new mechanism to create interrupt domains. The existing interfaces have already too many parameters and it's a pain to expand any of this for new required functionality. The new function takes a pointer to a data structure as argument. The data structure combines all existing parameters and allows for easy extension. The first extension for this is to handle the instantiation of generic interrupt chips at the core level and to allow drivers to provide extra init/exit callbacks. This is necessary to do the full interrupt chip initialization before the new domain is published, so that concurrent usage sites won't see a half initialized interrupt domain. Similar problems exist on teardown. This has turned out to be a real problem due to the deferred and parallel probing which was added in recent years. Handling this at the core level allows to remove quite some accrued boilerplate code in existing drivers and avoids horrible workarounds at the driver level. - The usual small improvements all over the place - Drivers - Add support for LAN966x OIC and RZ/Five SoC - Split the STM ExtI driver into a microcontroller and a SMP version to allow building the latter as a module for multi-platform kernels. - Enable MSI support for Armada 370XP on platforms which do not support IPIs. - The usual small fixes and enhancements all over the place. Thanks, tglx
please pull the latest irq/msi branch from: 22 form MSI Switch ARM/ARM64 over to the modern per device MSI domains: This simplifies the handling of platform MSI and wire to MSI controllers and removes about 500 lines of legacy code. Aside of that it paves the way for ARM/ARM64 to utilize the dynamic allocation of PCI/MSI interrupts and to support the upcoming non standard IMS (Interrupt Message Store) mechanism on PCIe devices This has been split out from the original pull request and the two fixlets from Marc which cure the issues observed by Johan have been added on top. Thanks, tglx
LoongArch changes for v6.11 1, Define __ARCH_WANT_NEW_STAT in unistd.h; 2, Always enumerate MADT and setup logical-physical CPU mapping; 3, Add irq_work support via self IPIs; 4, Add RANDOMIZE_KSTACK_OFFSET support; 5, Add ARCH_HAS_PTE_DEVMAP support; 6, Add ARCH_HAS_DEBUG_VM_PGTABLE support; 7, Add writecombine support for DMW-based ioremap(); 8, Add architectural preparation for CPUFreq; 9, Add ACPI standard hardware register based S3 support; 10, Add support for relocating the kernel with RELR relocation; 11, Some bug fixes and other small changes.
development cycle, thanks. I'm seeing three conflicts during a test merge. I'd incorrectly attributed these to the mm-stble branch but these are actually issues in this mm-nonmm-stable pull. Those, along with their linux-next resolutions are: include/linux/interrupt.h, vs input tree: https://lkml.kernel.org/r/[email protected] include/linux/cacheinfo.h, vs tip tree: https://lkml.kernel.org/r/[email protected] fs/bcachefs/clock.c, vs bcachefs tree: https://lkml.kernel.org/r/[email protected] - In the series "treewide: Refactor heap related implementation", Kuan-Wei Chiu has significantly reworked the min_heap library code and has taught bcachefs to use the new more generic implementation. - Yury Norov's series "Cleanup cpumask.h inclusion in core headers" reworks the cpumask and nodemask headers to make things generally more rational. - Kuan-Wei Chiu has sent along some maintenance work against our sorting library code in the series "lib/sort: Optimizations and cleanups". - More library maintainance work from Christophe Jaillet in the series "Remove usage of the deprecated ida_simple_xx() API". - Ryusuke Konishi continues with the nilfs2 fixes and clanups in the series "nilfs2: eliminate the call to inode_attach_wb()". - Kuan-Ying Lee has some fixes to the gdb scripts in the series "Fix GDB command error". - Plus the usual shower of singleton patches all over the place. Please see the relevant changelogs for details.
Here is the RTC subsystem pull request for 6.11. There are mstly small fixes this cycle. The alarm offset that is getting fixed doesn't affect many RTCs as most of them have a complete set of datetime registers. RTC for 6.11 Subsystem: - add missing MODULE_DESCRIPTION() macro - fix offset addition for alarms Drivers: - isl1208: alarm clearing fixes - mcp794xx: oscillator failure detection - stm32: stm32mp25 support - tps6594: power management support
Conflicts which I saw during a test merge, along with their linux-next resolutions are: arch/powerpc/mm/nohash/Makefile, vs powerpc tree: https://lkml.kernel.org/r/[email protected] fs/nfs/write.c, fs/nfs/nfstrace.h, vs fs-next tree: https://lkml.kernel.org/r/[email protected] include/linux/hid_bpf.h, vs hid tree: https://lkml.kernel.org/r/[email protected] Upcoming conflicts include: include/linux/interrupt.h, vs input tree: https://lkml.kernel.org/r/[email protected] include/linux/cacheinfo.h, vs tip tree: https://lkml.kernel.org/r/[email protected] drivers/fsi/fsi-occ.c, vs driver-core tree: https://lkml.kernel.org/r/[email protected] This one is a bit vague, but might help: arch/s390/include/asm/kmsan.h, arch/s390/include/asm/lowcore.h, vs s390 tree: https://lkml.kernel.org/r/[email protected] mm/rmap.c, vs random tree: https://lkml.kernel.org/r/[email protected] https://lkml.kernel.org/r/[email protected] tools/testing/selftests/mm/Makefile, vs random tree: https://lkml.kernel.org/r/[email protected] fs/bcachefs/clock.c, vs bcachefs tree: https://lkml.kernel.org/r/[email protected] - 875fa64577da ("mm/hugetlb_vmemmap: fix race with speculative PFN walkers") is known to cause a performance regression (https://lore.kernel.org/all/[email protected]= bm.com/T/#mfa809800a7862fb5bdf834c6f71a3a5113eb83ff). Yu has a fix which I'll send along later via the hotfixes branch. - In the series "mm: Avoid possible overflows in dirty throttling" Jan Kara addresses a couple of issues in the writeback throttling code. These fixes are also targetted at -stable kernels. - Ryusuke Konishi's series "nilfs2: fix potential issues related to reserved inodes" does that. This should actually be in the mm-nonmm-stable tree, along with the many other nilfs2 patches. My bad. - More folio conversions from Kefeng Wang in the series "mm: convert to folio_alloc_mpol()" - Kemeng Shi has sent some cleanups to the writeback code in the series "Add helper functions to remove repeated code and improve readability of cgroup writeback" - Kairui Song has made the swap code a little smaller and a little faster in the series "mm/swap: clean up and optimize swap cache index". - In the series "mm/memory: cleanly support zeropage in vm_insert_page*(), vm_map_pages*() and vmf_insert_mixed()" David Hildenbrand has reworked the rather sketchy handling of the use of the zeropage in MAP_SHARED mappings. I don't see any runtime effects here - more a cleanup/understandability/maintainablity thing. - Dev Jain has improved selftests/mm/va_high_addr_switch.c's handling of higher addresses, for aarch64. The (poorly named) series is "Restructure va_high_addr_switch". - The core TLB handling code gets some cleanups and possible slight optimizations in Bang Li's series "Add update_mmu_tlb_range() to simplify code". - Jane Chu has improved the handling of our fake-an-unrecoverable-memory-error testing feature MADV_HWPOISON in the series "Enhance soft hwpoison handling and injection". - Jeff Johnson has sent a billion patches everywhere to add MODULE_DESCRIPTION() to everything. Some landed in this pull. - In the series "mm: cleanup MIGRATE_SYNC_NO_COPY mode", Kefeng Wang has simplified migration's use of hardware-offload memory copying. - Yosry Ahmed performs more folio API conversions in his series "mm: zswap: trivial folio conversions". - In the series "large folios swap-in: handle refault cases first", Chuanhua Han inches us forward in the handling of large pages in the swap code. This is a cleanup and optimization, working toward the end objective of full support of large folio swapin/out. - In the series "mm,swap: cleanup VMA based swap readahead window calculation", Huang Ying has contributed some cleanups and a possible fixlet to his VMA based swap readahead code. - In the series "add mTHP support for anonymous shmem" Baolin Wang has taught anonymous shmem mappings to use multisize THP. By default this is a no-op - users must opt in vis sysfs controls. Dramatic improvements in pagefault latency are realized. - David Hildenbrand has some cleanups to our remaining use of page_mapcount() in the series "fs/proc: move page_mapcount() to fs/proc/internal.h". - David also has some highmem accounting cleanups in the series "mm/highmem: don't track highmem pages manually". - Build-time fixes and cleanups from John Hubbard in the series "cleanups, fixes, and progress towards avoiding "make headers"". - Cleanups and consolidation of the core pagemap handling from Barry Song in the series "mm: introduce pmd|pte_needs_soft_dirty_wp helpers and utilize them". - Lance Yang's series "Reclaim lazyfree THP without splitting" has reduced the latency of the reclaim of pmd-mapped THPs under fairly common circumstances. A 10x speedup is seen in a microbenchmark. It does this by punting to aother CPU but I guess that's a win unless all CPUs are pegged. - hugetlb_cgroup cleanups from Xiu Jianfeng in the series "mm/hugetlb_cgroup: rework on cftypes". - Miaohe Lin's series "Some cleanups for memory-failure" does just that thing. - Is anyone reading this stuff? If so, email me! - Someone other than SeongJae has developed a DAMON feature in Honggyu Kim's series "DAMON based tiered memory management for CXL memory". This adds DAMON features which may be used to help determine the efficiency of our placement of CXL/PCIe attached DRAM. - DAMON user API centralization and simplificatio work in SeongJae Park's series "mm/damon: introduce DAMON parameters online commit function". - In the series "mm: page_type, zsmalloc and page_mapcount_reset()" David Hildenbrand does some maintenance work on zsmalloc - partially modernizing its use of pageframe fields. - Kefeng Wang provides more folio conversions in the series "mm: remove page_maybe_dma_pinned() and page_mkclean()". - More cleanup from David Hildenbrand, this time in the series "mm/memory_hotplug: use PageOffline() instead of PageReserved() for !ZONE_DEVICE". It "enlightens memory hotplug more about PageOffline() pages" and permits the removal of some virtio-mem hacks. - Barry Song's series "mm: clarify folio_add_new_anon_rmap() and __folio_add_anon_rmap()" is a cleanup to the anon folio handling in preparation for mTHP (multisize THP) swapin. - Kefeng Wang's series "mm: improve clear and copy user folio" implements more folio conversions, this time in the area of large folio userspace copying. - The series "Docs/mm/damon/maintaier-profile: document a mailing tool and community meetup series" tells people how to get better involved with other DAMON developers. From SeongJae Park. - A large series ("kmsan: Enable on s390") from Ilya Leoshkevich does that. - David Hildenbrand sends along more cleanups, this time against the migration code. The series is "mm/migrate: move NUMA hinting fault folio isolation + checks under PTL". - Jan Kara has found quite a lot of strangenesses and minor errors in the readahead code. He addresses this in the series "mm: Fix various readahead quirks". - SeongJae Park's series "selftests/damon: test DAMOS tried regions and {min,max}_nr_regions" adds features and addresses errors in DAMON's self testing code. - Gavin Shan has found a userspace-triggerable WARN in the pagecache code. The series "mm/filemap: Limit page cache size to that supported by xarray" addresses this. The series is marked cc:stable. - Chengming Zhou's series "mm/ksm: cmp_and_merge_page() optimizations and cleanup" cleans up and slightly optimizes KSM. - Roman Gushchin has separated the memcg-v1 and memcg-v2 code - lots of code motion. The series (which also makes the memcg-v1 code Kconfigurable) are "mm: memcg: separate legacy cgroup v1 code and put under config option" and "mm: memcg: put cgroup v1-specific memcg data under CONFIG_MEMCG_V1" - Dan Schatzberg's series "Add swappiness argument to memory.reclaim" adds an additional feature to this cgroup-v2 control file. - The series "Userspace controls soft-offline pages" from Jiaqi Yan permits userspace to stop the kernel's automatic treatment of excessive correctable memory errors. In order to permit userspace to monitor and handle this situation. - Kefeng Wang's series "mm: migrate: support poison recover from migrate folio" teaches the kernel to appropriately handle migration from poisoned source folios rather than simply panicing. - SeongJae Park's series "Docs/damon: minor fixups and improvements" does those things. - In the series "mm/zsmalloc: change back to per-size_class lock" Chengming Zhou improves zsmalloc's scalability and memory utilization. - Vivek Kasireddy's series "mm/gup: Introduce memfd_pin_folios() for pinning memfd folios" makes the GUP code use FOLL_PIN rather than bare refcount increments. So these paes can first be moved aside if they reside in the movable zone or a CMA block. - Andrii Nakryiko has added a binary ioctl()-based API to /proc/pid/maps for much faster reading of vma information. The series is "query VMAs from /proc/<pid>/maps". - In the series "mm: introduce per-order mTHP split counters" Lance Yang improves the kernel's presentation of developer information related to multisize THP splitting. - Michael Ellerman has developed the series "Reimplement huge pages without hugepd on powerpc (8xx, e500, book3s/64)". This permits userspace to use all available huge page sizes. - In the series "revert unconditional slab and page allocator fault injection calls" Vlastimil Babka removes a performance-affecting and not very useful feature from slab fault injection.
this is the bulk of pin control changes for the v6.11 kernel cycle. Some new drivers is the main part, the rest is cleanups and nonurgent fixes. New drivers listed in the signed tag. Nothing much special about this, no core changes this time. Yours, Linus Walleij Pin control bulk changes for the v6.11 kernel series: Core changes: None. New drivers: - Renesas RZ/V2H(P) SoC - NXP Freescale i.MX91 SoC - Nuvoton MA35D1 SoC - Qualcomm PMC8380, SM4250, SM4250 LPI Enhancements: - A slew of scoped-based simplifications of of_node_put().
RISC-V Patches for the 6.11 Merge Window, Part 1 * Support for various new ISA extensions: * The Zve32[xf] and Zve64[xfd] sub-extensios of the vector extension. * Zimop and Zcmop for may-be-operations. * The Zca, Zcf, Zcd and Zcb sub-extensions of the C extension. * Zawrs, * riscv,cpu-intc is now dtschema. * A handful of performance improvements and cleanups to text patching. * Support for memory hot{,un}plug * The highest user-allocatable virtual address is now visible in hwprobe.
This is the MTD PR for 6.11. Thanks, Miqu=C3=A8l MTD changes: - Nothing stands out for this merge window, mostly minor fixes, such as module descriptions, the use of debug macros and Makefile improvements. Raw NAND changes; - The Freescale MXC driver has been converted to the newer ->exec_op() interface. The meson driver now supports handling the boot ROM area with very specific ECC needs. Support for the iMX8QXP has been added to the GPMI driver. The lpx32xx driver now can get the DMA channels using DT entries. The Qcom binding has been improved to be more future proof by Rob. And then there is the usual load of misc and minor changes. SPI-NAND changes: - The Macronix vendor driver has been improved to support an extended ID to avoid conflicting with older devices after an ID reuse issue. SPI NOR changes: - Drop support for Xilinx S3AN flashes. These flashes are for the very old Xilinx Spartan 3 FPGAs and they need some awkward code in the core to support. Drop support for these flashes, along with the special handling we needed for them in the core like non-power-of-2 page size handling and the .setup() callback. - Fix regression for old w25q128 flashes without SFDP tables. Commit 83e824a4a595 ("mtd: spi-nor: Correct flags for Winbond w25q128") dropped support for such devices under the assumption that they aren't being used anymore. Users have now surfaced [0] so fix the regression by supporting both kind of devices. - Core cleanups including removal of SPI_NOR_NO_FR flag and simplification of spi_nor_get_flash_info(). [0] https://lore.kernel.org/r/CALxbwRo_-9CaJmt7r7ELgu+vOcgk=3DxZcGHobnKf=3D= [email protected]/
- added support for Realtek RTL9302C - added support for Mobileye EyeQ6H - added support for Mobileye EyeQ OLB system controller - improved r4k clocksource - added mode for emulating ieee754 NAN2008 - rework for BMIPS CBR address handling - fixes for Loongson 2K1000 - defconfig updates - cleanups and fixes
firewire updates for v6.11 There are many line changes for FireWire subsystem, while there is no functional change for practical use. The most of changes are for code refactoring, some KUnit tests to added helper functions, and new tracepoints events for both the core functions and 1394 OHCI driver. The tracepoints events now cover the verbose logging enabled by debug parameter of firewire-ohci kernel module. The parameter would be removed in any future timing, thus it is now deprecated.
Hi Wolfram, here comes the second part of the merge window pull request. I pull request on top of the mainline. Until now I was on top of your i2c/for-mergewindow branch. Thanks and have a great weekend, Andi Added descriptions in the DTS for the Qualcomm SM8650 and SM8550 Camera Control Interface (CCI). Added support for the "settle-time-us" property, which allows the gpio-mux device to switch from one bus to another with a configurable delay. The time can be set in the DTS. The latest change also includes file sorting. Fixed slot numbering in the SMBus framework to prevent failures when more than 8 slots are occupied. It now enforces a a maximum of 8 slots to be used. This ensures that the Intel PIIX4 device can register the SPDs correctly without failure, even if other slots are populated but not used.
Enumeration: - Define PCIE_RESET_CONFIG_DEVICE_WAIT_MS for the generic 100ms required after reset before config access (Kevin Xie) - Define PCIE_T_RRS_READY_MS for the generic 100ms required after reset before config access (probably should be unified with PCIE_RESET_CONFIG_DEVICE_WAIT_MS) (Damien Le Moal) Resource management: - Rename find_resource() to find_resource_space() to be more descriptive (Ilpo Järvinen) - Export find_resource_space() for use by PCI core, which needs to learn whether there is available space for a bridge window (Ilpo Järvinen) - Prevent double counting of resources so window size doesn't grow on each remove/rescan cycle (Ilpo Järvinen) - Relax bridge window sizing algorithm so a device doesn't break simply because it was removed and rescanned (Ilpo Järvinen) - Evaluate the ACPI PRESERVE_BOOT_CONFIG _DSM in pci_register_host_bridge() (not acpi_pci_root_create()) so we can unify it with similar DT functionality (Vidya Sagar) - Extend use of DT "linux,pci-probe-only" property so it works per-host bridge as well as globally (Vidya Sagar) - Unify support for ACPI PRESERVE_BOOT_CONFIG _DSM and the DT "linux,pci-probe-only" property in pci_preserve_config() (Vidya Sagar) Driver binding: - Add devres infrastructure for managed request and map of partial BAR resources (Philipp Stanner) - Deprecate pcim_iomap_table() because uses like "pcim_iomap_table()[0]" have no good way to return errors (Philipp Stanner) - Add an always-managed pcim_request_region() for use instead of pci_request_region() and similar, which are sometimes managed depending on whether pcim_enable_device() has been called previously (Philipp Stanner) - Reimplement pcim_set_mwi() so it doesn't need to keep store MWI state (Philipp Stanner) - Add pcim_intx() for use instead of pci_intx(), which is sometimes managed depending on whether pcim_enable_device() has been called previously (Philipp Stanner) - Add managed pcim_iomap_range() to allow mapping of a partial BAR (Philipp Stanner) - Fix a devres mapping leak in drm/vboxvideo (Philipp Stanner) Error handling: - Add missing bridge locking in device reset path and add a warning for other possible lock issues (Dan Williams) - Fix use-after-free on concurrent DPC and hot-removal (Lukas Wunner) Power management: - Disable AER and DPC during suspend to avoid spurious wakeups if they share an interrupt with PME (Kai-Heng Feng) PCIe native device hotplug: - Detect if a device was removed or replaced during system sleep so we don't assume a new device is the one that used to be there (Lukas Wunner) Virtualization: - Add an ACS quirk for Broadcom BCM5760X multi-function NIC; it prevents transactions between functions even though it doesn't advertise ACS, so the functions can be attached individually via VFIO (Ajit Khaparde) Peer-to-peer DMA: - Add a "pci=config_acs=" kernel command-line parameter to relax default ACS settings to enable additional peer-to-peer configurations. Requires expert knowledge of topology and ACS operation (Vidya Sagar) Endpoint framework: - Remove unused struct pci_epf_group.type_group (Christophe JAILLET) - Fix error handling in vpci_scan_bus() and epf_ntb_epc_cleanup() (Dan Carpenter) - Make struct pci_epc_class constant (Greg Kroah-Hartman) - Remove unused pci_endpoint_test_bar_{readl,writel} functions (Jiapeng Chong) - Rename "BME" to "Bus Master Enable" (Manivannan Sadhasivam) - Rename struct pci_epc_event_ops.core_init() callback to epc_init() (Manivannan Sadhasivam) - Move DMA init to MHI .epc_init() callback for uniformity (Manivannan Sadhasivam) - Cancel EPF test delayed work when link goes down (Manivannan Sadhasivam) - Add struct pci_epc_event_ops.epc_deinit() callback for cleanup needed on fundamental reset (Manivannan Sadhasivam) - Add 64KB alignment to endpoint test to support Rockchip rk3588 (Niklas Cassel) - Optimize endpoint test by using memcpy() instead of readl() (Niklas Cassel) Device tree bindings: - Add generic "ats-supported" property to advertise that a PCIe Root Complex supports ATS (Jean-Philippe Brucker) Amazon Annapurna Labs PCIe controller driver: - Validate IORESOURCE_BUS presence to avoid NULL pointer dereference (Aleksandr Mishin) Axis ARTPEC-6 PCIe controller driver: - Rename .cpu_addr_fixup() parameter to reflect that it is a PCI address, not a CPU address (Niklas Cassel) Freescale i.MX6 PCIe controller driver: - Convert to agnostic GPIO API (Andy Shevchenko) Freescale Layerscape PCIe controller driver: - Make struct mobiveil_rp_ops constant (Christophe JAILLET) - Use new generic dw_pcie_ep_linkdown() to handle link-down events (Manivannan Sadhasivam) HiSilicon Kirin PCIe controller driver: - Convert to agnostic GPIO API (Andy Shevchenko) - Use _scoped() iterator for OF children to ensure refcounts are decremented at loop exit (Javier Carrasco) Intel VMD host bridge driver: - Create sysfs "domain" symlink before downstream devices are exposed to userspace by pci_bus_add_devices() (Jiwei Sun) Loongson PCIe controller driver: - Enable MSI when LS7A is used with new CPUs that have integrated PCIe Root Complex, e.g., Loongson-3C6000, so downstream devices can use MSI (Huacai Chen) Microchip AXI PolarFlare PCIe controller driver: - Move pcie-microchip-host.c to a new PLDA directory (Minda Chen) - Factor PLDA generic items out to a common plda,xpressrich3-axi-common.yaml binding (Minda Chen) - Factor PLDA generic data structures and code out to shared pcie-plda.h, pcie-plda-host.c (Minda Chen) - Add PLDA generic interrupt handling with a .request_event_irq() callback for vendor-specific events (Minda Chen) - Add PLDA generic host init/deinit and map bus functions for use by vendor-specific drivers (Minda Chen) - Rework to use PLDA core (Minda Chen) Microsoft Hyper-V host bridge driver: - Return zero, not garbage, when reading PCI_INTERRUPT_PIN (Wei Liu) NVIDIA Tegra194 PCIe controller driver: - Remove unused struct tegra_pcie_soc (Dr. David Alan Gilbert) - Set 64KB inbound ATU alignment restriction (Jon Hunter) Qualcomm PCIe controller driver: - Make the MHI reg region mandatory for X1E80100, since all PCIe controllers have it (Abel Vesa) - Prevent use of uninitialized data and possible error pointer dereference (Dan Carpenter) - Return error, not success, if dev_pm_opp_find_freq_floor() fails (Dan Carpenter) - Add Operating Performance Points (OPP) support to scale performance state based on aggregate link bandwidth to improve SoC power efficiency (Krishna chaitanya chundru) - Vote for the CPU-PCIe ICC (interconnect) path to ensure it stays active even if other drivers don't vote for it (Krishna chaitanya chundru) - Use devm_clk_bulk_get_all() to get all the clocks from DT to avoid writing out all the clock names (Manivannan Sadhasivam) - Add DT binding and driver support for the SA8775P SoC (Mrinmay Sarkar) - Add HDMA support for the SA8775P SoC (Mrinmay Sarkar) - Override the SA8775P NO_SNOOP default to avoid possible memory corruption (Mrinmay Sarkar) - Make sure resources are disabled during PERST# assertion, even if the link is already disabled (Manivannan Sadhasivam) - Use new generic dw_pcie_ep_linkdown() to handle link-down events (Manivannan Sadhasivam) - Add DT and endpoint driver support for the SA8775P SoC (Mrinmay Sarkar) - Add Hyper DMA (HDMA) support for the SA8775P SoC and enable it in the EPF MHI driver (Mrinmay Sarkar) - Set PCIE_PARF_NO_SNOOP_OVERIDE to override the default NO_SNOOP attribute on the SA8775P SoC (both Root Complex and Endpoint mode) to avoid possible memory corruption (Mrinmay Sarkar) Renesas R-Car PCIe controller driver: - Demote WARN() to dev_warn_ratelimited() in rcar_pcie_wakeup() to avoid unnecessary backtrace (Marek Vasut) - Add DT and driver support for R-Car V4H (R8A779G0) host and endpoint. This requires separate proprietary firmware (Yoshihiro Shimoda) Rockchip PCIe controller driver: - Assert PERST# for 100ms after power is stable (Damien Le Moal) - Wait PCIE_T_RRS_READY_MS (100ms) after reset before starting configuration (Damien Le Moal) - Use GPIOD_OUT_LOW flag while requesting ep_gpio to fix a firmware crash on Qcom-based modems with Rockpro64 board (Manivannan Sadhasivam) Rockchip DesignWare PCIe controller driver: - Factor common parts of rockchip-dw-pcie DT binding to be shared by Root Complex and Endpoint mode (Niklas Cassel) - Add missing INTx signals to common DT binding (Niklas Cassel) - Add eDMA items to DT binding for Endpoint controller (Niklas Cassel) - Fix initial dw-rockchip PERST# GPIO value to prevent unnecessary short assert/deassert that causes issues with some WLAN controllers (Niklas Cassel) - Refactor dw-rockchip and add support for Endpoint mode (Niklas Cassel) - Call pci_epc_init_notify() and drop dw_pcie_ep_init_notify() wrapper (Niklas Cassel) - Add error messages in .probe() error paths to improve user experience (Uwe Kleine-König) Samsung Exynos PCIe controller driver: - Use bulk clock APIs to simplify clock setup (Shradha Todi) StarFive PCIe controller driver: - Add DT binding and driver support for the StarFive JH7110 PLDA-based PCIe controller (Minda Chen) Synopsys DesignWare PCIe controller driver: - Add generic support for sending PME_Turn_Off when system suspends (Frank Li) - Fix incorrect interpretation of iATU slot 0 after PERST# assert/deassert (Frank Li) - Use msleep() instead of usleep_range() while waiting for link (Konrad Dybcio) - Refactor dw_pcie_edma_find_chip() to enable adding support for Hyper DMA (HDMA) (Manivannan Sadhasivam) - Enable drivers to supply the eDMA channel count since some can't auto detect this (Manivannan Sadhasivam) - Call pci_epc_init_notify() and drop dw_pcie_ep_init_notify() wrapper (Manivannan Sadhasivam) - Pass the eDMA mapping format directly from drivers instead of maintaining a capability for it (Manivannan Sadhasivam) - Add generic dw_pcie_ep_linkdown() to notify EPF drivers about link-down events and restore non-sticky DWC registers lost on link down (Manivannan Sadhasivam) - Add vendor-specific "apb" reg name, interrupt names, INTx names to generic binding (Niklas Cassel) - Enforce DWC restriction that 64-bit BARs must start with an even-numbered BAR (Niklas Cassel) - Consolidate args of dw_pcie_prog_outbound_atu() into a structure (Yoshihiro Shimoda) - Add support for endpoints to send Message TLPs, e.g., for INTx emulation (Yoshihiro Shimoda) TI DRA7xx PCIe controller driver: - Rename .cpu_addr_fixup() parameter to reflect that it is a PCI address, not a CPU address (Niklas Cassel) TI Keystone PCIe controller driver: - Validate IORESOURCE_BUS presence to avoid NULL pointer dereference (Aleksandr Mishin) - Work around AM65x/DRA80xM Errata #i2037 that corrupts TLPs and causes processor hangs by limiting Max_Read_Request_Size (MRRS) and Max_Payload_Size (MPS) (Kishon Vijay Abraham I) - Leave BAR 0 disabled for AM654x to fix a regression caused by 6ab15b5e7057 ("PCI: dwc: keystone: Convert .scan_bus() callback to use add_bus"), which caused a 45-second boot delay (Siddharth Vadapalli) Xilinx Versal CPM PCIe controller driver: - Fix overlapping bridge registers and 32-bit BAR addresses in DT binding (Thippeswamy Havalige) MicroSemi Switchtec management driver: - Make struct switchtec_class constant (Greg Kroah-Hartman) Miscellaneous: - Remove unused struct acpi_handle_node (Dr. David Alan Gilbert) - Add missing MODULE_DESCRIPTION() macros (Jeff Johnson)
to receive updates for the input subsystem. You will get: - streamlined logic in input core for handling normal input handlers vs input filters - updates to input drivers to allocate memory with sizeof(*pointer) instead of sizeof(type) - change to ads7846 touchscreen driver to use hsync GPIO instead of requiring platform data with special method (which is not compatible with boards using device tree) - update to adc-joystick driver to handle inverted axes - cleanups in various drivers switching them to use the new "guard" and "__free()" facilities - changes to several drivers (adxl34x, atmel_mxt_ts, ati-remote2, omap-keypad, yealink) to stop creating driver-specific device attributes manually and use driver core facilities for this - update to Cypress PS/2 protocol driver to properly handle errors from the PS/2 transport as well as other cleanups - update to edt-ft5x06 driver to support ft5426 variant - update to ektf2127 driver to support ektf2232 variant - update to exc3000 driver to support EXC81W32 variant - update to imagis driver to support IST3038 variant - other assorted driver cleanups. Changelog: ---------
... to get the 6.11 updates for the libnvdimm tree. The bulk of the changes are to clean up W=1 warnings with one small update with the use of sizeof(). These have been linux-next without issue since 6/18. Thank you, Ira --- 6.11 updates for libnvdimm One small cleanup to use sizeof(*pointer) A series of patches to add MODULE_DESCRIPTIONS() to eliminate make W=1 warnings.
Small PR, mainly to unbreak the s390 build. We delayed it a little bit to try to catch a last-minute fix, but it will have to wait a bit more. Notably this includes fixes for a s390 build breakage. Including fixes from netfilter. Current release - new code bugs: - eth: fbnic: fix s390 build. - eth: airoha: fix NULL pointer dereference in airoha_qdma_cleanup_rx_queue() Previous releases - regressions: - flow_dissector: use DEBUG_NET_WARN_ON_ONCE - ipv4: fix incorrect TOS in route get reply - dsa: fix chip-wide frame size config in some drivers Previous releases - always broken: - netfilter: nf_set_pipapo: fix initial map fill - eth: gve: fix XDP TX completion handling when counters overflow Signed-off-by: Paolo Abeni <[email protected]>
ARM: * Initial infrastructure for shadow stage-2 MMUs, as part of nested virtualization enablement * Support for userspace changes to the guest CTR_EL0 value, enabling (in part) migration of VMs between heterogenous hardware * Fixes + improvements to pKVM's FF-A proxy, adding support for v1.1 of the protocol * FPSIMD/SVE support for nested, including merged trap configuration and exception routing * New command-line parameter to control the WFx trap behavior under KVM * Introduce kCFI hardening in the EL2 hypervisor * Fixes + cleanups for handling presence/absence of FEAT_TCRX * Miscellaneous fixes + documentation updates LoongArch: * Add paravirt steal time support. * Add support for KVM_DIRTY_LOG_INITIALLY_SET. * Add perf kvm-stat support for loongarch. RISC-V: * Redirect AMO load/store access fault traps to guest * perf kvm stat support * Use guest files for IMSIC virtualization, when available ONE_REG support for the Zimop, Zcmop, Zca, Zcf, Zcd, Zcb and Zawrs ISA extensions is coming through the RISC-V tree. s390: * Assortment of tiny fixes which are not time critical x86: * Fixes for Xen emulation. * Add a global struct to consolidate tracking of host values, e.g. EFER * Add KVM_CAP_X86_APIC_BUS_CYCLES_NS to allow configuring the effective APIC bus frequency, because TDX. * Print the name of the APICv/AVIC inhibits in the relevant tracepoint. * Clean up KVM's handling of vendor specific emulation to consistently act on "compatible with Intel/AMD", versus checking for a specific vendor. * Drop MTRR virtualization, and instead always honor guest PAT on CPUs that support self-snoop. * Update to the newfangled Intel CPU FMS infrastructure. * Don't advertise IA32_PERF_GLOBAL_OVF_CTRL as an MSR-to-be-saved, as it reads '0' and writes from userspace are ignored. * Misc cleanups x86 - MMU: * Small cleanups, renames and refactoring extracted from the upcoming Intel TDX support. * Don't allocate kvm_mmu_page.shadowed_translation for shadow pages that can't hold leafs SPTEs. * Unconditionally drop mmu_lock when allocating TDP MMU page tables for eager page splitting, to avoid stalling vCPUs when splitting huge pages. * Bug the VM instead of simply warning if KVM tries to split a SPTE that is non-present or not-huge. KVM is guaranteed to end up in a broken state because the callers fully expect a valid SPTE, it's all but dangerous to let more MMU changes happen afterwards. x86 - AMD: * Make per-CPU save_area allocations NUMA-aware. * Force sev_es_host_save_area() to be inlined to avoid calling into an instrumentable function from noinstr code. * Base support for running SEV-SNP guests. API-wise, this includes a new KVM_X86_SNP_VM type, encrypting/measure the initial image into guest memory, and finalizing it before launching it. Internally, there are some gmem/mmu hooks needed to prepare gmem-allocated pages before mapping them into guest private memory ranges. This includes basic support for attestation guest requests, enough to say that KVM supports the GHCB 2.0 specification. There is no support yet for loading into the firmware those signing keys to be used for attestation requests, and therefore no need yet for the host to provide certificate data for those keys. To support fetching certificate data from userspace, a new KVM exit type will be needed to handle fetching the certificate from userspace. An attempt to define a new KVM_EXIT_COCO/KVM_EXIT_COCO_REQ_CERTS exit type to handle this was introduced in v1 of this patchset, but is still being discussed by community, so for now this patchset only implements a stub version of SNP Extended Guest Requests that does not provide certificate data. x86 - Intel: * Remove an unnecessary EPT TLB flush when enabling hardware. * Fix a series of bugs that cause KVM to fail to detect nested pending posted interrupts as valid wake eents for a vCPU executing HLT in L2 (with HLT-exiting disable by L1). * KVM: x86: Suppress MMIO that is triggered during task switch emulation Explicitly suppress userspace emulated MMIO exits that are triggered when emulating a task switch as KVM doesn't support userspace MMIO during complex (multi-step) emulation. Silently ignoring the exit request can result in the WARN_ON_ONCE(vcpu->mmio_needed) firing if KVM exits to userspace for some other reason prior to purging mmio_needed. See commit 0dc902267cb3 ("KVM: x86: Suppress pending MMIO write exits if emulator detects exception") for more details on KVM's limitations with respect to emulated MMIO during complex emulator flows. Generic: * Rename the AS_UNMOVABLE flag that was introduced for KVM to AS_INACCESSIBLE, because the special casing needed by these pages is not due to just unmovability (and in fact they are only unmovable because the CPU cannot access them). * New ioctl to populate the KVM page tables in advance, which is useful to mitigate KVM page faults during guest boot or after live migration. The code will also be used by TDX, but (probably) not through the ioctl. * Enable halt poll shrinking by default, as Intel found it to be a clear win. * Setup empty IRQ routing when creating a VM to avoid having to synchronize SRCU when creating a split IRQCHIP on x86. * Rework the sched_in/out() paths to replace kvm_arch_sched_in() with a flag that arch code can use for hooking both sched_in() and sched_out(). * Take the vCPU @id as an "unsigned long" instead of "u32" to avoid truncating a bogus value from userspace, e.g. to help userspace detect bugs. * Mark a vCPU as preempted if and only if it's scheduled out while in the KVM_RUN loop, e.g. to avoid marking it preempted and thus writing guest memory when retrieving guest state during live migration blackout. Selftests: * Remove dead code in the memslot modification stress test. * Treat "branch instructions retired" as supported on all AMD Family 17h+ CPUs. * Print the guest pseudo-RNG seed only when it changes, to avoid spamming the log for tests that create lots of VMs. * Make the PMU counters test less flaky when counting LLC cache misses by doing CLFLUSH{OPT} in every loop iteration.
Staging driver updates for 6.11-rc1 This is the "big" staging driver update for 6.11-rc1. Not really all that much happened this release cycle, just lots of tiny cleanups, overall about 3000 lines removed, so the cleanups were worth it. Included in here are: - loads of rtl8723bs driver cleanups - lots of rtl8192e driver cleanups - vc04_services reworks and cleanups as that codebase gets slowly evolved into something that will make it into the "real" part of the kernel hopefully soon. - other tiny staging driver cleanups All of these have been in linux-next for a while with no reported issues. Signed-off-by: Greg Kroah-Hartman <[email protected]>
Char/Misc and other driver changes for 6.11-rc1 Here is the "big" set of char/misc and other driver subsystem changes for 6.11-rc1. Nothing major in here, just loads of new drivers and updates. Included in here are: - IIO api updates and new drivers added - wait_interruptable_timeout() api cleanups for some drivers - MODULE_DESCRIPTION() additions for loads of drivers - parport out-of-bounds fix - interconnect driver updates and additions - mhi driver updates and additions - w1 driver fixes - binder speedups and fixes - eeprom driver updates - coresight driver updates - counter driver update - new misc driver additions - other minor api updates All of these, EXCEPT for the final Kconfig build fix for 32bit systems, have been in linux-next for a while with no reported issues. The Kconfig fixup went in 29 hours ago, so might have missed the latest linux-next, but was acked by everyone involved. Signed-off-by: Greg Kroah-Hartman <[email protected]>
USB/Thunderbolt updates for 6.11-rc1 Here is the big set of USB and Thunderbolt changes for 6.11-rc1. Nothing earth-shattering in here, just constant forward progress in adding support for new hardware and better debugging functionalities for thunderbolt devices and the subsystem. Included in here are: - thunderbolt debugging update and driver additions - xhci driver updates - typec driver updates - kselftest device driver changes (acked by the relevant maintainers, depended on other changes in this tree.) - cdns3 driver updates - gadget driver updates - MODULE_DESCRIPTION() additions - dwc3 driver updates and fixes All of these have been in linux-next for a while with no reported issues. Signed-off-by: Greg Kroah-Hartman <[email protected]>
TTY/Serial updates for 6.11-rc1 Here is a small set of tty and serial driver updates for 6.11-rc1. Not much happened this cycle, unlike the previous kernel release which had lots of "excitement" in this part of the kernel. Included in here are the following changes: - dt binding updates for new platforms - 8250 driver updates - various small serial driver fixes and updates - printk/console naming and matching attempt #2 (was reverted for 6.10-final, should be good to go this time around, acked by the relevant maintainers). All of these have been in linux-next for a while with no reported issues. Signed-off-by: Greg Kroah-Hartman <[email protected]>
I've been looking after the IOMMU tree in Joerg's absence [1] for the past few weeks and I was expecting him back at the start of this week to send the pull. However, I've not heard from him at all and figured that I may as well send this now rather than wait until the second week of the merge window. A few minor fixes have started showing up too, so I may end up sending you a follow-up next week anyway. A summary of all the changes is included in the tag. Cheers, Will [1] https://lore.kernel.org/r/[email protected] --->8 IOMMU Updates for Linux v6.11 - Core: * Support for the "ats-supported" device-tree property. * Removal of the 'ops' field from 'struct iommu_fwspec'. * Introduction of iommu_paging_domain_alloc() and partial conversion of existing users. * Introduce 'struct iommu_attach_handle' and provide corresponding IOMMU interfaces which will be used by the IOMMUFD subsystem. * Remove stale documentation. * Add missing MODULE_DESCRIPTION() macro. * Misc cleanups. - Allwinner Sun50i: * Ensure bypass mode is disabled on H616 SoCs. * Ensure page-tables are allocated below 4GiB for the 32-bit page-table walker. * Add new device-tree compatible strings. - AMD Vi: * Use try_cmpxchg64() instead of cmpxchg64() when updating pte. - Arm SMMUv2: * Print much more useful information on context faults. * Fix Qualcomm TBU probing when CONFIG_ARM_SMMU_QCOM_DEBUG=n. * Add new Qualcomm device-tree bindings. - Arm SMMUv3: * Support for hardware update of access/dirty bits and reporting via IOMMUFD. * More driver rework from Jason, this time updating the PASID/SVA support to prepare for full IOMMUFD support. * Add missing MODULE_DESCRIPTION() macro. * Minor fixes and cleanups. - NVIDIA Tegra: * Fix for benign fwspec initialisation issue exposed by rework on the core branch. - Intel VT-d: * Use try_cmpxchg64() instead of cmpxchg64() when updating pte. * Use READ_ONCE() to read volatile descriptor status. * Remove support for handling Execute-Requested requests. * Avoid calling iommu_domain_alloc(). * Minor fixes and refactoring. - Qualcomm MSM: * Updates to the device-tree bindings.
please pull sound updates for v6.11-rc1 from: The topmost commit is 4594d26fca91fab0e1621d2ab196f3f9bab96bc8 sound updates for 6.11-rc1 Lots of changes in this cycle, but mostly for cleanups and refactoring. Significant amount of changes are about DT schema conversions for ASoC at this time while we see other usual suspects, too. Some highlights below: Core: - Re-introduction of PCM sync ID support API - MIDI2 time-base extension in ALSA sequencer API ASoC: - Syncing of features between simple-audio-card and the two audio-graph cards - Support for specifying the order of operations for components within cards to allow quirking for unusual systems - Lots of DT schema conversions - Continued SOF/Intel updates for topology, SoundWire, IPC3/4 - New support for Asahi Kasei AK4619, Cirrus Logic CS530x, Everest Semiconductors ES8311, NXP i.MX95 and LPC32xx, Qualcomm LPASS v2.5 and WCD937x, Realtek RT1318 and RT1320 and Texas Instruments PCM5242 HD-audio: - More quirks, Intel PantherLake support, senarytech codec support - Refactoring of Cirrus codec component-binding Others: - ALSA control kselftest improvements, and fixes for input value checks in various drivers
dma-mapping updates for Linux 6.11 - reduce duplicate swiotlb pool lookups (Michael Kelley) - minor small fixes (Yicong Yang, Yang Li)
Ok, version 2: bcachefs changes for 6.11-rc1 (version 2) Additional fixes on top of the original 6.11 pull request: - undefined behaviour fixes, originally noted as breaking userspace LTO builds - fix a spurious warning in fsck_err, reported by Marcin - fix an integer overflow on trans->nr_updates, also reported by Marcin; this broke during deletion of highly fragmented indirect extents - Add comments for lockdep functions ====== - Metadata version 1.8: Stripe sectors accounting, BCH_DATA_unstriped This splits out the accounting of dirty sectors and stripe sectors in alloc keys; this lets us see stripe buckets that still have unstriped data in them. This is needed for ensuring that erasure coding is working correctly, as well as completing stripe creation after a crash. - Metadata version 1.9: Disk accounting rewrite The previous disk accounting scheme relied heavily on percpu counters that were also sharded by outstanding journal buffer; it was fast but not extensible or scalable, and meant that all accounting counters were recorded in every journal entry. The new disk accounting scheme stores accounting as normal btree keys; updates are deltas until they are flushed by the btree write buffer. This means we have no practical limit on the number of counters, and a new tagged union format that's easy to extend. We now have counters for compression type/ratio, per-snapshot-id usage, per-btree-id usage, and pending rebalance work. - Self healing on read IO/checksum error data is now automatically rewritten if we get a read error and then a successful retry - Mount API conversion (thanks to Thomas Bertschinger) - Better lockdep coverage Previously, btree node locks were tracked individually by lockdep, like any other lock. But we may take _many_ btree node locks simultaneously, we easily blow through the limit of 48 locks that lockdep can track, leading to lockdep turning itself off. Tracking each btree node lock individually isn't really necessary since we have our own cycle detector for deadlock avoidance and centralized tracking of btree node locks, so we now have a single lockdep_map in btree_trans for "any btree nodes are locked". - some more small incremental work towards online check_allocations - lots more debugging improvements, fixes
Nothing hugely exciting happening in the documentation tree this time around, mostly more of the usual: - More Spanish, Italian, and Chinese translations - A new script, scripts/checktransupdate.py, can be used to see which commits have touched an (English) document since a given translation was last updated. - A couple of "best practices" suggestions (on Link: tags and off-list discussions) that were not entirely at consensus level, but I concluded they were close enough to accept. - Some nice cleanups removing documentation for kernel parameters that have not been recognized for ... a long time. ...along with the usual updates, typo fixes, and such.
Just a few commits this cycle. Thanks VFIO updates for v6.11 - Add support for 8-byte accesses when using read/write through the device regions. This fills a gap for userspace drivers that might not be able to use access through mmap to perform native register width accesses. (Gerd Bayer) - Add missing MODULE_DESCRIPTION to vfio-mdev sample drivers and replace a non-standard MODULE_INFO usage. (Jeff Johnson)
This includes the following changes related to sparc for v6.11: - Add MODULE_DESCRIPTION for a number of sbus drivers - Fix linking error for large sparc32 kernels - Fix incorrect functions signature and prototype warnings for sparc64
This is the main drm next pull for 6.11. It has one minor conflict when I test merged it with your tree. The gitlab fdo git server seems to be running a bit slow, I think pulls should be fine, but let me know if you have any issues. There's a lot of stuff in here, amd, i915 and xe have new platform work, lots of core rework around EDID handling, some new COMPILE_TEST options, maintainer changes and a lots of other stuff, summary below. Regards, Dave. drm-next-2024-07-18: drm next for 6.11-rc1: core: - deprecate DRM data and return 0 date - connector: Create a set of helpers to help with HDMI support - Remove driver owner assignments - Allow more drivers to compile with COMPILE_TEST - Conversions to drm_edid - Sprinkle MODULE_DESCRIPTIONS everywhere they are missing - Remove drm_mm_replace_node - print: Add a drm prefix to warn level messages too, remove ___drm_dbg, consolidate prefix handling - New monochrome TV mode variant ttm: - improve number of page faults on some platforms - fix test builds under PREEMPT_RT - more test coverage ci: - Require a more recent version of mesa, - improve farm setup and test generation dma-buf: - warn if reserving 0 fence slots - internal API heap enhancements fbdev: - Create memory manager optimized fbdev emulation panic: - Allow to select fonts, - improve drm_fb_dma_get_scanout_buffer - Allow to dump kmsg to the screen bridge: - Remove redundant checks on bridge->encoder - Remove drm_bridge_chain_mode_fixup - bridge-connector: Plumb in the new HDMI helper - analogix_dp: Various improvements, handle AUX transfers timeout - samsung-dsim: Fix timings calculation - tc358767: Plenty of small fixes, fix no connector attach, fix clocks - sii902x: state validation improvements panels: - Switch panels from register table initialization to proper code - Now that the panel code tracks the panel state, remove every ad-hoc implementation in the panel drivers - More cleanup of prepare / enable state tracking in drivers - edp: Drop legacy panel compatibles - simple-bridge: Switch to devm_drm_bridge_add - New panels: Lincoln Tech Sol LCD185-101CT, Microtips Technology 13-101HIEBCAF0-C, Microtips Technology MF-103HIEB0GA0, BOE nv110wum-l60, IVO t109nw41, WL-355608-A8, PrimeView PM070WL4, Lincoln Technologies LCD197, Ortustech COM35H3P70ULC, AUO G104STN01, K&d kd101ne3-40ti amdgpu: - DCN 4.0.x support - GC 12.0 support - GMC 12.0 support - SDMA 7.0 support - MES12 support - MMHUB 4.1 support - GFX12 modifier and DCC support - lots of IP fixes/updates amdkfd: - Contiguous VRAM allocations - GC 12.0 support - SDMA 7.0 support - SR-IOV fixes - KFD GFX ALU exceptions i915: - Battlemage Xe2 HPD display enablement - Panel Replay enabling - DP AUX-less ALPM/LOBF - Enable link training failure fallback for DP MST links - CMRR (Content Match Refresh Rate) enabling - Increase ADL-S/ADL-P/DG2+ max TMDS bitrate to 6 Gbps - Enable eDP AUX based HDR backlight - Support replaying GPU hangs with captured context image - Automate CCS Mode setting during engine resets - lots of refactoring - Support replaying GPU hangs with captured context image - Increase FLR timeout from 3s to 9s - Enable w/a 16021333562 for DG2, MTL and ARL [guc] xe: - update MAINATINERS - New uapi adding OA functionality to Xe - expose l3 bank mask - fix display detect on ADL-N - runtime PM Fixes - Fix silent backmerge issues - More prep for SR-IOV - HWmon additions - per client usage info - Rework GPU page fault handling - Drop EXEC_QUEUE_FLAG_BANNED - Add BMG PCI IDs - Scheduler fixes and improvements - Rename xe_exec_queue::compute to xe_exec_queue::lr - Use ttm_uncached for BO with NEEDS_UC flag - Rename xe perf layer as xe observation layer - lots of refactoring radeon: - Backlight workaround for iMac - Silence UBSAN flex array warnings msm: - Validate registers XML description against schema in CI - core/dpu: SM7150 support - mdp5: Add support for MSM8937 - gpu: Add param for userspace to know if raytracing is supported - gpu: X185 support (aka gpu in X1 laptop chips) - gpu: a505 support ivpu: - hardware scheduler support - profiling support - improvements to the platform support layer - firmware handling improvements - clocks/power mgmt improvements - scheduler/logging improvements habanalabs: - Gradual sleep in polling memory macro. - Reduce Gaudi2 MSI-X interrupt count to 128. - Add Gaudi2-D revision support. - Add timestamp to CPLD info. - Gaudi2: Assume hard-reset by firmware upon MC SEI severe error. - Align Gaudi2 interrupt names. - Check for errors after preboot is ready. - Change habanalabs maintainer and git repo path. mgag200: - refactoring and improvements - Add BMC output - enable polling nouveau: - add registry command line v3d: - perf counters improvements zynqmp: - irq and debugfs improvements atmel-hlcdc: - Support XLCDC in sam9x7 mipi-dbi: - Remove mipi_dbi_machine_little_endian - make SPI bits per word configurable - support RGB888 - allow pixel formats to be specified in the DT sun4i: - Rework the blender setup for DE2 panfrost: - Enable MT8188 support vc4: - Monochrome TV support exynos: - fix fallback mode regression - fix memory leak - Use drm_edid_duplicate() instead of kmemdup() etnaviv: - fix i.MX8MP NPU clock gating - workaround FE register cdc issues on some cores - fix DMA sync handling for cached buffers - fix job timeout handling - keep TS enabled on MMUv2 cores for improved performance mediatek: - Convert to platform remove callback returning void- - Drop chain_mode_fixup call in mode_valid() - Fixes the errors of MediaTek display driver found by IGT. - Add display support for the MT8365-EVK board - Fix bit depth overwritten for mtk_ovl_set bit_depth() - Fix possible_crtcs calculation - Fix spurious kfree() ast: - refactor mode setting code stm: - Add LVDS support - DSI PHY updates drm next for 6.11-rc1: core: - deprecate DRM data and return 0 date - connector: Create a set of helpers to help with HDMI support - Remove driver owner assignments - Allow more drivers to compile with COMPILE_TEST - Conversions to drm_edid - Sprinkle MODULE_DESCRIPTIONS everywhere they are missing - Remove drm_mm_replace_node - print: Add a drm prefix to warn level messages too, remove ___drm_dbg, consolidate prefix handling - New monochrome TV mode variant ttm: - improve number of page faults on some platforms - fix test builds under PREEMPT_RT - more test coverage ci: - Require a more recent version of mesa, - improve farm setup and test generation dma-buf: - warn if reserving 0 fence slots - internal API heap enhancements fbdev: - Create memory manager optimized fbdev emulation panic: - Allow to select fonts, - improve drm_fb_dma_get_scanout_buffer - Allow to dump kmsg to the screen bridge: - Remove redundant checks on bridge->encoder - Remove drm_bridge_chain_mode_fixup - bridge-connector: Plumb in the new HDMI helper - analogix_dp: Various improvements, handle AUX transfers timeout - samsung-dsim: Fix timings calculation - tc358767: Plenty of small fixes, fix no connector attach, fix clocks - sii902x: state validation improvements panels: - Switch panels from register table initialization to proper code - Now that the panel code tracks the panel state, remove every ad-hoc implementation in the panel drivers - More cleanup of prepare / enable state tracking in drivers - edp: Drop legacy panel compatibles - simple-bridge: Switch to devm_drm_bridge_add - New panels: Lincoln Tech Sol LCD185-101CT, Microtips Technology 13-101HIEBCAF0-C, Microtips Technology MF-103HIEB0GA0, BOE nv110wum-l60, IVO t109nw41, WL-355608-A8, PrimeView PM070WL4, Lincoln Technologies LCD197, Ortustech COM35H3P70ULC, AUO G104STN01, K&d kd101ne3-40ti amdgpu: - DCN 4.0.x support - GC 12.0 support - GMC 12.0 support - SDMA 7.0 support - MES12 support - MMHUB 4.1 support - GFX12 modifier and DCC support - lots of IP fixes/updates amdkfd: - Contiguous VRAM allocations - GC 12.0 support - SDMA 7.0 support - SR-IOV fixes - KFD GFX ALU exceptions i915: - Battlemage Xe2 HPD display enablement - Panel Replay enabling - DP AUX-less ALPM/LOBF - Enable link training failure fallback for DP MST links - CMRR (Content Match Refresh Rate) enabling - Increase ADL-S/ADL-P/DG2+ max TMDS bitrate to 6 Gbps - Enable eDP AUX based HDR backlight - Support replaying GPU hangs with captured context image - Automate CCS Mode setting during engine resets - lots of refactoring - Support replaying GPU hangs with captured context image - Increase FLR timeout from 3s to 9s - Enable w/a 16021333562 for DG2, MTL and ARL [guc] xe: - update MAINATINERS - New uapi adding OA functionality to Xe - expose l3 bank mask - fix display detect on ADL-N - runtime PM Fixes - Fix silent backmerge issues - More prep for SR-IOV - HWmon additions - per client usage info - Rework GPU page fault handling - Drop EXEC_QUEUE_FLAG_BANNED - Add BMG PCI IDs - Scheduler fixes and improvements - Rename xe_exec_queue::compute to xe_exec_queue::lr - Use ttm_uncached for BO with NEEDS_UC flag - Rename xe perf layer as xe observation layer - lots of refactoring radeon: - Backlight workaround for iMac - Silence UBSAN flex array warnings msm: - Validate registers XML description against schema in CI - core/dpu: SM7150 support - mdp5: Add support for MSM8937 - gpu: Add param for userspace to know if raytracing is supported - gpu: X185 support (aka gpu in X1 laptop chips) - gpu: a505 support ivpu: - hardware scheduler support - profiling support - improvements to the platform support layer - firmware handling improvements - clocks/power mgmt improvements - scheduler/logging improvements habanalabs: - Gradual sleep in polling memory macro. - Reduce Gaudi2 MSI-X interrupt count to 128. - Add Gaudi2-D revision support. - Add timestamp to CPLD info. - Gaudi2: Assume hard-reset by firmware upon MC SEI severe error. - Align Gaudi2 interrupt names. - Check for errors after preboot is ready. - Change habanalabs maintainer and git repo path. mgag200: - refactoring and improvements - Add BMC output - enable polling nouveau: - add registry command line v3d: - perf counters improvements zynqmp: - irq and debugfs improvements atmel-hlcdc: - Support XLCDC in sam9x7 mipi-dbi: - Remove mipi_dbi_machine_little_endian - make SPI bits per word configurable - support RGB888 - allow pixel formats to be specified in the DT sun4i: - Rework the blender setup for DE2 panfrost: - Enable MT8188 support vc4: - Monochrome TV support exynos: - fix fallback mode regression - fix memory leak - Use drm_edid_duplicate() instead of kmemdup() etnaviv: - fix i.MX8MP NPU clock gating - workaround FE register cdc issues on some cores - fix DMA sync handling for cached buffers - fix job timeout handling - keep TS enabled on MMUv2 cores for improved performance mediatek: - Convert to platform remove callback returning void- - Drop chain_mode_fixup call in mode_valid() - Fixes the errors of MediaTek display driver found by IGT. - Add display support for the MT8365-EVK board - Fix bit depth overwritten for mtk_ovl_set bit_depth() - Fix possible_crtcs calculation - Fix spurious kfree() ast: - refactor mode setting code stm: - Add LVDS support - DSI PHY updates
Many cleanups and bug fixes in ext4, especially for the fast commit feature. Also some performance improvements; in particular, improving IOPS and throughput on fast devices running Async Direct I/O by up to 20% by optimizing jbd2_transaction_committed().
(not yet pulled as of now) which contains the KMSAN implementation for s390. Please apply the following fix-up if possible to avoid build breakage: https://lore.kernel.org/all/[email protected] --- s390 updates for 6.11 merge window - Remove restrictions on PAI NNPA and crypto counters, enabling concurrent per-task and system-wide sampling and counting events - Switch to GENERIC_CPU_DEVICES by setting up the CPU present mask in the architecture code and letting the generic code handle CPU bring-up - Add support for the diag204 busy indication facility to prevent undesirable blocking during hypervisor logical CPU utilization queries. Implement results caching - Improve the handling of Store Data SCLP events by suppressing unnecessary warning, preventing buffer release in I/O during failures, and adding timeout handling for Store Data requests to address potential firmware issues - Provide optimized __arch_hweight*() implementations - Remove the unnecessary CPU KOBJ_CHANGE uevents generated during topology updates, as they are unused and also not present on other architectures - Cleanup atomic_ops, optimize __atomic_set() for small values and __atomic_cmpxchg_bool() for compilers supporting flag output constraint - Couple of cleanups for KVM: - Move and improve KVM struct definitions for DAT tables from gaccess.c to a new header - Pass the asce as parameter to sie64a() - Make the crdte() and cspg() page table handling wrappers return a boolean to indicate success, like the other existing "compare and swap" wrappers - Add documentation for HWCAP flags - Switch to obtaining total RAM pages from memblock instead of totalram_pages() during mm init, to ensure correct calculation of zero page size, when defer_init is enabled - Refactor lowcore access and switch to using the get_lowcore() function instead of the S390_lowcore macro - Cleanups for PG_arch_1 and folio handling in UV and hugetlb code - Add missing MODULE_DESCRIPTION() macros - Fix VM_FAULT_HWPOISON handling in do_exception()
x86/percpu changes for v6.11: - Enable the named address spaces based percpu accessors optimization on all GCC versions that contain this feature, detected through a build-time testcase. This effectively enables the feature on GCC 6, GCC 7 and GCC 8 versions. - Fix operand constraint modifier in __raw_cpu_write() - Reorganize the per-CPU headers for better readability - Misc cleanups and fixes Thanks, Ingo
please pull the latest slab updates from: no merge conflicts with other trees expected. Thanks, Vlastimil The most prominent change this time is the kmem_buckets based hardening of kmalloc() allocations from Kees Cook. We have also extended the kmalloc() alignment guarantees for non-power-of-two sizes in a way that benefits rust. The rest are various cleanups and non-critical fixups. - Dedicated bucket allocator (Kees Cook) This series [1] enhances the probabilistic defense against heap spraying/grooming of CONFIG_RANDOM_KMALLOC_CACHES from last year. kmalloc() users that are known to be useful for exploits can get completely separate set of kmalloc caches that can't be shared with other users. The first converted users are alloc_msg() and memdup_user(). The hardening is enabled by CONFIG_SLAB_BUCKETS. - Extended kmalloc() alignment guarantees (Vlastimil Babka) For years now we have guaranteed natural alignment for power-of-two allocations, but nothing was defined for other sizes (in practice, we have two such buckets, kmalloc-96 and kmalloc-192). To avoid unnecessary padding in the rust layer due to its alignment rules, extend the guarantee so that the alignment is at least the largest power-of-two divisor of the requested size. This fits what rust needs, is a superset of the existing power-of-two guarantee, and does not in practice change the layout (and thus does not add overhead due to padding) of the kmalloc-96 and kmalloc-192 caches, unless slab debugging is enabled for them. - Cleanups and non-critical fixups (Chengming Zhou, Suren Baghdasaryan, Matthew Willcox, Alex Shi, Vlastimil Babka) Various tweaks related to the new alloc profiling code, folio conversion, debugging and more leftovers after SLAB. [1] https://lore.kernel.org/all/[email protected]/
These are two of orphaned patches which nobody can take (and as a result bugs remain unfixed for years). These patches have been tested using linux-next tree via my tomoyo tree since 20240611, and nobody found problems.
dia/v6.11-1 For: - New sensor drivers: gc05a2, gc08a3 and imx283; - New serializer/deserializer drivers: max96714 and max96717; - New JPEG encoder driver: e5010; - Support for Raspberry Pi PiSP Backend (BE) ISP driver; - Old documentation for av7110 driver removed, as a new version was added as Documentation/userspace-api/media/dvb/legacy*.rst; - atompisp: Linux firmwares are now available at: it/tree/intel/ipu so, drop firmware-related task from TODO and update firmware logic; - The imx258 driver has gained several improvements; - wave5 driver has gained support for HEVC decoding; - em28xx gained support for MyGica UTV3; - av7110 budget-patch driver removed; - Lots of other cleanups, improvements and fixes. Regards, Mauro --- media updates for v6.11-rc1
For: - New sensor drivers: gc05a2, gc08a3 and imx283; - New serializer/deserializer drivers: max96714 and max96717; - New JPEG encoder driver: e5010; - Support for Raspberry Pi PiSP Backend (BE) ISP driver; - Old documentation for av7110 driver removed, as a new version was added as Documentation/userspace-api/media/dvb/legacy*.rst; - atompisp: Linux firmwares are now available at: so, drop firmware-related task from TODO and update firmware logic; - The imx258 driver has gained several improvements; - wave5 driver has gained support for HEVC decoding; - em28xx gained support for MyGica UTV3; - av7110 budget-patch driver removed; - Lots of other cleanups, improvements and fixes. Regards, Mauro ---
memblock: updates for 6.11-rc1 * reserve_mem command line parameter to allow creation of named memory reservation at boot time. The driving use-case is to improve the ability of pstore to retain ramoops data across reboots. * cleaunps and small improvements in memblock and mm_init * new tests cases in memblock test suite
Please consider pulling the following changes in perf tools for v6.11. Thanks, Namhyung perf tools changes for v6.11 Build ----- * Build each directory as a library so that depedency check for the python extension module can be automatic. But it also introduces some trivial merge conflicts with other trees that touched perf tools codes. Basically it changes perf-y to perf-util-y or similar and you can find the resolution in the perf-next tree here. - https://lore.kernel.org/r/[email protected] - https://lore.kernel.org/r/[email protected] * Use pkg-config to check libtraceevent and libtracefs. perf sched
tree. The correct resolution is in linux-next. Rob Devicetree updates for v6.11: DT Bindings: - Convert and add a bunch of IBM FSI related bindings - Add a new schema listing legacy compatibles which will (probably) never be documented. This will silence various checks warning about them. - Add bindings for Sierra Wireless mangOH Green SPI IoT interface, new Arm 2024 Cortex and Neoverse CPUs, QCom sc8180x PDC, QCom SDX75 GPI DMA, imx8mp/imx8qxp fsl,irqsteer, and Renesas RZ/G2UL CRU and CSI-2 blocks - Convert Spreadtrum sprd-timer, FSL cpm_qe, FSL fsl,ls-scfg-msi, FSL q(b)man-*, FSL qoriq-mc, and img,pdc-wdt bindings to DT schema - Drop obsolete stericsson,abx500.txt DT core: - Update dtc to upstream version v1.7.0-93-g1df7b047fe43 - Add support to run DT validation on DTs with applied overlays - Add helper for creating boolean properties in dynamic nodes and use that for dynamic PCI nodes - Clean-up early parsing of '#{address,size}-cells'
tracing/tools: Trivial updates for 6.11 - Use pretty formatting only on interactive tty in rtla/osnoise - Better reporting when histogram is empty in rtla/osnoise - Use the correct library name for "libtracefs" in feature detection This has the last updates from Daniel Bristot's repository. trace-tools-v6.11
Hi Linus, This kselftest next update for Linux 6.11-rc1 consists of: -- changes to resctrl test to cleanup resctrl_val() and generalize it by removing test name specific handling from the function. -- several clang build failure fixes to framework and tests -- adds tests to verify IFS (In Field Scan) driver functionality -- cleanups to remove unused variables and document changes Testing notes: Passed on linux-next and linux-kselftest next branch: - Build - make kselftest-all - Run - make kselftest diff is attached. thanks, -- Shuah linux_kselftest-next-6.11-rc1 This kselftest next update for Linux 6.11-rc1 consists of: -- changes to resctrl test to cleanup resctrl_val() and generalize it by removing test name specific handling from the function. -- several clang build failure fixes to framework and tests -- adds tests to verify IFS (In Field Scan) driver functionality -- cleanups to remove unused variables and document changes
tracing: Trivial updates for 6.11 - Set rtla/osnoise default threshold to 1us from 5us The 5us default was missing noise that people cared about. Changing it to 1us makes it work as expected. - Restructure how sched_switch prev_comm and next_comm was being saved. The prev_comm was being saved along with the other next fields, and the next_comm was being saved along with the other prev fields. This is just a cosmetic change. - Have the allocation of pid_list use GFP_NOWAIT instead of GFP_KERNEL. The allocation can happen in irq_work context, but luckily, the size was by default so large, it was never triggered. But in case it ever is, use the NOWAIT allocation in the interrupt context. - Fix some kernel doc errors. trace-v6.11
tracing/ring-buffer: Have persistent buffer across reboots This allows for the tracing instance ring buffer to stay persistent across reboots. The way this is done is by adding to the kernel command line: trace_instance=boot_map@0x285400000:12M This will reserve 12 megabytes at the address 0x285400000, and then map the tracing instance "boot_map" ring buffer to that memory. This will appear as a normal instance in the tracefs system: /sys/kernel/tracing/instances/boot_map A user could enable tracing in that instance, and on reboot or kernel crash, if the memory is not wiped by the firmware, it will recreate the trace in that instance. For example, if one was debugging a shutdown of a kernel reboot: # cd /sys/kernel/tracing # echo function > instances/boot_map/current_tracer # reboot [..] # cd /sys/kernel/tracing # tail instances/boot_map/trace swapper/0-1 [000] d..1. 164.549800: restore_boot_irq_mode <-native_machine_shutdown swapper/0-1 [000] d..1. 164.549801: native_restore_boot_irq_mode <-native_machine_shutdown swapper/0-1 [000] d..1. 164.549802: disconnect_bsp_APIC <-native_machine_shutdown swapper/0-1 [000] d..1. 164.549811: hpet_disable <-native_machine_shutdown swapper/0-1 [000] d..1. 164.549812: iommu_shutdown_noop <-native_machine_restart swapper/0-1 [000] d..1. 164.549813: native_machine_emergency_restart <-__do_sys_reboot swapper/0-1 [000] d..1. 164.549813: tboot_shutdown <-native_machine_emergency_restart swapper/0-1 [000] d..1. 164.549820: acpi_reboot <-native_machine_emergency_restart swapper/0-1 [000] d..1. 164.549821: acpi_reset <-acpi_reboot swapper/0-1 [000] d..1. 164.549822: acpi_os_write_port <-acpi_reboot On reboot, the buffer is examined to make sure it is valid. The validation check even steps through every event to make sure the meta data of the event is correct. If any test fails, it will simply reset the buffer, and the buffer will be empty on boot. ring-buffer-v6.11
hte: Changes for v6.11-rc1 The changes for the hte/timestamp subsystem include the following: - Added module description in hte test to silence modpost warnings.
Hi Linus, This KUnit next update for Linux 6.11-rc1 consists of: -- adds vm_mmap() allocation resource manager -- converts usercopy kselftest to KUnit -- disables usercopy testing on !CONFIG_MMU -- adds MODULE_DESCRIPTION() to core, list, and usercopy tests -- adds tests for assertion formatting functions - assert.c -- introduces KUNIT_ASSERT_MEMEQ and KUNIT_ASSERT_MEMNEQ macros -- fixes KUNIT_ASSERT_STRNEQ comments to make it clear that it is an assertion -- renames KUNIT_ASSERT_FAILURE to KUNIT_FAIL_AND_ABORT Testing notes: Trees: linux-next and linux-kselftest kunit branch Passed: - make allmodconfig build - Default um ./tools/testing/kunit/kunit.py run ./tools/testing/kunit/kunit.py run --alltests - x86_64 ./tools/testing/kunit/kunit.py run --arch x86_64 ./tools/testing/kunit/kunit.py run --alltests --arch x86_64 diff is attached. thanks, -- Shuah linux_kselftest-kunit-6.11-rc1 This KUnit next update for Linux 6.11-rc1 consists of: -- adds vm_mmap() allocation resource manager -- converts usercopy kselftest to KUnit -- disables usercopy testing on !CONFIG_MMU -- adds MODULE_DESCRIPTION() to core, list, and usercopy tests -- adds tests for assertion formatting functions - assert.c -- introduces KUNIT_ASSERT_MEMEQ and KUNIT_ASSERT_MEMNEQ macros -- fixes KUNIT_ASSERT_STRNEQ comments to make it clear that it is an assertion -- renames KUNIT_ASSERT_FAILURE to KUNIT_FAIL_AND_ABORT
Performance events changes for v6.11: - Intel PT support enhancements & fixes - Fix leaked SIGTRAP events - Improve and fix the Intel uncore driver - Add support for Intel HBM and CXL uncore counters - Add Intel Lake and Arrow Lake support - AMD uncore driver fixes - Make SIGTRAP and __perf_pending_irq() work on RT - Micro-optimizations - Misc cleanups and fixes Thanks, Ingo
Networking changes for 6.11. Not much excitement - a handful of large patchsets (devmem among them) did not make it in time. Core & protocols
Bootconfig updates for v6.11: - Remove duplicate included header file linux/bootconfig.h from lib/bootconfig.c. This is a cleanup, no behavior change. bootconfig-v6.11
Probes updates for v6.11: Uprobes: - x86/shstk: Make return uprobe work with shadow stack. - Add uretprobe syscall which speeds up the uretprobe 10-30% faster. This syscall is automatically used from user-space trampolines which are generated by the uretprobe. If this syscall is used by normal user program, it will cause SIGILL. Note that this is currently only implemented on x86_64. (This also has 2 fixes for adjusting the syscall number to avoid conflict with new *attrat syscalls.) - uprobes/perf: fix user stack traces in the presence of pending uretprobe. This corrects the uretprobe's trampoline address in the stacktrace with correct return address. - selftests/x86: Add a return uprobe with shadow stack test. - selftests/bpf: Add uretprobe syscall related tests. . test case for register integrity check. . test case with register changing case. . test case for uretprobe syscall without uprobes (expected to be failed). . test case for uretprobe with shadow stack. - selftests/bpf: add test validating uprobe/uretprobe stack traces - MAINTAINERS: Add uprobes entry. This does not specify the tree but to clarify who maintains and reviews the uprobes. Kprobes: - tracing/kprobes: Test case cleanups. Replace redundant WARN_ON_ONCE() + pr_warn() with WARN_ONCE() and remove unnecessary code from selftest. - tracing/kprobes: Add symbol counting check when module loads. This checks the uniqueness of the probed symbol on modules. The same check has already done for kernel symbols. (This also has a fix for build error with CONFIG_MODULES=n) Cleanup: - Add MODULE_DESCRIPTION() macros for fprobe and kprobe examples. probes-v6.11
- Core Frameworks - Add new Trigger for Input Events - Add new led_mc_set_brightness() call to adapt colour/brightness for mutli-colour LEDs - Add new lled_mc_trigger_event() call to call the above based on given trigger conditions - Add new led_get_color_name() call, a wrapper around the existing led_colors[] array - Add a new flag to avoid automatic renaming of LED devices - New Drivers - Add support for Silergy SY7802 Flash LED Controller - Add support for Texas Instruments LP5569 LED Controller - Add support for ChromeOS EC LED Controller - New Device Support - Add support for KTD202{6,7} to Kinetic KTD2026/7 LEDs - Fix-ups - Replace ACPI/DT firmware helpers with agnostic variants - Make use of resource managed devm_* API calls - Device Tree binding adaptions/conversions/creation - Constify/staticise applicable data structures - Trivial; spelling, whitespace, coding-style adaptions - Drop i2c_device_id::driver_data where the value is unused - Utilise centrally provided helpers and macros to aid simplicity/duplication - Use generic platform device properties instead of OF/ACPI specific ones - Consolidate/de-duplicate various functionality - Remove superfluous/duplicated/unused sections - Make use of the new *_scoped() guard APIs - Improve/simplify error handling - Bug Fixes - Flush pending brightness changes before activating the trigger - Repair incorrect device naming preventing matches - Prevent memory leaks by correctly free resources during error handling routines - Repair locking issue causing circular dependency splats and lock-ups - Unregister sysfs entries before deactivating triggers to prevent use-after issues - Supply a bunch of MODULE_DESCRIPTIONs to silence modpost warnings - Use correct return codes expected by the callers - Omit set_brightness() error message for a LEDs that support only HW triggers
- New Drivers - Add support for Texas Instruments LM3509 Backlight Driver - Fix-ups - Device Tree binding adaptions/conversions/creation - Drop i2c_device_id::driver_data where the value is unused - Make use of the new *_scoped() guard APIs - Decouple from fbdev by providing Backlight with its own BACKLIGHT_POWER_* constrains - Bug Fixes - Correctly assess return values (NULL vs IS_ERR()) - Supply a bunch of MODULE_DESCRIPTIONs to silence modpost warnings
Note: I have update the capabilities in my signing key. I don't think anything changes on your side, but thought I'd mention it for good would probably solve any unforeseen issues. sysctl changes for 6.11-rc1 Summary * Remove "->procname == NULL" check when iterating through sysctl table arrays Removing sentinels in ctl_table arrays reduces the build time size and runtime memory consumed by ~64 bytes per array. With all ctl_table sentinels gone, the additional check for ->procname == NULL that worked in tandem with the ARRAY_SIZE to calculate the size of the ctl_table arrays is no longer needed and has been removed. The sysctl register functions now returns an error if a sentinel is used. * Preparation patches for sysctl constification Constifying ctl_table structs prevents the modification of proc_handler function pointers as they would reside in .rodata. The ctl_table arguments in sysctl utility functions are const qualified in preparation for a future treewide proc_handler argument constification commit. * Misc fixes Increase robustness of set_ownership by providing sane default ownership values in case the callee doesn't set them. Bound check proc_dou8vec_minmax to avoid loading buggy modules and give sysctl testing module a name to avoid compiler complaints. Testing * This got push to linux-next in v6.10-rc2, so it has had more than a month of testing
- New Drivers - Add support for ROHM BD96801 Power Management IC - Add support for Cirrus Logic CS40L50 Haptic Driver with Waveform Memory - Add support for Marvell 88PM886 Power Management IC - New Device Support - Add support for Keyboard Backlight to ChromeOS Embedded Controller - Add support for LEDs to ChromeOS Embedded Controller - Add support for Charge Control to ChromeOS Embedded Controller - Add support for the HW Monitoring Service to ChromeOS Embedded Controller - Add support for AUXADCs to MediaTek MT635{7,8,9} Power Management ICs - New Functionality - Allow Syscon consumers to supply their own Regmaps on registration - Fix-ups - Constify/staticise applicable data structures - Remove superfluous/duplicated/unused sections - Device Tree binding adaptions/conversions/creation - Trivial; spelling, whitespace, coding-style adaptions - Utilise centrally provided helpers and macros to aid simplicity/duplication - Drop i2c_device_id::driver_data where the value is unused - Replace ACPI/DT firmware helpers with agnostic variants - Move over to GPIOD (descriptor-based) APIs - Annotate a bunch of __counted_by() cases - Straighten out some includes - Bug Fixes - Ensure potentially asserted recent lines are deasserted during initialisation - Avoid "<module>.ko is added to multiple modules" warnings - Supply a bunch of MODULE_DESCRIPTIONs to silence modpost warnings - Fix Wvoid-pointer-to-enum-cast warnings
please pull from to receive HID subsystem updates for 6.11 merge window. Highlights: ===== - rewrite of the HID-BPF internal implementation to use bpf struct_ops instead of a tracing endpoint (Benjamin Tissoires) - add 2 new HID-BPF hooks to be able to intercept userspace calls targetting a HID device and filtering them (Benjamin Tissoires) - add support for various new devices through HID-BPF filters (Benjamin Tissoires) - add support for the magic keyboard backlight (Orlando Chamberlain) - add the missing MODULE_DESCRIPTION() macros in HID drivers (Jeff Johnson) - use of kvzalloc in case memory gets too fragmented (Hailong Liu) - retrieve the device firmware node in the child HID device (Danny Kaehn) - some hid-uclogic improvements (José Expósito) - some more typos, trivial fixes, kernel doctext and unused functions cleanups ===== You are going to get a trivial conflict with the mm tree in include/linux/hid_bpf.h which is documented here: https://lore.kernel.org/all/[email protected]/ You will also get a build failure after merging with the bpf-next/net-next tree in drivers/hid/bpf/hid_bpf_struct_ops.c which is documented here: https://lore.kernel.org/all/[email protected]/ Please let me know in case you'd like me to fix those and prepare a merged branch for you. Thanks!
This is exfat update pull request for v6.11-rc1. I add description of Thanks! Description for this pull request: - Fix deadlock issue reported by syzbot. - Handle idmapped mounts.
Here is the main PDx86 PR for v6.11. Highlights: - amd/pmf:Report system state changes using existing input events - asus-wmi:Zenbook 2023 camera LED disable support and fix TUF laptop keyboard RGB LED sysfs interface - dell-pc:Fan modes / platform profile support - hp-wmi:Fix platform profile switching on Omen/Victus laptops - intel/ISST:Use only TPMI interface when TPMI and legacy interfaces are available - intel/pmc:LTR restore support to pair with LTR ignore - intel/tpmi:Performance Limit Reasons (PLR) and APIC <-> Punit CPU numbering mapping support - WMI:driver override support and docs improvements - lenovo-yoga-c630:Support for EC (platform/arm64) - platform/arm64:Fix build with COMPILE_TEST (broke after addition of C630) - tools:Intel Speed Select Turbo Ratio Limit fix - Miscellaneous cleanups / refactoring / improvements Regards, i. platform-drivers-x86 for v6.11-1 Highlights: - amd/pmf:Report system state changes using existing input events - asus-wmi:Zenbook 2023 camera LED disable support and fix TUF laptop keyboard RGB LED sysfs interface - dell-pc:Fan modes / platform profile support - hp-wmi:Fix platform profile switching on Omen/Victus laptops - intel/ISST:Use only TPMI interface when TPMI and legacy interfaces are available - intel/pmc:LTR restore support to pair with LTR ignore - intel/tpmi:Performance Limit Reasons (PLR) and APIC <-> Punit CPU numbering mapping support - WMI:driver override support and docs improvements - lenovo-yoga-c630:Support for EC (platform/arm64) - platform/arm64:Fix build with COMPILE_TEST (broke after addition of C630) - tools:Intel Speed Select Turbo Ratio Limit fix - Miscellaneous cleanups / refactoring / improvements The following is an automated shortlog grouped by driver: amd/pmf: - Remove update system state document - Use existing input event codes to update system states - Use memdup_user() arm64: - add Lenovo Yoga C630 WOS EC driver - build drivers even on non-ARM64 platforms - EC_ACER_ASPIRE1 should depend on ARCH_QCOM - EC_LENOVO_YOGA_C630 should depend on ARCH_QCOM arm64: lenovo-yoga-c630: - select AUXILIARY_BUS asus-tf103c-dock: - Use 2-argument strscpy() asus-wmi: - fix TUF laptop RGB variant - support the disable camera LED on F10 of Zenbook 2023 dell-pc: - avoid double free and invalid unregistration - Implement platform_profile dell-smbios: - Add helper for checking supported class - Move request functions for reuse Docs/admin-guide: - Remove pmf leftover reference from the index doc: TPMI: - Add entry for Performance Limit Reasons dt-bindings: platform: - Add Lenovo Yoga C630 EC hp: hp-bioscfg: - Use 2-argument strscpy() hp-wmi: - Fix implementation of the platform_profile_omen_get function - Fix platform profile option switch bug on Omen and Victus laptops ideapad-laptop: - use cleanup.h intel: chtwc_int33fe: - Use 2-argument strscpy() intel/ifs: - Switch to new Intel CPU model defines intel_ips: - Switch to new Intel CPU model defines intel/pmc: - Add support to show ltr_ignore value - Add support to undo ltr_ignore - Convert index variables to be unsigned - Move pmc assignment closer to first usage - Remove unneeded min_t check - Simplify mutex usage with cleanup helpers - Switch to new Intel CPU model defines - Use DEFINE_SHOW_STORE_ATTRIBUTE macro - Use the Elvis operator - Use the return value of pmc_core_send_msg intel_scu_wdt: - Switch to new Intel CPU model defines intel_speed_select_if: - Switch to new Intel CPU model defines intel_telemetry: - Switch to new Intel CPU model defines intel/tpmi: - Add API to get debugfs root - Add new auxiliary driver for performance limits - Add support for performance limit reasons intel: - TPMI domain id and CPU mapping intel/tpmi/plr: - Add support for the plr mailbox - Fix output in plr_print_bits() intel_turbo_max_3: - Switch to new Intel CPU model defines intel-uncore-freq: - Get rid of magic min_max argument - Get rid of magic values - Get rid of uncore_read_freq driver API - Re-arrange bit masks - Rename the sysfs helper macro names - Switch to new Intel CPU model defines - Use generic helpers for current frequency - Use uncore_index with read_control_freq ISST: - Add model specific loading for common module - Avoid some SkyLake server models - Use only TPMI interface when present p2sb: - Switch to new Intel CPU model defines serial-multi-instantiate: - Use 2-argument strscpy() think-lmi: - Use 2-argument strscpy() thinkpad_acpi: - Use 2-argument strscpy() tools/power/x86/intel-speed-select: - Set TRL MSR in 100 MHz units - v1.20 release wmi: - Add bus ABI documentation - Add driver_override support x86/platform/atom: - Switch to new Intel CPU model defines Merges: - Merge branch 'pdx86/platform-drivers-x86-lenovo-c630' into review-ilpo - Merge branch 'pdx86/platform-drivers-x86-lenovo-c630' into review-ilpo - Merge branch 'pdx86/platform-drivers-x86-lenovo-c630' into review-ilpo - Merge remote-tracking branch 'intel-speed-select/intel-sst' into review-ilpo
please pull the x86/sev lineup for v6.11-rc1. There's a simple merge conflict with your current tree to which I'm addin= g the resolve at the end of this mail. Thx. --- - Add support for running the kernel in a SEV-SNP guest, over a Secure VM Service Module (SVSM). When running over a SVSM, different services can run at different protection levels, apart from the guest OS but still within the secure SNP environment. They can provide services to the guest, like a vTPM, for example. This series adds the required facilities to interface with such a SVSM module. - The usual fixlets, refactoring and cleanups
please pull the x86/cache lineup for v6.11-rc1. Thx. --- - Enable Sub-NUMA clustering to work with resource control on Intel by teaching resctrl to handle scopes due to the clustering which partitions the L3 cache into sets. Modify and extend the subsystem to handle such scopes properly
Scheduler changes for v6.11: - Update Daniel Bristot de Oliveira's entry in MAINTAINERS, and credit him in CREDITS. - Harmonize the lock-yielding behavior on dynamically selected preemption models with static ones. - Reorganize the code a bit: split out sched/syscalls.c to reduce the size of sched/core.c - Micro-optimize psi_group_change() - Fix set_load_weight() for SCHED_IDLE tasks - Misc cleanups & fixes Thanks, Ingo
Objtool changes for v6.11: - Fix bug that caused objtool to confuse certain memory ops added by KASAN instrumentation as stack accesses - Various faddr2line optimizations - Improve error messages Thanks, Ingo
Here is the Smack pull request for v6.11. There are 2 patches. Both address network labeling issues. Both have been in the next branch and pass all tests. Two fixes for Smack networking by Konstantin Andreev.
NOTE: I couldn't get git-request-pull to generate the correct diffstat. The diffstat at the end is generated against the merged base and should match the diff when sched_ext-for-6.11 is pulled after tip/sched/core and bpf/for-next. sched_ext: Initial pull request for v6.11 This is the initial pull request of sched_ext. The v7 patchset (https://lkml.kernel.org/r/[email protected]) is applied on top of tip/sched/core + bpf/for-next as of Jun 18th. tip/sched/core 793a62823d1c ("sched/core: Drop spinlocks on contention iff kernel is preemptible") bpf/for-next f6afdaf72af7 ("Merge branch 'bpf-support-resilient-split-btf'") Since then, the following changes: - cpuperf support which was a part of the v6 patchset was posted separately and then applied after reviews. - tip/sched/core is pulled into resolve the conflicts between e83edbf88f18 ("sched: Add sched_class->reweight_task()") d32960528702 ("sched/fair: set_load_weight() must also call reweight_task() for SCHED_IDLE tasks") The former makes reweight_task() a sched_class operation for sched_ext while the latter fixed a bug around idle weight handling in the same area. The conflicts are not trivial although not that complicated either. - Improve integration with sched core. - DSQ iterator which was a part of the v6 patchset was posted separately. The iterator itself was applied after a couple revisions. The associated selective consumption kfunc can use further improvements and is still being worked on. - The BPF scheduler couldn't directly dispatch to the local DSQ of another CPU using a SCX_DSQ_LOCAL_ON verdict. This caused difficulties around handling non-wakeup enqueues. Updated so that SCX_DSQ_LOCAL_ON can be used in the enqueue path too. - Various fixes and improvements. As the branch is based on top of tip/sched/core + bpf/for-next, please merge after both are applied.
kcsan: Add __data_racy documentation and module description This series contains on commit that improves the documentation for the new __data_racy type qualifier to the data_race() macro's kernel-doc header and to the LKMM's access-marking documentation.
Please please pull the latest nolibc changes from: nolibc updates for v6.11 oFix selftest printf format mismatch in expect_str_buf_eq(). oStop using brk() and sbrk() when testing against musl, which implements these two functions with ENOMEM. oMake tests use -Werror to force failure on compiler warnings. oAdd limits for the {u,}intmax_t, ulong and {u,}llong types. oImplement strtol() and friends. oAdd facility to skip nolibc-specific tests when running against non-nolibc libraries. oImplement strerror(). oAlso use strerror() on nolibc when running kselftests.
asm-generic updates for 6.11 Most of this is part of my ongoing work to clean up the system call tables. In this bit, all of the newer architectures are converted to use the machine readable syscall.tbl format instead in place of complex macros in include/uapi/asm-generic/unistd.h. This follows an earlier series that fixed various API mismatches and in turn is used as the base for planned simplifications. The other two patches are dead code removal and a warning fix.
Here are the four pull requests for the soc tree.=20 We have again just over 1000 non-merge changesets in the SoC tree, from 62 pull requests plus some individual patches. About 80% of this is arm6= 4, the rest is arm32 and riscv.=20 Not much sticks out in the contents, there are three new SoCs and a fairly large number of new machines, but it's spread out over a lot of platforms, with rockchip and ti having more than usual. The overall diffstat is 0.4% Documentation/devicetree/bindings/arm/ 0.9% Documentation/devicetree/bindings/ 0.2% Documentation/ 0.4% arch/arm/boot/dts/arm/ 0.4% arch/arm/boot/dts/marvell/ 0.4% arch/arm/boot/dts/nxp/imx/ 2.1% arch/arm/boot/dts/qcom/ 2.1% arch/arm/boot/dts/st/ 0.5% arch/arm/boot/dts/ 0.6% arch/arm/mach-pxa/ 0.3% arch/arm/mach-versatile/ 0.3% arch/arm64/boot/dts/allwinner/ 1.4% arch/arm64/boot/dts/amlogic/ 14.0% arch/arm64/boot/dts/freescale/ 2.9% arch/arm64/boot/dts/marvell/ 4.9% arch/arm64/boot/dts/mediatek/ 21.9% arch/arm64/boot/dts/qcom/ 1.1% arch/arm64/boot/dts/renesas/ 16.5% arch/arm64/boot/dts/rockchip/ 0.7% arch/arm64/boot/dts/st/ 9.5% arch/arm64/boot/dts/ti/ 0.3% arch/arm64/boot/dts/xilinx/ 0.5% arch/arm64/boot/dts/ 0.3% arch/riscv/boot/dts/allwinner/ 0.3% arch/riscv/boot/dts/microchip/ 0.3% arch/riscv/boot/dts/starfive/ 0.2% arch/riscv/boot/dts/ 0.2% drivers/cache/ 5.2% drivers/clk/qcom/ 0.2% drivers/firmware/microchip/ 1.3% drivers/firmware/qcom/ 0.3% drivers/firmware/ 3.1% drivers/platform/cznic/ 0.2% drivers/reset/ 2.2% drivers/soc/qcom/ 0.2% drivers/soc/xilinx/ 0.2% drivers/ 0.4% include/dt-bindings/clock/ 0.2% include/dt-bindings/ 0.7% include/linux/ 958 files changed, 66982 insertions(+), 11316 deletions(-) There are 232 individual contributors for this tree, the most active ones are 67 Dmitry Baryshkov 61 Krzysztof Kozlowski 52 Konrad Dybcio 42 Frank Li 37 Luca Weiss 26 Neil Armstrong 22 Bartosz Golaszewski 22 AngeloGioacchino Del Regno 18 Marek Beh=C3=BAn 17 Michael Walle 16 Siddharth Vadapalli 16 Rafa=C5=82 Mi=C5=82ecki 16 Jonas Karlman 16 Geert Uytterhoeven 12 Tengfei Fan 12 Alexander Stein 12 Abel Vesa 11 Marek Vasut 10 Nathan Morrisson 10 Krishna Kurapati 10 Dmitry Torokhov 10 Andrew Davis Arnd
acpi-6.11-rc1 Merge branch 'acpi-misc' ACPI: processor_idle: Fix invalid comparison with insertion sort for laten= cy to receive ACPI updates for 6.11-rc1. The only kind of new feature added by these is the hwmon interface support in the ACPI fan driver. Apart from that, they mostly address issues and clean up code. Specifics: - Switch the ACPI x86 utility code and the ACPI LPSS driver to new Intel CPU model defines (Tony Luck). - Add hwmon interface support to the ACPI fan driver (Armin Wolf). - Add sysfs entry for guaranteed performance to the ACPI CPPC library and replace a ternary operator with umax() in it (Petr Tesa=C5=99=C3=ADk= , Prabhakar Pujeri). - Clean up the ACPI PMIC driver in multiple ways (Andy Shevchenko, Christophe JAILLET). - Add support for charge limiting state to the ACPI battery driver and update _OSC to indicate support for it (Armin Wolf). - Clean up the sysfs interface in the ACPI battery, SBS (smart battery subsystem) and AC drivers (Thomas Wei=C3=9Fschuh). - Coordinate header includes in the ACPI NUMA code and make it use ACCESS_COORDINATE_CPU when appropriate (Huang Ying, Thorsten Blum). - Downgrade Intel _OSC and _PDC messages in the ACPI processor driver to debug to reduce log noise (Mario Limonciello). - Still evaluate _OST when _PUR evaluation fails in the ACPI PAD (processor aggregator) driver as per the spec (Armin Wolf). - Skip ACPI IRQ override on Asus Vivobook Pro N6506MJ and N6506MU platforms (Tamim Khan). - Force native mode on some T2 macbooks in the ACPI backlight driver and replace strcpy() with strscpy() in it (Orlando Chamberlain, Muhammad Qasim Abdul Majeed). - Add missing MODULE_DESCRIPTION() macros in two places (Jeff Johnson). Thanks!
pm-6.11-rc1 Merge tag 'pm-6.10-rc8' of to receive power management updates for 6.11-rc1. These add a new cpufreq driver for Loongson-3, add support for new features in the intel_pstate (Lunar Lake and Arrow Lake platforms, OOB mode for Emerald Rapids, highest performance change interrupt), amd-pstate (fast CPPC) and sun50i (Allwinner H700 speed bin) cpufreq drivers, simplify the cpufreq driver interface, simplify the teo cpuidle governor, adjust the pm-graph utility for a new version of Python, address issues and clean up code. Specifics: - Add Loongson-3 CPUFreq driver support (Huacai Chen). - Add support for the Arrow Lake and Lunar Lake platforms and the out-of-band (OOB) mode on Emerald Rapids to the intel_pstate cpufreq driver, make it support the highest performance change interrupt and clean it up (Srinivas Pandruvada). - Switch cpufreq to new Intel CPU model defines (Tony Luck). - Simplify the cpufreq driver interface by switching the .exit() driver callback to the void return data type (Lizhe, Viresh Kumar). - Make cpufreq_boost_enabled() return bool (Dhruva Gole). - Add fast CPPC support to the amd-pstate cpufreq driver, address multiple assorted issues in it and clean it up (Perry Yuan, Mario Limonciello, Dhananjay Ugwekar, Meng Li, Xiaojian Du). - Add Allwinner H700 speed bin to the sun50i cpufreq driver (Ryan Walklin). - Fix memory leaks and of_node_put() usage in the sun50i and qcom-nvmem cpufreq drivers (Javier Carrasco). - Clean up the sti and dt-platdev cpufreq drivers (Jeff Johnson, Raphael Gallais-Pou). - Fix deferred probe handling in the TI cpufreq driver and wrong return values of ti_opp_supply_probe(), and add OPP tables for the AM62Ax and AM62Px SoCs to it (Bryan Brattlof, Primoz Fiser). - Avoid overflow of target_freq in .fast_switch() in the SCMI cpufreq driver (Jagadeesh Kona). - Use dev_err_probe() in every error path in probe in the Mediatek cpufreq driver (N=C3=ADcolas Prado). - Fix kernel-doc param for longhaul_setstate in the longhaul cpufreq driver (Yang Li). - Fix system resume handling in the CPPC cpufreq driver (Riwen Lu). - Improve the teo cpuidle governor and clean up leftover comments from the menu cpuidle governor (Christian Loehle). - Clean up a comment typo in the teo cpuidle governor (Atul Kumar Pant). - Add missing MODULE_DESCRIPTION() macro to cpuidle haltpoll (Jeff Johnson). - Switch the intel_idle driver to new Intel CPU model defines (Tony Luck). - Switch the Intel RAPL driver new Intel CPU model defines (Tony Luck). - Simplify if condition in the idle_inject driver (Thorsten Blum). - Fix missing cleanup on error in _opp_attach_genpd() (Viresh Kumar). - Introduce an OF helper function to inform if required-opps is used and drop a redundant in-parameter to _set_opp_level() (Ulf Hansson). - Update pm-graph to v5.12 which includes fixes and major code revamp for python3.12 (Todd Brandt). - Address several assorted issues in the cpupower utility (Roman Storozhenko). Thanks!
thermal-6.11-rc1 Merge branch 'thermal-intel' thermal: core: Fix list sorting in __thermal_zone_device_update() to receive thermal control updates for 6.11-rc1. These add some new hardware support (notably, the Lunar Lake platform support in int340x and X1E80100 temperature sensor), continue to rework the thermal driver interface to eliminate trip point IDs from it, update DT bindings for a number of platforms and simplify probe in a number of thermal drivers, address issues and clean up code. Specifics: - Add DLVR and MSI interrupt support for the Lunar Lake platform to the int340x thermal driver (Srinivas Pandruvada). - Enable workload type hints (WLT) support and power floor interrupt support for the Lunar Lake platform in int340x ((Srinivas Pandruvada). - Switch Intel thermal drivers to new Intel CPU model defines (Tony Luck). - Clean up the int3400 and int3403 drivers (Erick Archer and David Alan Gilbert). - Improve intel_pch_thermal kernel log messages printed during suspend to idle (Zhang Rui). - Make the intel_tcc_cooling driver use a model-specific bitmask for TCC offset (Ricardo Neri). - Redesign the .set_trip_temp() thermal zone callback to take a trip pointer instead of a trip ID and update its users (Rafael Wysocki). - Avoid using invalid combinations of polling_delay and passive_delay thermal zone parameters (Rafael Wysocki). - Update a cooling device registration function to take a const argument (Krzysztof Kozlowski). - Make the uniphier thermal driver use thermal_zone_for_each_trip() for walking trip points (Rafael Wysocki). - Fix and clean up several minor shortcomings in thermal debug (Rafael Wysocki). - Rename __thermal_zone_set_trips() to thermal_zone_set_trips() and make it use trip thresholds (Rafael Wysocki). - Use READ_ONCE() for lockless access to trip temperature and hysteresis (Rafael Wysocki). - Drop unnecessary cooling device target state checks from the Bang-Bang thermal governor (Rafael Wysocki). - Avoid invoking thermal governor .trip_crossed() callback for critical and hot trip points (Rafael Wysocki). - Group all Renesas drivers inside a dedicated sub directory and add the missing dependency to OF (Niklas S=C3=B6derlund). - Add suspend/resume support on k3_j72xx_bandgap and take the opportunity to remove an unneeded delay in the init time code path (Th=C3=A9o Lebrun). - Fix thermal zone definition for MT8186 and MT8188 (Julien Panis). - Convert hisilicon-thermal.txt to dt-schema (Abdulrasaq Lawani). - Add DT bindings for the X1E80100 temperature sensor (Abel Vesa). - Fix the thermal zone node name regular expression in the DT schema (Krzysztof Kozlowski). - Avoid failing thermal control initialization by using default values on some platforms where calibration data is missing (Chen-Yu Tsai). - Fix the sensor cell size in DT for the Exynos platform (Krzysztof Kozlowski). - Bring the common definition of '#thermal-sensor-cells' property in order to simplify the bindings on all the platforms where this change makes sense and do some minor cleanups (Krzysztof Kozlowski). - Fix a race between removal and clock disable in the broadcom thermal driver (Krzysztof Kozlowski). - Drop 'trips' DT node as required from the thermal zone bindings in order to fix the remaining warnings appearing for thermal zones without trip points (Rob Herring). - Simplify all the drivers where dev_err_probe() can apply (Krzysztof Kozlowski). - Clean up code related to stih416 as this platform is not described anywhere (Raphael Gallais-Pou). Thanks!
protected-headers="v1" From: Vignesh Raghavendra <[email protected]> To: Olof Johansson <[email protected]>, Arnd Bergmann <[email protected]>, arm-soc <[email protected]>, SoC <[email protected]> Cc: Tero Kristo <[email protected]>, Vignesh Raghavendra <[email protected]>, [email protected], [email protected], Nishanth Menon <[email protected]> Message-ID: <[email protected]> Subject: [GIT PULL] arm64: dts: ti: K3 devicetree updates for v6.11 - part2 --------------ueqxuF7AE95w104VQykrKzYI Hi ARM SoC Maintainers, est: https://lore.kernel.org/linux-arm-kernel/37f251a1-f3bd-402f-ab22-cf786c38= [email protected]/ Late fixes towards v6.11-rc1 First patch fixes warning splat seen on J784S4 due to overlapping serdes0 lane. Second patch cleans up the serdes0 references for readabili= ty
please pull the x86/cpu lineup for v6.11-rc1. If you encounter a merge conflict - likely - I've added the resolve we've been using in linux-next at the end of that mail if you'd like to compare notes. Thx. --- - Flip the logic to add feature names to /proc/cpuinfo to having to explicitly specify the flag if there's a valid reason to show it in /proc/cpuinfo - Switch a bunch of Intel x86 model checking code to the new CPU model defines - Fixes and cleanups
Hi, please pull the changes described below. The hilights are new logic behind background block group reclaim, automatic removal of qgroup after removing a subvolume and new 'rescue=' mount options. The rest is optimizations, cleanups and refactoring. There's a merge conflict caused by the latency fixes from last week in extent_map.c:btrfs_scan_inode(), related commits 4e660ca3a98d931809734 and b3ebb9b7e92a928344a. Resolved in branch for-6.11-merged and that's been in linux-next for a few days. User visible features: - dynamic block group reclaim: - tunable framework to avoid situations where eager data allocations prevent creating new metadata chunks due to lack of unallocated space - reuse sysfs knob bg_reclaim_threshold (otherwise used only in zoned mode) for a fixed value threshold - new on/off sysfs knob "dynamic_reclaim" calculating the value based on heuristics, aiming to keep spare working space for relocating chunks but not to needlessly relocate partially utilized block groups or reclaim newly allocated ones - stats are exported in sysfs per block group type, files "reclaim_*" - this may increase IO load at unexpected times but the corner case of no allocatable block groups is known to be worse - automatically remove qgroup of deleted subvolumes - adjust qgroup removal conditions, make sure all related subvolume data are already removed, or return EBUSY, also take into account setting of sysfs drop_subtree_threshold - also works in squota mode - mount option updates: new modes of 'rescue=' that allow to mount (as read-only) images that could have been partially converted by user space tools - ignoremetacsums - invalid metadata checksums are ignored - ignoresuperflags - super block flags that track conversion in progress (like UUID or checksums) Core: - size of struct btrfs_inode is now below 1024 (on a release config), improved memory packing and other secondary effects - switch tracking of open inodes from rb-tree to xarray, minor performance improvement - reduce number of empty transaction commits when there are no dirty data/metadata - memory allocation optimizations (reduced numbers, reordering out of critical sections) - extent map structure optimizations and refactoring, more sanity checks - more subpage in zoned mode preparations or fixes - general snapshot code cleanups, improvements and documentation - tree-checker updates: more file extent ram_bytes fixes, continued - raid-stripe-tree update (not backward compatible): - remove extent encoding field from the structure, can be inferred from other information - requires btrfs-progs 6.9.1 or newer - cleanups and refactoring - error message updates - error handling improvements - return type and parameter cleanups and improvements
please pull the x86/bugs lineup for v6.11-rc1. Thx. --- - Add a spectre_bhi=vmexit mitigation option aimed at cloud environments - Remove duplicated Spectre cmdline option documentation - Add separate macro definitions for syscall handlers which do not return in order to address objtool warnings
Note, this set includes a patch touching drivers/md/md-cluster.c, acked by the md-cluster developers, making use of the new DLM_LSFL_SOFTIRQ_SAFE flag. Overall, changes include: - New flag DLM_LSFL_SOFTIRQ_SAFE can be set by code using dlm to indicate callbacks can be run from softirq. - Change md-cluster to set DLM_LSFL_SOFTIRQ_SAFE. - Clean up for previous changes, e.g. unused code and parameters. - Remove custom pre-allocation of rsb structs which is unnecessary with kmem caches. - Change idr to xarray for lkb structs in use. - Change idr to xarray for rsb structs being recovered. - Change outdated naming related to internal rsb states. - Fix some incorrect add/remove of rsb on scan list. - Use rcu to free rsb structs. Thanks, Dave
Thanks! -Kees hardening updates for v6.11-rc1 - lkdtm/bugs: add test for hung smp_call_function_single() (Mark Rutland) - gcc-plugins: Remove duplicate included header file stringpool.h (Thorsten Blum) - ARM: Remove address checking for MMUless devices (Yanjun Yang) - randomize_kstack: Clean up per-arch entropy and codegen - KCFI: Make FineIBT mode Kconfig selectable - fortify: Do not special-case 0-sized destinations
Thanks! -Kees seccomp updates for v6.11-rc1 - interrupt SECCOMP_IOCTL_NOTIF_RECV when all users exit (Andrei Vagin) - Update selftests to check for expected NOTIF_RECV exits (Andrei Vagin)
were no pstore updates for v6.10, this is based on v6.9-rc2. I forgot to do my traditional merge-on-rc2 for this tree when v6.10-rc2 happened.) Thanks! -Kees pstore updates for v6.11-rc1 - Add missing MODULE_DESCRIPTION() macro (Jeff Johnson) - Replace deprecated strncpy() with strscpy() (Justin Stitt)
Thanks! -Kees execve updates for v6.11-rc1 - Use value of kernel.randomize_va_space once per exec (Alexey Dobriyan) - Honor PT_LOAD alignment for static PIE - Make bprm->argmin only visible under CONFIG_MMU - Add KUnit testing of bprm_stack_limits()
please pull the x86/vmware lineup for v6.11-rc1. Thx. --- - Add a unified VMware hypercall API layer which should be used by all callers instead of them doing homegrown solutions. This will provide for adding API support for confidential computing solutions like TDX
please pull the x86/misc lineup for v6.11-rc1. Thx. --- - Make error checking of AMD SMN accesses more robust in the callers as they're the only ones who can interpret the results properly - The usual cleanups and fixes, left and right
NFSD 6.11 Release Notes This is a light release containing optimizations, code clean-ups, and minor bug fixes. This development cycle focused on work outside of upstream kernel development: 1. Continuing to build upstream CI for NFSD based on kdevops 2. Continuing to focus on the quality of NFSD in LTS kernels 3. Participation in IETF nfsv4 WG discussions about NFSv4 ACLs, directory delegation, and NFSv4.2 COPY offload Notable features in v6.11 that were not pulled through the NFSD tree include NFS server-side support for the new pNFS NVMe layout type [RFC9561]. Functional testing for pNFS block layouts like this one has been introduced to our kdevops CI harness. Work on improving the resolution of file attribute time stamps in local filesystems is also ongoing tree-wide. As always I am grateful to NFSD contributors, reviewers, testers, and bug reporters who participated during this cycle.
spi: Updates for v6.11 There's some quite exciting core work in this release, we've got the beginnings of support for hardware initiated transfers which is itself independently useful for optimising fast paths in existing drivers. We also have a rework of the DMA mapping which allows finer grained decisions about DMA mapping messages and also helps remove some bodges that we'd had. Otherwise it's a fairly quiet release, a few new drivers and features for existing drivers, together with various cleanups and DT binding conversions. One regmap SPI fix made it's way in here too which I should probably have sent as a regmap fix instead. - Support for pre-optimising messages, reducing the overhead for messages that are repeatedly used (eg, reading the interrupt status from a device). This will also be used for hardware initiated transfers in future. - A reworking of how DMA mapping is done, introducing a new helper and allowing the DMA mapping decision to be done per transfer instead of per message. - Support for Atmel SAMA7D64, Freescale LX2160A DSPI and WCH CH341A.
regmap: Updates for v6.11 There's one new feature here, a regmap_multi_reg_read() matching the existing write function which has some IIO users coming. This allows atomic reads from multiple registers without the need to wrap a higher level lock in the client driver just for regmap (which already has locks anyway). We also have one fix for the KUnit tests, and a bunch of cleanups.
regulator: Updates for v6.11 This s a very quiet release for the regulator API, we have a few new devices (most of which are just ID updates) and one new fairly specialist core feature for use in interrupt context. - An API allowing lockless enable/disable for regulators acquired in exclusive mode, for use in interrupt contexts. - A rewrite of the MedaTek DVFSRC regulator driver which apparently never worked. - Support for Mediaktek MT6312, Qualcomm QCA6390 and WCN7850, Renesas RZ/G2L USB VBUS regulator and ST Microelectronics STM32MP13.
please pull a single x86 build improvement for v6.11-rc1. Thx. --- - Make sure insn support detection uses the proper compiler flag in bi-arch builds
USB-serial updates for 6.11-rc1 Here are the USB-serial updates for 6.11-rc1, including: - add missing module descriptions - add flexible array annotation in garmin_gps Included are also various clean ups. All have been in linux-next with no reported issues.
Locking changes for v6.11: - Jump label fixes, including a perf events fix that originally manifested as jump label failures, but was a serialization bug at the usage site. - Mark down_write*() helpers as __always_inline, to improve WCHAN debuggability. - Misc cleanups and fixes. Thanks, Ingo
Hi, please pull the following conversions of the one-element to flexible arrays. Thanks.
please pull the x86/core lineup for v6.11-rc1. Basically your own patch. :-P Thx. --- - Cleanup the 8-byte getuser() asm case
please pull the x86 confidential computing lineup for v6.11-rc1. Thx. --- - Unrelated x86/cc changes queued here to avoid ugly cross-merges and conflicts: - Carve out CPU hotplug function declarations into a separate header with the goal to be able to use the lockdep assertions in a more flexible manner - As a result, refactor cacheinfo code after carving out a function to return the cache ID associated with a given cache level - Cleanups - Add support to be able to kexec TDX guests. For that - Expand ACPI MADT CPU offlining support - Add machinery to prepare CoCo guests memory before kexec-ing into a new kernel - Cleanup, readjust and massage related code
please pull the x86/boot lineup for v6.11-rc1. Thx. --- - Add a check to warn when cmdline parsing happens before the final cmdline string has been built and thus arguments can get lost - Code cleanups and simplifications
please pull updates to x86/alternatives for v6.11-rc1. Thx. --- - This is basically PeterZ's idea to nest the alternative macros to avoid the need to "spell out" the number of alternates in an ALTERNATIVE_n() macro and thus have an ever-increasing complexity in those definitions. For ease of bisection, the old macros are converted to the new, nested variants in a step-by-step manner so that in case an issue is encountered during testing, one can pinpoint the place where it fails easier. Because debugging alternatives is a serious pain.
please pull ras/core for v6.11-rc1. Thx. --- - A cleanup and a correction to the error injection driver to inject a MCA_MISC value only when one has actually been supplied by the user
Here's the pull-request for MMC and MEMSTICK for v6.11. Details about the highlights are as usual found in the signed tag. Kind regards Ulf Hansson MMC host: - Convert from using tasklet to the BH workqueue - dw_mmc-bluefield: Add support for eMMC HW reset - mmc_spi: Allow spi controllers incapable of lower than 400kHz - sdhci: Rework code to eliminate SDHCI_QUIRK_UNSTABLE_RO_DETECT - sdhci-brcmstb: Add support for the BCM2712 variant - sdhci-esdhc-imx: Disable card-detect as system wakeup on S32G platforms - sdhci-msm: Add support for the SDX75 variant - sdhci-of-dwcmshc: Enable CQE support for some Rockchip variants - sdhci-of-esdhc: Convert DT-bindings to yaml - sdhci-sprd: Convert DT-bindings to yaml MEMSTICK: - rtsx_pci_ms: Remove the unused Realtek PCI memstick driver
please pull the EDAC updates for v6.11. Thx. --- - The AMD memory controllers data fabric version 4.5 supports non-power-of-2 denormalization in the sense that certain bits of the system physical address cannot be reconstructed from the normalized address reported by the RAS hardware. Add support for handling such addresses - Switch the EDAC drivers to the new Intel CPU model defines - The usual fixes and cleanups all over the place
m68k updates for v6.11 - Fix bootup lock-ups on Warp1260, Atari TT, and MegaSTe, - Miscellaneous fixes and improvements, - Defconfig updates. Thanks for pulling!
Here's the PR with the pmdomain updates for v6.11. Details about the highlights are as usual found in the signed tag. Kind regards Ulf Hansson pmdomain core: - Add support for HW-managed devices pmdomain providers: - amlogic: Add support for the A5 and the A4 power domains - arm: Enable system wakeups for the SCMI PM domain - qcom/clk: Add HW-mode callbacks to allow switching of GDSC mode pmdomain consumers: - qcom/media/venus: Enable support for switching GDSC HW-mode on V6
From: Bartosz Golaszewski <[email protected]> Here's the pull-request from the GPIO tree for this merge window. The majority of added lines are two new modules: the GPIO virtual consumer module that improves our ability to add automated tests for the kernel API and the "sloppy" logic analyzer module that uses the GPIO API to implement a coarse-grained debugging tool for useful for remote development. Other than that we have the usual assortment of various driver extensions, improvements to the core GPIO code, DT-bindings and other documentation updates as well as an extension to the interrupt simulator. Best Regards, Bartosz Golaszewski gpio updates for v6.11-rc1 GPIOLIB core: - rework kfifo handling rework in the character device code - improve the labeling of GPIOs requested as interrupts and show more info on interrupt-only GPIOs in debugfs - remove unused APIs - unexport interfaces that are only used from the core GPIO code - drop the return value from gpiochip_set_desc_names() as it cannot fail - move a string array definition out of a header and into a specific compilation unit - convert the last user of gpiochip_get_desc() other than GPIO core to using a safer alternative - use array_index_nospec() where applicable New drivers: - add a "virtual GPIO consumer" module that allows requesting GPIOs from actual hardware and driving tests of the in-kernel GPIO API from user-space over debugfs - add a GPIO-based "sloppy" logic analyzer module useful for "first glance" debugging on remote boards Driver improvements: - add support for a new model to gpio-pca953x - lock GPIOs as interrupts in gpio-sim when the lines are requested as irqs via the simulator domain + some other minor improvements - improve error reporting in gpio-syscon - convert gpio-ath79 to using dynamic GPIO base and range - use pcibios_err_to_errno() for converting PCIBIOS error codes to errno vaues in gpio-amd8111 and gpio-rdc321x - allow building gpio-brcmstb for the BCM2835 architecture DT bindings: - convert DT bindings for lsi,zevio, mpc8xxx, and atmel to DT schema - document new properties for aspeed,gpio, fsl,qoriq-gpio and gpio-vf610 - document new compatibles for pca953x and fsl,qoriq-gpio Documentation: - document stricter behavior of the GPIO character device uAPI with regards to reconfiguring requested line without direction set - clarify the effect of the active-low flag on line values and edges - remove documentation for the legacy GPIO API in order to stop tempting people to use it - document the preference for using pread() for reading edge events in the sysfs API Other: - add an extended initializer to the interrupt simulator allowing to specify a number of callbacks callers can use to be notified about irqs being requested and released
Could you consider this pull request for 6.11-rc1? No outstanding new features have landed for this cycle so far. There are patches addressing folio conversions for compressed inodes: While large folio support for compressed data could work now, it remains disabled since the stress test could hang due to page migration in a few hours after enabling it. I need more time to investigate further before enabling this feature. Additionally, there are also some patches to clean up stream decompressors and tracepoints for simplicity. All commits have been tested and no potential merge conflict is observed. Thanks, Gao Xiang Changes since last update: - More folio conversions for compressed inodes; - Stream decompressor (LZMA/DEFLATE/ZSTD) cleanups; - Minor tracepoint cleanup.
Please git pull the following tag: xen: branch for v6.11-rc1 It contains the following patches: - some trivial cleanups - a fix for the Xen timer - a patch for adding boot time selectable debug capability to the Xen multicall handling - two fixes for the recently added Xen irqfd handling Thanks. Juergen
cgroup: Changes for v6.11 - Added Michal Koutný as a maintainer. - Counters in pids.events were behaving inconsistently. pids.events made properly hierarchical and pids.events.local added. - misc.peak and misc.events.local added. - cpuset remote partition creation and cpuset.cpus.exclusive handling improved. - Code cleanups, non-critical fixes, doc updates. - for-6.10-fixes is merged in to receive two non-critical fixes that didn't trigger pull.
workqueue: Changes for v6.11 - Lai fixed a bug where CPU hotplug and workqueue attribute changes race leaving some workqueues not fully updated. This involved refactoring and changing how online CPUs are tracked. The resulting code is cleaner. - Workqueue watchdog touch operation was causing too much cacheline contention on very large machines. Nicholas improved scalabililty by avoiding unnecessary global updates. - Code cleanups and minor rescuer behavior improvement. - The last commit 58629d4871e8 ("workqueue: Always queue work items to the newest PWQ for order workqueues") is a cherry-picked straggler commit from for-6.10-fixes, a fix for a bug which may not actually trigger. Unfortunately, maybe because for-6.10-fixes was branched off at a different point from for-6.11, I couldn't persuade git request-pull to generate clean diffstat if pulled into for-6.11.
Hi Linus, trivial conflict in the MAINTAINERS file and you should keep both changes. See also [1]. [1]: https://lore.kernel.org/linux-next/[email protected]= rg.au/ Thanks, TzungBi ------ chrome platform changes for 6.11 * New - Add "cros_ec_hwmon" driver to expose fan speed and temperature. - Add "cros_charge-control" driver to control charge thresholds and behaviour. - Add module parameter "log_poll_period_ms" in cros_ec_debugfs for tuning the poll period. - Support version 3 of EC_CMD_GET_NEXT_EVENT and keyboard matrix. * Fixes - Fix a race condition in accessing MEC (Microchip EC) memory between ACPI and kernel. Serialize the memory access by an AML (ACPI Machine Language) mutex. - Fix an issue of wrong EC message version in cros_ec_debugfs. * Misc - Fix kernel-doc errors and cleanups.
Hi Linus, Thanks, TzungBi ------ chrome platform firmware changes for 6.11 * Minor cleanups.
bcachefs changes for 6.11-rc1 - Metadata version 1.8: Stripe sectors accounting, BCH_DATA_unstriped This splits out the accounting of dirty sectors and stripe sectors in alloc keys; this lets us see stripe buckets that still have unstriped data in them. This is needed for ensuring that erasure coding is working correctly, as well as completing stripe creation after a crash. - Metadata version 1.9: Disk accounting rewrite The previous disk accounting scheme relied heavily on percpu counters that were also sharded by outstanding journal buffer; it was fast but not extensible or scalable, and meant that all accounting counters were recorded in every journal entry. The new disk accounting scheme stores accounting as normal btree keys; updates are deltas until they are flushed by the btree write buffer. This means we have no practical limit on the number of counters, and a new tagged union format that's easy to extend. We now have counters for compression type/ratio, per-snapshot-id usage, per-btree-id usage, and pending rebalance work. - Self healing on read IO/checksum error data is now automatically rewritten if we get a read error and then a successful retry - Mount API conversion (thanks to Thomas Bertschinger) - Better lockdep coverage Previously, btree node locks were tracked individually by lockdep, like any other lock. But we may take _many_ btree node locks simultaneously, we easily blow through the limit of 48 locks that lockdep can track, leading to lockdep turning itself off. Tracking each btree node lock individually isn't really necessary since we have our own cycle detector for deadlock avoidance and centralized tracking of btree node locks, so we now have a single lockdep_map in btree_trans for "any btree nodes are locked". - some more small incremental work towards online check_allocations - lots more debugging improvements, fixes
Thanks, Guenter ------ hwmon updates for v6.11-rc1 * Obsolete driver removals - Removed obsolete adm1021 and max6642 drivers * New drivers - MPS MP2891 - MPS MP2993 - MPS MP9941 - MPS MP5920 - SPD5118 (Temperature Sensor and EEPROM) * Added device support to existing drivers - g762: G761 - dell-smm: Dell OptiPlex 7060 - asus-ec-sensors: ProArt X670E-CREATOR WIFI - corsair-psu: HX1200i Series 2023 psu - nzxt-smart2: Additional USB IS for NZXT RGB & Fan Controller * Notable enhancements and fixes - Removed use of i2c_match_id() - Constified struct regmap_config where feasible - Cleaned up amc6821 driver, and converted to use regmap and with_info API - Converted max6639 driver to use with_info API; added support for additional sysfs attributes - Fixed various sysfs attribute underflows - Added PEC support to hwmon core, and use in lm90 and max31827 drivers * Various other minor fixes and improvements
Hello Linus, the following changes since commit f01af3022d4a46362c5dda3d35dea939f3246d10: pwm: stm32: Fix error message to not describe the previous error path (20= 24-06-22 16:13:19 +0200) that is part of v6.10-rc5 are available in the Git repository at: wm/for-6.11-rc1 for you to fetch changes up to 240b129d597cb8a8880eb3a381ff10eb98ca0c07: pwm: axi-pwmgen: add .max_register to regmap (2024-07-11 15:44:40 +0200) v6.11-rc1. Best regards Uwe pwm: Changes for v6.11-rc1 This contains the usual mix of fixes, cleanups, two new drivers and several dt binding updates. The fixes are for minor issues that are already old (4.11-rc1 and 3.9-rc1) and were found by code review and not during usage, so I didn't sent them for earlier inclusion. The changes to include/linux/mfd/stm32-timers.h and drivers/counter/stm32-timer-cnt.c are part of an immutable branch that will also be included in the mfd and counter PR. It changes some register definitions and affects the pwm-stm32 driver. Thanks go to Andy Shevchenko, AngeloGioacchino Del Regno, Conor Dooley, David Lechner, Dhruva Gole, Drew Fustini, Frank Li, Jeff Johnson, Junyi Zhao, Kelvin Zhang, Krzysztof Kozlowski, Lee Jones, Linus Walleij, Linus Walleij, Michael Hennerich, Nicola Di Lieto, Nicolas Ferre, Nuno Sa, Paul Cercueil, Raag Jadav, Rob Herring, Sean Anderson, Sean Young, Shenwei Wang, Stefan Wahren, Trevor Gamblin, Tzung-Bi Shih, Vincent Whitchurch and William Breathitt Gray for their contributions to this pull request; they authored changes, spend time reviewing changes and coordinated the above mentioned immutable branch.
please pull the latest irq/core branch from: -14 Updates for the interrupt subsystem: - Core: - Provide a new mechanism to create interrupt domains. The existing interfaces have already too many parameters and it's a pain to expand any of this for new required functionality. The new function takes a pointer to a data structure as argument. The data structure combines all existing parameters and allows for easy extension. The first extension for this is to handle the instantiation of generic interrupt chips at the core level and to allow drivers to provide extra init/exit callbacks. This is necessary to do the full interrupt chip initialization before the new domain is published, so that concurrent usage sites won't see a half initialized interrupt domain. Similar problems exist on teardown. This has turned out to be a real problem due to the deferred and parallel probing which was added in recent years. Handling this at the core level allows to remove quite some accrued boilerplate code in existing drivers and avoids horrible workarounds at the driver level. - The usual small improvements all over the place - MSI - Switch ARM/ARM64 over to the modern per device MSI domains. This simplifies the handling of platform MSI and wire to MSI controllers and removes about 500 lines of legacy code. Aside of that it paves the way for ARM/ARM64 to utilize the dynamic allocation of PCI/MSI interrupts and to support the upcoming non standard IMS (Interrupt Message Store) mechanism on PCIe devices - Drivers - Add support for LAN966x OIC and RZ/Five SoC - Split the STM ExtI driver into a microcontroller and a SMP version to allow building the latter as a module for multi-platform kernels. - Enable MSI support for Armada 370XP on platforms which do not support IPIs. - The usual small fixes and enhancements all over the place. Thanks, tglx
please pull the latest timers/core branch from: -07-14 people/daniel.lezcano/linux into timers/core Updates for timers, timekeeping and related functionality: - Core: - Make the takeover of a hrtimer based broadcast timer reliable during CPU hot-unplug. The current implementation suffers from a race which can lead to broadcast timer starvation in the worst case. - VDSO related cleanups and simplifications - Small cleanups and enhancements all over the place =20 - PTP: - Replace the architecture specific base clock to clocksource, e.g. ART to TSC, conversion function with generic functionality to avoid exposing such internals to drivers and convert all existing drivers over. This also allows to provide functionality which converts the other way round in the core code based on the same parameter set. - Provide a function to convert CLOCK_REALTIME to the base clock to support the upcoming PPS output driver on Intel platforms. - Drivers: - A set of Device Tree bindings for new hardware - Cleanups and enhancements all over the place Thanks, tglx
please pull the latest core/debugobjects branch from: s-2024-07-14 A single update for debugobjects to annotate all intentionally racy global debug variables so that KCSAN ignores them. Thanks, tglx
please pull the latest smp/core branch from: -14 ll_on_cpu() A small set of SMP/CPU hotplug updates: - Reverse the order of iteration when freezing secondary CPUs for hibernation. This avoids that drivers like the Intel uncore performance counter have to transfer the assignement of handling the per package uncore events for every CPU in a package, which is a considerable speedup on larger systems. - Add a missing destroy_work_on_stack() invocation in smp_call_on_cpu() to prevent debug objects to emit a false positive warning when the stack is freed. - Small cleanups in comments and a str_plural() conversion Thanks, tglx
Here's the vDSO getrandom() work we've been discussing for the last few weeks. Thank you very much for your input on this and for working with me to get this where it is. I'm happy with the set of compromises, and I think this wound up in a decent place. A blurb for the merge message: This is a short series adding getrandom() support to the vDSO. First, it adds a new kind of mapping to mmap(2), MAP_DROPPABLE, which lets the kernel zero out pages anytime under memory pressure, which enables allocating memory that never gets swapped to disk but also doesn't count as being mlocked. Then, the vDSO implementation of getrandom() is introduced in a generic manner and hooked into random.c. Next, this is implemented on x86. (Also, though it's not ready for this pull, somebody has begun an arm64 implementation already.) Finally, two vDSO selftests are added. Each version of this series has been in linux-next for a little bit, and there are no major reported issues, though there may be a trivial merge conflict. Thanks, Jason Random number generator updates for Linux 6.11-rc1.
When the merge window opens, please pull this RCU update from: RCU pull request for v6.11 doc.2024.06.06a: Update Tasks RCU and Tasks Rude RCU description in Requirements.rst and clarify rcu_assign_pointer() and rcu_dereference() ordering properties. fixes.2024.07.04a: Add lockdep assertions for RCU readers, limit inline wakeups for callback-bypass synchronize_rcu(), add an rcutree.nohz_full_patience_delay to reduce nohz_full OS jitter, add Uladzislau Rezki as RCU maintainer, and fix a subtle callback-migration memory-ordering issue. mb.2024.06.28a: Remove a number of redundant memory barriers. nocb.2024.06.03a: Remove unnecessary bypass-list lock-contention mitigation, use parking API instead of open-coded ad-hoc equivalent, and upgrade obsolete comments. rcu-tasks.2024.06.06a: Revert avoidance of a deadlock that can no longer occur and properly synchronize Tasks Trace RCU checking of runqueues. rcutorture.2024.06.06a: Add tests for handling of double-call_rcu() bug, add missing MODULE_DESCRIPTION, and add a script that histograms the number of calls to RCU updaters. srcu.2024.06.18a: Fill out SRCU polled-grace-period API.
When the merge window opens, please pull this generic torture-test update from: Torture-test updates for v6.11 This pull request adds MODULE_DESCRIPTION() to torture.c, locktorture.c, and scftorture.c, and also adds static to a global variable that is used only in scftorture.c.
When the merge window opens, please pull this LKMM update from: lkmm: Fix corner-case locking bug and improve documentation A simple but odd single-process litmus test acquires and immediately releases a lock, then calls spin_is_locked(). LKMM acts if it was a deadlock due to an assumption that spin_is_locked() will follow a spin_lock() or some other process's spin_unlock(). This litmus test manages to violate this assumption because the spin_is_locked() follows the same process's spin_unlock(). This series fixes this bug, reorganizes and optimizes the lock.cat model, and updates documentation.
Hi Wolfram, Not a massive pull request. The majority of changes relate to the naming convention updates. Other than that, the holiday period has given us some slack in the number of patches queued for this pull request. There is still one pending documentation fix required for an issue reported by Stephen that I haven't noticed. I need to add the documentation check to my workflow. If you don't have the bandwidth, I can take care of it. I also have a pending patch for a v2 pull request from Hans de Goede ("i2c: i801: Use a different adapter name for IDF adapters") that is waiting for precedence. I wish you a great rest of the weekend, Andi This release includes significant updates, with the primary change being the renaming from "master/slave" to "controller/target" to adhere to I2C v7 and SMBus 3.2 standards. New Support: - Added support for Intel Arrow Lake-H. - Added I2C support in the Arioha SoC by linking the Mediatek I2C controller. Cleanups: - Added the MODULE_DESCRIPTION() macro, resolving a modpost warning in the ALi 1563 Southbridge driver. - Constified the regmap_config declaration in the i2c-designware driver. - Improved the coding style in the Renesas R-Car driver by removing unnecessary semicolons after brackets. General improvements: - In the OMAP device, replaced NOIRQ_SYSTEM_SLEEP_PM_OPS with RUNTIME_PM_OPS to enable waking up the controller during suspend() before suspend_noirq() kicks in. - Improved logging in the Xilinx driver. - Added a warning (WARN()) in the Renesas R-Car driver for spurious interrupts. DTS Changes: - Removed address-cell and size-cell from the Atmel at91sam, nVidia Tegra 20, and Samsung S3c2410 devices. - Fixed Texas Instruments OMAP4 I2C controller to comply with the i2c-controller.yaml schema. - Improved indentation in DTS examples for several I2C devices. - Converted the NXP LPC1788 binding to the dt-schema. - Added documentation for the compatible string thead,th1520-i2c. - Added the "power-domains" property for the Meson I2C driver.
There's a trivial conflict between "misc" and "vmx" in kvm-x86-ops.h, they both delete ops that happen to be _right_ next to each other. Otherwise, should apply cleanly.
Hi Thomas, please consider pulling the following changes since commit 256abd8e550ce977b728be79a74e1729438b4948: Linux 6.10-rc7 (2024-07-07 14:23:46 -0700) which are available in the Git repository at: https://git.linaro.org/people/daniel.lezcano/linux.git tags/timers-v6.11-rc1 for you to fetch changes up to 4bdc3eaa102b6bedb0800f76f53eca516d5cf20c: clocksource/drivers/realtek: Add timer driver for rtl-otto platforms (2024-07-12 16:07:06 +0200) Thanks -- Daniel - Remove unnecessary local variables initialization as they will be initialized in the code path anyway right after on the ARM arch timer and the ARM global timer (Li kunyu) - Fix a race condition in the interrupt leading to a deadlock on the SH CMT driver. Note that this fix was not tested on the platform using this timer but the fix seems reasonable enough to be picked confidently (Niklas Söderlund) - Increase the rating of the gic-timer and use the configured width clocksource register on the MIPS architecture (Jiaxun Yang) - Add the DT bindings for the TMU on the Renesas platforms (Geert Uytterhoeven) - Add the DT bindings for the SOPHGO SG2002 clint on RiscV (Thomas Bonnefille) - Add the rtl-otto timer driver along with the DT bindings for the Realtek platform (Chris Packham)
/* Summary */ This contains work to make it possible to derive namespace file descriptors from pidfd file descriptors. Right now it is already possible to use a pidfd with setns() to atomically change multiple namespaces at the same time. In other words, it is possible to switch to the namespace context of a process using a pidfd. There is no need to first open namespace file descriptors via procfs. The work included here is an extension of these abilities by allowing to open namespace file descriptors using a pidfd. This means it is now possible to interact with namespaces without ever touching procfs. To this end a new set of ioctls() on pidfds is introduced covering all supported namespace types. /* Testing */ clang: Debian clang version 16.0.6 (26) gcc: (Debian 13.2.0-24) All patches are based on v6.10-rc1 and have been sitting in linux-next. No build failures or warnings were observed. /* Conflicts */ [1]: This contains a merge conflict with the vfs-6.11.misc pull request https://lore.kernel.org/r/20240712-vfs-misc-c1dbbc5eaf82@brauner After conflict resolution the merge diff looks like this: vfs-6.11.pidfs
/* Summary */ This adds ioctls allowing to translate PIDs between PID namespaces. The motivating use-case comes from LXCFS which is a tiny fuse filesystem used to virtualize various aspects of procfs. LXCFS is run on the host. The files and directories it creates can be bind-mounted by e.g. a container at startup and mounted over the various procfs files the container wishes to have virtualized. When e.g. a read request for uptime is received, LXCFS will receive the pid of the reader. In order to virtualize the corresponding read, LXCFS needs to know the pid of the init process of the reader's pid namespace. In order to do this, LXCFS first needs to fork() two helper processes. The first helper process setns() to the readers pid namespace. The second helper process is needed to create a process that is a proper member of the pid namespace. The second helper process then creates a ucred message with ucred.pid set to 1 and sends it back to LXCFS. The kernel will translate the ucred.pid field to the corresponding pid number in LXCFS's pid namespace. This way LXCFS can learn the init pid number of the reader's pid namespace and can go on to virtualize. Since these two forks() are costly LXCFS maintains an init pid cache that caches a given pid for a fixed amount of time. The cache is pruned during new read requests. However, even with the cache the hit of the two forks() is singificant when a very large number of containers are running. So this adds a simple set of ioctls that let's a caller translate PIDs from and into a given PID namespace. This significantly improves performance with a very simple change. To protect against races pidfds can be used to check whether the process is still valid. /* Testing */ clang: Debian clang version 16.0.6 (26) gcc: (Debian 13.2.0-24) All patches are based on v6.10-rc1 and have been sitting in linux-next. No build failures or warnings were observed. /* Conflicts */ [1]: This contains a merge conflict with the vfs-6.11.mount pull request https://lore.kernel.org/r/20240712-vfs-mount-8fd93381a87f@brauner After conflict resolution the merge diff looks like this: vfs-6.11.nsfs
/* Summary */ This contains some minor work for the iomap subsystem: - Add documentaiton on the design of iomap and how to port to it. - Optimize iomap_read_folio(). - Bring back the change to iomap_write_end() to no increase i_size. This is accompanied by a change to xfs to reserve blocks for truncating large realtime inodes to avoid exposing stale data when iomap_write_end() stops increasing i_size. /* Testing */ clang: Debian clang version 16.0.6 (26) gcc: (Debian 13.2.0-24) All patches are based on v6.10-rc4 and have been sitting in linux-next. No build failures or warnings were observed. /* Conflicts */ No known conflicts. vfs-6.11.iomap
/* Summary */ This contains work to extend the abilities of listmount() and statmount() and various fixes and cleanups. Features: - Allow iterating through mounts via listmount() from newest to oldest. This makes it possible for mount(8) to keep iterating the mount table in reverse order so it gets newest mounts first. - Relax permissions on listmount() and statmount(). It's not necessary to have capabilities in the initial namespace. It's sufficient to have capabilities in the owning namespace of the mount namespace we're located in to list unreachable mounts in that namespace. - Extend both listmount() and statmount() to list and stat mounts in foreign mount namespaces. Currently the only way to iterate over mount entries in mount namespaces that aren't in the caller's mount namespace is by crawling through /proc in order to find /proc/<pid>/mountinfo for the relevant mount namespace. This is both very clumsy and hugely inefficient. So extend struct mnt_id_req with a new member that allows to specify the mount namespace id of the mount namespace we want to look at. Luckily internally we already have most of the infrastructure for this so we just need to expose it to userspace. Give userspace a way to retrieve the id of a mount namespace via statmount() and through a new nsfs ioctl() on mount namespace file descriptor. This comes with appropriate selftests. - Expose mount options through statmount(). Currently if userspace wants to get mount options for a mount and with statmount(), they still have to open /proc/<pid>/mountinfo to parse mount options. Simply the information through statmount() directly. Afterwards it's possible to only rely on statmount() and listmount() to retrieve all and more information than /proc/<pid>/mountinfo provides. This comes with appropriate selftests. Fixes: - Avoid copying to userspace under the namespace semaphore in listmount. Cleanups: - Simplify the error handling in listmount by relying on our newly added cleanup infrastructure. - Refuse invalid mount ids early for both listmount and statmount. /* Testing */ clang: Debian clang version 16.0.6 (26) gcc: (Debian 13.2.0-24) All patches are based on v6.10-rc1 and have been sitting in linux-next. No build failures or warnings were observed. /* Conflicts */ No known conflicts. vfs-6.11.mount
/* Summary */ This contains work to allow restricting access to /proc/<pid>/mem. Over the years various exploits started abusing /proc/<pid>/mem (cf. [1] and [2]). Specifically [2] is interesting as it installed an arbitrary payload from noexec storage into a running process and then executed it. That payload itself included an ELF loader to run arbitrary code off of noexec storage. The biggest problem is that /proc/<pid>/mem ignores page permissions by using FOLL_FORCE which was discussed several times on- and off-list. Unfortunately there are various use-cases using /proc/<pid>/mem making it impossible to just turn it off. They at least include PTRACE_POKEDATA and the seccomp notifier which is used to emulate system calls. So give userspace a way to restrict access to /proc/<pid>/mem via kernel command line options. Setting them to "all" restricts access for all processes while "ptracer" will allow access to ptracers: (1) Restrict the use of FOLL_FORCE via proc_mem.restrict_foll_force (2) Restrict opening /proc/<pid>/mem for reading. (3) Restrict opening /proc/<pid>/mem for writing. (4) Restrict writing to /proc/<pid>/mem. --- The level of fine-grained management isn't my favorite as it requires distributions to have some level of knowledge around the implications of FOLL_FORCE and /proc/<pid>/mem access in general. But the use-cases where /proc/<pid>/mem access is needed do already imply a sophisticated knowledge around its implications. Especially when it comes to the seccomp notifier and gdb to inspect or emulate process state. So that ultimately swayed me to accept this. If we need something simpler I'm all ears. /* Testing */ clang: Debian clang version 16.0.6 (26) gcc: (Debian 13.2.0-24) All patches are based on v6.10-rc1 and have been sitting in linux-next. No build failures or warnings were observed. /* Conflicts */ No known conflicts. vfs-6.11.procfs
/* Summary */ This contains smaller performance improvements to inodes and dentries: # inode: - Add rcu based inode lookup variants. They avoid one inode hash lock acquire in the common case thereby significantly reducing contention. We already support RCU-based operations but didn't take advantage of them during inode insertion. Callers of iget_locked() get the improvement without any code changes. Callers that need a custom callback can switch to iget5_locked_rcu() as e.g., did btrfs. With 20 threads each walking a dedicated 1000 dirs * 1000 files directory tree to stat(2) on a 32 core + 24GB ram vm: before: 3.54s user 892.30s system 1966% cpu 45.549 total after: 3.28s user 738.66s system 1955% cpu 37.932 total (-16.7%) Long-term we should pick up the effort to introduce more fine-grained locking and possibly improve on the currently used hash implementation. - Start zeroing i_state in inode_init_always() instead of doing it in individual filesystems. This allows us to remove an unneeded lock acquire in new_inode() and not burden individual filesystems with this. dcache: - Move d_lockref out of the area used by RCU lookup to avoid cacheline ping poing because the embedded name is sharing a cacheline with d_lockref. - Fix dentry size on 32bit with CONFIG_SMP=y so it does actually end up with 128 bytes in total. /* Testing */ clang: Debian clang version 16.0.6 (26) gcc: (Debian 13.2.0-24) All patches are based on v6.10-rc1 and have been sitting in linux-next. No build failures or warnings were observed. /* Conflicts */ Merge conflicts with other trees [1]: linux-next: manual merge of the vfs-brauner tree with the btrfs tree https://lore.kernel.org/linux-next/[email protected] Merge conflicts with mainline This causes a merge conflict with fs/bcachefs/fs.c. The gist is that inode->i_state initialization in __bch2_new_inode() isn't needed anymore after this is merged and that line needs to be deleted from that function. vfs-6.11.inode
/* Summary */ This contains work for the mount api: - Add a generic helper to parse uid and gid mount options. Currently we open-code the same logic in various filesystems which is error prone. Especially since the verification of uid and gid mount options is a sensitive operation in the face of idmappings. Add a generic helper and convert all filesystems over to it. Make sure that filesystems that are mountable in unprivileged containers verify that the specified uid and gid can be represented in the owning namespace of the filesystem. - Convert hostfs to the new mount api. /* Testing */ clang: Debian clang version 16.0.6 (26) gcc: (Debian 13.2.0-24) All patches are based on v6.10-rc1 and have been sitting in linux-next. No build failures or warnings were observed. /* Conflicts */ No known conflicts. vfs-6.11.mount.api
/* Summary */ This contains some work to simplify the handling of casefolded names: - Simplify the handling of casefolded names in f2fs and ext4 by keeping the names as a qstr to avoiding unnecessary conversions. - Introduce a new generic_ci_match() libfs case-insensitive lookup helper and use it in both f2fs and ext4 allowing to remove the filesystem specific implementations. - Remove a bunch of ifdefs by making the unicode built checks part of the code flow. /* Testing */ clang: Debian clang version 16.0.6 (26) gcc: (Debian 13.2.0-24) All patches are based on v6.10-rc1 and have been sitting in linux-next. No build failures or warnings were observed. /* Conflicts */ No known conflicts. vfs-6.11.casefold
/* Summary */ This contains patches to add module descriptions to all modules under fs/ currently lacking them. /* Testing */ clang: Debian clang version 16.0.6 (26) gcc: (Debian 13.2.0-24) All patches are based on v6.10-rc1 and have been sitting in linux-next. No build failures or warnings were observed. /* Conflicts */ No known conflicts. vfs-6.11.module.description
/* Summary */ This contains work to remove almost all remaining users of PG_error from filesystems and filesystem helper libraries. An additional patch will be coming in via the jfs tree which tests the PG_error bit. Afterwards nothing will be testing it anymore and it's safe to remove all places which set or clear the PG_error bit. The goal is to fully remove PG_error by the next merge window. /* Testing */ clang: Debian clang version 16.0.6 (26) gcc: (Debian 13.2.0-24) All patches are based on v6.10-rc1 and have been sitting in linux-next. No build failures or warnings were observed. /* Conflicts */ Merge conflicts with mainline There's one merge conflict in fs/nsfs/symlink.c After conflict resolution the function should look like this: static int nfs_symlink_filler(struct file *file, struct folio *folio) { struct inode *inode = folio->mapping->host; int error; error = NFS_PROTO(inode)->readlink(inode, &folio->page, 0, PAGE_SIZE); folio_end_read(folio, error == 0); return error; } vfs-6.11.pg_error
/* Summary */ Features: - Support passing NULL along AT_EMPTY_PATH for statx(). NULL paths with any flag value other than AT_EMPTY_PATH go the usual route and end up with -EFAULT to retain compatibility (Rust is abusing calls of the sort to detect availability of statx). This avoids path lookup code, lockref management, memory allocation and in case of NULL path userspace memory access (which can be quite expensive with SMAP on x86_64). - Don't block i_writecount during exec. Remove the deny_write_access() mechanism for executables. - Relax open_by_handle_at() permissions in specific cases where we can prove that the caller had sufficient privileges to open a file. - Switch timespec64 fields in struct inode to discrete integers freeing up 4 bytes. Fixes: - Fix false positive circular locking warning in hfsplus. - Initialize hfs_inode_info after hfs_alloc_inode() in hfs. - Avoid accidental overflows in vfs_fallocate(). - Don't interrupt fallocate with EINTR in tmpfs to avoid constantly restarting shmem_fallocate(). - Add missing quote in comment in fs/readdir. Cleanups: - Don't assign and test in an if statement in mqueue. Move the assignment out of the if statement. - Reflow the logic in may_create_in_sticky(). - Remove the usage of the deprecated ida_simple_xx() API from procfs. - Reject FSCONFIG_CMD_CREATE_EXCL requets that depend on the new mount api early. - Rename variables in copy_tree() to make it easier to understand. - Replace WARN(down_read_trylock, ...) abuse with proper asserts in various places in the VFS. - Get rid of user_path_at_empty() and drop the empty argument from getname_flags(). - Check for error while copying and no path in one branch in getname_flags(). - Avoid redundant smp_mb() for THP handling in do_dentry_open(). - Rename parent_ino to d_parent_ino and make it use RCU. - Remove unused header include in fs/readdir. - Export in_group_capable() helper and switch f2fs and fuse over to it instead of open-coding the logic in both places. /* Testing */ clang: Debian clang version 16.0.6 (26) gcc: (Debian 13.2.0-24) All patches are based on v6.10-rc1 and have been sitting in linux-next. No build failures or warnings were observed. /* Conflicts */ Merge conflicts with other trees [1]: linux-next: manual merge of the block tree with the vfs-brauner tree https://lore.kernel.org/linux-next/[email protected] [2]: linux-next: manual merge of the block tree with the vfs-brauner tree https://lore.kernel.org/linux-next/[email protected] vfs-6.11.misc
From: Bartosz Golaszewski <[email protected]> I'm sending this early as this is the initial pull-request for a new driver subsystem living under drivers/power/sequencing/. I'll try to be brief here and allow myself to link the cover letter from the last time the series was sent in its entirety[1] (as opposed to smaller chunks targetting specific maintainers) for a very detailed description of the problem and the solution. I'll just stick to the key points below. This has been in development since last year's Linux Plumbers Conference and was inspired by the need to enable support upstream for Bluetooth/WLAN chips on Qualcomm platforms. The main problem we're fixing is powering up devices which are represented as separate objects in the kernel (binding to different drivers) but which share parts of the power-up sequence and thus need some kind of a mediator who knows the possible interactions and can assure they don't interfere with neither device's bring up. An example of such an inter-driver interaction is the WCN family of BT/WLAN chips from Qualcomm of which some models require the user to observe a certain delay between driving the bt-enable and wlan-enable GPIOs. This is not a new problem but up to this point all attempts at addressing it ended up hitting one wall or another and being dropped. The main obstacle was the fact that most these attempts tried to introduce the concept of a "power sequence" into the device-tree bindings which breaks the main DT rule: describe the hardware, not its behavior. The solution I proposed focuses on making the power sequencer drivers interpret the actual HW description flexibly. More details on that are in the linked cover letter. The second problem fixed here is powering up PCI devices before they are detected on the bus. This is achieved by creating special platform devices for device-tree nodes describing hard-wired PCI devices which bind to the so-called PCI power control drivers which enable required resources and trigger a bus rescan once the controlled device is up then setup the correct devlink hierarchy for power-management. By combining the two new frameworks we implemented the power sequencing PCI power control driver which is capable of powering up the WLAN modules of the QCom WCN family of chipsets. All this has spent a significant amount of time in linux-next and enabled WLAN/BT support on several Qualcomm platforms. To further prove that this is useful and needed: right after this was picked up into next, I was sent a series using the subsystem for a similar use-case on Amlogic platforms[2]. This PR contains the core power sequencing framework, the first driver, PCI changes using the pwrseq library (blessed by Bjorn Helgaas) and some fixes that came later. You'll also see the pwrseq core pulled into the Bluetooth tree to satisfy the build-time dependency on power sequencing in the hci_qca driver which uses the same power sequence provider as the PCI pwrctl driver added in this PR. More changes that don't have build-time dependencies on pwrseq are scattered across three other maintainer trees: there will be DT bindings in the regulator and wireless trees and DTS changes in the arm64 tree. Please consider pulling for v6.11. Best Regards, Bartosz Golaszewski [1] https://lore.kernel.org/all/[email protected]/ [2] https://lore.kernel.org/lkml/[email protected]/ pwrseq updates for v6.11-rc1 - add the pwrseq core framework - add the first power sequencing driver: pwrseq-qcom-wcn - add power control (pwrctl) changes to PCI core - add the first PCI pwrctl power sequencing driver
I'm about to go on holiday for two weeks, so here's an early pull request for 6.11. The biggest part is the virtual CPU hotplug that touches ACPI, irqchip. We also have some GICv3 optimisation for pseudo-NMIs that has been queued via the arm64 tree. Otherwise the usual perf updates, kselftest, various small cleanups. There's a minor conflict currently in -next with the kvmarm tree but it's trivial (in arch/arm64/include/asm/esr.h). I'll check emails occasionally during the merging window but if there's anything urgent, Will can take over. Thanks. arm64 updates for 6.11: * Virtual CPU hotplug support for arm64 ACPI systems * cpufeature infrastructure cleanups and making the FEAT_ECBHB ID bits visible to guests * CPU errata: expand the speculative SSBS workaround to more CPUs * arm64 ACPI: - acpi=nospcr option to disable SPCR as default console for arm64 - Move some ACPI code (cpuidle, FFH) to drivers/acpi/arm64/ * GICv3, use compile-time PMR values: optimise the way regular IRQs are masked/unmasked when GICv3 pseudo-NMIs are used, removing the need for a static key in fast paths by using a priority value chosen dynamically at boot time * arm64 perf updates: - Rework of the IMX PMU driver to enable support for I.MX95 - Enable support for tertiary match groups in the CMN PMU driver - Initial refactoring of the CPU PMU code to prepare for the fixed instruction counter introduced by Arm v9.4 - Add missing PMU driver MODULE_DESCRIPTION() strings - Hook up DT compatibles for recent CPU PMUs * arm64 kselftest updates: - Kernel mode NEON fp-stress - Cleanups, spelling mistakes * arm64 Documentation update with a minor clarification on TBI * Miscellaneous: - Fix missing IPI statistics - Implement raw_smp_processor_id() using thread_info rather than a per-CPU variable (better code generation) - Make MTE checking of in-kernel asynchronous tag faults conditional on KASAN being enabled - Minor cleanups, typos
Hi Thomas, please consider pulling the following changes since commit 746770499be55cf375a108a321a818b238182446: timers/migration: Fix grammar in comment (2024-07-04 20:24:57 +0200) which are available in the Git repository at: https://git.linaro.org/people/daniel.lezcano/linux.git tags/timers-v6.11-rc1 for you to fetch changes up to 8b77f4b8dc81aeb73107b169cb9c6e06c15d297e: clocksource/drivers/realtek: Add timer driver for rtl-otto platforms (2024-07-10 09:41:20 +0200) Thanks -- Daniel - Remove unnecessary local variables initialization as they will be initialized in the code path anyway right after on the ARM arch timer and the ARM global timer (Li kunyu) - Fix a race condition in the interrupt leading to a deadlock on the SH CMT driver. Note that this fix was not tested on the platform using this timer but the fix seems reasonable enough to be picked confidently (Niklas Söderlund) - Increase the rating of the gic-timer and use the configured width clocksource register on the MIPS architecture (Jiaxun Yang) - Add the DT bindings for the TMU on the Renesas platforms (Geert Uytterhoeven) - Add the DT bindings for the SOPHGO SG2002 clint on RiscV (Thomas Bonnefille) - Add the rtl-otto timer driver along with the DT bindings for the Realtek platform (Chris Packham)
LoongArch KVM changes for v6.11 1. Add ParaVirt steal time support. 2. Add some VM migration enhancement. 3. Add perf kvm-stat support for loongarch.
LoongArch KVM changes for v6.11 1. Add ParaVirt steal time support. 2. Add some VM migration enhancement. 3. Add perf kvm-stat support for loongarch.
This is the pull request with interconnect changes for the v6.11-rc1 merge window. It contains some new drivers and bugfixes. As always, the summary is in the signed tag. The patches have been in linux-next for a while. There are no reported issues Thanks, Georgi interconnect changes for 6.11 This pull request contains the interconnect changes for the 6.11-rc1 merge window. It contains just driver changes with the following highlights: Driver changes: - New driver for MediaTek MT8183/8195 platforms - New driver for MSM8953 platforms - New QoS support for RPMh-based platforms with SC7280 being the first one to benefit from it. - Fix incorrect master-id value in qcm2290 driver - Add missing MODULE_DESCRIPTION in a few drivers Signed-off-by: Georgi Djakov <[email protected]>
Hi Rafael, This cpupower second update for Linux 6.11-rc1 consists of -- fix to install cpupower library in standard librray intall location - /usr/lib -- disable direct build of cpupower bench as it can only be built from the cpupower main makefile. diff is attached. thanks, -- Shuah linux-cpupower-6.11-rc1-2 This cpupower second update for Linux 6.11-rc1 consists of -- fix to install cpupower library in standard librray intall location - /usr/lib -- disable direct build of cpupower bench as it can only be built from the cpupower main makefile.
Hi, TI SoC driver updates for v6.11 - Update TISCI protocol URL link which was dead - socinfo: Add j721E SR 2.0 detection support - MAINTAINER list additions: ti,pruss.yaml and ti,j721e-system-controller.y= aml - pm33xx: log statement improvement - knav_qmss: minor data structure optimization
protected-headers="v1" From: Vignesh Raghavendra <[email protected]> To: Olof Johansson <[email protected]>, Arnd Bergmann <[email protected]>, arm-soc <[email protected]>, SoC <[email protected]> Cc: Tero Kristo <[email protected]>, Vignesh Raghavendra <[email protected]>, [email protected], [email protected], Nishanth Menon <[email protected]> Message-ID: <[email protected]> Subject: [GIT PULL 1/2] arm64: dts: ti: K3 devicetree updates for v6.11 --------------Dq2T6pWO0f31Rwc8DO8OhgEL Hi ARM SoC Maintainers, TI K3 device tree updates for v6.11 Generic Fixups/Cleanups: - main_pktdma reg ranges fixes - dtbs_check warning cleanups with addition of cpsw-mac-efuse node and dropping "syscon", "simple-mfd" compatibles in favor of simple-bus - Disable McASP FIFOs across SoCs for better latency - Add memory node to bootloader stage with bootph-all - Restructure am62p and j722s dtsi for share nodes across these SoCs - DT warning fixes around USB type-C connector node (AM62/AM62P) SoC Specific features and Fixes: AM62 - GPMC and ELM addition AM62A - Enable RTC by default - Crypto accelerator support AM64 and AM65 - PRU system event support AM69/J784S4: - CPSW2G and CPSW9G addition with QSGMII and UXSGMII board support - PCIe, USB, McASP, EHRPWM node additions AM67/J722s - Fix to update GPIO count - Add gpio-ranges definition - McASP support for audio - PCIe, USB, Serdes support Board Specific features and fixes: AM62 - am62x-phyboard-lyra carrier board support - am625-verdin: nau8822 PLL support - sk: CMA node addition - lp-sk: NAND expansion card overlay AM62A - New phyboard-lyra-am62ax from phytec - CMA node addition AM64: - phycore-board: PMIC support - hummingbird-t: RS485 RTS pin polarity update - am6xx-phycore-som: overlays for variants w/o SPI, RTC, ETH PHY or w/ QSPI - EVM: GPMC NAND expansion card overlay - EVM: ICSSG ethernet MII mode overlay support - SK: power supply temp sensors support AM68 - SK: PMIC, OSPI J721e - SK: MCAN Support - Overlay for infotainment expansion board AM69/J784S4 - EVM: PCIe RC/EP, USB3, MCAN support - SK: PMIC support
1-Wire bus drivers for v6.11 Just two cleanups for W1 core code.
Hi, If by any chance you can also pick up: https://lore.kernel.org/all/[email protected]/ https://lore.kernel.org/all/[email protected]/ ? I was planning to take them with this pull, but eventually forgot... Best regards, Krzysztof Memory controller drivers for v6.11 Make the Freescale IFC driver selectable because it is used now by two drivers: Freescale NAND and generic NOR flash. The patches adjusting defconfig are waiting on the mailing lists to be picked up.
Samsung SoC clock drivers changes for 6.11 1. exynos-clkout: Remove usage of of_device_id table as .of_match_table, because the driver is instantiated as MFD cell, not as standalone platform driver. Populated .of_match_table confused people few times to convert the code to device_get_match_data(), which broke the driver. 2. Mark one of UFS clocks as critical, because having it off stops the system from shutdown. 3. Cleanup: Use kmemdup_array() when applicable.
i.MX clocks changes for 6.11 - Add reset controller support to audiomix block control - Add CLK_SET_RATE_PARENT flag to all audiomix clocks and to i.MX7D lcdif_pixel_src clock - Fix parent clocks for earc_phy and audpll on i.MX8MP - Fix default parents for enet[12]_ref_sel on i.MX6UL - Add ops in composite 8M and 93 that allow no-op on disable - Add check for PCC present bit on composite 7ULP register - Fix fractional part for fracn-gppll on prepare - Fix clock tree update for TF-A managed clocks on i.MX8M - Drop CLK_SET_PARENT_GATE for DRAM mux on i.MX7D - Add the SAI7 IPG clock for i.MX8MN - Mark the 'nand_usdhc_bus' clock as non-critical on i.MX8MM - Add LVDS bypass clocks on i.MX8QXP - Add muxes for MIPI and PHY ref clocks - Reorder dc0_bypass0_clk, lcd_pxl and dc1_disp clocks on i.MX8QXP - Add 1039.5MHz and 800MHz rates to fracn-gppll table - Add CLK_SET_RATE_PARENT for media_disp pixel clocks on i.MX8QXP - Add some module descriptions to the i.MX generic and the i.MXRT1050 driver. - Fix return value for bypass for composite 7ULP
parameter when OP-TEE is waiting for a notification via RPC. Thanks, Jens optee: add timeout parameter for notification wait
Hi Rafael, This cpupower update for Linux 6.11-rc1 consists of cleanups to man pages, README files, and enhancements to add help to Makefile. diff is attached. thanks, -- Shuah linux-cpupower-6.11-rc1 This cpupower update for Linux 6.11-rc1 consists of cleanups to man pages, README files, and enhancements to add help to Makefile.
Hi Mauro, This vimc update for Linux 6.11-rc1 consists of a nine patch series that cleans up and improves the vimc driver, with the end goal of converting it to the V4L2 subdev active state API. The goal of this exercise is to make the API used by a virtual test driver, to increase test coverage. The series starts with 4 random cleanups, to avoid unnecessary iterations (1/9), constify structures (2/9 and 3/9) and rename a weirdly-named enum (4/9). Patch 5/9 then centralizes the subdev internal_ops initialization to prepare for the switch to the active state API. The remaining patches (6/9 to 9/9) convert the vimc entities to the new API one by one. The result has been tested using the libcamera unit tests, which make extensive use of the vimc driver, as well as with v4l2-compliance. The latter reports 4 errors, but they occur already with the latest stage master branch. diff is attached. thanks, -- Shuah linux-vimc-6.11-rc1 This vimc update for Linux 6.11-rc1 consists of a nine patch series that cleans up and improves the vimc driver, with the end goal of converting it to the V4L2 subdev active state API. The goal of this exercise is to make the API used by a virtual test driver, to increase test coverage. The series starts with 4 random cleanups, to avoid unnecessary iterations (1/9), constify structures (2/9 and 3/9) and rename a weirdly-named enum (4/9). Patch 5/9 then centralizes the subdev internal_ops initialization to prepare for the switch to the active state API. The remaining patches (6/9 to 9/9) convert the vimc entities to the new API one by one. The result has been tested using the libcamera unit tests, which make extensive use of the vimc driver, as well as with v4l2-compliance. The latter reports 4 errors, but they occur already with the latest stage master branch.
SGkgR3JlZyENCg0KUGxlYXNlIHB1bGwgUEVDSSB1cGRhdGUgZm9yIExpbnV4IHY2LjExLg0KDQpU aGFua3MNCi1Jd29uYQ0KDQpUaGUgZm9sbG93aW5nIGNoYW5nZXMgc2luY2UgY29tbWl0IDZiYTU5 ZmY0MjI3OTI3ZDNhODUzMGZjMjk3M2I4MGU5NGI1NGQ1OGY6DQoNCiAgTGludXggNi4xMC1yYzQg KDIwMjQtMDYtMTYgMTM6NDA6MTYgLTA3MDApDQoNCmFyZSBhdmFpbGFibGUgaW4gdGhlIEdpdCBy ZXBvc2l0b3J5IGF0Og0KDQogIGdpdDovL2dpdC5rZXJuZWwub3JnL3B1Yi9zY20vbGludXgva2Vy bmVsL2dpdC9pd2kvbGludXguZ2l0IHBlY2ktbmV4dC02LjExLXJjMQ0KDQpmb3IgeW91IHRvIGZl dGNoIGNoYW5nZXMgdXAgdG8gYWJhNTljZTEwOWRlY2EyYjlhYmViOTA3MmRkY2EwZWE4NjgyYmY1 YToNCg0KICBwZWNpOiBhc3BlZWQ6IENsZWFyIGNsb2NrX2RpdmlkZXIgdmFsdWUgYmVmb3JlIHNl dHRpbmcgaXQgKDIwMjQtMDYtMTcgMTU6MTg6MjkgKzAyMDApDQoNCi0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NClVwZGF0ZSBw ZWNpLW5leHQgZm9yIHY2LjExLXJjMQ0KDQoqIHBlY2ksIGh3bW9uDQotIFVwZGF0ZSBwZWNpIHN1 YnN5c3RlbSB0byB1c2UgbmV3IEludGVsIENQVSBtb2RlbCBkZWZpbmVzLg0KDQoqIGFzcGVlZA0K LSBDbGVhciBjbG9ja19kaXZpZGVyIGJlZm9yZSBzZXR0aW5nIGl0Lg0KDQotLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQpJd29u YSBXaW5pYXJza2EgKDEpOg0KICAgICAgcGVjaTogYXNwZWVkOiBDbGVhciBjbG9ja19kaXZpZGVy IHZhbHVlIGJlZm9yZSBzZXR0aW5nIGl0DQoNClRvbnkgTHVjayAoMSk6DQogICAgICBwZWNpLCBo d21vbjogU3dpdGNoIHRvIG5ldyBJbnRlbCBDUFUgbW9kZWwgZGVmaW5lcw0KDQogZHJpdmVycy9o d21vbi9wZWNpL2NwdXRlbXAuYyAgICAgICAgICB8ICA4ICsrKystLS0tDQogZHJpdmVycy9wZWNp L2NvbnRyb2xsZXIvcGVjaS1hc3BlZWQuYyB8ICAxICsNCiBkcml2ZXJzL3BlY2kvY29yZS5jICAg ICAgICAgICAgICAgICAgIHwgIDUgKystLS0NCiBkcml2ZXJzL3BlY2kvY3B1LmMgICAgICAgICAg ICAgICAgICAgIHwgMjEgKysrKysrKy0tLS0tLS0tLS0tLS0tDQogZHJpdmVycy9wZWNpL2Rldmlj ZS5jICAgICAgICAgICAgICAgICB8ICAzICstLQ0KIGRyaXZlcnMvcGVjaS9pbnRlcm5hbC5oICAg ICAgICAgICAgICAgfCAgNiArKy0tLS0NCiBpbmNsdWRlL2xpbnV4L3BlY2ktY3B1LmggICAgICAg ICAgICAgIHwgMjQgKysrKysrKysrKysrKysrKysrKysrKysrDQogaW5jbHVkZS9saW51eC9wZWNp LmggICAgICAgICAgICAgICAgICB8ICA2ICsrLS0tLQ0KIDggZmlsZXMgY2hhbmdlZCwgNDMgaW5z ZXJ0aW9ucygrKSwgMzEgZGVsZXRpb25zKC0pDQo=
From: Bartosz Golaszewski <[email protected]> Hi Marcel, Luiz, before applying the hci_qca patches I sent separately. Link: https://lore.kernel.org/linux-kernel/20240605174713.GA767261@bhelgaas/T/ Initial implementation of the power sequencing subsystem for linux v6.11