Commit Graph

152 Commits

Author SHA1 Message Date
Ivaylo Georgiev
fd88580ed5 Merge keystone/android12-5.10-keystone-qcom-release.32+ (0fad51f) into msm-5.10
* refs/heads/tmp-0fad51f:
  ANDROID: sched: Add vendor hooks for update_load_avg
  ANDROID: Update ABI with __traceiter_*() additions
  ANDROID: Update the cf symbol list
  ANDROID: Update the qcom symbol list
  ANDROID: Update the hikey960 symbol list
  ANDROID: Update the generic symbol list
  ANDROID: Update the exynos symbol list
  ANDROID: Update the db845c symbol list
  UPSTREAM: arm64: Move PSTATE.TCO setting to separate functions
  FROMGIT: kasan: Add report for async mode
  FROMGIT: arm64: mte: Drop arch_enable_tagging()
  ANDROID: GKI: 4/23 KMI update
  FROMGIT: kasan: Add KASAN mode kernel parameter
  FROMGIT: arm64: mte: Add asynchronous mode support
  ANDROID: GKI: update ABI description
  FROMLIST: remoteproc: core: Move cdev add before device add
  ANDROID: mm: allow vmas with vm_ops to be speculatively handled
  ANDROID: sched: Add ANDROID_OEM_DATA_ARRAY in user_struct.
  ANDROID: sched: Add vendor hooks for sched.
  ANDROID: sched: Add vendor hooks to compute new cpu freq.
  Revert "Revert "net: xfrm: Localize sequence counter per network namespace""
  FROMGIT: usb: typec: tcpm: Allow slow charging loops to comply to pSnkStby
  FROMGIT: usb: dwc3: gadget: Check for disabled LPM quirk
  ANDROID: GKI: arm64: reserve space in cpu_hwcaps and cpu_hwcap_keys arrays
  FROMLIST: export: Make CRCs robust to symbol trimming
  ANDROID: Kconfig.gki Add SND_SOC_TOPOLOGY
  ANDROID: GKI: Change UCLAMP_BUCKETS_COUNT to 20
  FROMGIT: ASoC: soc-component: Add snd_soc_pcm_component_ack
  UPSTREAM: ASoC: dmaengine_pcm: add peripheral configuration
  UPSTREAM: dmaengine: add peripheral configuration
  UPSTREAM: PM: domains: use device's next wakeup to determine domain idle state
  UPSTREAM: PM: domains: inform PM domain of a device's next wakeup
  Revert "FROMLIST: PM / Domains: add domain feature flag for next wakeup"
  Revert "FROMLIST: PM / domains: inform PM domain of a device's next wakeup"
  Revert "FROMLIST: PM / Domains: use device's next wakeup to determine domain idle state"
  FROMGIT: mm: cma: add the CMA instance name to cma trace events
  FROMGIT: mm: cma: Add the CMA instance name to the cma_alloc_start trace event
  FROMGIT: mm: cma: add trace events for CMA alloc perf testing
  ANDROID: mm: compaction: fix isolate_and_split_free_page() redefinition
  ANDROID: vendor_hooks: Fix build-break due to psi_event
  ANDROID: GKI: Update abi_gki_aarch64_qcom list for kprobe module
  ANDROID: GKI: Enable CONFIG_HIST_TRIGGERS
  FROMGIT: tick/broadcast: Allow late registered device to enter oneshot mode
  UPSTREAM: arm64: uaccess: split user/kernel routines
  UPSTREAM: arm64: uaccess: refactor __{get,put}_user
  BACKPORT: arm64: uaccess: rename privileged uaccess routines
  ANDROID: Incremental fs: Add INCFS_IOC_GET_LAST_READ_ERROR
  ANDROID: Incremental fs: Fix INCFS_MAGIC_NUMBER casts
  ANDROID: Incremental fs: Add status to sysfs
  ANDROID: Incremental fs: fix u64 integer cast to pointer
  ANDROID: Incremental fs: stat should return actual used blocks
  ANDROID: Incremental fs: Add FS_IOC_READ_VERITY_METADATA
  ANDROID: export find_user() & free_uid()for GKI purpose.
  ANDROID: GKI: update ABI description
  ANDROID: GKI: Update abi_gki_aarch64_qcom for kgsl AO tracing support
  ANDROID: ABI: update symbols to unisoc whitelist for the fifth time
  ANDROID: sched: Add vendor hooks for cpu affinity.
  ANDROID: GKI: Update abi_gki_aarch64_qcom list for reverse migration
  ANDROID: abi_gki_aarch64_generic: Add a few more symbols
  FROMGIT: usb: dwc3: gadget: Remove FS bInterval_m1 limitation
  ANDROID: abi_gki_aarch64_qcom: Add __bitmap_or
  ANDROID: GKI: Update abi_gki_aarch64_qcom for gpio block read tracepoint
  FROMGIT: dt-bindings: connector: Add slow-charger-loop definition
  FROMGIT: usb: dwc3: gadget: Fix START_TRANSFER link state check
  FROMGIT: usb: gadget: Fix double free of device descriptor pointers
  FROMGIT: usb: typec: tcpm: Fix error while calculating PPS out values
  ANDROID: inline isolate_and_split_free_page
  ANDROID: kernel: clear debug_kinfo precisely
  ANDROID: cgroup: Add vendor hook for cpuset.
  ANDROID: GKI: Update abi_gki_aarch64_qcom for PSI tracepoints
  ANDROID: psi: Add vendor hooks for PSI tracing
  Linux 5.10.32
  net: phy: marvell: fix detection of PHY on Topaz switches
  bpf: Move sanitize_val_alu out of op switch
  bpf: Improve verifier error messages for users
  bpf: Rework ptr_limit into alu_limit and add common error path
  arm64: mte: Ensure TIF_MTE_ASYNC_FAULT is set atomically
  ARM: 9071/1: uprobes: Don't hook on thumb instructions
  bpf: Move off_reg into sanitize_ptr_alu
  bpf: Ensure off_reg has no mixed signed bounds for all types
  r8169: don't advertise pause in jumbo mode
  r8169: tweak max read request size for newer chips also in jumbo mtu mode
  KVM: VMX: Don't use vcpu->run->internal.ndata as an array index
  KVM: VMX: Convert vcpu_vmx.exit_reason to a union
  bpf: Use correct permission flag for mixed signed bounds arithmetic
  arm64: dts: allwinner: h6: beelink-gs1: Remove ext. 32 kHz osc reference
  arm64: dts: allwinner: Fix SD card CD GPIO for SOPine systems
  ARM: OMAP2+: Fix uninitialized sr_inst
  ARM: footbridge: fix PCI interrupt mapping
  ARM: 9069/1: NOMMU: Fix conversion for_each_membock() to for_each_mem_range()
  ARM: OMAP2+: Fix warning for omap_init_time_of()
  gro: ensure frag0 meets IP header alignment
  ch_ktls: do not send snd_una update to TCB in middle
  ch_ktls: tcb close causes tls connection failure
  ch_ktls: fix device connection close
  ch_ktls: Fix kernel panic
  ibmvnic: remove duplicate napi_schedule call in open function
  ibmvnic: remove duplicate napi_schedule call in do_reset function
  ibmvnic: avoid calling napi_disable() twice
  ia64: tools: remove inclusion of ia64-specific version of errno.h header
  ia64: remove duplicate entries in generic_defconfig
  ethtool: pause: make sure we init driver stats
  i40e: fix the panic when running bpf in xdpdrv mode
  net: Make tcp_allowed_congestion_control readonly in non-init netns
  mm: ptdump: fix build failure
  net: ip6_tunnel: Unregister catch-all devices
  net: sit: Unregister catch-all devices
  net: davicom: Fix regulator not turned off on failed probe
  net/mlx5e: Fix setting of RS FEC mode
  netfilter: nft_limit: avoid possible divide error in nft_limit_init
  net/mlx5e: fix ingress_ifindex check in mlx5e_flower_parse_meta
  net: macb: fix the restore of cmp registers
  libbpf: Fix potential NULL pointer dereference
  netfilter: arp_tables: add pre_exit hook for table unregister
  netfilter: bridge: add pre_exit hooks for ebtable unregistration
  libnvdimm/region: Fix nvdimm_has_flush() to handle ND_REGION_ASYNC
  ice: Fix potential infinite loop when using u8 loop counter
  netfilter: conntrack: do not print icmpv6 as unknown via /proc
  netfilter: flowtable: fix NAT IPv6 offload mangling
  ixgbe: fix unbalanced device enable/disable in suspend/resume
  scsi: libsas: Reset num_scatter if libata marks qc as NODATA
  riscv: Fix spelling mistake "SPARSEMEM" to "SPARSMEM"
  vfio/pci: Add missing range check in vfio_pci_mmap
  arm64: alternatives: Move length validation in alternative_{insn, endif}
  arm64: fix inline asm in load_unaligned_zeropad()
  readdir: make sure to verify directory entry for legacy interfaces too
  dm verity fec: fix misaligned RS roots IO
  HID: wacom: set EV_KEY and EV_ABS only for non-HID_GENERIC type of devices
  Input: i8042 - fix Pegatron C15B ID entry
  Input: s6sy761 - fix coordinate read bit shift
  lib: fix kconfig dependency on ARCH_WANT_FRAME_POINTERS
  virt_wifi: Return micros for BSS TSF values
  mac80211: clear sta->fast_rx when STA removed from 4-addr VLAN
  pcnet32: Use pci_resource_len to validate PCI resource
  net: ieee802154: forbid monitor for add llsec seclevel
  net: ieee802154: stop dump llsec seclevels for monitors
  net: ieee802154: forbid monitor for del llsec devkey
  net: ieee802154: forbid monitor for add llsec devkey
  net: ieee802154: stop dump llsec devkeys for monitors
  net: ieee802154: forbid monitor for del llsec dev
  net: ieee802154: forbid monitor for add llsec dev
  net: ieee802154: stop dump llsec devs for monitors
  net: ieee802154: forbid monitor for del llsec key
  net: ieee802154: forbid monitor for add llsec key
  net: ieee802154: stop dump llsec keys for monitors
  iwlwifi: add support for Qu with AX201 device
  scsi: scsi_transport_srp: Don't block target in SRP_PORT_LOST state
  ASoC: fsl_esai: Fix TDM slot setup for I2S mode
  drm/msm: Fix a5xx/a6xx timestamps
  ARM: omap1: fix building with clang IAS
  ARM: keystone: fix integer overflow warning
  neighbour: Disregard DEAD dst in neigh_update
  gpu/xen: Fix a use after free in xen_drm_drv_init
  ASoC: max98373: Added 30ms turn on/off time delay
  ASoC: max98373: Changed amp shutdown register as volatile
  xfrm: BEET mode doesn't support fragments for inner packets
  iwlwifi: Fix softirq/hardirq disabling in iwl_pcie_enqueue_hcmd()
  arc: kernel: Return -EFAULT if copy_to_user() fails
  lockdep: Add a missing initialization hint to the "INFO: Trying to register non-static key" message
  ARM: dts: Fix moving mmc devices with aliases for omap4 & 5
  ARM: dts: Drop duplicate sha2md5_fck to fix clk_disable race
  ACPI: x86: Call acpi_boot_table_init() after acpi_table_upgrade()
  dmaengine: idxd: fix wq cleanup of WQCFG registers
  dmaengine: plx_dma: add a missing put_device() on error path
  dmaengine: Fix a double free in dma_async_device_register
  dmaengine: dw: Make it dependent to HAS_IOMEM
  dmaengine: idxd: fix wq size store permission state
  dmaengine: idxd: fix opcap sysfs attribute output
  dmaengine: idxd: fix delta_rec and crc size field for completion record
  dmaengine: idxd: Fix clobbering of SWERR overflow bit on writeback
  gpio: sysfs: Obey valid_mask
  Input: nspire-keypad - enable interrupts only when opened
  mtd: rawnand: mtk: Fix WAITRDY break condition and timeout
  net/sctp: fix race condition in sctp_destroy_sock
  ANDROID: abi_gki_aarch64_qcom: Add android_rvh_sched_setaffinity
  ANDROID: gki_defconfig: temporarily disable KFENCE in GKI
  ANDROID: GKI: Update abi_gki_aarch64_qcom list for minidump
  ANDROID: implement wrapper for reverse migration
  ANDROID: cpuidle: enable TEO and MENU governors in gki_defconfig
  ANDROID: abi_gki_aarch64_qcom: Update symbol list
  ANDROID: clang: update to 12.0.5
  ANDROID: Add initial Exynos symbol list

Conflicts:
	Documentation/devicetree/bindings
	Documentation/devicetree/bindings/connector/usb-connector.yaml
	include/linux/pm_domain.h

Change-Id: I5701e429fa31cfb870b758f09af62b9bdad0fac9
Signed-off-by: Ivaylo Georgiev <irgeorgiev@codeaurora.org>
2021-04-29 21:38:09 -07:00
Lina Iyer
fb8304fcb8 UPSTREAM: PM: domains: use device's next wakeup to determine domain idle state
Currently, a PM domain's idle state is determined based on whether the
QoS requirements are met. However, even entering an idle state may waste
power if the minimum residency requirements aren't fulfilled.

CPU PM domains use the next timer wakeup for the CPUs in the domain to
determine the sleep duration of the domain. This is compared with the
idle state residencies to determine the optimal idle state. For other PM
domains, determining the sleep length is not that straight forward. But
if the device's next_event is available, we can use that to determine
the sleep duration of the PM domain.

Let's update the domain governor logic to check for idle state residency
based on the next wakeup of devices as well as QoS constraints. But
since, not all domains may contain devices capable of specifying the
next wakeup, let's enable this additional check only if specified by the
domain's flags when initializing the domain.

Signed-off-by: Lina Iyer <ilina@codeaurora.org>
Reviewed-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
(cherry picked from commit c79aa080fb0f60a0e24c87014dc9c2f373e1379b)
Bug: 170654157
Signed-off-by: Carlos Llamas <cmllamas@google.com>
Change-Id: I70714c4d5840034771b2b4a6b1d38eb4c73d1f85
2021-04-23 18:42:36 -07:00
Lina Iyer
e049d04424 UPSTREAM: PM: domains: inform PM domain of a device's next wakeup
Some devices may have a predictable interrupt pattern while executing
usecases. An example would be the VSYNC interrupt associated with
display devices. A 60 Hz display could cause a interrupt every 16 ms. If
the device were in a PM domain, the domain would need to be powered up
for device to resume and handle the interrupt.

Entering a domain idle state saves power, only if the residency of the
idle state is met. Without knowing the idle duration of the domain, the
governor would just choose the deepest idle state that matches the QoS
requirements. The domain might be powered off just as the device is
expecting to wake up. If devices could inform PM frameworks of their
next event, the parent PM domain's idle duration can be determined.

So let's add the dev_pm_genpd_set_next_wakeup() API for the device to
inform PM domains of the impending wakeup. This information will be the
domain governor to determine the best idle state given the wakeup.

Signed-off-by: Lina Iyer <ilina@codeaurora.org>
Reviewed-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
(cherry picked from commit 67e3242ee28052daa90e1fa193efc601939fde58)
Bug: 170654157
Signed-off-by: Carlos Llamas <cmllamas@google.com>
Change-Id: Id0b4c3a3d0f6223a24d94ae953777ff8c8f160f3
2021-04-23 18:42:36 -07:00
Carlos Llamas
98de9de261 Revert "FROMLIST: PM / Domains: add domain feature flag for next wakeup"
This reverts commit e6c313525b.

Drop [v6] patches in favor of upstream backports.

Bug: 170654157
Signed-off-by: Carlos Llamas <cmllamas@google.com>
Change-Id: Iafa2cb1397ff033efe1c6d1c963e58d0478eed23
2021-04-23 18:42:36 -07:00
Carlos Llamas
14f2208945 Revert "FROMLIST: PM / domains: inform PM domain of a device's next wakeup"
This reverts commit 7a9d53c2ea.

Drop [v6] patches in favor of upstream backports.

Bug: 170654157
Signed-off-by: Carlos Llamas <cmllamas@google.com>
Change-Id: I1ed4debfe724940b4c11c18f87ef97d046975918
2021-04-23 18:42:36 -07:00
Carlos Llamas
f316415fb2 Revert "FROMLIST: PM / Domains: use device's next wakeup to determine domain idle state"
This reverts commit 283e327164.

Drop [v6] patches in favor of upstream backports.

Bug: 170654157
Signed-off-by: Carlos Llamas <cmllamas@google.com>
Change-Id: I82b8117cc6c6bf6b28af666f34257775ade428fa
2021-04-23 18:42:36 -07:00
Ivaylo Georgiev
642de2eea2 Merge android12-5.10.1+ (ec1fff1) into msm-5.10
* refs/heads/tmp-ec1fff1:
  ANDROID: enable assymetric aarch32 for 32 bit app support
  ANDROID: GKI: Export memblock_free to drivers
  ANDROID: arch_topology: Export thermal pressure symbol
  ANDROID: softirq: Export irq_handler_entry tracepoint
  ANDROID: sched: Export sched_switch tracepoint symbol
  Revert "ANDROID: GKI: Enable CONFIG_USB_XHCI_HCD"
  UPSTREAM: binder: add flag to clear buffer on txn complete
  Revert "ANDROID: db845c_gki.fragment: Drop CONFIG_USB_DWC3 from config frament"
  Revert "ANDROID: GKI: enable CONFIG_USB_DWC3 to be build in"
  FROMGIT: dt-bindings: arm-smmu: Add compatible string for Adreno GPU SMMU
  FROMGIT: iommu/arm-smmu-qcom: Add implementation for the adreno GPU SMMU
  ANDROID: GKI: Unhide VIRTIO_DMA_SHARED_BUFFER
  ANDROID: Disable dynamic ftrace for allmodconfig builds
  FROMLIST: x86, build: allow LTO to be selected
  FROMLIST: x86, vdso: disable LTO only for vDSO
  FROMLIST: kbuild: lto: postpone objtool
  FROMLIST: objtool: Split noinstr validation from --vmlinux
  FROMLIST: x86, build: use objtool mcount
  FROMLIST: tracing: add support for objtool mcount
  FROMLIST: objtool: Don't autodetect vmlinux.o
  ANDROID: objtool: Fix __mcount_loc generation with Clang's assembler
  FROMLIST: objtool: Add a pass for generating __mcount_loc
  FROMLIST: arm64: allow LTO to be selected
  FROMLIST: arm64: disable recordmcount with DYNAMIC_FTRACE_WITH_REGS
  FROMLIST: arm64: vdso: disable LTO
  FROMLIST: drivers/misc/lkdtm: disable LTO for rodata.o
  FROMLIST: efi/libstub: disable LTO
  FROMLIST: scripts/mod: disable LTO for empty.c
  FROMLIST: modpost: lto: strip .lto from module names
  FROMLIST: PCI: Fix PREL32 relocations for LTO
  FROMLIST: init: lto: fix PREL32 relocations
  FROMLIST: init: lto: ensure initcall ordering
  FROMLIST: kbuild: lto: add a default list of used symbols
  FROMLIST: kbuild: lto: merge module sections
  FROMLIST: kbuild: lto: limit inlining
  FROMLIST: kbuild: lto: fix module versioning
  FROMLIST: kbuild: add support for Clang LTO
  FROMLIST: tracing: move function tracer options to Kconfig
  UPSTREAM: arm64/mm: add fallback option to allocate virtually contiguous memory
  ANDROID: add initial symbol list for cuttlefish
  ANDROID: add initial symbol list for db845c
  ANDROID: create initial symbol lists for android12-5.10
  ANDROID: binder: Export binder_transaction_received trace point
  ANDROID: binder: consolidate wakeup vendor hooks into one
  ANDROID: GKI: Drop CONFIG_LOCALVERSION on 5.10
  ANDROID: usb: typec: tcpm: Add a helper function to port is toggling
  ANDROID: disable BTF generation
  FROMLIST: dma-buf: system_heap: Add a system-uncached heap re-using the system heap
  FROMLIST: dma-buf: dma-heap: Keep track of the heap device struct
  Linux 5.10.1
  Revert "dm raid: fix discard limits for raid1 and raid10"
  Revert "md: change mddev 'chunk_sectors' from int to unsigned"
  ANDROID: GKI: remove lockup detection configs
  ANDROID: tty: hvc_dcc: Save irq flags when locking
  ANDROID: sched: Export sched_setattr_nocheck
  ANDROID: sched/fair: fix place_entity() vendor hook
  ANDROID: sched/fair: export sysctl_sched_latency symbol
  FROMLIST: PM / Domains: use device's next wakeup to determine domain idle state
  FROMLIST: PM / domains: inform PM domain of a device's next wakeup
  FROMLIST: PM / Domains: add domain feature flag for next wakeup
  ANDROID: sched: Export key used by module
  ANDROID: cgroup: Export functions used by modules
  ANDROID: build.config: set branch to android12-5.10
  Linux 5.10
  FROMGIT: cpuidle: psci: Enable suspend-to-idle for PSCI OSI mode
  FROMGIT: PM: domains: Enable dev_pm_genpd_suspend|resume() for suspend-to-idle
  FROMGIT: PM: domains: Rename pm_genpd_syscore_poweroff|poweron()
  md: change mddev 'chunk_sectors' from int to unsigned
  x86/kprobes: Fix optprobe to detect INT3 padding correctly
  Input: goodix - add upside-down quirk for Teclast X98 Pro tablet
  tools/kvm_stat: Exempt time-based counters
  KVM: mmu: Fix SPTE encoding of MMIO generation upper half
  bpf: Fix enum names for bpf_this_cpu_ptr() and bpf_per_cpu_ptr() helpers
  mm/hugetlb: clear compound_nr before freeing gigantic pages
  kasan: fix object remaining in offline per-cpu quarantine
  elfcore: fix building with clang
  initramfs: fix clang build failure
  kbuild: avoid static_assert for genksyms
  selftest/fpu: avoid clang warning
  proc: use untagged_addr() for pagemap_read addresses
  revert "mm/filemap: add static for function __add_to_page_cache_locked"
  Input: cm109 - do not stomp on control URB
  ANDROID: configs: GKI: disable ARMv8.3 PAC
  mtd: rawnand: xway: Do not force a particular software ECC engine
  mtd: rawnand: socrates: Do not force a particular software ECC engine
  mtd: rawnand: plat_nand: Do not force a particular software ECC engine
  mtd: rawnand: pasemi: Do not force a particular software ECC engine
  mtd: rawnand: orion: Do not force a particular software ECC engine
  mtd: rawnand: mpc5121: Do not force a particular software ECC engine
  mtd: rawnand: gpio: Do not force a particular software ECC engine
  mtd: rawnand: au1550: Do not force a particular software ECC engine
  mtd: rawnand: ams-delta: Do not force a particular software ECC engine
  Revert "scsi: storvsc: Validate length of incoming packet in storvsc_on_channel_callback()"
  FROMGIT: usb: typec: tcpci: Enable bleed discharge when auto discharge is enabled
  FROMGIT: usb: typec: Add class for plug alt mode device
  FROMGIT: USB: typec: tcpci: Add Bleed discharge to POWER_CONTROL definition
  FROMGIT: USB: typec: tcpm: Add a 30ms room for tPSSourceOn in PR_SWAP
  FROMGIT: USB: typec: tcpm: Fix PR_SWAP error handling
  FROMGIT: USB: typec: tcpm: Hard Reset after not receiving a Request
  RISC-V: Define get_cycles64() regardless of M-mode
  drm/i915/display: Go softly softly on initial modeset failure
  ANDROID: dm: dm-user: New target that proxies BIOs to userspace
  ANDROID: uapi: Add dm-user structure definition
  x86/apic/vector: Fix ordering in vector assignment
  NFS: Disable READ_PLUS by default
  NFSv4.2: Fix 5 seconds delay when doing inter server copy
  NFS: Fix rpcrdma_inline_fixup() crash with new LISTXATTRS operation
  ANDROID: x86: configs: gki: add missing CONFIG_BLK_CGROUP
  selftests: fix poll error in udpgro.sh
  selftests/bpf: Fix "dubious pointer arithmetic" test
  selftests/bpf: Fix array access with signed variable test
  selftests/bpf: Add test for signed 32-bit bound check bug
  bpf: Fix propagation of 32-bit signed bounds from 64-bit bounds.
  ANDROID: Incremental fs: Set credentials before reading/writing
  ANDROID: Incremental fs: Fix incfs_test use of atol, open
  ANDROID: Incremental fs: Change per UID timeouts to microseconds
  ANDROID: Incremental fs: Add v2 feature flag
  ANDROID: Incremental fs: Add zstd feature flag
  ANDROID: sched: Add rvh for cpu controller cgroup attach
  x86/resctrl: Fix incorrect local bandwidth when mba_sc is enabled
  FROMGIT: usb: typec: intel_pmc_mux: Configure cable generation value for USB4
  ANDROID: sched: Fix sched_cpu_drain CONFIG_HOTPLUG_CPU dependence
  x86/mm/mem_encrypt: Fix definition of PMD_FLAGS_DEC_WP
  ANDROID: db845c_gki.fragment: Drop CONFIG_USB_DWC3 from config frament
  zonefs: fix page reference and BIO leak
  Input: i8042 - add Acer laptops to the i8042 reset list
  Revert "md: add md_submit_discard_bio() for submitting discard bio"
  Revert "md/raid10: extend r10bio devs to raid disks"
  Revert "md/raid10: pull codes that wait for blocked dev into one function"
  Revert "md/raid10: improve raid10 discard request"
  Revert "md/raid10: improve discard request for far layout"
  Revert "dm raid: remove unnecessary discard limits for raid10"
  MAINTAINERS: Add entry for Marvell Prestera Ethernet Switch driver
  net: sched: Fix dump of MPLS_OPT_LSE_LABEL attribute in cls_flower
  drm/amd/pm: typo fix (CUSTOM -> COMPUTE)
  Input: cros_ec_keyb - send 'scancodes' in addition to key events
  ANDROID: Revert "GKI: build in a kernel command line of "rw""
  net/mlx4_en: Handle TX error CQE
  net/mlx4_en: Avoid scheduling restart task if it is already running
  BACKPORT: dma-buf: system_heap: Allocate higher order pages if available
  BACKPORT: dma-buf: heaps: Skip sync if not mapped
  BACKPORT: dma-buf: heaps: Remove heap-helpers code
  BACKPORT: dma-buf: heaps: Move heap-helper logic into the cma_heap implementation
  BACKPORT: dma-buf: system_heap: Rework system heap to use sgtables instead of pagelists
  tcp: fix cwnd-limited bug for TSO deferral where we send nothing
  net: flow_offload: Fix memory leak for indirect flow block
  tcp: Retain ECT bits for tos reflection
  ethtool: fix stack overflow in ethnl_parse_bitset()
  e1000e: fix S0ix flow to allow S0i3.2 subset entry
  ice: avoid premature Rx buffer reuse
  ixgbe: avoid premature Rx buffer reuse
  i40e: avoid premature Rx buffer reuse
  igb: avoid transmit queue timeout in xdp path
  igb: use xdp_do_flush
  igb: skb add metasize for xdp
  igb: XDP extack message on error
  igb: take VLAN double header into account
  igb: XDP xmit back fix error code
  Revert "geneve: pull IP header before ECN decapsulation"
  firmware: xilinx: Mark pm_api_features_map with static keyword
  ARM: dts: mmp2-olpc-xo-1-75: clear the warnings when make dtbs
  RDMA/cm: Fix an attempt to use non-valid pointer when cleaning timewait
  FROMGIT: usb: typec: tcpci_maxim: Enable VSAFE0V signalling
  FROMGIT: scsi: ufs: Print host regs in IRQ handler when AH8 error happens
  BACKPORT: FROMGIT: scsi: ufs: Fix a race condition between ufshcd_abort() and eh_work()
  FROMGIT: scsi: ufs: Serialize eh_work with system PM events and async scan
  ANDROID: GKI: enable CONFIG_USB_DWC3 to be build in
  can: isotp: isotp_setsockopt(): block setsockopt on bound sockets
  selftests/bpf/test_offload.py: Filter bpftool internal map when counting maps
  selftests/bpf/test_offload.py: Reset ethtool features after failed setting
  selftests/bpf/test_offload.py: Fix expected case of extack messages
  selftests/bpf/test_offload.py: Only check verifier log on verification fails
  netdevsim: Add debugfs toggle to reject BPF programs in verifier
  selftests/bpf/test_offload.py: Remove check for program load flags match
  xdp: Remove the xdp_attachment_flags_ok() callback
  drm/amdgpu: Initialise drm_gem_object_funcs for imported BOs
  drm/amdgpu: fix size calculation with stolen vga memory
  drm/amd/pm: update smu10.h WORKLOAD_PPLIB setting for raven
  drm/amdkfd: Fix leak in dmabuf import
  drm/amdgpu: fix sdma instance fw version and feature version init
  drm/amd/display: Add wm table for Renoir
  drm/amd/display: Prevent bandwidth overflow
  drm/amdgpu: fix debugfs creation/removal, again
  drm/amdgpu/disply: set num_crtc earlier
  FROMGIT: usb: typec: tcpci: Add support to report vSafe0V
  FROMGIT: usb: typec: tcpm: Introduce vsafe0v for vbus
  FROMGIT: usb: typec: tcpm: Clear send_discover in tcpm_check_send_discover
  FROMGIT: usb: typec: tcpm: Pass down negotiated rev to update retry count
  FROMGIT: usb: typec: intel_pmc_mux: Use correct response message bits
  netfilter: nft_ct: Remove confirmation check for NFT_CT_ID
  xen: don't use page->lru for ZONE_DEVICE memory
  xen: add helpers for caching grant mapping pages
  gpio: eic-sprd: break loop when getting NULL device resource
  membarrier: Execute SYNC_CORE on the calling thread
  membarrier: Explicitly sync remote cores when SYNC_CORE is requested
  membarrier: Add an actual barrier before rseq_preempt()
  x86/membarrier: Get rid of a dubious optimization
  pinctrl: intel: Actually disable Tx and Rx buffers on GPIO request
  mm/madvise: remove racy mm ownership check
  drm/amdgpu/powerplay: parse fan table for CI asics
  bpf, doc: Update KP's email in MAINTAINERS
  FROMGIT: f2fs: fix race of pending_pages in decompression
  tcp: select sane initial rcvq_space.space for big MSS
  net: ll_temac: Fix potential NULL dereference in temac_probe()
  afs: Fix memory leak when mounting with multiple source parameters
  net: tipc: prevent possible null deref of link
  ANDROID: x86: entry: fix LSL open coding
  Revert "scsi: megaraid_sas: Added support for shared host tagset for cpuhotplug"
  net: stmmac: overwrite the dma_cap.addr64 according to HW design
  net: stmmac: delete the eee_ctrl_timer after napi disabled
  net: stmmac: free tx skb buffer in stmmac_resume()
  net: stmmac: start phylink instance before stmmac_hw_setup()
  net: stmmac: increase the timeout for dma reset
  [regression fix] really dumb fuckup in sparc64 __csum_partial_copy() changes
  netfilter: nftables: comment indirect serialization of commit_mutex with rtnl_mutex
  netfilter: nft_dynset: fix timeouts later than 23 days
  bonding: fix feature flag setting at init time
  Revert "cgroup/cpuset: Convert cpuset_mutex to percpu_rwsem"
  ANDROID: cpu/hotplug: vendor hook for resume cpus
  ANDROID: cpu/hotplug: rebuild sched domains immediately
  ANDROID: cpu/hotplug: add migration to paused_cpus
  ANDROID: cpu/hotplug: add pause/resume_cpus interface
  ANDROID: cpu/hotplug: protect _cpu_down against partial HP
  ANDROID: cgroup/cpuset: rely on active_mask for guaranteed online CPU
  ANDROID: sched/fair: update_max_interval() active_mask dependant
  ANDROID: sched/rt: cpu_active_mask intersection
  ANDROID: stop_machine: stop_one_cpu_async
  io_uring: fix file leak on error path of io ctx creation
  tools/bpftool: Fix PID fetching with a lot of results
  drm/i915/gt: Declare gen9 has 64 mocs entries!
  drm/i915/display/dp: Compute the correct slice count for VDSC on DP
  drm/i915: fix size_t greater or equal to zero comparison
  drm/i915/gt: Cancel the preemption timeout on responding to it
  drm/i915/gt: Ignore repeated attempts to suspend request flow across reset
  drm/i915/gem: Propagate error from cancelled submit due to context closure
  drm/i915/gem: Check the correct variable in selftest
  netfilter: x_tables: Switch synchronization to RCU
  ANDROID: Disable hermetic toolchain for allmodconfig builds
  pinctrl: aspeed: Fix GPIO requests on pass-through banks
  media: vidtv: fix some warnings
  scsi: hisi_sas: Select a suitable queue for internal I/Os
  scsi: core: Fix race between handling STS_RESOURCE and completion
  net: stmmac: dwmac-meson8b: fix mask definition of the m250_sel mux
  dpaa2-mac: Add a missing of_node_put after of_device_is_available
  mptcp: print new line in mptcp_seq_show() if mptcp isn't in use
  bridge: Fix a deadlock when enabling multicast snooping
  enetc: Fix reporting of h/w packet counters
  powerpc/mm: Fix KUAP warning by providing copy_from_kernel_nofault_allowed()
  clk: renesas: r9a06g032: Drop __packed for portability
  clk: imx: scu: fix MXC_CLK_SCU module build break
  RDMA/core: Fix empty gid table for non IB/RoCE devices
  lwt_bpf: Replace preempt_disable() with migrate_disable()
  lwt: Disable BH too in run_lwt_bpf()
  io_uring: fix mis-seting personality's creds
  MAINTAINERS: add a limited ARM and ARM64 SoC entry
  MAINTAINERS: correct SoC Git address (formerly: arm-soc)
  ARM: keystone: remove SECTION_SIZE_BITS/MAX_PHYSMEM_BITS
  iommu/amd: Set DTE[IntTabLen] to represent 512 IRTEs
  udp: fix the proto value passed to ip_protocol_deliver_rcu for the segments
  net: hns3: remove a misused pragma packed
  Input: soc_button_array - add Lenovo Yoga Tablet2 1051L to the dmi_use_low_level_irq list
  Input: raydium_ts_i2c - do not split tx transactions
  Linux 5.10-rc7
  mm/mmap.c: fix mmap return value when vma is merged after call_mmap()
  hugetlb_cgroup: fix offline of hugetlb cgroup with reservations
  mm/filemap: add static for function __add_to_page_cache_locked
  userfaultfd: selftests: fix SIGSEGV if huge mmap fails
  tools/testing/selftests/vm: fix build error
  mailmap: add two more addresses of Uwe Kleine-König
  mm/swapfile: do not sleep with a spin lock held
  mm/zsmalloc.c: drop ZSMALLOC_PGTABLE_MAPPING
  mm: list_lru: set shrinker map bit when child nr_items is not zero
  mm: memcg/slab: fix obj_cgroup_charge() return value handling
  coredump: fix core_pattern parse error
  zlib: export S390 symbols for zlib modules
  kbuild: avoid split lines in .mod files
  Revert "mei: virtio: virtualization frontend driver"
  x86/sev-es: Use new for_each_insn_prefix() macro to loop over prefixes bytes
  x86/insn-eval: Use new for_each_insn_prefix() macro to loop over prefixes bytes
  x86/uprobes: Do not use prefixes.nbytes when looping over prefixes.bytes
  net: mscc: ocelot: fix dropping of unknown IPv4 multicast on Seville
  net: marvell: prestera: Fix error return code in prestera_port_create()
  vrf: packets with lladdr src needs dst at input with orig_iif when needs strict
  can: softing: softing_netdev_open(): fix error handling
  ch_ktls: fix build warning for ipv4-only config
  i2c: mlxbf: Fix the return check of devm_ioremap and ioremap
  i2c: mlxbf: select CONFIG_I2C_SLAVE
  mac80211: mesh: fix mesh_pathtbl_init() error path
  [SECURITY] fix namespaced fscaps when !CONFIG_SECURITY
  openvswitch: fix error return code in validate_and_copy_dec_ttl()
  net: bridge: vlan: fix error return code in __vlan_add()
  ipv4: fix error return code in rtm_to_fib_config()
  ethernet: select CONFIG_CRC32 as needed
  net: ipa: pass the correct size when freeing DMA memory
  block: fix incorrect branching in blk_max_size_offset()
  net/sched: fq_pie: initialize timer earlier in fq_pie_init()
  tracing: Fix userstacktrace option for instances
  dm: remove invalid sparse __acquires and __releases annotations
  dm: fix double RCU unlock in dm_dax_zero_page_range() error path
  dm: fix IO splitting
  tty: Fix ->session locking
  tty: Fix ->pgrp locking in tiocspgrp()
  xsk: Return error code if force_zc is set
  usb: gadget: f_fs: Use local copy of descriptors for userspace copy
  usb: ohci-omap: Fix descriptor conversion
  Revert "usb-storage: fix sdev->host->dma_dev"
  Revert "uas: fix sdev->host->dma_dev"
  Revert "uas: bump hw_max_sectors to 2048 blocks for SS or faster drives"
  mmc: mediatek: mark PM functions as __maybe_unused
  mmc: block: Fixup condition for CMD13 polling for RPMB requests
  mac80211: set SDATA_STATE_RUNNING for monitor interfaces
  cfg80211: initialize rekey_data
  mac80211: fix return value of ieee80211_chandef_he_6ghz_oper
  mmc: tmio: improve bringing HW to a sane state with MMC_POWER_OFF
  USB: serial: kl5kusb105: fix memleak on open
  misc: eeprom: at24: fix NVMEM name with custom AT24 device name
  pinctrl: amd: remove debounce filter setting in IRQ type setting
  kvm: x86/mmu: Use cpuid to determine max gfn
  kvm: svm: de-allocate svm_cpu_data for all cpus in svm_cpu_uninit()
  cifs: refactor create_sd_buf() and and avoid corrupting the buffer
  cifs: add NULL check for ses->tcon_ipc
  smb3: set COMPOUND_FID to FileID field of subsequent compound request
  scsi: be2iscsi: Revert "Fix a theoretical leak in beiscsi_create_eqs()"
  ANDROID: Sched: Add restricted vendor hooks for scheduler
  net/mlx5: DR, Proper handling of unsupported Connect-X6DX SW steering
  net/mlx5e: kTLS, Enforce HW TX csum offload with kTLS
  net: mlx5e: fix fs_tcp.c build when IPV6 is not enabled
  net/mlx5: Fix wrong address reclaim when command interface is down
  net/sched: act_mpls: ensure LSE is pullable before reading it
  net: openvswitch: ensure LSE is pullable before reading it
  net: skbuff: ensure LSE is pullable before decrementing the MPLS ttl
  net: mvpp2: Fix error return code in mvpp2_open()
  chelsio/chtls: fix a double free in chtls_setkey()
  uapi: fix statx attribute value overlap for DAX & MOUNT_ROOT
  pwm: sl28cpld: fix getting driver data in pwm callbacks
  lib/syscall: fix syscall registers retrieval on 32-bit platforms
  ANDROID: tracing: Add restricted vendor hooks for preemptirq events
  selftests: kvm/set_memory_region_test: Fix race in move region test
  x86/platform/uv: Fix UV4 hub revision adjustment
  ANDROID: Sched: Export scheduler symbols needed by vendor modules
  rtw88: debug: Fix uninitialized memory in debugfs code
  USB: serial: ch341: sort device-id entries
  USB: serial: ch341: add new Product ID for CH341A
  perf/x86/intel: Check PEBS status correctly
  perf/x86/intel: Fix a warning on x86_pmu_stop() with large PEBS
  intel_idle: Build fix
  FROMLIST: scripts: merge_config: add strict mode to fail upon any redefinition
  drm/amdgpu/vcn3.0: remove old DPG workaround
  drm/amdgpu/vcn3.0: stall DPG when WPTR/RPTR reset
  drm/amd/display: Init clock value by current vbios CLKs
  drm/amdgpu/pm/smu11: Fix fan set speed bug
  vxlan: fix error return code in __vxlan_dev_create()
  net: pasemi: fix error return code in pasemi_mac_open()
  cxgb3: fix error return code in t3_sge_alloc_qset()
  net/x25: prevent a couple of overflows
  drm/i915/display: Defer initial modeset until after GGTT is initialised
  drm/i915/display: return earlier from intel_modeset_init() without display
  drm/i915/gt: Limit frequency drop to RPe on parking
  drm/i915/gt: Retain default context state across shrinking
  drm/i915/gt: Split the breadcrumb spinlock between global and contexts
  drm/i915/gt: Protect context lifetime with RCU
  xsk: Change the tx writeable condition
  xsk: Replace datagram_poll by sock_poll_wait
  FROMLIST: scsi: ufs: clear uac for RPMB after ufshcd resets
  i2c: imx: Don't generate STOP condition if arbitration has been lost
  i2c: imx: Check for I2SR_IAL after every byte
  i2c: imx: Fix reset of I2SR_IAL flag
  dpaa_eth: copy timestamp fields to new skb in A-050385 workaround
  net: ip6_gre: set dev->hard_header_len when using header_ops
  mt76: usb: fix crash on device removal
  iwlwifi: pcie: add some missing entries for AX210
  iwlwifi: pcie: invert values of NO_160 device config entries
  iwlwifi: pcie: add one missing entry for AX210
  iwlwifi: update MAINTAINERS entry
  scsi: bnx2i: Requires MMU
  s390: fix irq state tracing
  s390/pci: fix CPU address in MSI for directed IRQ
  ANDROID: binder: Add vendor hooks
  i2c: qcom: Fix IRQ error misassignement
  i2c: qup: Fix error return code in qup_i2c_bam_schedule_desc()
  ANDROID: gki: build-in DMA_VIRTUAL_CHANNELS
  media: vidtv: fix kernel-doc markups
  powerpc/64s/powernv: Fix memory corruption when saving SLB entries on MCE
  media: [next] media: vidtv: fix a read from an object after it has been freed
  media: vb2: set cache sync hints when init buffers
  FROMGIT: arm64: mm: account for hotplug memory when randomizing the linear region
  gpio: mvebu: fix potential user-after-free on probe
  KVM: arm64: Add usage of stage 2 fault lookup level in user_mem_abort()
  KVM: arm64: Fix handling of merging tables into a block entry
  KVM: arm64: Fix memory leak on stage2 update of a valid PTE
  gpio: zynq: fix reference leak in zynq_gpio functions
  gpiolib: Don't free if pin ranges are not defined
  gpio: dwapb: fix NULL pointer dereference at dwapb_gpio_suspend()
  gpio: arizona: disable pm_runtime in case of failure
  vhost_vdpa: return -EFAULT if copy_to_user() fails
  vdpa: mlx5: fix vdpa/vhost dependencies
  selftests/bpf: Drain ringbuf samples at the end of test
  libbpf: Fix ring_buffer__poll() to return number of consumed samples
  geneve: pull IP header before ECN decapsulation
  inet_ecn: Fix endianness of checksum update when setting ECT(1)
  RDMA/efa: Use the correct current and new states in modify QP
  RDMA/qedr: iWARP invalid(zero) doorbell address fix
  tipc: fix incompatible mtu of transmission
  ANDROID: usb: gadget: f_midi: Avoid invalid pointer access
  dm writecache: remove BUG() and fail gracefully instead
  dm table: Remove BUG_ON(in_interrupt())
  dm: fix bug with RCU locking in dm_blk_report_zones
  Revert "dm cache: fix arm link errors with inline"
  fs: 9p: add generic splice_write file operation
  net: broadcom CNIC: requires MMU
  ibmvnic: Fix TX completion error handling
  ibmvnic: Ensure that SCRQ entry reads are correctly ordered
  ANDROID: mm: Create vendor hooks to control ZONE_MOVABLE allocations
  ANDROID: mm: add cma pcp list
  ANDROID: cma: redirect page allocation to CMA
  block: use gcd() to fix chunk_sectors limit stacking
  Input: atmel_mxt_ts - fix lost interrupts
  fpga: Specify HAS_IOMEM dependency for FPGA_DFL
  fs: 9p: add generic splice_read file operations
  x86/resctrl: Fix AMD L3 QOS CDP enable/disable
  ANDROID: spi: of: Populate fwnode in of_register_spi_device
  media: pulse8-cec: add support for FW v10 and up
  media: pulse8-cec: fix duplicate free at disconnect or probe error
  media: mtk-cir: fix calculation of chk period
  kbuild: Disable CONFIG_LD_ORPHAN_WARN for ld.lld 10.0.1
  kbuild: Hoist '--orphan-handling' into Kconfig
  ANDROID: net: xfrm: always export pktgen_xfrm_outer_mode_output
  KVM: PPC: Book3S HV: XIVE: Fix vCPU id sanity check
  arm64: dts: allwinner: H5: NanoPi Neo Plus2: phy-mode rgmii-id
  arm64: dts: allwinner: A64 Sopine: phy-mode rgmii-id
  USB: serial: option: fix Quectel BG96 matching
  ANDROID: pcie/dwc: driver: export dw_handle_msi_irq
  Input: xpad - support Ardwiino Controllers
  Input: i8042 - add ByteSpeed touchpad to noloop table
  scsi: mpt3sas: Increase IOCInit request timeout to 30s
  scsi: mpt3sas: Fix ioctl timeout
  scsi: storvsc: Validate length of incoming packet in storvsc_on_channel_callback()
  docs: bootconfig: Add the endianness of fields
  tools/bootconfig: Store size and checksum in footer as le32
  bootconfig: Load size and checksum in the footer as le32
  ring-buffer: Always check to put back before stamp when crossing pages
  scsi: storvsc: Fix error return in storvsc_probe()
  ftrace: Fix DYNAMIC_FTRACE_WITH_DIRECT_CALLS dependency
  ftrace: Fix updating FTRACE_FL_TRAMP
  tracing: Fix alignment of static buffer
  tracing: Remove WARN_ON in start_thread()
  samples/ftrace: Mark my_tramp[12]? global
  vxlan: Copy needed_tailroom from lowerdev
  vxlan: Add needed_headroom for lower device
  chelsio/chtls: fix panic during unload reload chtls
  ARM: dts: imx6qdl-kontron-samx6i: fix I2C_PM scl pin
  ARM: dts: imx6qdl-wandboard-revd1: Remove PAD_GPIO_6 from enetgrp
  ANDROID: sched: Track wake_q length
  drm/i915/gt: Program mocs:63 for cache eviction on gen9
  ARM: imx: Use correct SRC base address
  gfs2: Fix deadlock between gfs2_{create_inode,inode_lookup} and delete_work_func
  xdp: Handle MEM_TYPE_XSK_BUFF_POOL correctly in xdp_return_buff()
  ktest.pl: Fix incorrect reboot for grub2bls
  cifs: fix potential use-after-free in cifs_echo_request()
  cifs: allow syscalls to be restarted in __smb_send_rqst()
  ring-buffer: Set the right timestamp in the slow path of __rb_reserve_next()
  ring-buffer: Update write stamp with the correct ts
  io_uring: fix recvmsg setup with compat buf-select
  arm64: mte: Fix typo in macro definition
  pNFS/flexfiles: Fix array overflow when flexfiles mirroring is enabled
  ANDROID: sched/cpuset: Add vendor hook to change tasks affinity
  ANDROID: sched/core: Add vendor hook to change task affinity
  arm64: entry: fix EL1 debug transitions
  arm64: entry: fix NMI {user, kernel}->kernel transitions
  arm64: entry: fix non-NMI kernel<->kernel transitions
  arm64: ptrace: prepare for EL1 irq/rcu tracking
  arm64: entry: fix non-NMI user<->kernel transitions
  arm64: entry: move el1 irq/nmi logic to C
  arm64: entry: prepare ret_to_user for function call
  arm64: entry: move enter_from_user_mode to entry-common.c
  arm64: entry: mark entry code as noinstr
  arm64: mark idle code as noinstr
  arm64: syscall: exit userspace before unmasking exceptions
  can: kvaser_pciefd: kvaser_pciefd_open(): fix error handling
  can: c_can: c_can_power_up(): fix error handling
  can: sun4i_can: sun4i_can_err(): don't count arbitration lose as an error
  can: sja1000: sja1000_err(): don't count arbitration lose as an error
  can: m_can: tcan4x5x_can_probe(): fix error path: remove erroneous clk_disable_unprepare()
  powerpc/pseries: Pass MSI affinity to irq_create_mapping()
  genirq/irqdomain: Add an irq_create_mapping_affinity() function
  drm/omap: sdi: fix bridge enable/disable
  MAINTAINERS: Move Jason Cooper to CREDITS
  habanalabs: put devices before driver removal
  habanalabs: free host huge va_range if not used
  speakup: Reject setting the speakup line discipline outside of speakup
  usb: cdns3: core: fix goto label for error path
  usb: cdns3: gadget: clear trb->length as zero after preparing every trb
  usb: cdns3: Fix hardware based role switch
  Linux 5.10-rc6
  drm/panel: sony-acx565akm: Fix race condition in probe
  drm/rockchip: Avoid uninitialized use of endpoint id in LVDS
  dt-bindings: net: correct interrupt flags in examples
  ibmvnic: reduce wait for completion time
  ibmvnic: no reset timeout for 5 seconds after reset
  ibmvnic: send_login should check for crq errors
  ibmvnic: track pending login
  ibmvnic: delay next reset if hard reset fails
  ibmvnic: restore adapter state on failed reset
  ibmvnic: avoid memset null scrq msgs
  ibmvnic: stop free_all_rwi on failed reset
  ibmvnic: handle inconsistent login with reset
  selftests: tc-testing: enable CONFIG_NET_SCH_RED as a module
  ipv4: Fix tos mask in inet_rtm_getroute()
  netfilter: bridge: reset skb->pkt_type after NF_INET_POST_ROUTING traversal
  ALSA: hda/realtek: Add mute LED quirk to yet another HP x360 model
  ALSA: hda/realtek: Fix bass speaker DAC assignment on Asus Zephyrus G14
  ALSA: hda/generic: Add option to enforce preferred_dacs pairs
  ANDROID: GKI: export dev_pm_qos_read_value
  FROMGIT: usb: typec: Add type sysfs attribute file for partners
  FROMGIT: usb: pd: DFP product types
  FROMGIT: usb: typec: Constify static attribute_group structs
  FROMGIT: usb: typec: Expose Product Type VDOs via sysfs
  FROMGIT: usb: typec: Consolidate sysfs ABI documentation
  FROMGIT: usb: typec: Fix num_altmodes kernel-doc error
  FROMGIT: usb: typec: Add plug num_altmodes sysfs attr
  FROMGIT: usb: typec: Add number of altmodes partner attr
  FROMGIT: usb: typec: Remove one bit support for the Thunderbolt rounded/non-rounded cable
  FROMGIT: platform/chrome: cros_ec_typec: Correct the Thunderbolt rounded/non-rounded cable support
  sock: set sk_err to ee_errno on dequeue from errq
  mptcp: fix NULL ptr dereference on bad MPJ
  net: openvswitch: fix TTL decrement action netlink message format
  ANDROID: drm: expose drm_mode_convert_to_umode to display module
  perf probe: Change function definition check due to broken DWARF
  perf probe: Fix to die_entrypc() returns error correctly
  perf stat: Use proper cpu for shadow stats
  perf record: Synthesize cgroup events only if needed
  perf diff: Fix error return value in __cmd_diff()
  perf tools: Update copy of libbpf's hashmap.c
  ANDROID: Revert "thermal: Make thermal_zone_device_is_enabled() available to core only"
  x86/mce: Do not overwrite no_way_out if mce_end() fails
  FROMGIT: usb: typec: intel_pmc_mux: Configure Thunderbolt cable generation bits
  FROMGIT: usb: typec: Correct the bit values for the Thunderbolt rounded/non-rounded cable support
  FROMGIT: usb: typec: ucsi: Work around PPM losing change information
  FROMGIT: usb: typec: ucsi: acpi: Always decode connector change information
  ANDROID: kernel: cgroup: cpuset: Clear cpus_requested for empty buf
  ANDROID: cpuset: Make cpusets restore on hotplug
  ANDROID: sched: Export symbols for vendor EAS wakup path function
  ANDROID: sched: Add vendor hooks for skipping sugov update
  ANDROID: sched: Add vendor hooks for override sugov behavior
  ANDROID: attribute page lock and waitqueue functions as sched
  ANDROID: sched: Add vendor hooks for find_energy_efficient_cpu
  kvm: x86/mmu: Fix get_mmio_spte() on CPUs supporting 5-level PT
  ANDROID: arch_topology: Export symbol for thermal pressure notification
  ANDROID: sched/core: Export symbols needed by modules
  ANDROID: modpost: Forbid double exports
  FROMLIST: modpost: Make static exports fatal
  ANDROID: GKI: enable CONFIG_THERMAL_NETLINK
  KVM: x86: Fix split-irqchip vs interrupt injection window request
  KVM: x86: handle !lapic_in_kernel case in kvm_cpu_*_extint
  ALSA: usb-audio: US16x08: fix value count for level meters
  ANDROID: sched: Add env->cpus to android_rvh_sched_nohz_balancer_kick
  usb: typec: stusb160x: fix power-opmode property with typec-power-opmode
  FROMGIT: usb: typec: tcpm: Stay in SNK_TRY_WAIT_DEBOUNCE_CHECK_VBUS till Rp is seen
  FROMGIT: usb: typec: tcpm: Disregard vbus off while in PR_SWAP_SNK_SRC_SOURCE_ON
  FROMGIT: usb: typec: tcpci_maxim: Fix the compatible string
  netfilter: nftables_offload: build mask based from the matching bytes
  netfilter: nftables_offload: set address type in control dissector
  ipvs: fix possible memory leak in ip_vs_control_net_init
  powerpc/numa: Fix a regression on memoryless node 0
  printk: finalize records with trailing newlines
  ANDROID: extract-cert: omit PKCS#11 support if building against BoringSSL
  USB: serial: option: add support for Thales Cinterion EXS82
  can: af_can: can_rx_unregister(): remove WARN() statement from list operation sanity check
  can: m_can: m_can_dev_setup(): add support for bosch mcan version 3.3.0
  can: m_can: fix nominal bitiming tseg2 min for version >= 3.1
  can: m_can: m_can_open(): remove IRQF_TRIGGER_FALLING from request_threaded_irq()'s flags
  FROMGIT: dt-bindings: usb: Maxim type-c controller device tree binding document
  FROMGIT: usb: typec: tcpci_maxim: Fix uninitialized return variable
  FROMGIT: usb: typec: tcpci_maxim: Enable auto discharge disconnect
  FROMGIT: usb: typec: tcpci: Implement Auto discharge disconnect callbacks
  ALSA: hda/realtek - Add new codec supported for ALC897
  FROMGIT: usb: typec: tcpm: Implement enabling Auto Discharge disconnect support
  batman-adv: Don't always reallocate the fragmentation skb head
  batman-adv: Reserve needed_*room for fragments
  batman-adv: Consider fragmentation for needed_headroom
  FROMGIT: usb: typec: tcpci_maxim: Fix vbus stuck on upon diconnecting sink
  FROMGIT: usb: typec: tcpci: frs sourcing vbus callback
  FROMGIT: usb: typec: tcpm: frs sourcing vbus callback
  ANDROID: staging: ion: export some ion symbols
  ANDROID: staging: ion: Remove unused local variable 'vaddr'
  ANDROID: staging: ion: remove kmap from begin[end]_cpu_access
  ANDROID: staging: ion: Fix potential memory corruption
  ANDROID: staging: ion: optimize cache operation for non-cached buffer
  ANDROID: staging: ion: use dma_[un]map_sg_attrs
  ANDROID: staging: ion: Export query function to be used in modules
  FROMGIT: usb: typec: tcpm: Refactor logic for new-source-frs-typec-current
  ANDROID: USB: gadget: f_accessory: add support for SuperSpeed Plus
  FROMLIST: USB: gadget: f_rndis: fix bitrate for SuperSpeed and above
  FROMLIST: USB: gadget: f_midi: setup SuperSpeed Plus descriptors
  FROMLIST: USB: gadget: f_fs: add SuperSpeed Plus support
  FROMLIST: USB: gadget: f_acm: add support for SuperSpeed Plus
  ANDROID: configs: gki: add CONFIG_PSTORE_PMSG
  ANDROID: configs: gki: add CONFIG_LEDS_TRIGGER_TRANSIENT
  gfs2: Upgrade shared glocks for atime updates
  drm/tegra: sor: Disable clocks on error in tegra_sor_init()
  mm: memcg: relayout structure mem_cgroup to avoid cache interference
  drm/nouveau: make sure ret is initialized in nouveau_ttm_io_mem_reserve
  io_uring: fix files grab/cancel race
  RDMA/hns: Bugfix for memory window mtpt configuration
  RDMA/hns: Fix retry_cnt and rnr_cnt when querying QP
  RDMA/hns: Fix wrong field of SRQ number the device supports
  iommu/vt-d: Don't read VCCAP register unless it exists
  platform/x86: touchscreen_dmi: Add info for the Irbis TW118 tablet
  platform/x86: touchscreen_dmi: Add info for the Predia Basic tablet
  platform/x86: intel-vbtn: Support for tablet mode on HP Pavilion 13 x360 PC
  platform/x86: toshiba_acpi: Fix the wrong variable assignment
  platform/x86: acer-wmi: add automatic keyboard background light toggle key as KEY_LIGHTS_TOGGLE
  platform/x86: thinkpad_acpi: Whitelist P15 firmware for dual fan control
  platform/x86: thinkpad_acpi: Send tablet mode switch at wakeup time
  platform/x86: thinkpad_acpi: Add BAT1 is primary battery quirk for Thinkpad Yoga 11e 4th gen
  platform/x86: thinkpad_acpi: Do not report SW_TABLET_MODE on Yoga 11e
  platform/x86: thinkpad_acpi: add P1 gen3 second fan support
  powerpc/64s: Trim offlined CPUs from mm_cpumasks
  kernel/cpu: add arch override for clear_tasks_mm_cpumask() mm handling
  powerpc/64s/pseries: Fix hash tlbiel_all_isa300 for guest kernels
  powerpc/64s: Fix hash ISA v3.0 TLBIEL instruction generation
  ASoC: rt5682: change SAR voltage threshold
  drm: mxsfb: Implement .format_mod_supported
  drm: mxsfb: fix fence synchronization
  ANDROID: configs: gki: add CONFIG_PRINTK_CALLER
  can: mcp251xfd: mcp251xfd_probe(): bail out if no IRQ was given
  can: gs_usb: fix endianess problem with candleLight firmware
  MAINTAINERS: Adding help for coresight subsystem
  media: vidtv.rst: add kernel-doc markups
  media: vidtv.rst: update vidtv documentation
  media: vidtv: simplify EIT write function
  media: vidtv: simplify NIT write function
  media: vidtv: simplify SDT write function
  media: vidtv: cleanup PMT write table function
  media: vidtv: cleanup PAT write function
  media: vidtv: cleanup PSI table header function
  media: vidtv: cleanup PSI descriptor write function
  media: vidtv: simplify the crc writing logic
  media: vidtv: simplify PSI write function
  media: vidtv: add date to the current event
  media: vidtv: fix service_id at SDT table
  media: vidtv: fix service type
  media: vidtv: add a PID entry for the NIT table
  media: vidtv: properly fill EIT service_id
  media: vidtv: fix the network ID range
  media: vidtv: improve EIT data
  media: vidtv: cleanup null packet initialization logic
  media: vidtv: pre-initialize mux arrays
  media: vidtv: remove some unused functions
  media: vidtv: do some cleanups at the driver
  drm/nouveau: fix relocations applying logic and a double-free
  media: vidtv: avoid copying data for PES structs
  media: vidtv: avoid data copy when initializing the multiplexer
  media: vidtv: fix some notes at the tone generator
  media: vidtv: fix the tone generator logic
  media: vidtv: fix the name of the program
  media: vidtv: don't use recursive functions
  media: vidtv: add error checks
  media: vidtv: reorganize includes
  media: vidtv: psi: fix missing assignments in while loops
  media: vidtv: Move s302m specific fields into encoder context
  media: vidtv: psi: extract descriptor chaining code into a helper
  media: vidtv: psi: Implement an Event Information Table (EIT)
  media: vidtv: psi: add a Network Information Table (NIT)
  media: vidtv: extract the initial CRC value to into a #define
  ch_ktls: lock is not freed
  net/tls: Protect from calling tls_dev_del for TLS RX twice
  devlink: Make sure devlink instance and port are in same net namespace
  devlink: Hold rtnl lock while reading netdev attributes
  ptp: clockmatrix: bug fix for idtcm_strverscmp
  IB/hfi1: Ensure correct mm is used at all times
  netfilter: nf_tables: avoid false-postive lockdep splat
  netfilter: ipset: prevent uninit-value in hash_ip6_add
  bpf: Add MAINTAINERS entry for BPF LSM
  enetc: Let the hardware auto-advance the taprio base-time of 0
  gro_cells: reduce number of synchronize_net() calls
  net: stmmac: fix incorrect merge of patch upstream
  ipv6: addrlabel: fix possible memory leak in ip6addrlbl_net_init
  x86/speculation: Fix prctl() when spectre_v2_user={seccomp,prctl},ibpb
  RISC-V: fix barrier() use in <vdso/processor.h>
  RISC-V: Add missing jump label initialization
  riscv: Explicitly specify the build id style in vDSO Makefile again
  gfs2: Don't freeze the file system during unmount
  gfs2: check for empty rgrp tree in gfs2_ri_update
  ANDROID: sync encrypt+casefold support with patches going upstream
  efi: EFI_EARLYCON should depend on EFI
  efivarfs: revert "fix memory leak in efivarfs_create()"
  efi/efivars: Set generic ops before loading SSDT
  RDMA/i40iw: Address an mmap handler exploit in i40iw
  arm64: tegra: Fix Tegra234 VDK node names
  arm64: tegra: Wrong AON HSP reg property size
  arm64: tegra: Fix USB_VBUS_EN0 regulator on Jetson TX1
  arm64: tegra: Correct the UART for Jetson Xavier NX
  arm64: tegra: Disable the ACONNECT for Jetson TX2
  spi: dw: Fix spi registration for controllers overriding CS
  ASoC: wm_adsp: fix error return code in wm_adsp_load()
  x86/tboot: Don't disable swiotlb when iommu is forced on
  trace: fix potenial dangerous pointer
  optee: add writeback to valid memory type
  vhost-vdpa: fix page pinning leakage in error path (rework)
  vringh: fix vringh_iov_push_*() documentation
  vhost scsi: fix lun reset completion handling
  drm/ast: Reload gamma LUT after changing primary plane's color format
  drm/amdgpu: Fix size calculation when init onchip memory
  Documentation: netdev-FAQ: suggest how to post co-dependent series
  Input: i8042 - fix error return code in i8042_setup_aux()
  Input: soc_button_array - add missing include
  ibmvnic: enhance resetting status check during module exit
  ibmvnic: fix NULL pointer dereference in ibmvic_reset_crq
  ibmvnic: fix NULL pointer dereference in reset_sub_crq_queues
  net: ena: fix packet's addresses for rx_offset feature
  net: ena: set initial DMA width to avoid intel iommu issue
  net: ena: handle bad request id in ena_netdev
  mm: fix VM_BUG_ON(PageTail) and BUG_ON(PageWriteback)
  nfc: s3fwrn5: use signed integer for parsing GPIO numbers
  dpaa2-eth: Fix compile error due to missing devlink support
  gfs2: set lockdep subclass for iopen glocks
  gfs2: Fix deadlock dumping resource group glocks
  MAINTAINERS: Update page pool entry
  bpftool: Fix error return value in build_btf_type_table
  tcp: Set ECT0 bit in tos/tclass for synack when BPF needs ECN
  net, xsk: Avoid taking multiple skbuff references
  devlink: Fix reload stats structure
  aquantia: Remove the build_skb path
  Kbuild: do not emit debug info for assembly with LLVM_IAS=1
  kbuild: use -fmacro-prefix-map for .S sources
  Makefile.extrawarn: move -Wcast-align to W=3
  drm/amdgpu: update golden setting for sienna_cichlid
  drm/amd/display: Avoid HDCP initialization in devices without output
  drm/i915/gt: Free stale request on destroying the virtual engine
  drm/i915/gt: Don't cancel the interrupt shadow too early
  drm/i915/gt: Track signaled breadcrumbs outside of the breadcrumb spinlock
  drm/amdgpu: fix a page fault
  drm/amdgpu: fix SI UVD firmware validate resume fail
  drm/amd/amdgpu: fix null pointer in runtime pm
  drm/i915/gt: Defer enabling the breadcrumb interrupt to after submission
  drm/i915/gvt: correct a false comment of flag F_UNALIGN
  drm/i915/perf: workaround register corruption in OATAILPTR
  ANDROID: vfs: d_canonical_path cleanup #if 0
  intel_idle: Fix intel_idle() vs tracing
  sched/idle: Fix arch_cpu_idle() vs tracing
  io_uring: fix ITER_BVEC check
  io_uring: fix shift-out-of-bounds when round up cq size
  ARM: dts: sun7i: pcduino3-nano: enable RGMII RX/TX delay on PHY
  spi: imx: fix the unbalanced spi runtime pm management
  firmware: xilinx: Use hash-table for api feature check
  firmware: xilinx: Fix SD DLL node reset issue
  ALSA: hda/realtek: Enable headset of ASUS UX482EG & B9400CEA with ALC294
  x86/resctrl: Add necessary kernfs_put() calls to prevent refcount leak
  x86/resctrl: Remove superfluous kernfs_get() calls to prevent refcount leak
  mmc: sdhci-of-arasan: Fix clock registration error for Keem Bay SOC
  mmc: mediatek: Extend recheck_sdio_irq fix to more variants
  ANDROID: sched: add missing data type for cpu variable
  net/packet: fix packet receive on L3 devices without visible hard header
  soc: fsl: dpio: Get the cpumask through cpumask_of(cpu)
  ANDROID: sched: Add restrict vendor hooks for load balance
  i40e: Fix removing driver while bare-metal VFs pass traffic
  vsock/virtio: discard packets only when socket is really closed
  ANDROID: db845c_gki.fragment: Remove USB_XHCI_HCD and XHCI_PCI_RENESAS configs
  tcp: fix race condition when creating child sockets from syncookies
  ANDROID: sched/fair: Have sync honor fits_capacity
  ANDROID: usb: f_accessory: avoid requeuing write req if disconnected
  FROMGIT: scsi: ufs: Put HBA into LPM during gating
  ANDROID: add vendor hooks to override show_cpufinfo_max_freq
  IB/mthca: fix return value of error branch in mthca_init_cq()
  btrfs: fix lockdep splat when enabling and disabling qgroups
  btrfs: do nofs allocations when adding and removing qgroup relations
  btrfs: fix lockdep splat when reading qgroup config on mount
  btrfs: tree-checker: add missing returns after data_ref alignment checks
  btrfs: don't access possibly stale fs_info data for printing duplicate device
  ASoC: qcom: Fix enabling BCLK and LRCLK in LPAIF invalid state
  habanalabs/gaudi: fix missing code in ECC handling
  ANDROID: arm64: gki_defconfig: Disable VHE
  drm/vc4: kms: Don't disable the muxing of an active CRTC
  drm/vc4: kms: Store the unassigned channel list in the state
  ANDROID: GKI: enable CONFIG_SCSI_UFS_BSG=y
  arm64: pgtable: Ensure dirty bit is preserved across pte_wrprotect()
  arm64: pgtable: Fix pte_accessible()
  ANDROID: GKI: Enable CONFIG_USB_TYPEC_UCSI
  ANDROID: GKI: enable CONFIG_SCSI_UFS_DWC_TC_PLATFORM
  ANDROID: GKI: enable a bunch of HID config options =y
  iommu: Check return of __iommu_attach_device()
  arm-smmu-qcom: Ensure the qcom_scm driver has finished probing
  spi: spi-nxp-fspi: fix fspi panic by unexpected interrupts
  mmc: mediatek: Fix system suspend/resume support for CQHCI
  iommu/amd: Enforce 4k mapping for certain IOMMU data structures
  xsk: Fix incorrect netdev reference count
  ANDROID: GKI: Enable CONFIG_USB_XHCI_HCD
  ACPI/IORT: Fix doc warnings in iort.c
  arm64/fpsimd: add <asm/insn.h> to <asm/kprobes.h> to fix fpsimd build
  s390: fix fpu restore in entry.S
  powerpc/64s: Fix allnoconfig build since uaccess flush
  cpufreq: scmi: Fix build for !CONFIG_COMMON_CLK
  drm/exynos: depend on COMMON_CLK to fix compile tests
  Linux 5.10-rc5
  afs: Fix speculative status fetch going out of order wrt to modifications
  mm: fix madvise WILLNEED performance problem
  libfs: fix error cast of negative value in simple_attr_write()
  mm/userfaultfd: do not access vma->vm_mm after calling handle_userfault()
  mm: memcg/slab: fix root memcg vmstats
  mm: fix readahead_page_batch for retry entries
  mm: fix phys_to_target_node() and memory_add_physaddr_to_nid() exports
  compiler-clang: remove version check for BPF Tracing
  mm/madvise: fix memory leak from process_madvise
  irqchip/gic-v3-its: Unconditionally save/restore the ITS state on suspend
  irqchip/exiu: Fix the index of fwspec for IRQ type
  ibmvnic: skip tx timeout reset while in resetting
  ibmvnic: notify peers when failover and migration happen
  ibmvnic: fix call_netdevice_notifiers in do_reset
  tun: honor IOCB_NOWAIT flag
  net/af_iucv: set correct sk_protocol for child sockets
  usbnet: ipheth: fix connectivity with iOS 14
  cxgb4: Fix build failure when CONFIG_TLS=m
  bonding: wait for sysfs kobject destruction before freeing struct slave
  drm/mediatek: dsi: Modify horizontal front/back porch byte formula
  s390/qeth: fix tear down of async TX buffers
  s390/qeth: fix af_iucv notification race
  s390/qeth: make af_iucv TX notification call more robust
  s390/qeth: Remove pnso workaround
  tcp: Set INET_ECN_xmit configuration in tcp_reinit_congestion_control
  tcp: Allow full IP tos/IPv6 tclass to be reflected in L3 header
  dpaa2-eth: select XGMAC_MDIO for MDIO bus support
  ANDROID: gki_defconfig: Enable SERIAL_MSM_GENI_EARLY_CONSOLE
  ANDROID: gki_defconfig: Remove QCOM_COMMAND_DB=y
  cxgb4: fix the panic caused by non smac rewrite
  selftests/seccomp: sh: Fix register names
  selftests/seccomp: powerpc: Fix typo in macro variable name
  block/keyslot-manager: prevent crash when num_slots=1
  net/tls: missing received data after fast remote close
  bnxt_en: Release PCI regions when DMA mask setup fails during probe.
  rose: Fix Null pointer dereference in rose_send_frame()
  MAINTAINERS: Change Solarflare maintainers
  spi: Take the SPI IO-mutex in the spi_setup() method
  ARM: dts: sun8i: v3s: fix GIC node memory range
  USB: core: Change %pK for __user pointers to %px
  MAINTAINERS: Update email address for Sean Christopherson
  USB: core: Fix regression in Hercules audio card
  usb: gadget: Fix memleak in gadgetfs_fill_super
  usb: gadget: f_midi: Fix memleak in f_midi_alloc
  USB: quirks: Add USB_QUIRK_DISCONNECT_SUSPEND quirk for Lenovo A630Z TIO built-in usb-audio card
  xsk: Fix umem cleanup bug at socket destruct
  MAINTAINERS: Update XDP and AF_XDP entries
  interconnect: fix memory trashing in of_count_icc_providers()
  ALSA: hda/realtek - Fixed Dell AIO wrong sound tone
  interconnect: qcom: qcs404: Remove GPU and display RPM IDs
  interconnect: qcom: msm8916: Remove rpm-ids from non-RPM nodes
  video: hyperv_fb: Fix the cache type when mapping the VRAM
  mtd: rawnand: socrates: Move the ECC initialization to ->attach_chip()
  mtd: rawnand: sharpsl: Move the ECC initialization to ->attach_chip()
  mtd: rawnand: r852: Move the ECC initialization to ->attach_chip()
  USB: serial: option: add Fibocom NL668 variants
  ANDROID: sched: rt: rearrange invocation of find_lowest_rq() vendor hook
  bnxt_en: fix error return code in bnxt_init_board()
  bnxt_en: fix error return code in bnxt_init_one()
  ext4: fix bogus warning in ext4_update_dx_flag()
  jbd2: fix kernel-doc markups
  scsi: ufs: Fix race between shutdown and runtime resume flow
  ANDROID: GKI: enable CONFIG_SUN4I_TIMER
  xfs: revert "xfs: fix rmap key and record comparison functions"
  ANDROID: mm/memblock: export memblock_end_of_DRAM
  mtd: rawnand: plat_nand: Move the ECC initialization to ->attach_chip()
  mtd: rawnand: pasemi: Move the ECC initialization to ->attach_chip()
  mtd: rawnand: tmio: Move the ECC initialization to ->attach_chip()
  mtd: rawnand: txx9ndfmc: Move the ECC initialization to ->attach_chip()
  mtd: rawnand: orion: Move the ECC initialization to ->attach_chip()
  mtd: rawnand: mpc5121: Move the ECC initialization to ->attach_chip()
  mtd: rawnand: lpc32xx_slc: Move the ECC initialization to ->attach_chip()
  mtd: rawnand: lpc32xx_mlc: Move the ECC initialization to ->attach_chip()
  mtd: rawnand: fsmc: Move the ECC initialization to ->attach_chip()
  mtd: rawnand: diskonchip: Move the ECC initialization to ->attach_chip()
  mtd: rawnand: davinci: Move the ECC initialization to ->attach_chip()
  mtd: rawnand: cs553x: Move the ECC initialization to ->attach_chip()
  ext4: drop fast_commit from /proc/mounts
  mtd: rawnand: au1550: Move the ECC initialization to ->attach_chip()
  mtd: rawnand: ams-delta: Move the ECC initialization to ->attach_chip()
  mtd: rawnand: xway: Move the ECC initialization to ->attach_chip()
  mtd: rawnand: gpio: Move the ECC initialization to ->attach_chip()
  drm/i915/gt: Fixup tgl mocs for PTE tracking
  fail_function: Remove a redundant mutex unlock
  selftest/bpf: Test bpf_probe_read_user_str() strips trailing bytes after NUL
  lib/strncpy_from_user.c: Mask out bytes after NUL terminator.
  ANDROID: Sched: Export sched_feat_keys symbol needed by vendor modules
  drm/vram-helper: Fix use of top-down placement
  net/smc: fix direct access to ib_gid_addr->ndev in smc_ib_determine_gid()
  net/smc: fix matching of existing link groups
  ipv6: Remove dependency of ipv6_frag_thdr_truncated on ipv6 module
  ANDROID: sched: Export few scheduler symbols for vendor modules
  ALSA: mixart: Fix mutex deadlock
  xfs: don't allow NOWAIT DIO across extent boundaries
  libbpf: Fix VERSIONED_SYM_COUNT number parsing
  HID: logitech-dj: Fix Dinovo Mini when paired with a MX5x00 receiver
  HID: logitech-dj: Fix an error in mse_bluetooth_descriptor
  drm/vc4: hdmi: Disable Wifi Frequencies
  dt-bindings: display: Add a property to deal with WiFi coexistence
  thunderbolt: Fix use-after-free in remove_unplugged_switch()
  Revert "iommu/vt-d: Take CONFIG_PCI_ATS into account"
  docs: bootconfig: Update file format on initrd image
  tools/bootconfig: Align the bootconfig applied initrd image size to 4
  tools/bootconfig: Fix to check the write failure correctly
  tools/bootconfig: Fix errno reference after printf()
  drm/vc4: kms: Document the muxing corner cases
  drm/vc4: kms: Split the HVS muxing check in a separate function
  drm/vc4: kms: Rename NUM_CHANNELS
  drm/vc4: kms: Remove useless define
  drm/vc4: kms: Switch to drmm_add_action_or_reset
  drm/vc4: hdmi: Block odd horizontal timings
  drm/vc4: hdmi: Make sure our clock rate is within limits
  ASoC: Intel: bytcr_rt5640: Fix HP Pavilion x2 Detachable quirks
  powerpc/64s: rename pnv|pseries_setup_rfi_flush to _setup_security_mitigations
  selftests/powerpc: refactor entry and rfi_flush tests
  selftests/powerpc: entry flush test
  powerpc: Only include kup-radix.h for 64-bit Book3S
  powerpc/64s: flush L1D after user accesses
  powerpc/64s: flush L1D on kernel entry
  selftests/powerpc: rfi_flush: disable entry flush if present
  ALSA: hda/ca0132: Fix compile warning without PCI
  MAINTAINERS: Temporarily add myself to the IOMMU entry
  iommu/vt-d: Fix compile error with CONFIG_PCI_ATS not set
  ARM: dts: dra76x: m_can: fix order of clocks
  bus: ti-sysc: suppress err msg for timers used as clockevent/source
  drm/i915/gt: Remember to free the virtual breadcrumbs
  drm/i915: Handle max_bpc==16
  scsi: ufs: Make sure clk scaling happens only when HBA is runtime ACTIVE
  scsi: ufs: Fix unexpected values from ufshcd_read_desc_param()
  net/mlx4_core: Fix init_hca fields offset
  atm: nicstar: Unmap DMA on send error
  page_frag: Recover from memory pressure
  ANDROID: uid_sys_stats: report uid_cputime stats in microseconds
  drm/amd/display: Always get CRTC updated constant values inside commit tail
  net: dsa: mv88e6xxx: Wait for EEPROM done after HW reset
  mlxsw: core: Use variable timeout for EMAD retries
  mlxsw: Fix firmware flashing
  net: Have netpoll bring-up DSA management interface
  atl1e: fix error return code in atl1e_probe()
  atl1c: fix error return code in atl1c_probe()
  ah6: fix error return code in ah6_input()
  net: usb: qmi_wwan: Set DTR quirk for MR400
  regulator: ti-abb: Fix array out of bound read access on the first transition
  ASOC: Intel: kbl_rt5663_rt5514_max98927: Do not try to disable disabled clock
  xfs: return corresponding errcode if xfs_initialize_perag() fail
  xfs: ensure inobt record walks always make forward progress
  xfs: fix forkoff miscalculation related to XFS_LITINO(mp)
  xfs: directory scrub should check the null bestfree entries too
  xfs: strengthen rmap record flags checking
  xfs: fix the minrecs logic when dealing with inode root child blocks
  can: m_can: process interrupt only when not runtime suspended
  gfs2: Fix regression in freeze_go_sync
  can: flexcan: flexcan_chip_start(): fix erroneous flexcan_transceiver_enable() during bus-off recovery
  io_uring: order refnode recycling
  io_uring: get an active ref_node from files_data
  iommu/vt-d: Avoid panic if iommu init fails in tboot system
  dmaengine: fix error codes in channel_register()
  MAINTAINERS: add uv.c also to KVM/s390
  s390/uv: handle destroy page legacy interface
  x86/dumpstack: Do not try to access user space code of other tasks
  can: kvaser_usb: kvaser_usb_hydra: Fix KCAN bittiming limits
  can: kvaser_pciefd: Fix KCAN bittiming limits
  drm/sun4i: backend: Fix probe failure with multiple backends
  ARC: stack unwinding: reorganize how initial register state setup
  ARC: stack unwinding: don't assume non-current task is sleeping
  ARC: mm: fix spelling mistakes
  ARC: bitops: Remove unecessary operation and value
  powerpc/64s/exception: KVM Fix for host DSI being taken in HPT guest MMU context
  ipv4: use IS_ENABLED instead of ifdef
  qed: fix ILT configuration of SRC block
  inet_diag: Fix error path to cancel the meseage in inet_req_diag_fill()
  tools/testing/scatterlist: Fix test to compile and run
  bpf, sockmap: Avoid failures from skb_to_sgvec when skb has frag_list
  bpf, sockmap: Handle memory acct if skb_verdict prog redirects to self
  bpf, sockmap: Avoid returning unneeded EAGAIN when redirecting to self
  bpf, sockmap: Use truesize with sk_rmem_schedule()
  bpf, sockmap: Ensure SO_RCVBUF memory is observed on ingress redirect
  bpf, sockmap: Fix partial copy_page_to_iter so progress can still be made
  net/tls: Fix wrong record sn in async mode of device resync
  interconnect: qcom: msm8974: Don't boost the NoC rate during boot
  interconnect: qcom: msm8974: Prevent integer overflow in rate
  io_uring: don't double complete failed reissue request
  netdevsim: set .owner to THIS_MODULE
  seccomp: Set PF_SUPERPRIV when checking capability
  ptrace: Set PF_SUPERPRIV when checking capability
  enetc: Workaround for MDIO register access issue
  MAINTAINERS: Remove myself as LPC32xx maintainers
  net/mlx5: fix error return code in mlx5e_tc_nic_init()
  net/mlx5: E-Switch, Fail mlx5_esw_modify_vport_rate if qos disabled
  net/mlx5: Disable QoS when min_rates on all VFs are zero
  net/mlx5: Clear bw_share upon VF disable
  net/mlx5: Add handling of port type in rule deletion
  net/mlx5e: Fix check if netdev is bond slave
  net/mlx5e: Fix IPsec packet drop by mlx5e_tc_update_skb
  net/mlx5e: Set IPsec WAs only in IP's non checksum partial case.
  net/mlx5e: Fix refcount leak on kTLS RX resync
  tcp: only postpone PROBE_RTT if RTT is < current min_rtt estimate
  net: ftgmac100: Fix crash when removing driver
  KVM: arm64: vgic-v3: Drop the reporting of GICR_TYPER.Last for userspace
  net: b44: fix error return code in b44_init_one()
  qed: fix error return code in qed_iwarp_ll2_start()
  drm/sun4i: dw-hdmi: fix error return code in sun8i_dw_hdmi_bind()
  spi: npcm-fiu: Don't leak SPI master in probe error path
  spi: dw: Set transfer handler before unmasking the IRQs
  dm writecache: fix the maximum number of arguments
  dm writecache: advance the number of arguments when reporting max_age
  dm integrity: don't use drivers that have CRYPTO_ALG_ALLOCATES_MEMORY
  arm64: dts: qcom: clear the warnings caused by empty dma-ranges
  arm64: dts: broadcom: clear the warnings caused by empty dma-ranges
  xtensa: uaccess: Add missing __user to strncpy_from_user() prototype
  ALSA: usb-audio: Add delay quirk for all Logitech USB devices
  perf/x86: fix sysfs type mismatches
  lockdep: Put graph lock/unlock under lock_recursion protection
  sched/deadline: Fix priority inheritance with multiple scheduling classes
  sched: Fix rq->nr_iowait ordering
  sched: Fix data-race in wakeup
  sched/fair: Fix overutilized update in enqueue_task_fair()
  MIPS: Alchemy: Fix memleak in alchemy_clk_setup_cpu
  mmc: sdhci-of-arasan: Issue DLL reset explicitly
  mmc: sdhci-of-arasan: Use Mask writes for Tap delays
  mmc: sdhci-of-arasan: Allow configuring zero tap values
  mmc: sdhci-pci: Prefer SDR25 timing for High Speed mode for BYT-based Intel controllers
  powerpc: Drop -me200 addition to build flags
  x86/microcode/intel: Check patch signature before saving microcode for early loading
  MIPS: kernel: Fix for_each_memblock conversion
  KVM: SVM: fix error return code in svm_create_vcpu()
  cpufreq: scmi: Fix OPP addition failure with a dummy clock provider
  cpufreq: tegra186: Fix get frequency callback
  scsi: target: iscsi: Fix cmd abort fabric stop race
  scsi: libiscsi: Fix NOP race condition
  bnxt_en: Avoid unnecessary NVM_GET_DEV_INFO cmd error log on VFs.
  bnxt_en: Fix counter overflow logic.
  bnxt_en: Free port stats during firmware reset.
  bnxt_en: read EEPROM A2h address using page 0
  net: ipa: lock when freeing transaction
  net/tls: fix corrupted data in recvmsg
  net: qualcomm: rmnet: Fix incorrect receive packet handling during cleanup
  net: mvneta: fix possible memory leak in mvneta_swbm_add_rx_fragment
  net: stmmac: Use rtnl_lock/unlock on netif_set_real_num_rx_queues() call
  net: bridge: add missing counters to ndo_get_stats64 callback
  net: ethernet: ti: cpsw: fix error return code in cpsw_probe()
  net: stmmac: dwmac-intel-plat: fix error return code in intel_eth_plat_probe()
  qlcnic: fix error return code in qlcnic_83xx_restart_hw()
  cx82310_eth: fix error return code in cx82310_bind()
  drm/i915/selftests: Fix wrong return value of perf_request_latency()
  drm/i915/selftests: Fix wrong return value of perf_series_engines()
  drm/i915: Avoid memory leak with more than 16 workarounds on a list
  drm/i915/tgl: Fix Media power gate sequence.
  MAINTAINERS: update cxgb4 and cxgb3 maintainer
  drm/amdgpu: remove experimental flag from arcturus
  net: lantiq: Wait for the GPHY firmware to be ready
  selftests/bpf: Fix error return code in run_getsockopt_test()
  mm: never attempt async page lock if we've transferred data already
  ASoC: Intel: catpt: Correct clock selection for dai trigger
  ASoC: Intel: catpt: Skip position update for unprepared streams
  spi: cadence-quadspi: Fix error return code in cqspi_probe
  ASoC: qcom: lpass-platform: Fix memory leak
  ASoC: Intel: KMB: Fix S24_LE configuration
  KVM: SVM: Fix offset computation bug in __sev_dbg_decrypt().
  drm/amd/display: Add missing pflip irq for dcn2.0
  ACPI, APEI, Fix error return value in apei_map_generic_address()
  MAINTAINERS: Add Martin Schiller as a maintainer for the X.25 stack
  ipv6/netfilter: Discard first fragment not including all headers
  media: venus: pm_helpers: Fix kernel module reload
  media: venus: venc: Fix setting of profile and level
  net: fec: Fix reference count leak in fec series ops
  PM: runtime: Add pm_runtime_resume_and_get to deal with usage counter
  dmaengine: pl330: _prep_dma_memcpy: Fix wrong burst size
  dmaengine: ioatdma: remove unused function missed during dma_v2 removal
  perf test: Avoid an msan warning in a copied stack.
  dmaengine: idxd: fix mapping of portal size
  perf inject: Fix file corruption due to event deletion
  arch: pgtable: define MAX_POSSIBLE_PHYSMEM_BITS where needed
  s390/dasd: fix null pointer dereference for ERP requests
  ALSA: hda: Add Alderlake-S PCI ID and HDMI codec vid
  ACPI: fan: Initialize performance state sysfs attribute
  iommu/vt-d: Take CONFIG_PCI_ATS into account
  KVM: PPC: Book3S HV: XIVE: Fix possible oops when accessing ESB page
  cpuidle: tegra: Annotate tegra_pm_set_cpu_in_lp2() with RCU_NONIDLE
  xtensa: disable preemption around cache alias management calls
  xtensa: fix TLBTEMP area placement
  pinctrl: baytrail: Avoid clearing debounce value when turning it off
  pinctrl: merrifield: Set default bias in case no particular value given
  pinctrl: jasperlake: Fix HOSTSW_OWN offset
  pinctrl: jasperlake: Unhide SPI group of pins
  KVM: arm64: Correctly align nVHE percpu data
  usb: typec: qcom-pmic-typec: fix builtin build errors
  ALSA: usb-audio: Use ALC1220-VB-DT mapping for ASUS ROG Strix TRX40 mobo
  phy: mediatek: fix spelling mistake in Kconfig "veriosn" -> "version"
  phy: qualcomm: Fix 28 nm Hi-Speed USB PHY OF dependency
  phy: qualcomm: usb: Fix SuperSpeed PHY OF dependency
  phy: intel: PHY_INTEL_KEEMBAY_EMMC should depend on ARCH_KEEMBAY
  usb: cdns3: gadget: calculate TD_SIZE based on TD
  usb: cdns3: gadget: initialize link_trb as NULL
  smb3: Handle error case during offload read path
  smb3: Avoid Mid pending list corruption
  smb3: Call cifs reconnect from demultiplex thread
  cifs: fix a memleak with modefromsid
  fix return values of seq_read_iter()
  Linux 5.10-rc4
  powerpc/64s: Fix KVM system reset handling when CONFIG_PPC_PSERIES=y
  vhost scsi: Add support for LUN resets.
  vhost scsi: add lun parser helper
  vhost scsi: fix cmd completion race
  vhost scsi: alloc cmds per vq instead of session
  vhost: add helper to check if a vq has been setup
  vdpasim: fix "mac_pton" undefined error
  can: m_can: m_can_stop(): set device to software init mode before closing
  can: m_can: Fix freeing of can device from peripherials
  can: m_can: m_can_class_free_dev(): introduce new function
  can: m_can: m_can_handle_state_change(): fix state change
  can: tcan4x5x: tcan4x5x_can_remove(): fix order of deregistration
  can: tcan4x5x: tcan4x5x_can_probe(): add missing error checking for devm_regmap_init()
  can: tcan4x5x: replace depends on REGMAP_SPI with depends on SPI
  can: flexcan: fix failure handling of pm_runtime_get_sync()
  can: flexcan: flexcan_setup_stop_mode(): add missing "req_bit" to stop mode property comment
  can: peak_usb: fix potential integer overflow on shift of a int
  can: mcba_usb: mcba_usb_start_xmit(): first fill skb, then pass to can_put_echo_skb()
  can: ti_hecc: Fix memleak in ti_hecc_probe
  can: dev: can_restart(): post buffer from the right context
  can: af_can: prevent potential access of uninitialized member in canfd_rcv()
  can: af_can: prevent potential access of uninitialized member in can_rcv()
  kvm: mmu: fix is_tdp_mmu_check when the TDP MMU is not in use
  batman-adv: set .owner to THIS_MODULE
  devlink: Add missing genlmsg_cancel() in devlink_nl_sb_port_pool_fill()
  net: stmmac: dwmac_lib: enlarge dma reset timeout
  lan743x: prevent entire kernel HANG on open, for some platforms
  lan743x: fix issue causing intermittent kernel log warnings
  netlabel: fix an uninitialized warning in netlbl_unlabel_staticlist()
  sctp: change to hold/put transport for proto_unreach_timer
  afs: Fix afs_write_end() when called with copied == 0 [ver #3]
  vsock: forward all packets to the host when no H2G is registered
  net: dsa: mv88e6xxx: Avoid VTU corruption on 6097
  ocfs2: initialize ip_next_orphan
  panic: don't dump stack twice on warn
  hugetlbfs: fix anon huge page migration race
  mm: memcontrol: fix missing wakeup polling thread
  kernel/watchdog: fix watchdog_allowed_mask not used warning
  reboot: fix overflow parsing reboot cpu number
  Revert "kernel/reboot.c: convert simple_strtoul to kstrtoint"
  compiler.h: fix barrier_data() on clang
  mm/gup: use unpin_user_pages() in __gup_longterm_locked()
  mm/slub: fix panic in slab_alloc_node()
  mailmap: fix entry for Dmitry Baryshkov/Eremin-Solenikov
  mm/vmscan: fix NR_ISOLATED_FILE corruption on 64-bit
  mm/compaction: stop isolation if too many pages are isolated and we have pages to migrate
  mm/compaction: count pages and stop correctly during page isolation
  net: phy: smsc: add missed clk_disable_unprepare in smsc_phy_probe()
  blk-cgroup: fix a hd_struct leak in blkcg_fill_root_iostats
  iio: accel: kxcjk1013: Add support for KIOX010A ACPI DSM for setting tablet-mode
  iio: accel: kxcjk1013: Replace is_smo8500_device with an acpi_type enum
  io_uring: handle -EOPNOTSUPP on path resolution
  bpf: Relax return code check for subprograms
  nvme: fix memory leak freeing command effects
  nvme: directly cache command effects log
  nvme: free sq/cq dbbuf pointers when dbbuf set fails
  drm/nouveau/kms/nv50-: Use atomic encoder callbacks everywhere
  drm/nouveau/ttm: avoid using nouveau_drm.ttm.type_vram prior to nv50
  drm/nouveau/kms: Fix NULL pointer dereference in nouveau_connector_detect_depth
  ipv6: Fix error path to cancel the meseage
  ip_tunnels: Set tunnel option flag when tunnel metadata is present
  proc: don't allow async path resolution of /proc/self components
  net: ethernet: ti: am65-cpts: update ret when ptp_clock is ERROR
  net: marvell: prestera: fix error return code in prestera_pci_probe()
  net: phy: mscc: remove non-MACSec compatible phy
  net: Exempt multicast addresses from five-second neighbor lifetime
  net: ethernet: ti: cpsw: fix cpts irq after suspend
  block: mark flush request as IDLE when it is really finished
  btrfs: tree-checker: add missing return after error in root_item
  btrfs: qgroup: don't commit transaction when we already hold the handle
  btrfs: fix missing delalloc new bit for new delalloc ranges
  ANDROID: sched_clock: Add vendor hook to print epoch values
  drm/tegra: output: Do not put OF node twice
  ANDROID: enable LLVM_IAS=1 for clang's integrated assembler for x86_64
  ANDROID: x86: entry: work around LLVM_IAS=1 bug in LSL
  spi: bcm2835aux: Restore err assignment in bcm2835aux_spi_probe
  ALSA: firewire: Clean up a locking issue in copy_resp_to_buf()
  IB/hfi1: Fix error return code in hfi1_init_dd()
  ANDROID: ARM: Bump command line size
  ANDROID: ARM: Use zImage instead of Image
  docs: ABI: testing: iio: stm32: remove re-introduced unsupported ABI
  tools, bpftool: Add missing close before bpftool net attach exit
  dt-bindings: clock: imx5: fix example
  dt-bindings: can: fsl,flexcan.yaml: fix compatible for i.MX35 and i.MX53
  hwmon: (amd_energy) modify the visibility of the counters
  usb: cdc-acm: Add DISABLE_ECHO for Renesas USB Download mode
  MAINTAINERS: add usb raw gadget entry
  usb: typec: ucsi: Report power supply changes
  regulator: workaround self-referent regulators
  regulator: avoid resolve_supply() infinite recursion
  regulator: fix memory leak with repeated set_machine_constraints()
  ASoC: rt1015: increase the time to detect BCLK
  xhci: hisilicon: fix refercence leak in xhci_histb_probe
  Revert "usb: musb: convert to devm_platform_ioremap_resource_byname"
  ARM: dts: exynos: revert "add input clock to CMU in Exynos4412 Odroid"
  KVM: SVM: Update cr3_lm_rsvd_bits for AMD SEV guests
  KVM: x86: Introduce cr3_lm_rsvd_bits in kvm_vcpu_arch
  KVM: x86: clflushopt should be treated as a no-op by emulation
  iommu/vt-d: Cure VF irqdomain hickup
  ALSA: ctl: fix error path at adding user-defined element set
  ALSA: hda/realtek - HP Headset Mic can't detect after boot
  ALSA: hda/realtek - Add supported mute Led for HP
  arm64: cpu_errata: Apply Erratum 845719 to KRYO2XX Silver
  arm64: proton-pack: Add KRYO2XX silver CPUs to spectre-v2 safe-list
  arm64: kpti: Add KRYO2XX gold/silver CPU cores to kpti safelist
  arm64: Add MIDR value for KRYO2XX gold/silver CPU cores
  arm64/mm: Validate hotplug range before creating linear mapping
  ANDROID: scsi: ufs: Allow prepare_command to return error code
  FROMLIST: scsi: ufs: show lba and length for unmap commands
  mac80211: free sta in sta_info_insert_finish() on errors
  drm/amdgpu: enable DCN for navi10 headless SKU
  drm/amdgpu: add ta firmware load for green-sardine
  drm/i915/gvt: return error when failing to take the module reference
  net: x25: Increase refcnt of "struct x25_neigh" in x25_rx_call_request
  net: ethernet: mtk-star-emac: fix error return code in mtk_star_enable()
  bootconfig: Extend the magic check range to the preceding 3 bytes
  selinux: Fix error return code in sel_ib_pkey_sid_slow()
  net: ethernet: mtk-star-emac: return ok when xmit drops
  net/ncsi: Fix netlink registration
  drm/i915: Correctly set SFC capability for video engines
  drm/i915/gem: Pull phys pread/pwrite implementations to the backend
  drm/i915/gem: Allow backends to override pread implementation
  x86/platform/uv: Fix copied UV5 output archtype
  KVM: arm64: Handle SCXTNUM_ELx traps
  KVM: arm64: Unify trap handlers injecting an UNDEF
  KVM: arm64: Allow setting of ID_AA64PFR0_EL1.CSV2 from userspace
  drm: bridge: dw-hdmi: Avoid resetting force in the detect function
  loop: Fix occasional uevent drop
  block: add a return value to set_capacity_revalidate_and_notify
  SUNRPC: Fix oops in the rpc_xdr_buf event class
  perf test: Update branch sample pattern for cs-etm
  perf test: Fix a typo in cs-etm testing
  tools arch: Update arch/x86/lib/mem{cpy,set}_64.S copies used in 'perf bench mem memcpy'
  perf lock: Don't free "lock_seq_stat" if read_count isn't zero
  perf lock: Correct field name "flags"
  MAINTAINERS/bpf: Update Andrii's entry.
  spi: lpspi: Fix use-after-free on unbind
  lan743x: fix use of uninitialized variable
  net: udp: fix IP header access and skb lookup on Fast/frag0 UDP GRO
  net: udp: fix UDP header access on Fast/frag0 UDP GRO
  gfs2: Fix case in which ail writes are done to jdata holes
  Revert "gfs2: Ignore journal log writes for jdata holes"
  RMDA/sw: Don't allow drivers using dma_virt_ops on highmem configs
  selftests/bpf: Fix unused attribute usage in subprogs_unused test
  RDMA/pvrdma: Fix missing kfree() in pvrdma_register_device()
  FROMLIST: fuse: Fix colliding FUSE_PASSTHROUGH flag
  RDMA/cm: Make the local_id_table xarray non-irq
  devlink: Avoid overwriting port attributes of registered port
  vrf: Fix fast path output packet handling with async Netfilter rules
  NFS: Remove unnecessary inode lock in nfs_fsync_dir()
  NFS: Remove unnecessary inode locking in nfs_llseek_dir()
  NFS: Fix listxattr receive buffer size
  NFSv4.2: fix failure to unregister shrinker
  spi: bcm-qspi: Fix use-after-free on unbind
  spi: bcm2835aux: Fix use-after-free on unbind
  spi: bcm2835: Fix use-after-free on unbind
  spi: Introduce device-managed SPI controller allocation
  HID: Add Logitech Dinovo Edge battery quirk
  HID: logitech-hidpp: Add HIDPP_CONSUMER_VENDOR_KEYS quirk for the Dinovo Edge
  hwmon: (applesmc) Re-work SMC comms
  hwmon: (pwm-fan) Fix RPM calculation
  HID: logitech-dj: Handle quad/bluetooth keyboards with a builtin trackpad
  gfs2: fix possible reference leak in gfs2_check_blk_type
  thermal: ti-soc-thermal: Disable the CPU PM notifier for OMAP4430
  s390/cpum_sf.c: fix file permission for cpum_sfb_size
  s390: update defconfigs
  mac80211: minstrel: fix tx status processing corner case
  mac80211: minstrel: remove deferred sampling code
  mac80211: fix memory leak on filtered powersave frames
  serial: ar933x_uart: disable clk on error handling path in probe
  tty: serial: imx: keep console clocks always on
  speakup: Do not let the line discipline be used several times
  tty: serial: imx: fix potential deadlock
  rfkill: Fix use-after-free in rfkill_resume()
  drm/i915/gvt: Set ENHANCED_FRAME_CAP bit
  fscrypt: fix inline encryption not used on new files
  Input: elan_i2c - fix firmware update on newer ICs
  ANDROID: gic-v3: Add vendor hook to GIC v3
  cosa: Add missing kfree in error path of cosa_write
  Input: resistive-adc-touch - fix kconfig dependency on IIO_BUFFER
  net: switch to the kernel.org patchwork instance
  ANDROID: arm64: gki_defconfig: Disable RANDOMIZE_MODULE_REGION_FULL
  ch_ktls: stop the txq if reaches threshold
  ch_ktls: tcb update fails sometimes
  ch_ktls/cxgb4: handle partial tag alone SKBs
  ch_ktls: don't free skb before sending FIN
  ch_ktls: packet handling prior to start marker
  ch_ktls: Correction in middle record handling
  ch_ktls: missing handling of header alone
  ch_ktls: Correction in trimmed_len calculation
  cxgb4/ch_ktls: creating skbs causes panic
  ch_ktls: Update cheksum information
  ch_ktls: Correction in finding correct length
  cxgb4/ch_ktls: decrypted bit is not enough
  dt-bindings: can: fsl,flexcan.yaml: fix fsl,stop-mode
  of/address: Fix of_node memory leak in of_dma_is_coherent
  net/x25: Fix null-ptr-deref in x25_connect
  arm64: dts: fsl-ls1028a-kontron-sl28: specify in-band mode for ENETC
  tipc: fix memory leak in tipc_topsrv_start()
  Revert "ext4: fix superblock checksum calculation race"
  ext4: handle dax mount option collision
  ANDROID: ext4: fix encrypt+casefold support
  io_uring: round-up cq size before comparing with rounded sq size
  xfs: fix a missing unlock on error in xfs_fs_map_blocks
  spi: fsi: Fix transfer returning without finalizing message
  spi: fix client driver breakages when using GPIO descriptors
  regulator: pfuze100: limit pfuze-support-disable-sw to pfuze{100,200}
  x86/platform/uv: Drop last traces of uv_flush_tlb_others
  Drivers: hv: vmbus: Allow cleanup of VMBUS_CONNECT_CPU if disconnected
  bpf: Fix unsigned 'datasec_id' compared with zero in check_pseudo_btf_id
  gpio: sifive: Fix SiFive gpio probe
  KVM: s390: remove diag318 reset code
  KVM: s390: pv: Mark mm as protected after the set secure parameters and improve cleanup
  ALSA: hda/realtek: Add some Clove SSID in the ALC293(ALC1220)
  ARM: dts: am437x-l4: fix compatible for cpsw switch dt node
  scsi: ufshcd: Fix missing destroy_workqueue()
  MAINTAINERS: remove Ursula Braun as s390 network maintainer
  net/af_iucv: fix null pointer dereference on shutdown
  lan743x: fix "BUG: invalid wait context" when setting rx mode
  net: dsa: mv88e6xxx: Fix memleak in mv88e6xxx_region_atu_snapshot
  net: Update window_clamp if SOCK_RCVBUF is set
  rcu: Don't invoke try_invoke_on_locked_down_task() with irqs disabled
  vfs: move __sb_{start,end}_write* to fs.h
  vfs: separate __sb_start_write into blocking and non-blocking helpers
  vfs: remove lockdep bogosity in __sb_start_write
  xfs: fix brainos in the refcount scrubber's rmap fragment processor
  xfs: fix rmap key and record comparison functions
  xfs: set the unwritten bit in rmap lookup flags in xchk_bmap_get_rmapextents
  xfs: fix flags argument to rmap lookup when converting shared file rmaps
  net: phy: realtek: support paged operations on RTL8201CP
  lan743x: correctly handle chips with internal PHY
  netlabel: fix our progress tracking in netlbl_unlabel_staticlist()
  drm/mcde: Fix unbalanced regulator
  MAINTAINERS: Update repositories for Intel Ethernet Drivers
  igc: Fix returning wrong statistics
  i40e, xsk: uninitialized variable in i40e_clean_rx_irq_zc()
  i40e: Fix MAC address setting for a VF via Host/VM
  selftest: fix flower terse dump tests
  ANDROID: scsi: ufs: revise and fix custom keyslot manager support
  ANDROID: vendor_hooks: Add hook for jiffies updates
  ANDROID: clk: Enable writable debugfs files
  um: Call pgtable_pmd_page_dtor() in __pmd_free_tlb()
  kunit: fix display of failed expectations for strings
  kunit: tool: fix extra trailing \n in raw + parsed test output
  kunit: tool: print out stderr from make (like build warnings)
  KUnit: Docs: usage: wording fixes
  KUnit: Docs: style: fix some Kconfig example issues
  KUnit: Docs: fix a wording typo
  kunit: Do not pollute source directory with generated files (test.log)
  ANDROID: enable LLVM_IAS=1 for clang's integrated assembler for aarch64
  FROMLIST: Kbuild: do not emit debug info for assembly with LLVM_IAS=1
  kunit: Do not pollute source directory with generated files (.kunitconfig)
  kunit: tool: fix pre-existing python type annotation errors
  kunit: Fix kunit.py parse subcommand (use null build_dir)
  ANDROID: printk: add vendor hook for console flush
  ANDROID: Reduce log level for couple of prints in hotplug flow
  kunit: tool: unmark test_data as binary blobs
  drm/tegra: replace idr_init() by idr_init_base()
  ANDROID: GKI: Enable CONFIG_RT_SOFTINT_OPTIMIZATION
  ANDROID: trace: Add trace points for tasklet entry/exit
  ANDROID: Revert "softirq: Let ksoftirqd do its job"
  ANDROID: Revert "Mark HI and TASKLET softirq synchronous"
  ANDROID: softirq: defer softirq processing to ksoftirqd if CPU is busy with RT
  ANDROID: sched: avoid migrating when softint on tgt cpu should be short
  ANDROID: sched: avoid placing RT threads on cores handling softirqs
  Revert "ANDROID: Kbuild, LLVMLinux: allow overriding clang target triple"
  iwlwifi: mvm: fix kernel panic in case of assert during CSA
  iwlwifi: pcie: set LTR to avoid completion timeout
  iwlwifi: mvm: write queue_sync_state only for sync
  iwlwifi: mvm: properly cancel a session protection for P2P
  iwlwifi: mvm: use the HOT_SPOT_CMD to cancel an AUX ROC
  iwlwifi: sta: set max HE max A-MPDU according to HE capa
  efi/x86: Free efi_pgd with free_pages()
  ACPI: DPTF: Support Alder Lake
  Documentation: ACPI: fix spelling mistakes
  sched/debug: Fix memory corruption caused by multiple small reads of flags
  sched/fair: Prefer prev cpu in asymmetric wakeup path
  sched/fair: Ensure tasks spreading in LLC during LB
  perf/x86/intel/uncore: Fix Add BW copypasta
  lockdep: Avoid to modify chain keys in validate_chain()
  drm/tegra: sor: Ensure regulators are disabled on teardown
  cpufreq: intel_pstate: Take CPUFREQ_GOV_STRICT_TARGET into account
  cpufreq: Add strict_target to struct cpufreq_policy
  cpufreq: Introduce CPUFREQ_GOV_STRICT_TARGET
  cpufreq: Introduce governor flags
  regulator: core: don't disable regulator if is_enabled return error.
  tools/power turbostat: update version number
  powercap: restrict energy meter to root access
  nbd: fix a block_device refcount leak in nbd_release
  pinctrl: qcom: sm8250: Specify PDC map
  pinctrl: qcom: Move clearing pending IRQ to .irq_request_resources callback
  pinctrl: amd: use higher precision for 512 RtcClk
  pinctrl: amd: fix incorrect way to disable debounce filter
  arm64: smp: Tell RCU about CPUs that fail to come online
  arm64: psci: Avoid printing in cpu_psci_cpu_die()
  arm64: kexec_file: Fix sparse warning
  arm64: errata: Fix handling of 1418040 with late CPU onlining
  Revert "mmc: renesas_sdhi: workaround a regression when reinserting SD cards"
  mmc: tmio: bring tuning HW to a sane state with MMC_POWER_OFF
  mmc: tmio: when resetting, reset DMA controller, too
  dmaengine: ti: omap-dma: Block PM if SDMA is busy to fix audio
  mmc: sdhci-of-esdhc: Handle pulse width detection erratum for more SoCs
  mmc: renesas_sdhi_core: Add missing tmio_mmc_host_free() at remove
  ANDROID: Enable hermetic toolchain
  net: xfrm: fix memory leak in xfrm_user_policy()
  drm/i915/gvt: Temporarily disable vfio_edid for BXT/APL
  ARM: dts: imx50-evk: Fix the chip select 1 IOMUX
  arm64: dts: imx8mm: fix voltage for 1.6GHz CPU operating point
  mptcp: provide rmem[0] limit
  docs: networking: phy: s/2.5 times faster/2.5 times as fast/
  ethtool: netlink: add missing netdev_features_change() call
  tunnels: Fix off-by-one in lower MTU bounds for ICMP/ICMPv6 replies
  IPv6: Set SIT tunnel hard_header_len to zero
  bpf: Fix passing zero to PTR_ERR() in bpf_btf_printf_prepare
  libbpf: Don't attempt to load unused subprog as an entry-point BPF program
  ACPI: button: Add DMI quirk for Medion Akoya E2228T
  ACPI: GED: fix -Wformat
  ACPI: Fix whitespace inconsistencies
  ACPI: scan: Fix acpi_dma_configure_id() kerneldoc name
  Documentation: firmware-guide: gpio-properties: Clarify initial output state
  Documentation: firmware-guide: gpio-properties: active_low only for GpioIo()
  Documentation: firmware-guide: gpio-properties: Fix factual mistakes
  uio: Fix use-after-free in uio_unregister_device()
  firmware: xilinx: fix out-of-bounds access
  nitro_enclaves: Fixup type and simplify logic of the poll mask setup
  speakup ttyio: Do not schedule() in ttyio_in_nowait
  speakup: Fix clearing selection in safe context
  speakup: Fix var_id_t values and thus keymap
  perf/x86/intel: Make anythread filter support conditional
  perf: Tweak perf_event_attr::exclusive semantics
  perf: Fix event multiplexing for exclusive groups
  perf: Simplify group_sched_in()
  perf: Simplify group_sched_out()
  perf/x86: Make dummy_iregs static
  perf/arch: Remove perf_sample_data::regs_user_copy
  perf: Optimize get_recursion_context()
  perf: Fix get_recursion_context()
  perf/x86: Reduce stack usage for x86_pmu::drain_pebs()
  perf: Reduce stack usage of perf_output_begin()
  virtio: virtio_console: fix DMA memory allocation for rproc serial
  nvme: fix incorrect behavior when BLKROSET is called by the user
  KVM: selftests: allow two iterations of dirty_log_perf_test
  drm/gma500: Fix out-of-bounds access to struct drm_device.vblank[]
  fanotify: fix logic of reporting name info with watched parent
  x86/xen: don't unbind uninitialized lock_kicker_irq
  ARM: dts: stm32: Keep VDDA LDO1 always on on DHCOM
  ARM: dts: stm32: Enable thermal sensor support on stm32mp15xx-dhcor
  drm/tegra: sor: Don't warn on probe deferral
  futex: Don't enable IRQs unconditionally in put_pi_state()
  ARM: dts: stm32: Define VIO regulator supply on DHCOM
  ARM: dts: stm32: Fix LED5 on STM32MP1 DHCOM PDK2
  ARM: dts: stm32: Fix TA3-GPIO-C key on STM32MP1 DHCOM PDK2
  dmaengine: xilinx_dma: Fix SG capability check for MCDMA
  dmaengine: xilinx_dma: Fix usage of xilinx_aximcdma_tx_segment
  dmaengine: xilinx_dma: use readl_poll_timeout_atomic variant
  HID: add HID_QUIRK_INCREMENT_USAGE_ON_DUPLICATE for Gamevice devices
  arm64: dts: renesas: r8a774e1: Add missing audio_clk_b
  s390: fix system call exit path
  tee: amdtee: synchronize access to shm list
  tee: amdtee: fix memory leak due to reset of global shm list
  video: hyperv_fb: include vmalloc.h
  xfrm/compat: Don't allocate memory with __GFP_ZERO
  xfrm/compat: memset(0) 64-bit padding at right place
  xfrm/compat: Translate by copying XFRMA_UNSPEC attribute
  Input: sunkbd - avoid use-after-free in teardown paths
  Linux 5.10-rc3
  net/sunrpc: fix useless comparison in proc_do_xprt()
  fork: fix copy_process(CLONE_PARENT) race with the exiting ->real_parent
  vt: Disable KD_FONT_OP_COPY
  iio: light: fix kconfig dependency bug for VCNL4035
  iio/adc: ingenic: Fix AUX/VBAT readings when touchscreen is used
  iio/adc: ingenic: Fix battery VREF for JZ4770 SoC
  KVM: selftests: Introduce the dirty log perf test
  KVM: selftests: Make the number of vcpus global
  KVM: selftests: Make the per vcpu memory size global
  KVM: selftests: Drop pointless vm_create wrapper
  KVM: selftests: Add wrfract to common guest code
  KVM: selftests: Simplify demand_paging_test with timespec_diff_now
  KVM: selftests: Remove address rounding in guest code
  KVM: selftests: Factor code out of demand_paging_test
  KVM: selftests: Use a single binary for dirty/clear log test
  KVM: selftests: Always clear dirty bitmap after iteration
  KVM: selftests: Add blessed SVE registers to get-reg-list
  KVM: selftests: Add aarch64 get-reg-list test
  selftests: kvm: test enforcement of paravirtual cpuid features
  selftests: kvm: Add exception handling to selftests
  selftests: kvm: Clear uc so UCALL_NONE is being properly reported
  selftests: kvm: Fix the segment descriptor layout to match the actual layout
  drm: bridge: cdns: Kconfig: Switch over dependency to ARCH_K3
  KVM: x86: handle MSR_IA32_DEBUGCTLMSR with report_ignored_msrs
  kvm: x86: request masterclock update any time guest uses different msr
  kvm: x86: ensure pv_cpuid.features is initialized when enabling cap
  kvm: x86: reads of restricted pv msrs should also result in #GP
  KVM: x86: use positive error values for msr emulation that causes #GP
  KVM: Documentation: Update entry for KVM_CAP_ENFORCE_PV_CPUID
  KVM: Documentation: Update entry for KVM_X86_SET_MSR_FILTER
  KVM: x86/mmu: fix counting of rmap entries in pte_list_add
  powerpc/32s: Use relocation offset when setting early hash table
  arm64: dts: rockchip: Reorder LED triggers from mmc devices on rk3399-roc-pc.
  arm64: dts: rockchip: Assign a fixed index to mmc devices on rk3399 boards.
  futex: Handle transient "ownerless" rtmutex state correctly
  net: marvell: prestera: fix compilation with CONFIG_BRIDGE=m
  r8169: disable hw csum for short packets on all chip versions
  r8169: fix potential skb double free in an error path
  perf/core: Fix a memory leak in perf_event_parse_addr_filter()
  x86/platform/uv: Recognize UV5 hubless system identifier
  x86/platform/uv: Remove spaces from OEM IDs
  x86/platform/uv: Fix missing OEM_TABLE_ID
  ALSA: hda/realtek - Add supported for Lenovo ThinkPad Headset Button
  jbd2: fix up sparse warnings in checkpoint code
  ext4: fix sparse warnings in fast_commit code
  ext4: cleanup fast commit mount options
  jbd2: don't start fast commit on aborted journal
  ext4: make s_mount_flags modifications atomic
  ext4: issue fsdev cache flush before starting fast commit
  ext4: disable fast commit with data journalling
  ext4: fix inode dirty check in case of fast commits
  ext4: remove unnecessary fast commit calls from ext4_file_mmap
  ext4: mark buf dirty before submitting fast commit buffer
  ext4: fix code documentatioon
  ext4: dedpulicate the code to wait on inode that's being committed
  jbd2: don't read journal->j_commit_sequence without taking a lock
  jbd2: don't touch buffer state until it is filled
  jbd2: add todo for a fast commit performance optimization
  jbd2: don't pass tid to jbd2_fc_end_commit_fallback()
  jbd2: don't use state lock during commit path
  jbd2: drop jbd2_fc_init documentation
  ext4: clean up the JBD2 API that initializes fast commits
  jbd2: rename j_maxlen to j_total_len and add jbd2_journal_max_txn_bufs
  ext4: fixup ext4_fc_track_* functions' signature
  ext4: drop redundant calls ext4_fc_track_range
  ext4: mark fc ineligible if inode gets evictied due to mem pressure
  ext4: describe fast_commit feature flags
  ext4: unlock xattr_sem properly in ext4_inline_data_truncate()
  ext4: silence an uninitialized variable warning
  MAINTAINERS: add missing file in ext4 entry
  ext4: correctly report "not supported" for {usr,grp}jquota when !CONFIG_QUOTA
  bpf: Update verification logic for LSM programs
  net/sunrpc: return 0 on attempt to write to "transports"
  ANDROID: fuse: Add support for d_canonical_path
  ANDROID: vfs: d_canonical_path for stacked FS
  seq_file: add seq_read_iter
  proc "seq files": switch to ->read_iter
  proc "single files": switch to ->read_iter
  proc/stat: switch to ->read_iter
  proc/cpuinfo: switch to ->read_iter
  proc: wire up generic_file_splice_read for iter ops
  fscrypt: remove reachable WARN in fscrypt_setup_iv_ino_lblk_32_key()
  ANDROID: GKI: build in a kernel command line of "rw"
  null_blk: Fix scheduling in atomic with zoned mode
  tty: fix crash in release_tty if tty->port is not set
  serial: txx9: add missing platform_driver_unregister() on error in serial_txx9_init
  tty: serial: imx: enable earlycon by default if IMX_SERIAL_CONSOLE is enabled
  serial: 8250_mtk: Fix uart_get_baud_rate warning
  tpm: efi: Don't create binary_bios_measurements file for an empty log
  tpm_tis: Disable interrupts on ThinkPad T490s
  staging: rtl8723bs: Add 024c:0627 to the list of SDIO device-ids
  KVM: arm64: Remove AA64ZFR0_EL1 accessors
  KVM: arm64: Check RAZ visibility in ID register accessors
  KVM: arm64: Consolidate REG_HIDDEN_GUEST/USER
  KVM: arm64: Don't hide ID registers from userspace
  KVM: arm64: Fix build error in user_mem_abort()
  i2c: designware: slave should do WRITE_REQUESTED before WRITE_RECEIVED
  i2c: designware: call i2c_dw_read_clear_intrbits_slave() once
  i2c: mlxbf: I2C_MLXBF should depend on MELLANOX_PLATFORM
  i2c: mlxbf: Update author and maintainer email info
  i2c: mlxbf: Update reference clock frequency
  i2c: mlxbf: Remove unecessary wrapper functions
  i2c: mlxbf: Fix resrticted cast warning of sparse
  i2c: mlxbf: Add CONFIG_ACPI to guard ACPI function call
  i2c: sh_mobile: implement atomic transfers
  gpio: pcie-idio-24: Enable PEX8311 interrupts
  gpio: pcie-idio-24: Fix IRQ Enable Register value
  gpio: pcie-idio-24: Fix irq mask when masking
  thunderbolt: Add support for Intel Tiger Lake-H
  spi: bcm2835: remove use of uninitialized gpio flags variable
  USB: apple-mfi-fastcharge: fix reference leak in apple_mfi_fc_set_property
  usb: mtu3: fix panic in mtu3_gadget_stop()
  staging: ralink-gdma: fix kconfig dependency bug for DMA_RALINK
  staging: mt7621-pci: avoid to request pci bus resources
  printk: remove unneeded dead-store assignment
  MAINTAINERS: update maintainers list for Cypress
  MAINTAINERS: update Yan-Hsuan's email address
  RISC-V: Fix the VDSO symbol generaton for binutils-2.35+
  RISC-V: Use non-PGD mappings for early DTB access
  riscv: uaccess: fix __put_kernel_nofault()
  riscv: fix pfn_to_virt err in do_page_fault().
  bpf: Zero-fill re-used per-cpu map element
  powerpc/numa: Fix build when CONFIG_NUMA=n
  bpf: BPF_PRELOAD depends on BPF_SYSCALL
  tools/bpftool: Fix attaching flow dissector
  riscv: Set text_offset correctly for M-Mode
  ANDROID: Incremental fs: Add zstd compression support
  drm/amd/display: Add missing pflip irq
  io_uring: fix link lookup racing with link timeout
  NFSD: fix missing refcount in nfsd4_copy by nfsd4_do_async_copy
  NFSD: Fix use-after-free warning when doing inter-server copy
  NFSD: MKNOD should return NFSERR_BADTYPE instead of NFSERR_INVAL
  SUNRPC: Fix general protection fault in trace_rpc_xdr_overflow()
  NFSD: NFSv3 PATHCONF Reply is improperly formed
  arm64: kexec_file: try more regions if loading segments fails
  ANDROID: arm: allow hooks into ipi
  ANDROID: arm64: allow hooks into ipi
  x86/speculation: Allow IBPB to be conditionally enabled on CPUs with always-on STIBP
  net/mlx5e: Fix incorrect access of RCU-protected xdp_prog
  net/mlx5e: Fix VXLAN synchronization after function reload
  net/mlx5: E-switch, Avoid extack error log for disabled vport
  net/mlx5: Fix deletion of duplicate rules
  net/mlx5e: Use spin_lock_bh for async_icosq_lock
  net/mlx5e: Protect encap route dev from concurrent release
  net/mlx5e: Fix modify header actions memory leak
  ANDROID: printk: printk_deferred for modules
  ANDROID: sched: Add trace hook for rt throttle dump
  ionic: check port ptr before use
  RISC-V: Remove any memblock representing unusable memory area
  ASoC: rt1015: add delay to fix pop noise from speaker
  selftests: binderfs: use SKIP instead of XFAIL
  selftests: clone3: use SKIP instead of XFAIL
  selftests: core: use SKIP instead of XFAIL in close_range_test.c
  selftests: proc: fix warning: _GNU_SOURCE redefined
  io_uring: use correct pointer for io_uring_show_cred()
  io_uring: don't forget to task-cancel drained reqs
  RDMA/srpt: Fix typo in srpt_unregister_mad_agent docstring
  gpiolib: fix sysfs when cdev is not selected
  pinctrl: aspeed: Fix GPI only function problem.
  media: cedrus: h264: Fix check for presence of scaling matrix
  media: media/platform/marvell-ccic: fix warnings when CONFIG_PM is not enabled
  media: mtk-vcodec: fix build breakage when one of VPU or SCP is enabled
  media: mtk-vcodec: move firmware implementations into their own files
  powerpc/8xx: Manage _PAGE_ACCESSED through APG bits in L1 entry
  powerpc/8xx: Always fault when _PAGE_ACCESSED is not set
  powerpc/40x: Always fault when _PAGE_ACCESSED is not set
  powerpc/603: Always fault when _PAGE_ACCESSED is not set
  btrfs: ref-verify: fix memory leak in btrfs_ref_tree_mod
  btrfs: dev-replace: fail mount if we don't have replace item with target device
  btrfs: scrub: update message regarding read-only status
  btrfs: clean up NULL checks in qgroup_unreserve_range()
  btrfs: fix min reserved size calculation in merge_reloc_root
  btrfs: print the block rsv type when we fail our reservation
  btrfs: fix potential overflow in cluster_pages_for_defrag on 32bit arch
  thunderbolt: Only configure USB4 wake for lane 0 adapters
  thunderbolt: Add uaccess dependency to debugfs interface
  thunderbolt: Fix memory leak if ida_simple_get() fails in enumerate_services()
  pinctrl: mcp23s08: Print error message when regmap init fails
  pinctrl: mcp23s08: Use full chunk of memory for regmap configuration
  HID: mcp2221: Fix GPIO output handling
  HID: hid-sensor-hub: Fix issue with devices with no report ID
  ALSA: usb-audio: Add implicit feedback quirk for Qu-16
  scsi: ufs: Try to save power mode change and UIC cmd completion timeout
  scsi: ufs: Fix unbalanced scsi_block_reqs_cnt caused by ufshcd_hold()
  xfs: only flush the unshared range in xfs_reflink_unshare
  r8169: work around short packet hw bug on RTL8125
  clk: imx8m: fix bus critical clk registration
  drm/mediatek: mtk_dpi: Fix unused variable 'mtk_dpi_encoder_funcs'
  powerpc: Use asm_goto_volatile for put_user()
  risc-v: kernel: ftrace: Fixes improper SPDX comment style
  libbpf: Fix possible use after free in xsk_socket__delete
  libbpf: Fix null dereference in xsk_socket__delete
  USB: serial: option: add Telit FN980 composition 0x1055
  ceph: check session state after bumping session->s_seq
  PCI: mvebu: Fix duplicate resource requests
  PCI: dwc: Restore ATU memory resource setup to use last entry
  spi: fsl-dspi: fix wrong pointer in suspend/resume
  ASoC: mchp-spdiftx: Do not set Validity bit(s)
  io_uring: fix overflowed cancel w/ linked ->files
  io_uring: drop req/tctx io_identity separately
  io_uring: ensure consistent view of original task ->mm from SQPOLL
  io_uring: properly handle SQPOLL request cancelations
  io-wq: cancel request if it's asking for files and we don't have them
  entry: Fix the incorrect ordering of lockdep and RCU check
  xfs: fix scrub flagging rtinherit even if there is no rt device
  xfs: fix missing CoW blocks writeback conversion retry
  iomap: clean up writeback state logic on writepage error
  iomap: support partial page discard on writeback block mapping failure
  xfs: flush new eof page on truncate to avoid post-eof corruption
  kprobes: Tell lockdep about kprobe nesting
  pinctrl: rockchip: create irq mapping in gpio_to_irq
  pinctrl: rockchip: enable gpio pclk for rockchip_gpio_to_irq
  ALSA: usb-audio: Add implicit feedback quirk for MODX
  ALSA: usb-audio: add usb vendor id as DSD-capable for Khadas devices
  drm/amdgpu/display: remove DRM_AMD_DC_GREEN_SARDINE
  drm/amd/display: Add green_sardine support to DM
  drm/amd/display: Add green_sardine support to DC
  drm/amdgpu: enable vcn support for green_sardine (v2)
  drm/amdgpu: enable green_sardine_asd.bin loading (v2)
  drm/amdgpu/sdma: add sdma engine support for green_sardine (v2)
  drm/amdgpu: add gfx support for green_sardine (v2)
  drm/amdgpu: add soc15 common ip block support for green_sardine (v3)
  drm/amdgpu: add green_sardine support for gpu_info and ip block setting (v2)
  drm/amdgpu: add Green_Sardine APU flag
  x86/lib: Change .weak to SYM_FUNC_START_WEAK for arch/x86/lib/mem*_64.S
  Documentation: remove mic/index from misc-devices/index.rst
  USB: serial: option: add LE910Cx compositions 0x1203, 0x1230, 0x1231
  USB: serial: cyberjack: fix write-URB completion race
  ARM, xtensa: highmem: avoid clobbering non-page aligned memory reservations
  habanalabs/gaudi: mask WDT error in QMAN
  habanalabs/gaudi: move coresight mmu config
  habanalabs: fix kernel pointer type
  hwmon: (pmbus) Add mutex locking for sysfs reads
  drm/amdgpu: resolved ASD loading issue on sienna
  amdkfd: Check kvmalloc return before memcpy
  drm/amdgpu: update golden setting for sienna_cichlid
  amd/amdgpu: Disable VCN DPG mode for Picasso
  drm/amdgpu/swsmu: remove duplicate call to smu_set_default_dpm_table
  erofs: fix setting up pcluster for temporary pages
  erofs: derive atime instead of leaving it empty
  net: openvswitch: silence suspicious RCU usage warning
  drm/i915: Hold onto an explicit ref to i915_vma_work.pinned
  drm/i915/gt: Flush xcs before tgl breadcrumbs
  drm/i915/gt: Expose more parameters for emitting writes into the ring
  drm/i915: Fix encoder lookup during PSR atomic check
  drm/i915/gt: Use the local HWSP offset during submission
  drm/i915/gem: Flush coherency domains on first set-domain-ioctl
  chelsio/chtls: fix always leaking ctrl_skb
  chelsio/chtls: fix memory leaks caused by a race
  can: flexcan: flexcan_remove(): disable wakeup completely
  can: flexcan: add ECC initialization for VF610
  can: flexcan: add ECC initialization for LX2160A
  can: flexcan: remove FLEXCAN_QUIRK_DISABLE_MECR quirk for LS1021A
  can: mcp251xfd: remove unneeded break
  can: mcp251xfd: mcp251xfd_regmap_nocrc_read(): fix semicolon.cocci warnings
  can: mcp251xfd: mcp251xfd_regmap_crc_read(): increase severity of CRC read error messages
  can: peak_canfd: pucan_handle_can_rx(): fix echo management when loopback is on
  can: peak_usb: peak_usb_get_ts_time(): fix timestamp wrapping
  can: peak_usb: add range checking in decode operations
  can: xilinx_can: handle failure cases of pm_runtime_get_sync
  can: ti_hecc: ti_hecc_probe(): add missed clk_disable_unprepare() in error path
  can: isotp: padlen(): make const array static, makes object smaller
  can: isotp: isotp_rcv_cf(): enable RX timeout handling in listen-only mode
  can: isotp: Explain PDU in CAN_ISOTP help text
  can: j1939: j1939_sk_bind(): return failure if netdev is down
  can: j1939: use backquotes for code samples
  can: j1939: swap addr and pgn in the send example
  can: j1939: fix syntax and spelling
  can: j1939: rename jacd tool
  can: can_create_echo_skb(): fix echo skb generation: always use skb_clone()
  can: dev: __can_get_echo_skb(): fix real payload length return value for RTR frames
  can: dev: can_get_echo_skb(): prevent call to kfree_skb() in hard IRQ context
  can: rx-offload: don't call kfree_skb() from IRQ context
  can: proc: can_remove_proc(): silence remove_proc_entry warning
  dt-bindings: can: flexcan: convert fsl,*flexcan bindings to yaml
  dt-bindings: can: add can-controller.yaml
  net: usb: qmi_wwan: add Telit LE910Cx 0x1230 composition
  i2c: mediatek: move dma reset before i2c reset
  mptcp: token: fix unititialized variable
  vfio/pci: Bypass IGD init in case of -ENODEV
  vfio: platform: fix reference leak in vfio_platform_open
  vfio/pci: Implement ioeventfd thread handler for contended memory lock
  vfio/fsl-mc: Make vfio_fsl_mc_irqs_allocate static
  vfio/fsl-mc: prevent underflow in vfio_fsl_mc_mmap()
  afs: Fix incorrect freeing of the ACL passed to the YFS ACL store op
  afs: Fix warning due to unadvanced marshalling pointer
  ALSA: hda/realtek - Enable headphone for ASUS TM420
  dt-bindings: irqchip: ti, sci-inta: Fix diagram indentation for unmapped events
  docs: fix automarkup regression on Python 2
  s390/pci: fix hot-plug of PCI function missing bus
  s390/smp: move rcu_cpu_starting() earlier
  s390/pkey: fix paes selftest failure with paes and pkey static build
  s390: update defconfigs
  s390/vdso: remove unused constants
  s390/vdso: remove empty unused file
  s390/mm: make pmd/pud_deref() large page aware
  s390/ap: fix ap devices reference counting
  arm64: kprobes: Use BRK instead of single-step when executing instructions out-of-line
  iommu: Fix a check in iommu_check_bind_data()
  gfs2: Wake up when sd_glock_disposal becomes zero
  iommu/vt-d: Fix a bug for PDP check in prq_event_thread
  iommu/vt-d: Fix sid not set issue in intel_svm_bind_gpasid()
  iommu/vt-d: Fix kernel NULL pointer dereference in find_domain()
  iommu/amd: Increase interrupt remapping table limit to 512 entries
  regulator: defer probe when trying to get voltage from unresolved supply
  ALSA: hda: prevent undefined shift in snd_hdac_ext_bus_get_link()
  tools feature: Fixup fast path feature detection
  perf tools: Add missing swap for cgroup events
  perf tools: Add missing swap for ino_generation
  perf tools: Initialize output buffer in build_id__sprintf
  perf hists browser: Increase size of 'buf' in perf_evsel__hists_browse()
  tools include UAPI: Update linux/mount.h copy
  tools headers UAPI: Update tools's copy of linux/perf_event.h
  tools kvm headers: Update KVM headers from the kernel sources
  tools UAPI: Update copy of linux/mman.h from the kernel sources
  tools arch x86: Sync the msr-index.h copy with the kernel sources
  tools x86 headers: Update required-features.h header from the kernel
  tools x86 headers: Update cpufeatures.h headers copies
  tools headers UAPI: Update fscrypt.h copy
  tools headers UAPI: Sync drm/i915_drm.h with the kernel sources
  tools headers UAPI: Sync prctl.h with the kernel sources
  perf scripting python: Avoid declaring function pointers with a visibility attribute
  perf tools: Remove broken __no_tail_call attribute
  perf vendor events: Fix DRAM_BW_Use 0 issue for CLX/SKX
  perf trace: Fix segfault when trying to trace events by cgroup
  perf tools: Fix crash with non-jited bpf progs
  tools headers UAPI: Update process_madvise affected files
  perf tools: Update copy of libbpf's hashmap.c
  perf tools: Remove LTO compiler options when building perl support
  Fonts: Replace discarded const qualifier
  arm64: NUMA: Kconfig: Increase NODES_SHIFT to 4
  nvme-tcp: avoid repeated request completion
  nvme-rdma: avoid repeated request completion
  nvme-tcp: avoid race between time out and tear down
  nvme-rdma: avoid race between time out and tear down
  nvme: introduce nvme_sync_io_queues
  USB: Add NO_LPM quirk for Kingston flash drive
  mei: protect mei_cl_mtu from null dereference
  drm/vc4: drv: Remove unused variable
  drm/panfrost: Fix module unload
  init/Kconfig: Fix CPU number in LOG_CPU_MAX_BUF_SHIFT description
  drm/panfrost: Fix a deadlock between the shrinker and madvise path
  sfp: Fix error handing in sfp_probe()
  powerpc/vnic: Extend "failover pending" window
  RDMA/vmw_pvrdma: Fix the active_speed and phys_state value
  net: dsa: qca8k: Fix port MTU setting
  scsi: mpt3sas: Fix timeouts observed while reenabling IRQ
  scsi: scsi_dh_alua: Avoid crash during alua_bus_detach()
  sctp: Fix COMM_LOST/CANT_STR_ASSOC err reporting on big-endian platforms
  tty: make FONTX ioctl use the tty pointer they were actually passed
  libbpf, hashmap: Fix undefined behavior in hash_bits
  net: ethernet: ti: cpsw: disable PTPv1 hw timestamping advertisement
  vfio/fsl-mc: return -EFAULT if copy_to_user() fails
  vfio/type1: Use the new helper to find vfio_group
  tracing: Make -ENOMEM the default error for parse_synth_field()
  ring-buffer: Fix recursion protection transitions between interrupt context
  gfs2: Don't call cancel_delayed_work_sync from within delete work function
  kernel/hung_task.c: make type annotations consistent
  epoll: add a selftest for epoll timeout race
  mm: always have io_remap_pfn_range() set pgprot_decrypted()
  mm, oom: keep oom_adj under or at upper limit when printing
  kthread_worker: prevent queuing delayed work from timer_fn when it is being canceled
  mm/truncate.c: make __invalidate_mapping_pages() static
  lib/crc32test: remove extra local_irq_disable/enable
  ptrace: fix task_join_group_stop() for the case when current is traced
  mm: mempolicy: fix potential pte_unmap_unlock pte error
  kasan: adopt KUNIT tests to SW_TAGS mode
  mm: memcg: link page counters to root if use_hierarchy is false
  mm: memcontrol: correct the NR_ANON_THPS counter of hierarchical memcg
  hugetlb_cgroup: fix reservation accounting
  mm/mremap_pages: fix static key devmap_managed_key updates
  ARC: [plat-hsdk] Remap CCMs super early in asm boot trampoline
  ARC: stack unwinding: avoid indefinite looping
  IB/srpt: Fix memory leak in srpt_add_one
  dpaa_eth: fix the RX headroom size alignment
  dpaa_eth: update the buffer layout for non-A050385 erratum scenarios
  RDMA: Fix software RDMA drivers for dma mapping error
  iwlwifi: pcie: limit memory read spin time
  rtw88: fix fw_fifo_addr check
  Revert "nvme-pci: remove last_sq_tail"
  arm64: dts: agilex/stratix10: Fix qspi node compatible
  of: Drop superfluous ULL suffix for ~0
  PM: runtime: Resume the device earlier in __device_release_driver()
  PM: runtime: Drop pm_runtime_clean_up_links()
  PM: runtime: Drop runtime PM references to supplier on link removal
  ARM: dts: sun8i: v40: bananapi-m2-berry: Fix ethernet node
  ARM: dts: sun8i: r40: bananapi-m2-berry: Fix dcdc1 regulator
  ARM: dts: sun7i: bananapi: Enable RGMII RX/TX delay on Ethernet PHY
  powercap/intel_rapl: remove unneeded semicolon
  Documentation: PM: cpuidle: correct path name
  Documentation: PM: cpuidle: correct typo
  cpufreq: schedutil: Don't skip freq update if need_freq_update is set
  tracing: Fix the checking of stackidx in __ftrace_trace_stack
  nfsroot: Default mount option should ask for built-in NFS version
  swiotlb: remove the tbl_dma_addr argument to swiotlb_tbl_map_single
  swiotlb: fix "x86: Don't panic if can not alloc buffer for swiotlb"
  ftrace: Handle tracing when switching between context
  ftrace: Fix recursion check for NMI test
  tracing: Fix out of bounds write in get_trace_buf
  scripts: get_api.pl: Add sub-titles to ABI output
  scripts: get_abi.pl: Don't let ABI files to create subtitles
  docs: leds: index.rst: add a missing file
  docs: ABI: sysfs-class-net: fix a typo
  docs: ABI: sysfs-driver-dma-ioatdma: what starts with /sys
  drm/vc4: kms: Add functions to create the state objects
  drm/vc4: Use devm_drm_dev_alloc
  drm/vc4: Use the helper to retrieve vc4_dev when needed
  drm/vc4: gem: Add a managed action to cleanup the job queue
  drm/vc4: drv: Use managed drm_mode_config_init
  drm/vc4: bo: Add a managed action to cleanup the cache
  swiotlb: using SIZE_MAX needs limits.h included
  ARM: dts: s3: pinecube: align compatible property to other S3 boards
  ARM: sunxi: Add machine match for the Allwinner V3 SoC
  arm64: dts: allwinner: h6: orangepi-one-plus: Fix ethernet
  builddeb: Fix rootless build in setuid/setgid directory
  kbuild: remove unused OBJSIZE
  powerpc/smp: Call rcu_cpu_starting() earlier
  powerpc/eeh_cache: Fix a possible debugfs deadlock
  ARM: dts: imx6q-prti6q: fix PHY address
  ARM: dts: vf610-zii-dev-rev-b: Fix MDIO over clocking
  arm: dts: imx6qdl-udoo: fix rgmii phy-mode for ksz9031 phy
  iio: imu: st_lsm6dsx: set 10ms as min shub slave timeout
  counter/ti-eqep: Fix regmap max_register
  iio: adc: stm32-adc: fix a regression when using dma and irq
  iio: adc: mediatek: fix unset field
  iio: cros_ec: Use default frequencies when EC returns invalid information
  arm64: dts: rockchip: Remove system-power-controller from pmic on Odroid Go Advance
  arm64: dts: rockchip: fix NanoPi R2S GMAC clock name
  irqchip/ti-sci-inta: Add support for unmapped event handling
  dt-bindings: irqchip: ti, sci-inta: Update for unmapped event handling
  irqchip/renesas-intc-irqpin: Merge irlm_bit and needs_irlm
  irqchip/sifive-plic: Fix chip_data access within a hierarchy
  ip_tunnel: fix over-mtu packet send fail without TUNNEL_DONT_FRAGMENT flags
  cadence: force nonlinear buffers to be cloned
  IPv6: reply ICMP error if the first fragment don't include all headers
  ICMPv6: Add ICMPv6 Parameter Problem, code 3 definition
  net: atm: fix update of position index in lec_seq_next
  netfilter: ipset: Update byte and packet counters regardless of whether they match
  percpu: convert flexible array initializers to use struct_size()
  PCI: Always enable ACS even if no ACS Capability
  mtd: rawnand: stm32_fmc2: fix broken ECC
  net: stmmac: Fix channel lock initialization
  stmmac: intel: Fix kernel panic on pci probe
  gianfar: Account for Tx PTP timestamp in the skb headroom
  gianfar: Replace skb_realloc_headroom with skb_cow_head for PTP
  net: fec: fix MDIO probing for some FEC hardware blocks
  ip6_tunnel: set inner ipproto before ip6_tnl_encap
  netfilter: nf_tables: missing validation from the abort path
  netfilter: use actual socket sk rather than skb sk when routing harder
  wireguard: selftests: check that route_me_harder packets use the right sk
  netfilter: nftables: fix netlink report logic in flowtable and genid
  mac80211: don't require VHT elements for HE on 2.4 GHz
  cfg80211: regulatory: Fix inconsistent format argument
  mac80211: fix kernel-doc markups
  mac80211: always wind down STA state
  cfg80211: initialize wdev data earlier
  mac80211: fix use of skb payload instead of header
  mac80211: fix regression where EAPOL frames were sent in plaintext
  arm64: dts imx8mn: Remove non-existent USB OTG2
  arm64: dts: imx8mm-beacon-som: Fix Choppy BT audio
  arm64: dts: fsl: DPAA FMan DMA operations are coherent
  drm/amdgpu/powerplay: Only apply optimized mclk dpm policy on polaris
  MAINTAINERS: Update AMD POWERPLAY pattern
  drm/amd/pm: do not use ixFEATURE_STATUS for checking smc running
  drm/amd/pm: perform SMC reset on suspend/hibernation
  drm/amd/pm: enable baco reset for Hawaii
  drm/amd/pm: correct the baco reset sequence for CI ASICs
  drm/amdgpu: perform srbm soft reset always on SDMA resume
  drm/amdgpu: rename nv_is_headless_sku()
  drm/amdgpu: disable DCN and VCN for Navi14 0x7340/C9 SKU
  drm/i915/gvt: Fix mmio handler break on BXT/APL.
  drm/i915/gvt: Only pin/unpin intel_context along with workload
  bpf: Don't rely on GCC __attribute__((optimize)) to disable GCSE
  scsi: hpsa: Fix memory leak in hpsa_init_one()
  arm64: dts: fsl: fix endianness issue of rcpm
  arm64: dts: imx8mn-evk: fix missing PMIC's interrupt line pull-up
  arm64: dts: imx8mn-ddr4-evk: fix missing PMIC's interrupt line pull-up
  arm64: dts: imx8mn-var-som: fix missing PMIC's interrupt line pull-up
  arm64: dts: imx8mm-evk: fix missing PMIC's interrupt line pull-up
  arm64: dts: imx8mm-beacon-som: fix missing PMIC's interrupt line pull-up
  arm64: dts: imx8mm-var-som: fix missing PMIC's interrupt line pull-up
  gfs2: check for live vs. read-only file system in gfs2_fitrim
  gfs2: don't initialize statfs_change inodes in spectator mode
  gfs2: Split up gfs2_meta_sync into inode and rgrp versions
  gfs2: init_journal's undo directive should also undo the statfs inodes
  gfs2: Add missing truncate_inode_pages_final for sd_aspace
  gfs2: Free rd_bits later in gfs2_clear_rgrpd to fix use-after-free
  x86/sev-es: Do not support MMIO to/from encrypted memory
  x86/head/64: Check SEV encryption before switching to kernel page-table
  x86/boot/compressed/64: Check SEV encryption in 64-bit boot-path
  xfs: set xefi_discard when creating a deferred agfl free log intent item
  tools, bpftool: Remove two unused variables.
  tools, bpftool: Avoid array index warnings.
  xsk: Fix possible memory leak at socket close
  bpf: Add struct bpf_redir_neigh forward declaration to BPF helper defs
  x86/boot/compressed/64: Sanity-check CPUID results in the early #VC handler
  spi: bcm2835: fix gpio cs level inversion
  ASoC: qcom: lpass-cpu: Fix clock disable failure
  ASoC: qcom: lpass-sc7180: Fix MI2S bitwidth field bit positions
  HID: i2c-hid: Put ACPI enumerated devices in D3 on shutdown
  x86/boot/compressed/64: Introduce sev_status
  arm64: dts: allwinner: h5: OrangePi Prime: Fix ethernet node
  clk: define to_clk_regmap() as inline function
  CREDITS: remove trailing white spaces
  MAINTAINERS: remove Jeongtae Park from Samsung MFC entry
  MAINTAINERS: move Kyungmin Park to credits
  MAINTAINERS: move Kamil Debski to credits
  don't dump the threads that had been already exiting when zapped.
  docs: SafeSetID: fix a warning
  amdgpu: fix a few kernel-doc markup issues
  selftests: kselftest_harness.h: fix kernel-doc markups
  drm: amdgpu_dm: fix a typo
  gpu: docs: amdgpu.rst: get rid of wrong kernel-doc markups
  drm: amdgpu: kernel-doc: update some adev parameters
  docs: fs: api-summary.rst: get rid of kernel-doc include
  IB/srpt: docs: add a description for cq_size member
  locking/refcount: move kernel-doc markups to the proper place
  docs: lockdep-design: fix some warning issues
  MAINTAINERS: fix broken doc refs due to yaml conversion
  ice: docs fix a devlink info that broke a table
  crypto: sun8x-ce*: update entries to its documentation
  net: phy: remove kernel-doc duplication
  mm: pagemap.h: fix two kernel-doc markups
  blk-mq: docs: add kernel-doc description for a new struct member
  docs: userspace-api: add iommu.rst to the index file
  docs: hwmon: mp2975.rst: address some html build warnings
  docs: net: statistics.rst: remove a duplicated kernel-doc
  docs: kasan.rst: add two missing blank lines
  docs: admin-guide: net.rst: add a missing blank line
  docs: hwmon: adm1266.rst: fix a broken reference
  sphinx: conf.py: properly handle Sphinx 4.0
  scripts: kernel-doc: use :c:union when needed
  documentation: arm: sunxi: add Allwinner H6 documents
  scripts: kernel-doc: split typedef complex regex
  scripts: kernel-doc: fix typedef parsing
  mtd: spi-nor: Fix address width on flash chips > 16MB
  docs: Makefile: honor V=0 for docs building
  mtd: spi-nor: Don't copy self-pointing struct around
  ASoC: codecs: wcd9335: Set digital gain range correctly
  phy: cpcap-usb: Use IRQF_ONESHOT
  phy: qcom-qmp: Initialize another pointer to NULL
  phy: tegra: xusb: Fix dangling pointer on probe failure
  phy: usb: Fix incorrect clearing of tca_drv_sel bit in SETUP reg for 7211
  ASoC: codecs: wcd934x: Set digital gain range correctly
  pinctrl: ingenic: Fix invalid SSI pins
  Revert "Revert "gpio: omap: Fix lost edge wake-up interrupts""
  gpio: uapi: clarify the meaning of 'empty' char arrays
  gpio: uapi: remove whitespace
  gpio: uapi: kernel-doc formatting improvements
  gpio: uapi: comment consistency
  gpio: uapi: fix kernel-doc warnings
  ALSA: hda: Reinstate runtime_allow() for all hda controllers
  ALSA: hda: Separate runtime and system suspend
  ALSA: hda: Refactor codec PM to use direct-complete optimization
  ALSA: hda/realtek - Fixed HP headset Mic can't be detected
  USB: serial: option: add Quectel EC200T module support
  dmaengine: ti: k3-udma: fix -Wenum-conversion warning
  dmaengine: idxd: fix wq config registers offset programming
  selftests: pidfd: drop needless linux/kcmp.h inclusion in pidfd_setns_test.c
  selftests: pidfd: add CONFIG_CHECKPOINT_RESTORE=y to config
  selftests: pidfd: skip test on kcmp() ENOSYS
  selftests: pidfd: use ksft_test_result_skip() when skipping test
  selftests/harness: prettify SKIP message whitespace again
  selftests: pidfd: fix compilation errors due to wait.h
  selftests: filter kselftest headers from command in lib.mk
  selftests/ftrace: check for do_sys_openat2 in user-memory test
  selftests/ftrace: Use $FUNCTION_FORK to reference kernel fork function
  samples/bpf: Set rlimit for memlock to infinity in all samples
  bpf: Fix -Wshadow warnings
  ARM: 9019/1: kprobes: Avoid fortify_panic() when copying optprobe template
  MIPS: export has_transparent_hugepage() for modules
  usb: raw-gadget: fix memory leak in gadget_setup
  usb: dwc2: Avoid leaving the error_debugfs label unused
  usb: dwc3: ep0: Fix delay status handling
  drm/imx: tve remove extraneous type qualifier
  drm/imx: parallel-display: reduce scope of edid_len
  drm/imx: parallel-display: remove unused function enc_to_imxpd()
  drm/imx: parallel-display: fix edid memory leak
  drm/imx: imx-ldb: reduce scope of edid_len
  usb: gadget: fsl: fix null pointer checking
  usb: gadget: goku_udc: fix potential crashes in probe
  opp: Reduce the size of critical section in _opp_table_kref_release()
  ARM: OMAP2+: Manage MPU state properly for omap_enter_idle_coupled()
  ALSA: usb-audio: Add implicit feedback quirk for Zoom UAC-2
  usb: dwc3: pci: add support for the Intel Alder Lake-S
  opp: Fix early exit from dev_pm_opp_register_set_opp_helper()
  opp: Don't always remove static OPPs in _of_add_opp_table_v1()
  Input: i8042 - allow insmod to succeed on devices without an i8042 controller
  Input: adxl34x - clean up a data type in adxl34x_probe()
  asm-generic: percpu: avoid Wshadow warning
  ALSA: make snd_kcontrol_new name a normal string
  kunit: tools: fix kunit_tool tests for parsing test plans
  Documentation: kunit: Update Kconfig parts for KUNIT's module support
  kunit: test: fix remaining kernel-doc warnings
  kunit: Don't fail test suites if one of them is empty
  kunit: Fix kunit.py --raw_output option
  mtd: rawnand: ifc: Move the ECC engine initialization to the right place
  mtd: rawnand: mxc: Move the ECC engine initialization to the right place
  x86/hyperv: Clarify comment on x2apic mode
  selftest/bpf: Fix profiler test using CO-RE relocation for enums
  thunderbolt: Add the missed ida_simple_remove() in ring_request_msix()
  hwmon: (pmbus/max20730) use scnprintf() instead of snprintf()
  gpio: aspeed: fix ast2600 bank properties
  gpio: dwapb: Fix missing conversion to GPIO-lib-based IRQ-chip
  ALSA: fix kernel-doc markups
  pinctrl: intel: Set default bias in case no particular value given
  pinctrl: intel: Fix 2 kOhm bias which is 833 Ohm
  arm64: dts: allwinner: a64: bananapi-m64: Enable RGMII RX/TX delay on PHY
  arm64: dts: allwinner: h5: libretech-all-h5-cc: Enable RGMII RX/TX delay on PHY
  ARM: dts: sunxi: bananapi-m2-plus: Enable RGMII RX/TX delay on Ethernet PHY
  ARM: dts: sun9i: Enable both RGMII RX/TX delay on Ethernet PHY
  ARM: dts: sun8i: a83t: Enable both RGMII RX/TX delay on Ethernet PHY
  ARM: dts: sun8i: h3: orangepi-plus2e: Enable RGMII RX/TX delay on Ethernet PHY
  ARM: dts: sun7i: bananapi-m1-plus: Enable RGMII RX/TX delay on Ethernet PHY
  ARM: dts: sun7i: cubietruck: Enable RGMII RX/TX delay on Ethernet PHY
  ARM: dts: sun6i: a31-hummingbird: Enable RGMII RX/TX delay on Ethernet PHY
  Revert "arm: sun8i: orangepi-pc-plus: Set EMAC activity LEDs to active high"
  ARM: dts: sun8i: r40: bananapi-m2-ultra: Fix ethernet node
  arm64: dts: allwinner: h5: OrangePi PC2: Fix ethernet node
  arm64: dts: allwinner: a64: Pine64 Plus: Fix ethernet node
  arm64: dts: allwinner: a64: OrangePi Win: Fix ethernet node
  arm64: dts: allwinner: Pine H64: Enable both RGMII RX/TX delay
  arm64: dts: allwinner: beelink-gs1: Enable both RGMII RX/TX delay
  arm64: dts: allwinner: pinetab: Drop unnecessary address/size-cells information
  MAINTAINERS: Add Jernej Škrabec as a reviewer for Allwinner SoCs support
  drm/imx: dw_hdmi-imx: remove empty encoder_disable callback
  drm/imx: drop explicit drm_mode_config_cleanup
  drm/imx: imx-tve: remove redundant enable tracking
  drm/imx: imx-tve: use regmap fast_io spinlock
  drm/imx: dw_hdmi-imx: use imx_drm_encoder_parse_of
  gpu: ipu-v3: remove unused functions
  bus: ti-sysc: Fix bogus resetdone warning on enable for cpsw
  bus: ti-sysc: Fix reset status check for modules with quirks
  ARM: OMAP2+: Fix missing select PM_GENERIC_DOMAINS_OF
  ARM: OMAP2+: Fix location for select PM_GENERIC_DOMAINS
  efivarfs: fix memory leak in efivarfs_create()
  efi/arm: set HSCTLR Thumb2 bit correctly for HVC calls from HYP
  irqchip/sifive-plic: Fix broken irq_set_affinity() callback
  irqchip/stm32-exti: Add all LP timer exti direct events support
  irqchip/bcm2836: Fix missing __init annotation
  tools/power turbostat: harden against cpu hotplug
  tools/power turbostat: adjust for temperature offset
  HID: add support for Sega Saturn
  spi: imx: fix runtime pm support for !CONFIG_PM
  ASoC: SOF: loader: handle all SOF_IPC_EXT types
  ASoC: cs42l51: manage mclk shutdown delay
  ASoC: qcom: sdm845: set driver name correctly
  ASoC: codecs: wsa881x: add missing stream rates and format
  HID: cypress: Support Varmilo Keyboards' media hotkeys
  net: xfrm: fix a race condition during allocing spi
  HID: ite: Replace ABS_MISC 120/121 events with touchpad on/off keypresses
  HID: logitech-hidpp: Add PID for MX Anywhere 2
  HID: uclogic: Add ID for Trust Flex Design Tablet
  MAINTAINERS: Add entry for Qualcomm IPQ4019 VQMMC regulator
  ASoC: mediatek: mt8183-da7219: fix DAPM paths for rt1015
  hv_balloon: disable warning when floor reached
  drm/i915/gvt: Set SNOOP for PAT3 on BXT/APL to workaround GPU BB hang
  drm/i915/gvt: Allow zero out HWSP addr on hws_pga_write
  irqchip/mips: Drop selection of IRQ_DOMAIN_HIERARCHY
  irqchip/mst: Make mst_intc_of_init static
  irqchip/mst: MST_IRQ should depend on ARCH_MEDIATEK or ARCH_MSTARV7
  genirq: Let GENERIC_IRQ_IPI select IRQ_DOMAIN_HIERARCHY
  ASoC: Intel: catpt: Relax clock selection conditions
  ASoC: Intel: catpt: Wake up device before configuring SSP port
  ASoC: Intel: atom: Remove duplicate kconfigs
  ASoC: Intel: kbl_rt5663_max98927: Fix kabylake_ssp_fixup function
  xfrm: interface: fix the priorities for ipip and ipv6 tunnels
  tools/power turbostat: Build with _FILE_OFFSET_BITS=64
  tools/power turbostat: Support AMD Family 19h
  tools/power turbostat: Remove empty columns for Jacobsville
  tools/power turbostat: Add a new GFXAMHz column that exposes gt_act_freq_mhz.
  tools/power x86_energy_perf_policy: Input/output error in a VM
  tools/power turbostat: Skip pc8, pc9, pc10 columns, if they are disabled
  tools/power turbostat: Support additional CPU model numbers
  tools/power turbostat: Fix output formatting for ACPI CST enumeration
  tools/power turbostat: Replace HTTP links with HTTPS ones: TURBOSTAT UTILITY
  tools/power turbostat: Use sched_getcpu() instead of hardcoded cpu 0
  tools/power turbostat: Enable accumulate RAPL display
  tools/power turbostat: Introduce functions to accumulate RAPL consumption
  tools/power turbostat: Make the energy variable to be 64 bit
  tools/power turbostat: Always print idle in the system configuration header
  tools/power turbostat: Print /dev/cpu_dma_latency

Conflicts:
	Documentation/devicetree/bindings
	Documentation/devicetree/bindings/clock/hi6220-clock.txt
	Documentation/devicetree/bindings/clock/imx5-clock.yaml
	Documentation/devicetree/bindings/display/brcm,bcm2711-hdmi.yaml
	Documentation/devicetree/bindings/interrupt-controller/ti,sci-inta.yaml
	Documentation/devicetree/bindings/iommu/arm,smmu.yaml
	Documentation/devicetree/bindings/net/can/tcan4x5x.txt
	Documentation/devicetree/bindings/net/nfc/nxp-nci.txt
	Documentation/devicetree/bindings/net/nfc/pn544.txt
	Documentation/devicetree/bindings/sound/rt1015.txt
	arch/arm/include/uapi/asm/setup.h
	drivers/android/binder.c
	drivers/cpufreq/cpufreq.c
	drivers/iommu/arm/arm-smmu/arm-smmu-qcom.c
	drivers/iommu/arm/arm-smmu/arm-smmu.h
	drivers/usb/typec/ucsi/ucsi.c
	drivers/usb/typec/ucsi/ucsi.h
	include/linux/gfp.h
	include/linux/highmem.h
	include/linux/interrupt.h
	include/linux/sched/wake_q.h
	include/trace/events/irq.h
	kernel/cgroup/cpuset.c
	kernel/sched/core.c
	kernel/sched/cpufreq_schedutil.c
	kernel/sched/cpupri.c
	kernel/sched/cputime.c
	kernel/sched/fair.c
	kernel/sched/rt.c
	kernel/sched/sched.h
	kernel/softirq.c
	kernel/trace/trace_preemptirq.c

Change-Id: If4c21439e002e776ced1a454b2ddfd42f670e99d
Signed-off-by: Ivaylo Georgiev <irgeorgiev@codeaurora.org>
2020-12-17 12:15:41 -08:00
Lina Iyer
283e327164 FROMLIST: PM / Domains: use device's next wakeup to determine domain idle state
Currently, a PM domain's idle state is determined based on whether the
QoS requirements are met. This may not save power, if the idle state
residency requirements are not met.

CPU PM domains use the next timer wakeup for the CPUs in the domain to
determine the sleep duration of the domain. This is compared with the
idle state residencies to determine the optimal idle state. For other PM
domains, determining the sleep length is not that straight forward. But
if the device's next_event is available, we can use that to determine
the sleep duration of the PM domain.

Let's update the domain governor logic to check for idle state residency
based on the next wakeup of devices as well as QoS constraints.

Bug: 170654157
Link: https://lore.kernel.org/linux-pm/CAJZ5v0g+nK+jV+Gy+BKEALRtsXDK0HnDbz07Nv3KPK5L3V3OKg@mail.gmail.com/T/#meedddf8b7c5c6b3972b71922a6caae88fd499168
Signed-off-by: Lina Iyer <ilina@codeaurora.org>
Change-Id: Ibbb5fb28720ab87fb551ce09e478e5f6822e9004
2020-12-14 09:18:49 -07:00
Lina Iyer
7a9d53c2ea FROMLIST: PM / domains: inform PM domain of a device's next wakeup
Some devices may have a predictable interrupt pattern while executing
usecases. An example would be the VSYNC interrupt associated with
display devices. A 60 Hz display could cause a interrupt every 16 ms. If
the device were in a PM domain, the domain would need to be powered up
for device to resume and handle the interrupt.

Entering a domain idle state saves power, only if the residency of the
idle state is met. Without knowing the idle duration of the domain, the
governor would just choose the deepest idle state that matches the QoS
requirements. The domain might be powered off just as the device is
expecting to wake up. If devices could inform PM frameworks of their
next event, the parent PM domain's idle duration can be determined.

So let's add the dev_pm_genpd_set_next_wakeup() API for the device to
inform PM domains of the impending wakeup. This information will be the
domain governor to determine the best idle state given the wakeup.

Bug: 170654157
Link: https://lore.kernel.org/linux-pm/CAJZ5v0g+nK+jV+Gy+BKEALRtsXDK0HnDbz07Nv3KPK5L3V3OKg@mail.gmail.com/T/#m55f3f4a218f6c91431066505841ba5339486b1ab
Signed-off-by: Lina Iyer <ilina@codeaurora.org>
Change-Id: I34371ef21fde9c045ecf739e9b53c3128656db8e
2020-12-14 09:18:34 -07:00
Lina Iyer
e6c313525b FROMLIST: PM / Domains: add domain feature flag for next wakeup
PM domains may support entering multiple power down states when the
component devices and sub-domains are suspended. Also, they may specify
the residency value for an idle state, only after which the idle state
may provide power benefits. If the domain does not specify the residency
for any of its idle states, the governor's choice is much simplified.

Let's make this optional with the use of a PM domain feature flag.

Bug: 170654157
Link: https://lore.kernel.org/linux-pm/CAJZ5v0g+nK+jV+Gy+BKEALRtsXDK0HnDbz07Nv3KPK5L3V3OKg@mail.gmail.com/T/#meffa01877c7c78964b3ddf55bd88959969ed8ad2
Signed-off-by: Lina Iyer <ilina@codeaurora.org>
Change-Id: Ie98bebf15f81428b53512f37935af2e885edec97
2020-12-14 09:18:20 -07:00
Ulf Hansson
8522dd981c FROMGIT: PM: domains: Rename pm_genpd_syscore_poweroff|poweron()
To better describe what the pm_genpd_syscore_poweroff|poweron() functions
actually do, let's rename them to dev_pm_genpd_suspend|resume() and update
the rather few callers of them accordingly (a couple of clocksource
drivers).

Moreover, let's take the opportunity to add some documentation of these
exported functions, as that is currently missing.

Cc: Daniel Lezcano <daniel.lezcano@linaro.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
(cherry picked from commit fc51989062138744b56e47190915ce68484e73f3 git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm.git)
Bug: 175076037
Change-Id: I8b59f0ca12e63b39f2a39528eb566232c78172c9
Signed-off-by: Lina Iyer <ilina@codeaurora.org>
2020-12-12 23:40:00 +00:00
Lina Iyer
c6a113b523 PM: domains: enable domain idle state accounting
To enable better debug of PM domains, keep a track of successful
and failing attempts to enter each domain idle state.

This statistics are exported in debugfs when reading the
idle_states node associated with each PM domain.

Signed-off-by: Lina Iyer <ilina@codeaurora.org>
[ rjw: Subject and changelog edits ]
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2020-10-16 17:53:22 +02:00
Ulf Hansson
d4f8138354 PM: domains: Add support for PM domain on/off notifiers for genpd
A device may have specific HW constraints that must be obeyed to, before
its corresponding PM domain (genpd) can be powered off - and vice verse at
power on. These constraints can't be managed through the regular runtime PM
based deployment for a device, because the access pattern for it, isn't
always request based. In other words, using the runtime PM callbacks to
deal with the constraints doesn't work for these cases.

For these reasons, let's instead add a PM domain power on/off notification
mechanism to genpd. To add/remove a notifier for a device, the device must
already have been attached to the genpd, which also means that it needs to
be a part of the PM domain topology.

To add/remove a notifier, let's introduce two genpd specific functions:
 - dev_pm_genpd_add|remove_notifier()

Note that, to further clarify when genpd power on/off notifiers may be
used, one can compare with the existing CPU_CLUSTER_PM_ENTER|EXIT
notifiers. In the long run, the genpd power on/off notifiers should be able
to replace them, but that requires additional genpd based platform support
for the current users.

Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Tested-by: Lina Iyer <ilina@codeaurora.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2020-10-16 17:39:06 +02:00
Ulf Hansson
49f618e1b6 PM: domains: Rename power state enums for genpd
To clarify the code a bit, let's rename GPD_STATE_ACTIVE into
GENPD_STATE_ON and GPD_STATE_POWER_OFF to GENPD_STATE_OFF.

Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
[ rjw: Subject edit ]
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2020-10-02 19:15:16 +02:00
Geert Uytterhoeven
afb0367a80 PM: domains: Restore comment indentation for generic_pm_domain.child_links
The rename of generic_pm_domain.slave_links to
generic_pm_domain.child_links accidentally dropped the TAB to align the
member's comment.  Re-add the lost TAB to restore indentation.

Fixes: 8d87ae48ce ("PM: domains: Fix up terminology with parent/child")
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
[ rjw: Minor subject edit ]
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2020-07-14 15:14:27 +02:00
Kees Cook
8d87ae48ce PM: domains: Fix up terminology with parent/child
The genpd infrastructure uses the terms master/slave, but such uses have
no external exposures (not even in Documentation/driver-api/pm/*) and are
not mandated by nor associated with any external specifications. Change
the language used through-out to parent/child.

There was one possible exception in the debugfs node
"pm_genpd/pm_genpd_summary" but its path has no hits outside of the
kernel itself when performing a code search[1], and it seems even this
single usage has been non-functional since it was introduced due to a
typo in the Python ("apend" instead of correct "append"). Fix the typo
while we're at it.

Link: https://codesearch.debian.net/ # [1]
Signed-off-by: Kees Cook <keescook@chromium.org>
Reviewed-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2020-07-09 14:24:00 +02:00
Ulf Hansson
dedd14925e PM / Domains: Introduce a genpd OF helper that removes a subdomain
We already have the of_genpd_add_subdomain() helper, but no corresponding
of_genpd_remove_subdomain(), so let's add it. Subsequent changes starts to
make use of it.

Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Acked-by: Rafael J. Wysocki <rafael@kernel.org>
2020-01-02 16:52:40 +01:00
Ulf Hansson
ca765a8cfe PM / Domains: Introduce dev_pm_domain_start()
For a subsystem/driver that either doesn't support runtime PM or makes use
of pm_runtime_set_active() during ->probe(), may try to access its device
when probing, even if it may not be fully powered on from the PM domain's
point of view. This may be the case when the used PM domain is a genpd
provider, that implements genpd's ->start|stop() device callbacks.

There are cases where the subsystem/driver managed to avoid the above
problem, simply by calling pm_runtime_enable() and pm_runtime_get_sync()
during ->probe(). However, this approach comes with a drawback, especially
if the subsystem/driver implements a ->runtime_resume() callback.

More precisely, the subsystem/driver then needs to use a device flag, which
is checked in its ->runtime_resume() callback, as to avoid powering on its
resources the first time the callback is invoked. This is needed because
the subsystem/driver has already powered on the resources for the device,
during ->probe() and before it called pm_runtime_get_sync().

In a way to avoid this boilerplate code and the inefficient check for "if
(first_time_suspend)" in the ->runtime_resume() callback for these
subsystems/drivers, let's introduce and export a dev_pm_domain_start()
function, that may be called during ->probe() instead.

Moreover, let the dev_pm_domain_start() invoke an optional ->start()
callback, added to the struct dev_pm_domain, as to allow a PM domain
specific implementation.

Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2019-11-13 11:41:50 +01:00
Ulf Hansson
0d1e16c640 PM / Domains: Align in-parameter names for some genpd functions
Align in-parameter names for the declarations of pm_genpd_add|
remove_subdomain() and of_genpd_add_subdomain() according to their
implementations, as to improve consistency.

Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2019-08-05 10:58:19 +02:00
Thomas Gleixner
55716d2643 treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 428
Based on 1 normalized pattern(s):

  this file is released under the gplv2

extracted by the scancode license scanner the SPDX license identifier

  GPL-2.0-only

has been chosen to replace the boilerplate/reference in 68 file(s).

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Reviewed-by: Armijn Hemel <armijn@tjaldur.nl>
Reviewed-by: Allison Randal <allison@lohutok.net>
Cc: linux-spdx@vger.kernel.org
Link: https://lkml.kernel.org/r/20190531190114.292346262@linutronix.de
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-06-05 17:37:16 +02:00
Leonard Crestez
ed61e18a4b PM / Domains: Add GENPD_FLAG_RPM_ALWAYS_ON flag
This is for power domains which can only be powered off for suspend but
not as part of runtime PM.

Suggested-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Reviewed-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2019-05-13 10:51:31 +02:00
Ulf Hansson
f9ccd7c3a1 PM / Domains: Allow to attach a CPU via genpd_dev_pm_attach_by_id|name()
Attaching a device via genpd_dev_pm_attach_by_id|name() makes
genpd allocate a virtual device that it attaches instead. This
leads to a problem in case when the base device belongs to a CPU.
More precisely, it means genpd_get_cpu() compares against the
virtual device, thus it fails to find a matching CPU device.

Address this limitation by passing the base device to genpd_get_cpu()
rather than the virtual device.

Moreover, to deal with detach correctly from genpd_remove_device(),
store the CPU number in struct generic_pm_domain_data, so as to be
able to clear the corresponding bit in the cpumask for the genpd.

Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2019-04-25 23:18:03 +02:00
Ulf Hansson
e94999688e PM / Domains: Add genpd governor for CPUs
After some preceding changes, PM domains managed by genpd may contain
CPU devices, so idle state residency values should be taken into
account during the state selection process. [The residency value is
the minimum amount of time to be spent by a CPU (or a group of CPUs)
in an idle state in order to save more energy than could be saved
by picking up a shallower idle state.]

For this purpose, add a new genpd governor, pm_domain_cpu_gov, to be
used for selecting idle states of PM domains with CPU devices attached
either directly or through subdomains.

The new governor computes the minimum expected idle duration for all
online CPUs attached to a PM domain and its subdomains.  Next, it
finds the deepest idle state whose target residency is within the
expected idle duration and selects it as the target idle state of
the domain.

It should be noted that the minimum expected idle duration computation
is based on the closest timer event information stored in the per-CPU
variables cpuidle_devices for all of the CPUs in the domain.  That
needs to be revisited in future, as obviously there are other reasons
why a CPU may be woken up from idle.

Co-developed-by: Lina Iyer <lina.iyer@linaro.org>
Acked-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
[ rjw: Changelog ]
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2019-04-11 22:41:01 +02:00
Ulf Hansson
eb594b7325 PM / Domains: Add support for CPU devices to genpd
To enable a CPU device to be attached to a PM domain managed by genpd,
make a few changes to it for convenience.

To be able to quickly find out what CPUs are attached to a genpd,
which typically becomes useful from a genpd governor as subsequent
changes are about to show, add a cpumask to struct generic_pm_domain
to be updated when a CPU device gets attached to the genpd containing
that cpumask. Also, propagate the cpumask changes upwards in the
domain hierarchy to the master PM domains. This way, the cpumask for
a genpd hierarchically reflects all CPUs attached to the topology
below it.

Finally, make this an opt-in feature, to avoid having to manage CPUs
and the cpumask for a genpd that don't need it. To that end, add
a new genpd configuration bit, GENPD_FLAG_CPU_DOMAIN.

Co-developed-by: Lina Iyer <lina.iyer@linaro.org>
Acked-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
[ rjw: Changelog ]
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2019-04-10 00:32:34 +02:00
Ulf Hansson
49a27e2790 PM / Domains: Add generic data pointer to struct genpd_power_state
Add a data pointer to the genpd_power_state struct, to allow a genpd
backend driver to store per-state specific data. To introduce the
pointer, change the way genpd deals with freeing of the corresponding
allocated data.

More precisely, clarify the responsibility of whom that shall free the
data, by adding a ->free_states() callback to the generic_pm_domain
structure. The one allocating the data will be expected to set the
callback, to allow genpd to invoke it from genpd_remove().

Co-developed-by: Lina Iyer <lina.iyer@linaro.org>
Acked-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
[ rjw: Subject & changelog ]
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2019-04-10 00:32:34 +02:00
Douglas Anderson
eeb35df052 PM / Domains: Mark "name" const in dev_pm_domain_attach_by_name()
As of the patch ("PM / Domains: Mark "name" const in
genpd_dev_pm_attach_by_name()") it's clear that the name in
dev_pm_domain_attach_by_name() can be const.  Mark it as so.  This
allows drivers to pass in a name that was declared "const" in a
driver.

Fixes: 27dceb81f4 ("PM / Domains: Introduce dev_pm_domain_attach_by_name()")
Signed-off-by: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Stephen Boyd <swboyd@chromium.org>
Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
Reviewed-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2019-02-15 11:36:38 +01:00
Douglas Anderson
7416f1f206 PM / Domains: Mark "name" const in genpd_dev_pm_attach_by_name()
The genpd_dev_pm_attach_by_name() simply takes the name and passes it
to of_property_match_string() where the argument is "const char *".
Adding a const here allows a later patch to add a const to
dev_pm_domain_attach_by_name() which allows drivers to pass in a name
that was declared "const" in a driver.

Fixes: 5d6be70add ("PM / Domains: Introduce option to attach a device by name to genpd")
Signed-off-by: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Stephen Boyd <swboyd@chromium.org>
Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
Reviewed-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2019-02-15 11:36:15 +01:00
Viresh Kumar
18edf49c45 PM / Domains: Propagate performance state updates
Currently a genpd only handles the performance state requirements from
the devices under its control. This commit extends that to also handle
the performance state requirement(s) put on the master genpd by its
sub-domains. There is a separate value required for each master that
the genpd has and so a new field is added to the struct gpd_link
(link->performance_state), which represents the link between a genpd and
its master. The struct gpd_link also got another field
prev_performance_state, which is used by genpd core as a temporary
variable during transitions.

On a call to dev_pm_genpd_set_performance_state(), the genpd core first
updates the performance state of the masters of the device's genpd and
then updates the performance state of the genpd. The masters do the same
and propagate performance state updates to their masters before updating
their own. The performance state transition from genpd to its master is
done with the help of dev_pm_opp_xlate_performance_state(), which looks
at the OPP tables of both the domains to translate the state.

Tested-by: Rajendra Nayak <rnayak@codeaurora.org>
Reviewed-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
2018-12-14 16:28:18 +05:30
Viresh Kumar
1067ae3e42 PM / Domains: Save OPP table pointer in genpd
dev_pm_genpd_set_performance_state() will be required to call
dev_pm_opp_xlate_performance_state() going forward to translate from
performance state of a sub-domain to performance state of its master.
And dev_pm_opp_xlate_performance_state() needs pointers to the OPP
tables of both genpd and its master.

Lets fetch and save them while the OPP tables are added. Fetching the
OPP tables should never fail as we just added the OPP tables and so add
a WARN_ON() for such a bug instead of full error paths.

Tested-by: Rajendra Nayak <rnayak@codeaurora.org>
Reviewed-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
2018-12-14 16:28:14 +05:30
Viresh Kumar
4c6a343e57 OPP: Rename and relocate of_genpd_opp_to_performance_state()
The OPP core already has the performance state values for each of the
genpd's OPPs and there is no need to call the genpd callback again to
get the performance state for the case where the end device doesn't have
an OPP table and has the "required-opps" property directly in its node.

This commit renames of_genpd_opp_to_performance_state() as
of_get_required_opp_performance_state() and moves it to the OPP core, as
it is all about OPP stuff now.

Reviewed-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
2018-11-05 07:40:43 +05:30
Viresh Kumar
e38f89d310 PM / Domains: Add genpd_opp_to_performance_state()
The OPP core currently stores the performance state in the consumer
device's OPP table, but that is going to change going forward and
performance state will rather be set directly in the genpd's OPP table.

For that we need to get the performance state for genpd's device
structure (genpd->dev) instead of the consumer device's structure. Add a
new helper to do that.

Reviewed-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
2018-11-05 07:40:43 +05:30
Ulf Hansson
e5089c2c73 PM / Domains: Document flags for genpd
The current documented description of the GENPD_FLAG_* flags, are too
simplified, so let's extend them.

Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2018-10-18 12:25:10 +02:00
Ulf Hansson
27dceb81f4 PM / Domains: Introduce dev_pm_domain_attach_by_name()
For the multiple PM domain case, let's introduce a new API called
dev_pm_domain_attach_by_name(). This allows a consumer driver to associate
its device with one of its PM domains, by using a name based lookup.

Do note that, currently it's only genpd that supports multiple PM domains
per device, but dev_pm_domain_attach_by_name() can easily by extended to
cover other PM domain types, if/when needed.

Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Tested-by: Rajendra Nayak <rnayak@codeaurora.org>
Reviewed-by: Viresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2018-07-09 12:11:02 +02:00
Ulf Hansson
5d6be70add PM / Domains: Introduce option to attach a device by name to genpd
For the multiple PM domain case, let's introduce a new function called
genpd_dev_pm_attach_by_name(). This allows a device to be associated with
its PM domain through genpd, by using a name based lookup.

Note that, genpd_dev_pm_attach_by_name() shall only be called by the driver
core / PM core, similar to how the existing dev_pm_domain_attach_by_id()
makes use of genpd_dev_pm_attach_by_id(). However, this is implemented by
following changes on top.

Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Tested-by: Rajendra Nayak <rnayak@codeaurora.org>
Reviewed-by: Viresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2018-07-09 12:11:02 +02:00
Viresh Kumar
ad6384ba3a PM / Domains: Rename opp_node to np
The DT node passed here isn't necessarily an OPP node, as this routine
can also be used for cases where the "required-opps" property is present
directly in the device's node. Rename it.

This also removes a stale comment.

Acked-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2018-06-25 09:41:37 +02:00
Viresh Kumar
5e03aa61a7 PM / Domains: Fix return value of of_genpd_opp_to_performance_state()
of_genpd_opp_to_performance_state() should return 0 for errors, but the
dummy routine isn't doing that. Fix it.

Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
Acked-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2018-06-25 09:40:36 +02:00
Ulf Hansson
82e12d9e0b PM / Domains: Add dev_pm_domain_attach_by_id() to manage multi PM domains
The existing dev_pm_domain_attach() function, allows a single PM domain to
be attached per device. To be able to support devices that are partitioned
across multiple PM domains, let's introduce a new interface,
dev_pm_domain_attach_by_id().

The dev_pm_domain_attach_by_id() returns a new allocated struct device with
the corresponding attached PM domain. This enables for example a driver to
operate on the new device from a power management point of view. The driver
may then also benefit from using the received device, to set up so called
device-links towards its original device. Depending on the situation, these
links may then be dynamically changed.

The new interface is typically called by drivers during their probe phase,
in case they manages devices which uses multiple PM domains. If that is the
case, the driver also becomes responsible of managing the detaching of the
PM domains, which typically should be done at the remove phase. Detaching
is done by calling the existing dev_pm_domain_detach() function and for
each of the received devices from dev_pm_domain_attach_by_id().

Note, currently its only genpd that supports multiple PM domains per
device, but dev_pm_domain_attach_by_id() can easily by extended to cover
other PM domain types, if/when needed.

Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Acked-by: Jon Hunter <jonathanh@nvidia.com>
Tested-by: Jon Hunter <jonathanh@nvidia.com>
Reviewed-by: Viresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2018-06-06 09:09:22 +02:00
Ulf Hansson
3c095f32a9 PM / Domains: Add support for multi PM domains per device to genpd
To support devices being partitioned across multiple PM domains, let's
begin with extending genpd to cope with these kind of configurations.

Therefore, add a new exported function genpd_dev_pm_attach_by_id(), which
is similar to the existing genpd_dev_pm_attach(), but with the difference
that it allows its callers to provide an index to the PM domain that it
wants to attach.

Note that, genpd_dev_pm_attach_by_id() shall only be called by the driver
core / PM core, similar to how the existing dev_pm_domain_attach() makes
use of genpd_dev_pm_attach(). However, this is implemented by following
changes on top.

Because, only one PM domain can be attached per device, genpd needs to
create a virtual device that it can attach/detach instead. More precisely,
let the new function genpd_dev_pm_attach_by_id() register a virtual struct
device via calling device_register(). Then let it attach this device to the
corresponding PM domain, rather than the one that is provided by the
caller. The actual attaching is done via re-using the existing genpd OF
functions.

At successful attachment, genpd_dev_pm_attach_by_id() returns the created
virtual device, which allows the caller to operate on it to deal with power
management. Following changes on top, provides more details in this
regards.

To deal with detaching of a PM domain for the multiple PM domains case,
let's also extend the existing genpd_dev_pm_detach() function, to cover the
cleanup of the created virtual device, via make it call device_unregister()
on it. In this way, there is no need to introduce a new function to deal
with detach for the multiple PM domain case, but instead the existing one
is re-used.

Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Acked-by: Jon Hunter <jonathanh@nvidia.com>
Tested-by: Jon Hunter <jonathanh@nvidia.com>
Reviewed-by: Viresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2018-06-06 09:09:21 +02:00
Ulf Hansson
924f448699 PM / Domains: Drop genpd as in-param for pm_genpd_remove_device()
There is no need to pass a genpd struct to pm_genpd_remove_device(), as we
already have the information about the PM domain (genpd) through the device
structure.

Additionally, we don't allow to remove a PM domain from a device, other
than the one it may have assigned to it, so really it does not make sense
to have a separate in-param for it.

For these reason, drop it and update the current only call to
pm_genpd_remove_device() from amdgpu_acp.

Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2018-05-30 13:51:51 +02:00
Ulf Hansson
1a7a67072f PM / Domains: Drop __pm_genpd_add_device()
There are still a few non-DT existing users of genpd, however neither of
them uses __pm_genpd_add_device(), hence let's drop it.

Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2018-05-30 13:51:51 +02:00
Ulf Hansson
781b9d6b84 PM / Domains: Drop extern declarations of functions in pm_domain.h
Using "extern" to declare a function in a public header file is somewhat
pointless, but also doesn't hurt. However, to make all the function
declarations in pm_domain.h to be consistent, let's drop the use of
"extern".

Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2018-05-30 13:51:51 +02:00
Rafael J. Wysocki
8ad17c8eb1 Merge branch 'opp/genpd-pstate-updates' of git://git.kernel.org/pub/scm/linux/kernel/git/vireshk/pm
Pull Operating Performance Points (OPP) library changes for v4.18
from Viresh Kumar.

* 'opp/genpd-pstate-updates' of git://git.kernel.org/pub/scm/linux/kernel/git/vireshk/pm:
  PM / OPP: Remove dev_pm_opp_{un}register_get_pstate_helper()
  PM / OPP: Get performance state using genpd helper
  PM / Domain: Implement of_genpd_opp_to_performance_state()
  PM / Domain: Add support to parse domain's OPP table
  PM / Domain: Add struct device to genpd
  PM / OPP: Implement dev_pm_opp_get_of_node()
  PM / OPP: Implement of_dev_pm_opp_find_required_opp()
  PM / OPP: Implement dev_pm_opp_of_add_table_indexed()
  PM / OPP: "opp-hz" is optional for power domains
  PM / OPP: dt-bindings: Make "opp-hz" optional for power domains
  PM / OPP: dt-bindings: Rename "required-opp" as "required-opps"
  soc/tegra: pmc: Don't allocate struct tegra_powergate on stack
2018-05-14 23:12:48 +02:00
Ulf Hansson
919b7308fc PM / Domains: Allow a better error handling of dev_pm_domain_attach()
The callers of dev_pm_domain_attach() currently checks the returned error
code for -EPROBE_DEFER and needs to ignore other error codes. This is an
unnecessary limitation, which also leads to a rather strange behaviour in
the error path.

Address this limitation, by changing the return codes from
acpi_dev_pm_attach() and genpd_dev_pm_attach(). More precisely, let them
return 0, when no PM domain is needed for the device and then return 1, in
case the device was successfully attached to its PM domain. In this way,
dev_pm_domain_attach(), gets a better understanding of what happens in the
attach attempts and also allowing its caller to better act on real errors
codes.

Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2018-05-14 22:58:44 +02:00
Viresh Kumar
6e41766a6a PM / Domain: Implement of_genpd_opp_to_performance_state()
This implements of_genpd_opp_to_performance_state() which can be used
from the device drivers or the OPP core to find the performance state
encoded in the "required-opps" property of a node. Normally this would
be called only once for each OPP of the device for which the OPP table
of the device is getting generated.

Different platforms may encode the performance state differently using
the OPP table (they may simply return value of opp-hz or opp-microvolt,
or apply some algorithm on top of those values) and so a new callback
->opp_to_performance_state() is implemented to allow platform specific
drivers to convert the power domain OPP to a performance state value.

Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
Acked-by: Ulf Hansson <ulf.hansson@linaro.org>
2018-05-09 10:15:20 +05:30
Viresh Kumar
401ea1572d PM / Domain: Add struct device to genpd
The power-domain core would be using the OPP core going forward and the
OPP core has the basic requirement of a device structure for its working.

Add a struct device to the genpd structure. This doesn't register the
device with device core as the "dev" pointer is mostly used by the OPP
core as a cookie for now and registering the device is not mandatory.

Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
Acked-by: Ulf Hansson <ulf.hansson@linaro.org>
2018-05-09 10:15:19 +05:30
Geert Uytterhoeven
d0af45f1f6 PM / Domains: Remove gpd_dev_ops.active_wakeup() callback
There are no more users left of the gpd_dev_ops.active_wakeup()
callback.  All have been converted to GENPD_FLAG_ACTIVE_WAKEUP.
Hence remove the callback.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Acked-by: Ulf Hansson <ulf.hansson@linaro.org>
Reviewed-by: Kevin Hilman <khilman@baylibre.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2017-11-08 01:00:48 +01:00
Geert Uytterhoeven
95a20ef6f7 PM / Domains: Allow genpd users to specify default active wakeup behavior
It is quite common for PM Domains to require slave devices to be kept
active during system suspend if they are to be used as wakeup sources.
To enable this, currently each PM Domain or driver has to provide its
own gpd_dev_ops.active_wakeup() callback.

Introduce a new flag GENPD_FLAG_ACTIVE_WAKEUP to consolidate this.
If specified, all slave devices configured as wakeup sources will be
kept active during system suspend.

PM Domains that need more fine-grained controls, based on the slave
device, can still provide their own callbacks, as before.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Acked-by: Ulf Hansson <ulf.hansson@linaro.org>
Reviewed-by: Kevin Hilman <khilman@baylibre.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2017-11-08 01:00:47 +01:00
Viresh Kumar
42f6284ae6 PM / Domains: Add support to select performance-state of domains
Some platforms have the capability to configure the performance state of
PM domains. This patch enhances the genpd core to support such
platforms.

The performance levels (within the genpd core) are identified by
positive integer values, a lower value represents lower performance
state.

This patch adds a new genpd API, which is called by user drivers (like
OPP framework):

- int dev_pm_genpd_set_performance_state(struct device *dev,
					 unsigned int state);

  This updates the performance state constraint of the device on its PM
  domain. On success, the genpd will have its performance state set to a
  value which is >= "state" passed to this routine. The genpd core calls
  the genpd->set_performance_state() callback, if implemented,
  else -ENODEV is returned to the caller.

The PM domain drivers need to implement the following callback if they
want to support performance states.

- int (*set_performance_state)(struct generic_pm_domain *genpd,
			       unsigned int state);

  This is called internally by the genpd core on several occasions. The
  genpd core passes the genpd pointer and the aggregate of the
  performance states of the devices supported by that genpd to this
  callback. This callback must update the performance state of the genpd
  (in a platform dependent way).

The power domains can avoid supplying above callback, if they don't
support setting performance-states.

Currently we aren't propagating performance state changes of a subdomain
to its masters as we don't have hardware that needs it right now. Over
that, the performance states of subdomain and its masters may not have
one-to-one mapping and would require additional information. We can get
back to this once we have hardware that needs it.

Tested-by: Rajendra Nayak <rnayak@codeaurora.org>
Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
Acked-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2017-10-14 00:46:04 +02:00
Thara Gopinath
afece3ab9a PM / Domains: Add time accounting to various genpd states
This patch adds support to calculate the time spent by the generic
power domains in on and various idle states.

Signed-off-by: Thara Gopinath <thara.gopinath@linaro.org>
Acked-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2017-07-24 23:02:02 +02:00
Thierry Reding
408455245a PM / Domains: Allow overriding the ->xlate() callback
Allow generic power domain providers to override the ->xlate() callback
in case the default genpd_xlate_onecell() translation callback is not
good enough.

One potential use-case for this is to allow generic power domains to be
specified by an ID rather than an index.

Signed-off-by: Thierry Reding <treding@nvidia.com>
Acked-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Thierry Reding <treding@nvidia.com>
2017-06-13 15:15:08 +02:00