128 Commits

Author SHA1 Message Date
Michael Bestas
b9715311a2 Merge tag 'ASB-2025-02-05_11-5.4' of https://android.googlesource.com/kernel/common into android13-5.4-lahaina
https://source.android.com/docs/security/bulletin/2025-02-01
CVE-2024-53104
CVE-2025-0088

* tag 'ASB-2025-02-05_11-5.4' of https://android.googlesource.com/kernel/common: (449 commits)
  ANDROID: gki - change networking configuration
  ANDROID: kernelci build-break for 64-bit riscv clang builds (5.4 only)
  Revert "BACKPORT: RISC-V: Stop relying on GCC's register allocator's hueristics"
  Revert "ANDROID: declare sp_in_global outside of CONFIG_FRAME_POINTER"
  ANDROID: GKI: add Trimble symbol list
  UPSTREAM: selinux: ignore unknown extended permissions
  ANDROID: ABI: Update allowed list for galaxy
  Revert "netfilter: Replace zero-length array with flexible-array member"
  Revert "tracing: Constify string literal data member in struct trace_event_call"
  Revert "skb_expand_head() adjust skb->truesize incorrectly"
  Linux 5.4.289
  ftrace: use preempt_enable/disable notrace macros to avoid double fault
  mm: vmscan: account for free pages to prevent infinite Loop in throttle_direct_reclaim()
  drm: adv7511: Drop dsi single lane support
  net/sctp: Prevent autoclose integer overflow in sctp_association_init()
  sky2: Add device ID 11ab:4373 for Marvell 88E8075
  pinctrl: mcp23s08: Fix sleeping in atomic context due to regmap locking
  RDMA/uverbs: Prevent integer overflow issue
  modpost: fix the missed iteration for the max bit in do_input()
  modpost: fix input MODULE_DEVICE_TABLE() built for 64-bit on 32-bit host
  ...

 Conflicts:
	arch/arm64/boot/dts/vendor/bindings/clock/adi,axi-clkgen.yaml
	arch/arm64/boot/dts/vendor/bindings/clock/axi-clkgen.txt
	drivers/rpmsg/qcom_glink_native.c
	drivers/soc/qcom/socinfo.c

Change-Id: I60727e0cdd974fda5ca71f938bc2f984a8bbf19a
2025-02-06 22:53:05 +02:00
Xuewen Yan
59a9c2a351 epoll: Add synchronous wakeup support for ep_poll_callback
[ Upstream commit 900bbaae67e980945dec74d36f8afe0de7556d5a ]

Now, the epoll only use wake_up() interface to wake up task.
However, sometimes, there are epoll users which want to use
the synchronous wakeup flag to hint the scheduler, such as
Android binder driver.
So add a wake_up_sync() define, and use the wake_up_sync()
when the sync is true in ep_poll_callback().

Co-developed-by: Jing Xia <jing.xia@unisoc.com>
Signed-off-by: Jing Xia <jing.xia@unisoc.com>
Signed-off-by: Xuewen Yan <xuewen.yan@unisoc.com>
Link: https://lore.kernel.org/r/20240426080548.8203-1-xuewen.yan@unisoc.com
Tested-by: Brian Geffon <bgeffon@google.com>
Reviewed-by: Brian Geffon <bgeffon@google.com>
Reported-by: Benoit Lize <lizeb@google.com>
Signed-off-by: Christian Brauner <brauner@kernel.org>
[ Redefine wake_up_sync(x) as __wake_up_sync(x, TASK_NORMAL, 1) to
  make it work on 5.4.y ]
Signed-off-by: Wenshan Lan <jetlan9@163.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2025-01-09 13:23:32 +01:00
Michael Bestas
ffe9ce5b43 Merge tag 'ASB-2023-12-05_11-5.4' of https://android.googlesource.com/kernel/common into android13-5.4-lahaina
https://source.android.com/docs/security/bulletin/2023-12-01

* tag 'ASB-2023-12-05_11-5.4' of https://android.googlesource.com/kernel/common:
  ANDROID: ABI: Update allowed list for QCOM
  BACKPORT: ALSA: compress: Allow pause and resume during draining
  UPSTREAM: netfilter: nf_tables: pass context to nft_set_destroy()
  UPSTREAM: netfilter: nf_tables: don't skip expired elements during walk
  ANDROID: GKI: db845c: Update symbols list and ABI on rpmsg_register_device_override
  ANDROID: Use GKI Dr. No OWNERS file
  ANDROID: Remove android/OWNERs file
  FROMGIT: Input: uinput - allow injecting event times
  ANDROID: fix up rpmsg_device ABI break
  ANDROID: fix up platform_device ABI break
  UPSTREAM: rpmsg: Fix possible refcount leak in rpmsg_register_device_override()
  UPSTREAM: rpmsg: glink: Release driver_override
  BACKPORT: rpmsg: Fix calling device_lock() on non-initialized device
  BACKPORT: rpmsg: Fix kfree() of static memory on setting driver_override
  UPSTREAM: rpmsg: Constify local variable in field store macro
  UPSTREAM: driver: platform: Add helper for safer setting of driver_override
  BACKPORT: firmware_loader: Abort all upcoming firmware load request once reboot triggered
  UPSTREAM: firmware_loader: Refactor kill_pending_fw_fallback_reqs()
  Revert "perf: Disallow mis-matched inherited group reads"
  Revert "xfrm: fix a data-race in xfrm_gen_index()"
  Revert "Bluetooth: hci_core: Fix build warnings"
  Revert "xfrm: interface: use DEV_STATS_INC()"
  Revert "netfilter: conntrack: allow sctp hearbeat after connection re-use"
  Revert "netfilter: conntrack: don't refresh sctp entries in closed state"
  Revert "netfilter: handle the connecting collision properly in nf_conntrack_proto_sctp"
  Reapply "netfilter: conntrack: don't refresh sctp entries in closed state"
  Reapply "netfilter: conntrack: allow sctp hearbeat after connection re-use"
  Linux 5.4.259
  xfrm6: fix inet6_dev refcount underflow problem
  Bluetooth: hci_sock: Correctly bounds check and pad HCI_MON_NEW_INDEX name
  Bluetooth: hci_sock: fix slab oob read in create_monitor_event
  phy: mapphone-mdm6600: Fix pinctrl_pm handling for sleep pins
  phy: mapphone-mdm6600: Fix runtime PM for remove
  phy: mapphone-mdm6600: Fix runtime disable on probe
  ASoC: pxa: fix a memory leak in probe()
  gpio: vf610: set value before the direction to avoid a glitch
  s390/pci: fix iommu bitmap allocation
  perf: Disallow mis-matched inherited group reads
  USB: serial: option: add Fibocom to DELL custom modem FM101R-GL
  USB: serial: option: add entry for Sierra EM9191 with new firmware
  USB: serial: option: add Telit LE910C4-WWX 0x1035 composition
  ACPI: irq: Fix incorrect return value in acpi_register_gsi()
  Revert "pinctrl: avoid unsafe code pattern in find_pinctrl()"
  mmc: core: Capture correct oemid-bits for eMMC cards
  mmc: core: sdio: hold retuning if sdio in 1-bit mode
  mtd: physmap-core: Restore map_rom fallback
  mtd: spinand: micron: correct bitmask for ecc status
  mtd: rawnand: qcom: Unmap the right resource upon probe failure
  Bluetooth: hci_event: Fix using memcmp when comparing keys
  HID: multitouch: Add required quirk for Synaptics 0xcd7e device
  btrfs: fix some -Wmaybe-uninitialized warnings in ioctl.c
  drm: panel-orientation-quirks: Add quirk for One Mix 2S
  sky2: Make sure there is at least one frag_addr available
  regulator/core: Revert "fix kobject release warning and memory leak in regulator_register()"
  wifi: cfg80211: avoid leaking stack data into trace
  wifi: mac80211: allow transmitting EAPOL frames with tainted key
  Bluetooth: hci_core: Fix build warnings
  Bluetooth: Avoid redundant authentication
  HID: holtek: fix slab-out-of-bounds Write in holtek_kbd_input_event
  tracing: relax trace_event_eval_update() execution with cond_resched()
  ata: libata-eh: Fix compilation warning in ata_eh_link_report()
  gpio: timberdale: Fix potential deadlock on &tgpio->lock
  overlayfs: set ctime when setting mtime and atime
  i2c: mux: Avoid potential false error message in i2c_mux_add_adapter
  btrfs: initialize start_slot in btrfs_log_prealloc_extents
  btrfs: return -EUCLEAN for delayed tree ref with a ref count not equals to 1
  ARM: dts: ti: omap: Fix noisy serial with overrun-throttle-ms for mapphone
  ACPI: resource: Skip IRQ override on ASUS ExpertBook B1402CBA
  ACPI: resource: Skip IRQ override on ASUS ExpertBook B1502CBA
  ACPI: resource: Skip IRQ override on Asus Expertbook B2402CBA
  ACPI: resource: Add Asus ExpertBook B2502 to Asus quirks
  ACPI: resource: Skip IRQ override on Asus Vivobook S5602ZA
  ACPI: resource: Add ASUS model S5402ZA to quirks
  ACPI: resource: Skip IRQ override on Asus Vivobook K3402ZA/K3502ZA
  ACPI: resources: Add DMI-based legacy IRQ override quirk
  ACPI: Drop acpi_dev_irqresource_disabled()
  resource: Add irqresource_disabled()
  net: pktgen: Fix interface flags printing
  netfilter: nft_set_rbtree: .deactivate fails if element has expired
  neighbor: tracing: Move pin6 inside CONFIG_IPV6=y section
  net/sched: sch_hfsc: upgrade 'rt' to 'sc' when it becomes a inner curve
  i40e: prevent crash on probe if hw registers have invalid values
  net: usb: smsc95xx: Fix an error code in smsc95xx_reset()
  ipv4: fib: annotate races around nh->nh_saddr_genid and nh->nh_saddr
  tun: prevent negative ifindex
  tcp: tsq: relax tcp_small_queue_check() when rtx queue contains a single skb
  tcp: fix excessive TLP and RACK timeouts from HZ rounding
  net: rfkill: gpio: prevent value glitch during probe
  net: ipv6: fix return value check in esp_remove_trailer
  net: ipv4: fix return value check in esp_remove_trailer
  xfrm: interface: use DEV_STATS_INC()
  xfrm: fix a data-race in xfrm_gen_index()
  qed: fix LL2 RX buffer allocation
  netfilter: nft_payload: fix wrong mac header matching
  KVM: x86: Mask LVTPC when handling a PMI
  regmap: fix NULL deref on lookup
  nfc: nci: fix possible NULL pointer dereference in send_acknowledge()
  ice: fix over-shifted variable
  Bluetooth: avoid memcmp() out of bounds warning
  Bluetooth: hci_event: Fix coding style
  Bluetooth: vhci: Fix race when opening vhci device
  Bluetooth: Fix a refcnt underflow problem for hci_conn
  Bluetooth: Reject connection with the device which has same BD_ADDR
  Bluetooth: hci_event: Ignore NULL link key
  usb: hub: Guard against accesses to uninitialized BOS descriptors
  Documentation: sysctl: align cells in second content column
  dev_forward_skb: do not scrub skb mark within the same name space
  ravb: Fix use-after-free issue in ravb_tx_timeout_work()
  powerpc/64e: Fix wrong test in __ptep_test_and_clear_young()
  powerpc/8xx: Fix pte_access_permitted() for PAGE_NONE
  dmaengine: mediatek: Fix deadlock caused by synchronize_irq()
  x86/cpu: Fix AMD erratum #1485 on Zen4-based CPUs
  usb: gadget: ncm: Handle decoding of multiple NTB's in unwrap call
  usb: gadget: udc-xilinx: replace memcpy with memcpy_toio
  pinctrl: avoid unsafe code pattern in find_pinctrl()
  cgroup: Remove duplicates in cgroup v1 tasks file
  Input: xpad - add PXN V900 support
  Input: psmouse - fix fast_reconnect function for PS/2 mode
  Input: powermate - fix use-after-free in powermate_config_complete
  ceph: fix incorrect revoked caps assert in ceph_fill_file_size()
  libceph: use kernel_connect()
  mcb: remove is_added flag from mcb_device struct
  iio: pressure: ms5611: ms5611_prom_is_valid false negative bug
  iio: pressure: dps310: Adjust Timeout Settings
  iio: pressure: bmp280: Fix NULL pointer exception
  usb: musb: Modify the "HWVers" register address
  usb: musb: Get the musb_qh poniter after musb_giveback
  usb: dwc3: Soft reset phy on probe for host
  net: usb: dm9601: fix uninitialized variable use in dm9601_mdio_read
  usb: xhci: xhci-ring: Use sysdev for mapping bounce buffer
  dmaengine: stm32-mdma: abort resume if no ongoing transfer
  workqueue: Override implicit ordered attribute in workqueue_apply_unbound_cpumask()
  nfc: nci: assert requested protocol is valid
  net: nfc: fix races in nfc_llcp_sock_get() and nfc_llcp_sock_get_sn()
  ixgbe: fix crash with empty VF macvlan list
  drm/vmwgfx: fix typo of sizeof argument
  xen-netback: use default TX queue size for vifs
  mlxsw: fix mlxsw_sp2_nve_vxlan_learning_set() return type
  ieee802154: ca8210: Fix a potential UAF in ca8210_probe
  ravb: Fix up dma_free_coherent() call in ravb_remove()
  drm/msm/dsi: skip the wait for video mode done if not applicable
  drm: etvnaviv: fix bad backport leading to warning
  net: prevent address rewrite in kernel_bind()
  quota: Fix slow quotaoff
  HID: logitech-hidpp: Fix kernel crash on receiver USB disconnect
  pwm: hibvt: Explicitly set .polarity in .get_state()
  lib/test_meminit: fix off-by-one error in test_pages()
  RDMA/cxgb4: Check skb value for failure to allocate
  Reapply "ANDROID: Revert "tracing/ring-buffer: Have polling block on watermark""
  Revert "ring-buffer: Update "shortest_full" in polling"
  Revert "ANDROID: Revert "tracing/ring-buffer: Have polling block on watermark""
  Revert "net: bridge: use DEV_STATS_INC()"
  FROMLIST: lib/test_meminit: fix off-by-one error in test_pages()
  Linux 5.4.258
  xen/events: replace evtchn_rwlock with RCU
  ima: rework CONFIG_IMA dependency block
  NFS: Fix a race in __nfs_list_for_each_server()
  parisc: Restore __ldcw_align for PA-RISC 2.0 processors
  RDMA/mlx5: Fix NULL string error
  RDMA/siw: Fix connection failure handling
  RDMA/uverbs: Fix typo of sizeof argument
  RDMA/cma: Fix truncation compilation warning in make_cma_ports
  gpio: pxa: disable pinctrl calls for MMP_GPIO
  gpio: aspeed: fix the GPIO number passed to pinctrl_gpio_set_config()
  IB/mlx4: Fix the size of a buffer in add_port_entries()
  RDMA/core: Require admin capabilities to set system parameters
  cpupower: add Makefile dependencies for install targets
  sctp: update hb timer immediately after users change hb_interval
  sctp: update transport state when processing a dupcook packet
  tcp: fix delayed ACKs for MSS boundary condition
  tcp: fix quick-ack counting to count actual ACKs of new data
  net: stmmac: dwmac-stm32: fix resume on STM32 MCU
  netfilter: handle the connecting collision properly in nf_conntrack_proto_sctp
  net: nfc: llcp: Add lock when modifying device list
  net: usb: smsc75xx: Fix uninit-value access in __smsc75xx_read_reg
  net: dsa: mv88e6xxx: Avoid EEPROM timeout when EEPROM is absent
  ipv4, ipv6: Fix handling of transhdrlen in __ip{,6}_append_data()
  net: fix possible store tearing in neigh_periodic_work()
  modpost: add missing else to the "of" check
  NFSv4: Fix a nfs4_state_manager() race
  NFS: Add a helper nfs_client_for_each_server()
  NFS4: Trace state recovery operation
  wifi: mt76: mt76x02: fix MT76x0 external LNA gain handling
  wifi: mwifiex: Fix tlv_buf_left calculation
  scsi: target: core: Fix deadlock due to recursive locking
  drivers/net: process the result of hdlc_open() and add call of hdlc_close() in uhdlc_close()
  qed/red_ll2: Fix undefined behavior bug in struct qed_ll2_info
  ima: Finish deprecation of IMA_TRUSTED_KEYRING Kconfig
  wifi: mwifiex: Fix oob check condition in mwifiex_process_rx_packet
  regmap: rbtree: Fix wrong register marked as in-cache when creating new node
  wifi: iwlwifi: dbg_ini: fix structure packing
  ubi: Refuse attaching if mtd's erasesize is 0
  net: prevent rewrite of msg_name in sock_sendmsg()
  net: replace calls to sock->ops->connect() with kernel_connect()
  fs: binfmt_elf_efpic: fix personality for ELF-FDPIC
  scsi: zfcp: Fix a double put in zfcp_port_enqueue()
  ata: libata-sata: increase PMP SRST timeout to 10s
  Revert "PCI: qcom: Disable write access to read only registers for IP v2.3.3"
  ata: libata-core: Do not register PM operations for SAS ports
  rbd: take header_rwsem in rbd_dev_refresh() only when updating
  ata: libata-core: Fix port and device removal
  rbd: decouple parent info read-in from updating rbd_dev
  ata: libata-core: Fix ata_port_request_pm() locking
  rbd: decouple header read-in from updating rbd_dev->header
  rbd: move rbd_dev_refresh() definition
  ring-buffer: Update "shortest_full" in polling
  i2c: i801: unregister tco_pdev in i801_probe() error path
  net: thunderbolt: Fix TCPv6 GSO checksum calculation
  ata: libata-scsi: ignore reserved bits for REPORT SUPPORTED OPERATION CODES
  btrfs: properly report 0 avail for very full file systems
  ALSA: hda: Disable power save for solving pop issue on Lenovo ThinkCentre M70q
  nilfs2: fix potential use after free in nilfs_gccache_submit_read_data()
  serial: 8250_port: Check IRQ data before use
  Smack:- Use overlay inode label in smack_inode_copy_up()
  smack: Retrieve transmuting information in smack_inode_getsecurity()
  smack: Record transmuting in smk_transmuted
  i40e: fix return of uninitialized aq_ret in i40e_set_vsi_promisc
  i40e: always propagate error value in i40e_set_vsi_promisc()
  ring-buffer: Avoid softlockup in ring_buffer_resize()
  selftests/ftrace: Correctly enable event in instance-event.tc
  i40e: improve locking of mac_filter_hash
  watchdog: iTCO_wdt: Set NO_REBOOT if the watchdog is not already running
  watchdog: iTCO_wdt: No need to stop the timer in probe
  nvme-pci: do not set the NUMA node of device if it has none
  fbdev/sh7760fb: Depend on FB=y
  ncsi: Propagate carrier gain/loss events to the NCSI controller
  powerpc/watchpoints: Annotate atomic context in more places
  bpf: Clarify error expectations from bpf_clone_redirect
  spi: nxp-fspi: reset the FLSHxCR1 registers
  ata: libata-eh: do not clear ATA_PFLAG_EH_PENDING in ata_eh_reset()
  parisc: irq: Make irq_stack_union static to avoid sparse warning
  parisc: drivers: Fix sparse warning
  parisc: iosapic.c: Fix sparse warnings
  parisc: sba: Fix compile warning wrt list of SBA devices
  gpio: pmic-eic-sprd: Add can_sleep flag for PMIC EIC chip
  xtensa: boot/lib: fix function prototypes
  xtensa: boot: don't add include-dirs
  xtensa: iss/network: make functions static
  xtensa: add default definition for XCHAL_HAVE_DIV32
  bus: ti-sysc: Fix SYSC_QUIRK_SWSUP_SIDLE_ACT handling for uart wake-up
  ARM: dts: ti: omap: motorola-mapphone: Fix abe_clkctrl warning on boot
  clk: tegra: fix error return case for recalc_rate
  scsi: qla2xxx: Fix deletion race condition
  MIPS: Alchemy: only build mmc support helpers if au1xmmc is enabled
  scsi: qla2xxx: Fix update_fcport for current_topology
  ata: libata: disallow dev-initiated LPM transitions to unsupported states
  Input: i8042 - add quirk for TUXEDO Gemini 17 Gen1/Clevo PD70PN
  drm/amd/display: prevent potential division by zero errors
  i2c: mux: demux-pinctrl: check the return value of devm_kstrdup()
  drm/amd/display: Fix LFC multiplier changing erratically
  gpio: tb10x: Fix an error handling path in tb10x_gpio_probe()
  drm/amd/display: Reinstate LFC optimization
  netfilter: ipset: Fix race between IPSET_CMD_CREATE and IPSET_CMD_SWAP
  net: rds: Fix possible NULL-pointer dereference
  team: fix null-ptr-deref when team device type is changed
  net: bridge: use DEV_STATS_INC()
  net: hns3: add 5ms delay before clear firmware reset irq source
  dccp: fix dccp_v4_err()/dccp_v6_err() again
  powerpc/perf/hv-24x7: Update domain value check
  ipv4: fix null-deref in ipv4_link_failure
  i40e: Fix VF VLAN offloading when port VLAN is configured
  i40e: Fix warning message and call stack during rmmod i40e driver
  i40e: Remove scheduling while atomic possibility
  i40e: Fix for persistent lldp support
  ASoC: imx-audmix: Fix return error with devm_clk_get()
  selftests: tls: swap the TX and RX sockets in some tests
  ASoC: meson: spdifin: start hw on dai probe
  selftests/tls: Add {} to avoid static checker warning
  ext4: do not let fstrim block system suspend
  bpf: Avoid deadlock when using queue and stack maps from NMI
  ext4: move setting of trimmed bit into ext4_try_to_trim_range()
  netfilter: nf_tables: disallow element removal on anonymous sets
  ext4: replace the traditional ternary conditional operator with with max()/min()
  ext4: mark group as trimmed only if it was fully scanned
  ext4: change s_last_trim_minblks type to unsigned long
  ext4: scope ret locally in ext4_try_to_trim_range()
  ext4: add new helper interface ext4_try_to_trim_range()
  ext4: remove the 'group' parameter of ext4_trim_extent
  ata: libahci: clear pending interrupt status
  tracing: Increase trace array ref count on enable and filter files
  SUNRPC: Mark the cred for revalidation if the server rejects it
  NFS/pNFS: Report EINVAL errors from connect() to the server
  Revert "drm/panel: simple: Add missing connector type and pixel format for AUO T215HVN01"
  Revert "usb: typec: bus: verify partner exists in typec_altmode_attention"
  Revert "fs/nls: make load_nls() take a const parameter"
  Revert "ip_tunnels: use DEV_STATS_INC()"
  Linux 5.4.257
  net/sched: Retire rsvp classifier
  drm/amdgpu: fix amdgpu_cs_p1_user_fence
  mtd: rawnand: brcmnand: Fix ECC level field setting for v7.2 controller
  ext4: fix rec_len verify error
  scsi: megaraid_sas: Fix deadlock on firmware crashdump
  i2c: aspeed: Reset the i2c controller when timeout occurs
  tracefs: Add missing lockdown check to tracefs_create_dir()
  nfsd: fix change_info in NFSv4 RENAME replies
  tracing: Have option files inc the trace array ref count
  tracing: Have current_trace inc the trace array ref count
  btrfs: fix lockdep splat and potential deadlock after failure running delayed items
  attr: block mode changes of symlinks
  md/raid1: fix error: ISO C90 forbids mixed declarations
  selftests: tracing: Fix to unmount tracefs for recovering environment
  btrfs: compare the correct fsid/metadata_uuid in btrfs_validate_super
  btrfs: add a helper to read the superblock metadata_uuid
  btrfs: move btrfs_pinned_by_swapfile prototype into volumes.h
  perf tools: Add an option to build without libbfd
  perf jevents: Make build dependency on test JSONs
  tools features: Add feature test to check if libbfd has buildid support
  kobject: Add sanity check for kset->kobj.ktype in kset_register()
  media: pci: ipu3-cio2: Initialise timing struct to avoid a compiler warning
  serial: cpm_uart: Avoid suspicious locking
  scsi: target: iscsi: Fix buffer overflow in lio_target_nacl_info_show()
  usb: gadget: fsl_qe_udc: validate endpoint index for ch9 udc
  media: pci: cx23885: replace BUG with error return
  media: tuners: qt1010: replace BUG_ON with a regular error
  media: az6007: Fix null-ptr-deref in az6007_i2c_xfer()
  media: anysee: fix null-ptr-deref in anysee_master_xfer
  media: af9005: Fix null-ptr-deref in af9005_i2c_xfer
  media: dw2102: Fix null-ptr-deref in dw2102_i2c_transfer()
  media: dvb-usb-v2: af9035: Fix null-ptr-deref in af9035_i2c_master_xfer
  powerpc/pseries: fix possible memory leak in ibmebus_bus_init()
  jfs: fix invalid free of JFS_IP(ipimap)->i_imap in diUnmount
  fs/jfs: prevent double-free in dbUnmount() after failed jfs_remount()
  ext2: fix datatype of block number in ext2_xattr_set2()
  md: raid1: fix potential OOB in raid1_remove_disk()
  bus: ti-sysc: Configure uart quirks for k3 SoC
  drm/exynos: fix a possible null-pointer dereference due to data race in exynos_drm_crtc_atomic_disable()
  wifi: mac80211_hwsim: drop short frames
  alx: fix OOB-read compiler warning
  mmc: sdhci-esdhc-imx: improve ESDHC_FLAG_ERR010450
  tpm_tis: Resend command to recover from data transfer errors
  crypto: lib/mpi - avoid null pointer deref in mpi_cmp_ui()
  wifi: mwifiex: fix fortify warning
  wifi: ath9k: fix printk specifier
  devlink: remove reload failed checks in params get/set callbacks
  hw_breakpoint: fix single-stepping when using bpf_overflow_handler
  perf/smmuv3: Enable HiSilicon Erratum 162001900 quirk for HIP08/09
  ACPI: video: Add backlight=native DMI quirk for Lenovo Ideapad Z470
  kernel/fork: beware of __put_task_struct() calling context
  ACPICA: Add AML_NO_OPERAND_RESOLVE flag to Timer
  locks: fix KASAN: use-after-free in trace_event_raw_event_filelock_lock
  btrfs: output extra debug info if we failed to find an inline backref
  autofs: fix memory leak of waitqueues in autofs_catatonic_mode
  parisc: Drop loops_per_jiffy from per_cpu struct
  drm/amd/display: Fix a bug when searching for insert_above_mpcc
  kcm: Fix error handling for SOCK_DGRAM in kcm_sendmsg().
  ixgbe: fix timestamp configuration code
  net/tls: do not free tls_rec on async operation in bpf_exec_tx_verdict()
  platform/mellanox: mlxbf-tmfifo: Drop jumbo frames
  mlxbf-tmfifo: sparse tags for config access
  platform/mellanox: mlxbf-tmfifo: Drop the Rx packet if no more descriptors
  kcm: Fix memory leak in error path of kcm_sendmsg()
  r8152: check budget for r8152_poll()
  net: ethernet: mtk_eth_soc: fix possible NULL pointer dereference in mtk_hwlro_get_fdir_all()
  net: ethernet: mvpp2_main: fix possible OOB write in mvpp2_ethtool_get_rxnfc()
  net: ipv4: fix one memleak in __inet_del_ifa()
  clk: imx8mm: Move 1443X/1416X PLL clock structure to common place
  ARM: dts: BCM5301X: Extend RAM to full 256MB for Linksys EA6500 V2
  usb: typec: bus: verify partner exists in typec_altmode_attention
  usb: typec: tcpm: Refactor tcpm_handle_vdm_request
  usb: typec: tcpm: Refactor tcpm_handle_vdm_request payload handling
  perf tools: Handle old data in PERF_RECORD_ATTR
  perf hists browser: Fix hierarchy mode header
  mtd: rawnand: brcmnand: Fix potential false time out warning
  mtd: rawnand: brcmnand: Fix potential out-of-bounds access in oob write
  mtd: rawnand: brcmnand: Fix crash during the panic_write
  btrfs: use the correct superblock to compare fsid in btrfs_validate_super
  btrfs: don't start transaction when joining with TRANS_JOIN_NOSTART
  fuse: nlookup missing decrement in fuse_direntplus_link
  ata: pata_ftide010: Add missing MODULE_DESCRIPTION
  ata: sata_gemini: Add missing MODULE_DESCRIPTION
  sh: boards: Fix CEU buffer size passed to dma_declare_coherent_memory()
  net: hns3: fix the port information display when sfp is absent
  netfilter: nfnetlink_osf: avoid OOB read
  ip_tunnels: use DEV_STATS_INC()
  idr: fix param name in idr_alloc_cyclic() doc
  s390/zcrypt: don't leak memory if dev_set_name() fails
  igb: Change IGB_MIN to allow set rx/tx value between 64 and 80
  igbvf: Change IGBVF_MIN to allow set rx/tx value between 64 and 80
  igc: Change IGC_MIN to allow set rx/tx value between 64 and 80
  kcm: Destroy mutex in kcm_exit_net()
  net: sched: sch_qfq: Fix UAF in qfq_dequeue()
  af_unix: Fix data race around sk->sk_err.
  af_unix: Fix data-races around sk->sk_shutdown.
  af_unix: Fix data-race around unix_tot_inflight.
  af_unix: Fix data-races around user->unix_inflight.
  net: ipv6/addrconf: avoid integer underflow in ipv6_create_tempaddr
  veth: Fixing transmit return status for dropped packets
  igb: disable virtualization features on 82580
  net: read sk->sk_family once in sk_mc_loop()
  ipv4: annotate data-races around fi->fib_dead
  sctp: annotate data-races around sk->sk_wmem_queued
  pwm: lpc32xx: Remove handling of PWM channels
  watchdog: intel-mid_wdt: add MODULE_ALIAS() to allow auto-load
  perf top: Don't pass an ERR_PTR() directly to perf_session__delete()
  x86/virt: Drop unnecessary check on extended CPUID level in cpu_has_svm()
  perf annotate bpf: Don't enclose non-debug code with an assert()
  kconfig: fix possible buffer overflow
  NFSv4/pnfs: minor fix for cleanup path in nfs4_get_device_info
  soc: qcom: qmi_encdec: Restrict string length in decode
  clk: qcom: gcc-mdm9615: use proper parent for pll0_vote clock
  parisc: led: Reduce CPU overhead for disk & lan LED computation
  parisc: led: Fix LAN receive and transmit LEDs
  lib/test_meminit: allocate pages up to order MAX_ORDER
  drm/ast: Fix DRAM init on AST2200
  fbdev/ep93xx-fb: Do not assign to struct fb_info.dev
  scsi: qla2xxx: Remove unsupported ql2xenabledif option
  scsi: qla2xxx: Turn off noisy message log
  scsi: qla2xxx: Fix erroneous link up failure
  scsi: qla2xxx: fix inconsistent TMF timeout
  net/ipv6: SKB symmetric hash should incorporate transport ports
  drm: fix double free for gbo in drm_gem_vram_init and drm_gem_vram_create
  udf: initialize newblock to 0
  usb: typec: tcpci: clear the fault status bit
  serial: sc16is7xx: fix broken port 0 uart init
  sc16is7xx: Set iobase to device index
  cpufreq: brcmstb-avs-cpufreq: Fix -Warray-bounds bug
  crypto: stm32 - fix loop iterating through scatterlist for DMA
  s390/ipl: add missing secure/has_secure file to ipl type 'unknown'
  pstore/ram: Check start of empty przs during init
  fsverity: skip PKCS#7 parser when keyring is empty
  net: handle ARPHRD_PPP in dev_is_mac_header_xmit()
  X.509: if signature is unsupported skip validation
  dccp: Fix out of bounds access in DCCP error handler
  dlm: fix plock lookup when using multiple lockspaces
  parisc: Fix /proc/cpuinfo output for lscpu
  procfs: block chmod on /proc/thread-self/comm
  Revert "PCI: Mark NVIDIA T4 GPUs to avoid bus reset"
  ntb: Fix calculation ntb_transport_tx_free_entry()
  ntb: Clean up tx tail index on link down
  ntb: Drop packets when qp link is down
  media: dvb: symbol fixup for dvb_attach()
  xtensa: PMU: fix base address for the newer hardware
  backlight/lv5207lp: Compare against struct fb_info.device
  backlight/bd6107: Compare against struct fb_info.device
  backlight/gpio_backlight: Compare against struct fb_info.device
  ARM: OMAP2+: Fix -Warray-bounds warning in _pwrdm_state_switch()
  ipmi_si: fix a memleak in try_smi_init()
  ALSA: pcm: Fix missing fixup call in compat hw_refine ioctl
  PM / devfreq: Fix leak in devfreq_dev_release()
  igb: set max size RX buffer when store bad packet is enabled
  skbuff: skb_segment, Call zero copy functions before using skbuff frags
  netfilter: xt_sctp: validate the flag_info count
  netfilter: xt_u32: validate user space input
  netfilter: ipset: add the missing IP_SET_HASH_WITH_NET0 macro for ip_set_hash_netportnet.c
  igmp: limit igmpv3_newpack() packet size to IP_MAX_MTU
  virtio_ring: fix avail_wrap_counter in virtqueue_add_packed
  cpufreq: Fix the race condition while updating the transition_task of policy
  dmaengine: ste_dma40: Add missing IRQ check in d40_probe
  um: Fix hostaudio build errors
  mtd: rawnand: fsmc: handle clk prepare error in fsmc_nand_resume()
  rpmsg: glink: Add check for kstrdup
  phy/rockchip: inno-hdmi: do not power on rk3328 post pll on reg write
  phy/rockchip: inno-hdmi: round fractal pixclock in rk3328 recalc_rate
  phy/rockchip: inno-hdmi: use correct vco_div_5 macro on rk3328
  tracing: Fix race issue between cpu buffer write and swap
  x86/speculation: Mark all Skylake CPUs as vulnerable to GDS
  HID: multitouch: Correct devm device reference for hidinput input_dev name
  HID: logitech-dj: Fix error handling in logi_dj_recv_switch_to_dj_mode()
  RDMA/siw: Correct wrong debug message
  RDMA/siw: Balance the reference of cep->kref in the error path
  Revert "IB/isert: Fix incorrect release of isert connection"
  amba: bus: fix refcount leak
  serial: tegra: handle clk prepare error in tegra_uart_hw_init()
  scsi: fcoe: Fix potential deadlock on &fip->ctlr_lock
  scsi: core: Use 32-bit hostnum in scsi_host_lookup()
  media: ov2680: Fix regulators being left enabled on ov2680_power_on() errors
  media: ov2680: Fix vflip / hflip set functions
  media: ov2680: Fix ov2680_bayer_order()
  media: ov2680: Remove auto-gain and auto-exposure controls
  media: i2c: ov2680: Set V4L2_CTRL_FLAG_MODIFY_LAYOUT on flips
  media: ov5640: Enable MIPI interface in ov5640_set_power_mipi()
  media: i2c: ov5640: Configure HVP lines in s_power callback
  USB: gadget: f_mass_storage: Fix unused variable warning
  media: go7007: Remove redundant if statement
  iommu/vt-d: Fix to flush cache of PASID directory table
  IB/uverbs: Fix an potential error pointer dereference
  driver core: test_async: fix an error code
  dma-buf/sync_file: Fix docs syntax
  coresight: tmc: Explicit type conversions to prevent integer overflow
  scsi: qedf: Do not touch __user pointer in qedf_dbg_fp_int_cmd_read() directly
  scsi: qedf: Do not touch __user pointer in qedf_dbg_debug_cmd_read() directly
  scsi: qedf: Do not touch __user pointer in qedf_dbg_stop_io_on_error_cmd_read() directly
  x86/APM: drop the duplicate APM_MINOR_DEV macro
  serial: sprd: Fix DMA buffer leak issue
  serial: sprd: Assign sprd_port after initialized to avoid wrong access
  serial: sprd: remove redundant sprd_port cleanup
  serial: sprd: getting port index via serial aliases only
  scsi: qla4xxx: Add length check when parsing nlattrs
  scsi: be2iscsi: Add length check when parsing nlattrs
  scsi: iscsi: Add strlen() check in iscsi_if_set{_host}_param()
  usb: phy: mxs: fix getting wrong state with mxs_phy_is_otg_host()
  media: mediatek: vcodec: Return NULL if no vdec_fb is found
  media: cx24120: Add retval check for cx24120_message_send()
  media: dvb-usb: m920x: Fix a potential memory leak in m920x_i2c_xfer()
  media: dib7000p: Fix potential division by zero
  drivers: usb: smsusb: fix error handling code in smsusb_init_device
  media: v4l2-core: Fix a potential resource leak in v4l2_fwnode_parse_link()
  media: v4l2-fwnode: simplify v4l2_fwnode_parse_link
  media: v4l2-fwnode: fix v4l2_fwnode_parse_link handling
  NFS: Guard against READDIR loop when entry names exceed MAXNAMELEN
  NFSD: da_addr_body field missing in some GETDEVICEINFO replies
  fs: lockd: avoid possible wrong NULL parameter
  jfs: validate max amount of blocks before allocation.
  powerpc/iommu: Fix notifiers being shared by PCI and VIO buses
  nfs/blocklayout: Use the passed in gfp flags
  wifi: ath10k: Use RMW accessors for changing LNKCTL
  drm/radeon: Use RMW accessors for changing LNKCTL
  drm/radeon: Prefer pcie_capability_read_word()
  drm/radeon: Replace numbers with PCI_EXP_LNKCTL2 definitions
  drm/radeon: Correct Transmit Margin masks
  drm/amdgpu: Use RMW accessors for changing LNKCTL
  drm/amdgpu: Prefer pcie_capability_read_word()
  drm/amdgpu: Replace numbers with PCI_EXP_LNKCTL2 definitions
  drm/amdgpu: Correct Transmit Margin masks
  PCI: Add #defines for Enter Compliance, Transmit Margin
  powerpc/fadump: reset dump area size if fadump memory reserve fails
  clk: imx: composite-8m: fix clock pauses when set_rate would be a no-op
  PCI/ASPM: Use RMW accessors for changing LNKCTL
  PCI: pciehp: Use RMW accessors for changing LNKCTL
  PCI: Mark NVIDIA T4 GPUs to avoid bus reset
  clk: sunxi-ng: Modify mismatched function name
  drivers: clk: keystone: Fix parameter judgment in _of_pll_clk_init()
  ipmi:ssif: Fix a memory leak when scanning for an adapter
  ipmi:ssif: Add check for kstrdup
  ALSA: ac97: Fix possible error value of *rac97
  of: unittest: Fix overlay type in apply/revert check
  drm/mediatek: Fix potential memory leak if vmap() fail
  audit: fix possible soft lockup in __audit_inode_child()
  smackfs: Prevent underflow in smk_set_cipso()
  drm/msm/mdp5: Don't leak some plane state
  ima: Remove deprecated IMA_TRUSTED_KEYRING Kconfig
  drm/panel: simple: Add missing connector type and pixel format for AUO T215HVN01
  drm/armada: Fix off-by-one error in armada_overlay_get_property()
  of: unittest: fix null pointer dereferencing in of_unittest_find_node_by_name()
  drm/tegra: dpaux: Fix incorrect return value of platform_get_irq
  drm/tegra: Remove superfluous error messages around platform_get_irq()
  md/md-bitmap: hold 'reconfig_mutex' in backlog_store()
  md/bitmap: don't set max_write_behind if there is no write mostly device
  drm/amdgpu: Update min() to min_t() in 'amdgpu_info_ioctl'
  arm64: dts: qcom: sdm845: Add missing RPMh power domain to GCC
  ARM: dts: BCM53573: Fix Ethernet info for Luxul devices
  drm: adv7511: Fix low refresh rate register for ADV7533/5
  ARM: dts: samsung: s5pv210-smdkv210: correct ethernet reg addresses (split)
  ARM: dts: s5pv210: add dummy 5V regulator for backlight on SMDKv210
  ARM: dts: s5pv210: correct ethernet unit address in SMDKV210
  ARM: dts: s5pv210: use defines for IRQ flags in SMDKV210
  ARM: dts: s5pv210: add RTC 32 KHz clock in SMDKV210
  ARM: dts: samsung: s3c6410-mini6410: correct ethernet reg addresses (split)
  ARM: dts: s3c64xx: align pinctrl with dtschema
  ARM: dts: s3c6410: align node SROM bus node name with dtschema in Mini6410
  ARM: dts: s3c6410: move fixed clocks under root node in Mini6410
  drm/etnaviv: fix dumping of active MMU context
  ARM: dts: BCM53573: Use updated "spi-gpio" binding properties
  ARM: dts: BCM53573: Add cells sizes to PCIe node
  ARM: dts: BCM53573: Drop nonexistent "default-off" LED trigger
  drm/amdgpu: avoid integer overflow warning in amdgpu_device_resize_fb_bar()
  quota: fix dqput() to follow the guarantees dquot_srcu should provide
  quota: add new helper dquot_active()
  quota: rename dquot_active() to inode_quota_active()
  quota: factor out dquot_write_dquot()
  quota: avoid increasing DQST_LOOKUPS when iterating over dirty/inuse list
  drm/bridge: tc358764: Fix debug print parameter order
  netrom: Deny concurrent connect().
  net/sched: sch_hfsc: Ensure inner classes have fsc curve
  mlxsw: i2c: Limit single transaction buffer size
  mlxsw: i2c: Fix chunk size setting in output mailbox buffer
  net: arcnet: Do not call kfree_skb() under local_irq_disable()
  wifi: ath9k: use IS_ERR() with debugfs_create_dir()
  wifi: mwifiex: avoid possible NULL skb pointer dereference
  wifi: ath9k: protect WMI command response buffer replacement with a lock
  wifi: ath9k: fix races between ath9k_wmi_cmd and ath9k_wmi_ctrl_rx
  wifi: mwifiex: Fix missed return in oob checks failed path
  wifi: mwifiex: fix memory leak in mwifiex_histogram_read()
  fs: ocfs2: namei: check return value of ocfs2_add_entry()
  lwt: Check LWTUNNEL_XMIT_CONTINUE strictly
  lwt: Fix return values of BPF xmit ops
  hwrng: iproc-rng200 - Implement suspend and resume calls
  hwrng: iproc-rng200 - use semicolons rather than commas to separate statements
  crypto: caam - fix unchecked return value error
  Bluetooth: nokia: fix value check in nokia_bluetooth_serdev_probe()
  crypto: stm32 - Properly handle pm_runtime_get failing
  wifi: mwifiex: fix error recovery in PCIE buffer descriptor management
  mwifiex: switch from 'pci_' to 'dma_' API
  wifi: mwifiex: Fix OOB and integer underflow when rx packets
  can: gs_usb: gs_usb_receive_bulk_callback(): count RX overflow errors also in case of OOM
  spi: tegra20-sflash: fix to check return value of platform_get_irq() in tegra_sflash_probe()
  regmap: rbtree: Use alloc_flags for memory allocations
  tcp: tcp_enter_quickack_mode() should be static
  bpf: Clear the probe_addr for uprobe
  cpufreq: powernow-k8: Use related_cpus instead of cpus in driver.exit()
  perf/imx_ddr: don't enable counter0 if none of 4 counters are used
  x86/decompressor: Don't rely on upper 32 bits of GPRs being preserved
  x86/boot: Annotate local functions
  x86/asm: Make more symbols local
  OPP: Fix passing 0 to PTR_ERR in _opp_attach_genpd()
  tmpfs: verify {g,u}id mount options correctly
  fs: Fix error checking for d_hash_and_lookup()
  new helper: lookup_positive_unlocked()
  eventfd: prevent underflow for eventfd semaphores
  eventfd: Export eventfd_ctx_do_read()
  reiserfs: Check the return value from __getblk()
  Revert "net: macsec: preserve ingress frame ordering"
  udf: Handle error when adding extent to a file
  udf: Check consistency of Space Bitmap Descriptor
  powerpc/32s: Fix assembler warning about r0
  net: Avoid address overwrite in kernel_connect
  platform/mellanox: Fix mlxbf-tmfifo not handling all virtio CONSOLE notifications
  ALSA: seq: oss: Fix racy open/close of MIDI devices
  scsi: storvsc: Always set no_report_opcodes
  cifs: add a warning when the in-flight count goes negative
  sctp: handle invalid error codes without calling BUG()
  bnx2x: fix page fault following EEH recovery
  netlabel: fix shift wrapping bug in netlbl_catmap_setlong()
  scsi: qedi: Fix potential deadlock on &qedi_percpu->p_work_lock
  idmaengine: make FSL_EDMA and INTEL_IDMA64 depends on HAS_IOMEM
  net: usb: qmi_wwan: add Quectel EM05GV2
  clk: fixed-mmio: make COMMON_CLK_FIXED_MMIO depend on HAS_IOMEM
  security: keys: perform capable check only on privileged operations
  platform/x86: huawei-wmi: Silence ambient light sensor
  platform/x86: intel: hid: Always call BTNL ACPI method
  ASoC: atmel: Fix the 8K sample parameter in I2SC master
  ASoc: codecs: ES8316: Fix DMIC config
  fs/nls: make load_nls() take a const parameter
  s390/dasd: fix hanging device after request requeue
  s390/dasd: use correct number of retries for ERP requests
  m68k: Fix invalid .section syntax
  vxlan: generalize vxlan_parse_gpe_hdr and remove unused args
  ethernet: atheros: fix return value check in atl1c_tso_csum()
  ASoC: da7219: Check for failure reading AAD IRQ events
  ASoC: da7219: Flush pending AAD IRQ when suspending
  9p: virtio: make sure 'offs' is initialized in zc_request
  pinctrl: amd: Don't show `Invalid config param` errors
  nilfs2: fix WARNING in mark_buffer_dirty due to discarded buffer reuse
  nilfs2: fix general protection fault in nilfs_lookup_dirty_data_buffers()
  fsi: master-ast-cf: Add MODULE_FIRMWARE macro
  firmware: stratix10-svc: Fix an NULL vs IS_ERR() bug in probe
  serial: sc16is7xx: fix bug when first setting GPIO direction
  Bluetooth: btsdio: fix use after free bug in btsdio_remove due to race condition
  staging: rtl8712: fix race condition
  HID: wacom: remove the battery when the EKR is off
  USB: serial: option: add FOXCONN T99W368/T99W373 product
  USB: serial: option: add Quectel EM05G variant (0x030e)
  modules: only allow symbol_get of EXPORT_SYMBOL_GPL modules
  rtc: ds1685: use EXPORT_SYMBOL_GPL for ds1685_rtc_poweroff
  net: enetc: use EXPORT_SYMBOL_GPL for enetc_phc_index
  mmc: au1xmmc: force non-modular build and remove symbol_get usage
  ARM: pxa: remove use of symbol_get()
  erofs: ensure that the post-EOF tails are all zeroed
  Linux 5.4.256
  Revert "MIPS: Alchemy: fix dbdma2"
  powerpc/pmac/smp: Drop unnecessary volatile qualifier
  powerpc/pmac/smp: Avoid unused-variable warnings
  Revert "drm/display/dp: Fix the DP DSC Receiver cap size"
  Revert "macsec: Fix traffic counters/statistics"
  Revert "macsec: use DEV_STATS_INC()"
  ANDROID: GKI: add back pm_runtime_get_if_in_use()
  Revert "interconnect: Add helpers for enabling/disabling a path"
  Revert "interconnect: Do not skip aggregation for disabled paths"
  Revert "ALSA: pcm: Set per-card upper limit of PCM buffer allocations"
  Revert "ALSA: pcm: Use SG-buffer only when direct DMA is available"
  Revert "ALSA: pcm: Fix potential data race at PCM memory allocation helpers"
  Revert "ALSA: pcm: Fix build error on m68k and others"
  Revert "Revert "ALSA: pcm: Use SG-buffer only when direct DMA is available""
  Revert "ALSA: pcm: Check for null pointer of pointer substream before dereferencing it"
  Linux 5.4.255
  dma-buf/sw_sync: Avoid recursive lock during fence signal
  pinctrl: renesas: rza2: Add lock around pinctrl_generic{{add,remove}_group,{add,remove}_function}
  clk: Fix undefined reference to `clk_rate_exclusive_{get,put}'
  scsi: core: raid_class: Remove raid_component_add()
  scsi: snic: Fix double free in snic_tgt_create()
  irqchip/mips-gic: Don't touch vl_map if a local interrupt is not routable
  Documentation/sysctl: document page_lock_unfairness
  ALSA: pcm: Check for null pointer of pointer substream before dereferencing it
  interconnect: Do not skip aggregation for disabled paths
  Revert "ALSA: pcm: Use SG-buffer only when direct DMA is available"
  ALSA: pcm: Fix build error on m68k and others
  rtnetlink: Reject negative ifindexes in RTM_NEWLINK
  mm: allow a controlled amount of unfairness in the page lock
  x86/fpu: Set X86_FEATURE_OSXSAVE feature after enabling OSXSAVE in CR4
  drm/display/dp: Fix the DP DSC Receiver cap size
  PCI: acpiphp: Use pci_assign_unassigned_bridge_resources() only for non-root bus
  media: vcodec: Fix potential array out-of-bounds in encoder queue_setup
  radix tree: remove unused variable
  lib/clz_ctz.c: Fix __clzdi2() and __ctzdi2() for 32-bit kernels
  batman-adv: Hold rtnl lock during MTU update via netlink
  batman-adv: Fix batadv_v_ogm_aggr_send memory leak
  batman-adv: Fix TT global entry leak when client roamed back
  batman-adv: Do not get eth header before batadv_check_management_packet
  batman-adv: Don't increase MTU when set by user
  batman-adv: Trigger events for auto adjusted MTU
  nfsd: Fix race to FREE_STATEID and cl_revoked
  clk: Fix slab-out-of-bounds error in devm_clk_release()
  NFSv4: Fix dropped lock for racing OPEN and delegation return
  ibmveth: Use dcbf rather than dcbfl
  bonding: fix macvlan over alb bond support
  net: remove bond_slave_has_mac_rcu()
  net/sched: fix a qdisc modification with ambiguous command request
  igb: Avoid starting unnecessary workqueues
  net: validate veth and vxcan peer ifindexes
  net: bcmgenet: Fix return value check for fixed_phy_register()
  net: bgmac: Fix return value check for fixed_phy_register()
  ipvlan: Fix a reference count leak warning in ipvlan_ns_exit()
  dccp: annotate data-races in dccp_poll()
  sock: annotate data-races around prot->memory_pressure
  octeontx2-af: SDP: fix receive link config
  tracing: Fix memleak due to race between current_tracer and trace
  drm/amd/display: check TG is non-null before checking if enabled
  drm/amd/display: do not wait for mpc idle if tg is disabled
  ASoC: fsl_sai: Disable bit clock with transmitter
  ASoC: fsl_sai: Add new added registers and new bit definition
  ASoC: fsl_sai: Refine enable/disable TE/RE sequence in trigger()
  regmap: Account for register length in SMBus I/O limits
  ALSA: pcm: Fix potential data race at PCM memory allocation helpers
  ALSA: pcm: Use SG-buffer only when direct DMA is available
  ALSA: pcm: Set per-card upper limit of PCM buffer allocations
  dm integrity: reduce vmalloc space footprint on 32-bit architectures
  dm integrity: increase RECALC_SECTORS to improve recalculate speed
  fbdev: fix potential OOB read in fast_imageblit()
  fbdev: Fix sys_imageblit() for arbitrary image widths
  fbdev: Improve performance of sys_imageblit()
  MIPS: cpu-features: Use boot_cpu_type for CPU type based features
  MIPS: cpu-features: Enable octeon_cache by cpu_type
  fs: dlm: fix mismatch of plock results from userspace
  fs: dlm: use dlm_plock_info for do_unlock_close
  fs: dlm: change plock interrupted message to debug again
  fs: dlm: add pid to debug log
  dlm: replace usage of found with dedicated list iterator variable
  dlm: improve plock logging if interrupted
  PCI: acpiphp: Reassign resources on bridge if necessary
  net: phy: broadcom: stub c45 read/write for 54810
  mmc: f-sdh30: fix order of function calls in sdhci_f_sdh30_remove
  net: xfrm: Amend XFRMA_SEC_CTX nla_policy structure
  net: fix the RTO timer retransmitting skb every 1ms if linear option is enabled
  virtio-net: set queues after driver_ok
  af_unix: Fix null-ptr-deref in unix_stream_sendpage().
  netfilter: set default timeout to 3 secs for sctp shutdown send and recv state
  mmc: block: Fix in_flight[issue_type] value error
  mmc: wbsd: fix double mmc_free_host() in wbsd_init()
  cifs: Release folio lock on fscache read hit.
  ALSA: usb-audio: Add support for Mythware XA001AU capture and playback interfaces.
  serial: 8250: Fix oops for port->pm on uart_change_pm()
  ASoC: meson: axg-tdm-formatter: fix channel slot allocation
  ASoC: rt5665: add missed regulator_bulk_disable
  ARM: dts: imx: Set default tuning step for imx6sx usdhc
  ARM: dts: imx: Set default tuning step for imx7d usdhc
  ARM: dts: imx: Adjust dma-apbh node name
  ARM: dts: imx7s: Drop dma-apb interrupt-names
  bus: ti-sysc: Flush posted write on enable before reset
  bus: ti-sysc: Improve reset to work with modules with no sysconfig
  net: do not allow gso_size to be set to GSO_BY_FRAGS
  sock: Fix misuse of sk_under_memory_pressure()
  net: dsa: mv88e6xxx: Wait for EEPROM done before HW reset
  i40e: fix misleading debug logs
  team: Fix incorrect deletion of ETH_P_8021AD protocol vid from slaves
  netfilter: nft_dynset: disallow object maps
  ipvs: fix racy memcpy in proc_do_sync_threshold
  selftests: mirror_gre_changes: Tighten up the TTL test match
  xfrm: add NULL check in xfrm_update_ae_params
  ip_vti: fix potential slab-use-after-free in decode_session6
  ip6_vti: fix slab-use-after-free in decode_session6
  xfrm: fix slab-use-after-free in decode_session6
  xfrm: interface: rename xfrm_interface.c to xfrm_interface_core.c
  net: af_key: fix sadb_x_filter validation
  net: xfrm: Fix xfrm_address_filter OOB read
  btrfs: fix BUG_ON condition in btrfs_cancel_balance
  tty: serial: fsl_lpuart: Clear the error flags by writing 1 for lpuart32 platforms
  powerpc/rtas_flash: allow user copy to flash block cache objects
  fbdev: mmp: fix value check in mmphw_probe()
  i2c: bcm-iproc: Fix bcm_iproc_i2c_isr deadlock issue
  virtio-mmio: don't break lifecycle of vm_dev
  virtio-mmio: Use to_virtio_mmio_device() to simply code
  virtio-mmio: convert to devm_platform_ioremap_resource
  nfsd: Remove incorrect check in nfsd4_validate_stateid
  nfsd4: kill warnings on testing stateids with mismatched clientids
  net/ncsi: Fix gma flag setting after response
  tracing/probes: Fix to update dynamic data counter if fetcharg uses it
  tracing/probes: Have process_fetch_insn() take a void * instead of pt_regs
  leds: trigger: netdev: Recheck NETDEV_LED_MODE_LINKUP on dev rename
  mmc: sunxi: fix deferred probing
  mmc: bcm2835: fix deferred probing
  USB: dwc3: qcom: fix NULL-deref on suspend
  usb: dwc3: qcom: Add helper functions to enable,disable wake irqs
  interconnect: Add helpers for enabling/disabling a path
  interconnect: Move internal structs into a separate file
  irqchip/mips-gic: Use raw spinlock for gic_lock
  irqchip/mips-gic: Get rid of the reliance on irq_cpu_online()
  ALSA: hda: Fix unhandled register update during auto-suspend period
  PM: runtime: Add pm_runtime_get_if_active()
  PM-runtime: add tracepoints for usage_count changes
  iommu/amd: Fix "Guest Virtual APIC Table Root Pointer" configuration in IRTE
  iio: addac: stx104: Fix race condition when converting analog-to-digital
  iio: addac: stx104: Fix race condition for stx104_write_raw()
  iio: stx104: Move to addac subdirectory
  iio: adc: stx104: Implement and utilize register structures
  iio: adc: stx104: Utilize iomap interface
  iio: add addac subdirectory
  IMA: allow/fix UML builds
  powerpc/kasan: Disable KCOV in KASAN code
  ALSA: hda: fix a possible null-pointer dereference due to data race in snd_hdac_regmap_sync()
  ALSA: hda/realtek: Add quirks for Unis H3C Desktop B760 & Q760
  drm/amdgpu: Fix potential fence use-after-free v2
  Bluetooth: L2CAP: Fix use-after-free
  pcmcia: rsrc_nonstatic: Fix memory leak in nonstatic_release_resource_db()
  gfs2: Fix possible data races in gfs2_show_options()
  usb: chipidea: imx: don't request QoS for imx8ulp
  media: platform: mediatek: vpu: fix NULL ptr dereference
  media: v4l2-mem2mem: add lock to protect parameter num_rdy
  FS: JFS: Check for read-only mounted filesystem in txBegin
  FS: JFS: Fix null-ptr-deref Read in txBegin
  MIPS: dec: prom: Address -Warray-bounds warning
  fs: jfs: Fix UBSAN: array-index-out-of-bounds in dbAllocDmapLev
  udf: Fix uninitialized array access for some pathnames
  ovl: check type and offset of struct vfsmount in ovl_entry
  HID: add quirk for 03f0:464a HP Elite Presenter Mouse
  quota: fix warning in dqgrab()
  quota: Properly disable quotas when add_dquot_ref() fails
  ALSA: emu10k1: roll up loops in DSP setup code for Audigy
  drm/radeon: Fix integer overflow in radeon_cs_parser_init
  macsec: use DEV_STATS_INC()
  macsec: Fix traffic counters/statistics
  selftests: forwarding: tc_flower: Relax success criterion
  mmc: sdhci-f-sdh30: Replace with sdhci_pltfm
  mmc: sdhci_f_sdh30: convert to devm_platform_ioremap_resource

 Conflicts:
	drivers/devfreq/devfreq.c
	drivers/mmc/core/block.c
	drivers/rpmsg/qcom_glink_native.c
	include/net/tcp.h

Change-Id: Ic33d13451796752e101ed9f9bdb8c80a580af8b5
2023-12-11 20:22:05 +02:00
Linus Torvalds
c404e1e197 mm: allow a controlled amount of unfairness in the page lock
commit 5ef64cc8987a9211d3f3667331ba3411a94ddc79 upstream.

Commit 2a9127fcf229 ("mm: rewrite wait_on_page_bit_common() logic") made
the page locking entirely fair, in that if a waiter came in while the
lock was held, the lock would be transferred to the lockers strictly in
order.

That was intended to finally get rid of the long-reported watchdog
failures that involved the page lock under extreme load, where a process
could end up waiting essentially forever, as other page lockers stole
the lock from under it.

It also improved some benchmarks, but it ended up causing huge
performance regressions on others, simply because fair lock behavior
doesn't end up giving out the lock as aggressively, causing better
worst-case latency, but potentially much worse average latencies and
throughput.

Instead of reverting that change entirely, this introduces a controlled
amount of unfairness, with a sysctl knob to tune it if somebody needs
to.  But the default value should hopefully be good for any normal load,
allowing a few rounds of lock stealing, but enforcing the strict
ordering before the lock has been stolen too many times.

There is also a hint from Matthieu Baerts that the fair page coloring
may end up exposing an ABBA deadlock that is hidden by the usual
optimistic lock stealing, and while the unfairness doesn't fix the
fundamental issue (and I'm still looking at that), it avoids it in
practice.

The amount of unfairness can be modified by writing a new value to the
'sysctl_page_lock_unfairness' variable (default value of 5, exposed
through /proc/sys/vm/page_lock_unfairness), but that is hopefully
something we'd use mainly for debugging rather than being necessary for
any deep system tuning.

This whole issue has exposed just how critical the page lock can be, and
how contended it gets under certain locks.  And the main contention
doesn't really seem to be anything related to IO (which was the origin
of this lock), but for things like just verifying that the page file
mapping is stable while faulting in the page into a page table.

Link: https://lore.kernel.org/linux-fsdevel/ed8442fd-6f54-dd84-cd4a-941e8b7ee603@MichaelLarabel.com/
Link: https://www.phoronix.com/scan.php?page=article&item=linux-50-59&num=1
Link: https://lore.kernel.org/linux-fsdevel/c560a38d-8313-51fb-b1ec-e904bd8836bc@tessares.net/
Reported-and-tested-by: Michael Larabel <Michael@michaellarabel.com>
Tested-by: Matthieu Baerts <matthieu.baerts@tessares.net>
Cc: Dave Chinner <david@fromorbit.com>
Cc: Matthew Wilcox <willy@infradead.org>
Cc: Chris Mason <clm@fb.com>
Cc: Jan Kara <jack@suse.cz>
Cc: Amir Goldstein <amir73il@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Saeed Mirzamohammadi <saeed.mirzamohammadi@oracle.com>
Tested-by: Maximilian Heyne <mheyne@amazon.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-08-30 16:27:26 +02:00
Michael Bestas
635c74d37d Merge tag 'ASB-2022-12-05_11-5.4' of https://android.googlesource.com/kernel/common into android13-5.4-lahaina
https://source.android.com/docs/security/bulletin/2022-12-01
CVE-2022-23960

* tag 'ASB-2022-12-05_11-5.4' of https://android.googlesource.com/kernel/common:
  UPSTREAM: bpf: Ensure correct locking around vulnerable function find_vpid()
  UPSTREAM: HID: roccat: Fix use-after-free in roccat_read()
  ANDROID: arm64: mm: perform clean & invalidation in __dma_map_area
  UPSTREAM: mmc: hsq: Fix data stomping during mmc recovery
  UPSTREAM: pinctrl: sunxi: Fix name for A100 R_PIO
  BACKPORT: mmc: core: Fix UHS-I SD 1.8V workaround branch
  UPSTREAM: Bluetooth: L2CAP: Fix l2cap_global_chan_by_psm regression
  UPSTREAM: wifi: mac80211_hwsim: set virtio device ready in probe()
  BACKPORT: f2fs: don't use casefolded comparison for "." and ".."
  UPSTREAM: Revert "mm/cma.c: remove redundant cma_mutex lock"
  UPSTREAM: usb: dwc3: Try usb-role-switch first in dwc3_drd_init
  BACKPORT: usb: typec: ucsi: Fix reuse of completion structure
  BACKPORT: tipc: fix incorrect order of state message data sanity check
  UPSTREAM: net: fix up skbs delta_truesize in UDP GRO frag_list
  UPSTREAM: cgroup-v1: Correct privileges check in release_agent writes
  UPSTREAM: mm: don't try to NUMA-migrate COW pages that have other uses
  UPSTREAM: usb: raw-gadget: fix handling of dual-direction-capable endpoints
  UPSTREAM: selinux: check return value of sel_make_avc_files
  UPSTREAM: usb: musb: select GENERIC_PHY instead of depending on it
  BACKPORT: driver core: Fix error return code in really_probe()
  UPSTREAM: fscrypt: fix derivation of SipHash keys on big endian CPUs
  BACKPORT: fscrypt: rename FS_KEY_DERIVATION_NONCE_SIZE
  UPSTREAM: socionext: account for napi_gro_receive never returning GRO_DROP
  UPSTREAM: net: socionext: netsec: fix xdp stats accounting
  BACKPORT: fs: align IOCB_* flags with RWF_* flags
  UPSTREAM: efi: capsule-loader: Fix use-after-free in efi_capsule_write
  BACKPORT: ARM: 9039/1: assembler: generalize byte swapping macro into rev_l
  BACKPORT: ARM: 9035/1: uncompress: Add be32tocpu macro
  UPSTREAM: drm/meson: Fix overflow implicit truncation warnings
  UPSTREAM: irqchip/tegra: Fix overflow implicit truncation warnings
  UPSTREAM: video: fbdev: pxa3xx-gcu: Fix integer overflow in pxa3xx_gcu_write
  ANDROID: GKI: db845c: Update symbols list and ABI
  Linux 5.4.219
  wifi: mac80211: fix MBSSID parsing use-after-free
  wifi: mac80211: don't parse mbssid in assoc response
  mac80211: mlme: find auth challenge directly
  Revert "fs: check FMODE_LSEEK to control internal pipe splicing"
  Linux 5.4.218
  Input: xpad - fix wireless 360 controller breaking after suspend
  Input: xpad - add supported devices as contributed on github
  wifi: cfg80211: update hidden BSSes to avoid WARN_ON
  wifi: mac80211_hwsim: avoid mac80211 warning on bad rate
  wifi: cfg80211: avoid nontransmitted BSS list corruption
  wifi: cfg80211: fix BSS refcounting bugs
  wifi: cfg80211: ensure length byte is present before access
  wifi: cfg80211/mac80211: reject bad MBSSID elements
  wifi: cfg80211: fix u8 overflow in cfg80211_update_notlisted_nontrans()
  random: use expired timer rather than wq for mixing fast pool
  random: avoid reading two cache lines on irq randomness
  random: restore O_NONBLOCK support
  USB: serial: qcserial: add new usb-id for Dell branded EM7455
  scsi: stex: Properly zero out the passthrough command structure
  efi: Correct Macmini DMI match in uefi cert quirk
  ALSA: hda: Fix position reporting on Poulsbo
  random: clamp credited irq bits to maximum mixed
  ceph: don't truncate file in atomic_open
  nilfs2: replace WARN_ONs by nilfs_error for checkpoint acquisition failure
  nilfs2: fix leak of nilfs_root in case of writer thread creation failure
  nilfs2: fix NULL pointer dereference at nilfs_bmap_lookup_at_level()
  rpmsg: qcom: glink: replace strncpy() with strscpy_pad()
  mmc: core: Terminate infinite loop in SD-UHS voltage switch
  mmc: core: Replace with already defined values for readability
  USB: serial: ftdi_sio: fix 300 bps rate for SIO
  usb: mon: make mmapped memory read only
  arch: um: Mark the stack non-executable to fix a binutils warning
  um: Cleanup compiler warning in arch/x86/um/tls_32.c
  um: Cleanup syscall_handler_t cast in syscalls_32.h
  net/ieee802154: fix uninit value bug in dgram_sendmsg
  scsi: qedf: Fix a UAF bug in __qedf_probe()
  ARM: dts: fix Moxa SDIO 'compatible', remove 'sdhci' misnomer
  dmaengine: xilinx_dma: Report error in case of dma_set_mask_and_coherent API failure
  dmaengine: xilinx_dma: cleanup for fetching xlnx,num-fstores property
  firmware: arm_scmi: Add SCMI PM driver remove routine
  fs: fix UAF/GPF bug in nilfs_mdt_destroy
  perf tools: Fixup get_current_dir_name() compilation
  mm: pagewalk: Fix race between unmap and page walker
  Linux 5.4.217
  docs: update mediator information in CoC docs
  Makefile.extrawarn: Move -Wcast-function-type-strict to W=1
  Revert "drm/amdgpu: use dirty framebuffer helper"
  xfs: remove unused variable 'done'
  xfs: fix uninitialized variable in xfs_attr3_leaf_inactive
  xfs: streamline xfs_attr3_leaf_inactive
  xfs: move incore structures out of xfs_da_format.h
  xfs: fix memory corruption during remote attr value buffer invalidation
  xfs: refactor remote attr value buffer invalidation
  xfs: fix IOCB_NOWAIT handling in xfs_file_dio_aio_read
  xfs: fix s_maxbytes computation on 32-bit kernels
  xfs: truncate should remove all blocks, not just to the end of the page cache
  xfs: introduce XFS_MAX_FILEOFF
  xfs: fix misuse of the XFS_ATTR_INCOMPLETE flag
  x86/speculation: Add RSB VM Exit protections
  x86/bugs: Warn when "ibrs" mitigation is selected on Enhanced IBRS parts
  x86/speculation: Use DECLARE_PER_CPU for x86_spec_ctrl_current
  x86/speculation: Disable RRSBA behavior
  x86/bugs: Add Cannon lake to RETBleed affected CPU list
  x86/cpu/amd: Enumerate BTC_NO
  x86/common: Stamp out the stepping madness
  x86/speculation: Fill RSB on vmexit for IBRS
  KVM: VMX: Fix IBRS handling after vmexit
  KVM: VMX: Prevent guest RSB poisoning attacks with eIBRS
  KVM: VMX: Convert launched argument to flags
  KVM: VMX: Flatten __vmx_vcpu_run()
  KVM/nVMX: Use __vmx_vcpu_run in nested_vmx_check_vmentry_hw
  KVM/VMX: Use TEST %REG,%REG instead of CMP $0,%REG in vmenter.S
  x86/speculation: Remove x86_spec_ctrl_mask
  x86/speculation: Use cached host SPEC_CTRL value for guest entry/exit
  x86/speculation: Fix SPEC_CTRL write on SMT state change
  x86/speculation: Fix firmware entry SPEC_CTRL handling
  x86/speculation: Fix RSB filling with CONFIG_RETPOLINE=n
  x86/speculation: Change FILL_RETURN_BUFFER to work with objtool
  intel_idle: Disable IBRS during long idle
  x86/bugs: Report Intel retbleed vulnerability
  x86/bugs: Split spectre_v2_select_mitigation() and spectre_v2_user_select_mitigation()
  x86/speculation: Add spectre_v2=ibrs option to support Kernel IBRS
  x86/bugs: Optimize SPEC_CTRL MSR writes
  x86/entry: Add kernel IBRS implementation
  x86/entry: Remove skip_r11rcx
  x86/bugs: Keep a per-CPU IA32_SPEC_CTRL value
  x86/bugs: Add AMD retbleed= boot parameter
  x86/bugs: Report AMD retbleed vulnerability
  x86/cpufeatures: Move RETPOLINE flags to word 11
  x86/kvm/vmx: Make noinstr clean
  x86/cpu: Add a steppings field to struct x86_cpu_id
  x86/cpu: Add consistent CPU match macros
  x86/devicetable: Move x86 specific macro out of generic code
  Revert "x86/cpu: Add a steppings field to struct x86_cpu_id"
  Revert "x86/speculation: Add RSB VM Exit protections"
  Linux 5.4.216
  clk: iproc: Do not rely on node name for correct PLL setup
  clk: imx: imx6sx: remove the SET_RATE_PARENT flag for QSPI clocks
  selftests: Fix the if conditions of in test_extra_filter()
  nvme: Fix IOC_PR_CLEAR and IOC_PR_RELEASE ioctls for nvme devices
  nvme: add new line after variable declatation
  usbnet: Fix memory leak in usbnet_disconnect()
  Input: melfas_mip4 - fix return value check in mip4_probe()
  Revert "drm: bridge: analogix/dp: add panel prepare/unprepare in suspend/resume time"
  soc: sunxi: sram: Fix debugfs info for A64 SRAM C
  soc: sunxi: sram: Fix probe function ordering issues
  soc: sunxi_sram: Make use of the helper function devm_platform_ioremap_resource()
  soc: sunxi: sram: Prevent the driver from being unbound
  soc: sunxi: sram: Actually claim SRAM regions
  ARM: dts: am33xx: Fix MMCHS0 dma properties
  ARM: dts: Move am33xx and am43xx mmc nodes to sdhci-omap driver
  media: dvb_vb2: fix possible out of bound access
  mm: fix madivse_pageout mishandling on non-LRU page
  mm/migrate_device.c: flush TLB while holding PTL
  mm: prevent page_frag_alloc() from corrupting the memory
  mm/page_alloc: fix race condition between build_all_zonelists and page allocation
  mmc: moxart: fix 4-bit bus width and remove 8-bit bus width
  libata: add ATA_HORKAGE_NOLPM for Pioneer BDR-207M and BDR-205
  Revert "net: mvpp2: debugfs: fix memory leak when using debugfs_lookup()"
  ntfs: fix BUG_ON in ntfs_lookup_inode_by_name()
  ARM: dts: integrator: Tag PCI host with device_type
  clk: ingenic-tcu: Properly enable registers before accessing timers
  net: usb: qmi_wwan: Add new usb-id for Dell branded EM7455
  uas: ignore UAS for Thinkplus chips
  usb-storage: Add Hiksemi USB3-FW to IGNORE_UAS
  uas: add no-uas quirk for Hiksemi usb_disk
  Linux 5.4.215
  ext4: make directory inode spreading reflect flexbg size
  xfs: fix use-after-free when aborting corrupt attr inactivation
  xfs: fix an ABBA deadlock in xfs_rename
  xfs: don't commit sunit/swidth updates to disk if that would cause repair failures
  xfs: split the sunit parameter update into two parts
  xfs: refactor agfl length computation function
  xfs: use bitops interface for buf log item AIL flag check
  xfs: stabilize insert range start boundary to avoid COW writeback race
  xfs: fix some memory leaks in log recovery
  xfs: always log corruption errors
  xfs: constify the buffer pointer arguments to error functions
  xfs: convert EIO to EFSCORRUPTED when log contents are invalid
  xfs: Fix deadlock between AGI and AGF when target_ip exists in xfs_rename()
  xfs: attach dquots and reserve quota blocks during unwritten conversion
  xfs: range check ri_cnt when recovering log items
  xfs: add missing assert in xfs_fsmap_owner_from_rmap
  xfs: slightly tweak an assert in xfs_fs_map_blocks
  xfs: replace -EIO with -EFSCORRUPTED for corrupt metadata
  ext4: fix bug in extents parsing when eh_entries == 0 and eh_depth > 0
  workqueue: don't skip lockdep work dependency in cancel_work_sync()
  drm/rockchip: Fix return type of cdn_dp_connector_mode_valid
  drm/amd/display: Limit user regamma to a valid value
  drm/amdgpu: use dirty framebuffer helper
  Drivers: hv: Never allocate anything besides framebuffer from framebuffer memory region
  cifs: always initialize struct msghdr smb_msg completely
  usb: xhci-mtk: fix issue of out-of-bounds array access
  s390/dasd: fix Oops in dasd_alias_get_start_dev due to missing pavgroup
  serial: tegra-tcu: Use uart_xmit_advance(), fixes icount.tx accounting
  serial: tegra: Use uart_xmit_advance(), fixes icount.tx accounting
  serial: Create uart_xmit_advance()
  net: sched: fix possible refcount leak in tc_new_tfilter()
  net: sunhme: Fix packet reception for len < RX_COPY_THRESHOLD
  perf kcore_copy: Do not check /proc/modules is unchanged
  perf jit: Include program header in ELF files
  can: gs_usb: gs_can_open(): fix race dev->can.state condition
  netfilter: ebtables: fix memory leak when blob is malformed
  net/sched: taprio: make qdisc_leaf() see the per-netdev-queue pfifo child qdiscs
  net/sched: taprio: avoid disabling offload when it was never enabled
  of: mdio: Add of_node_put() when breaking out of for_each_xx
  i40e: Fix set max_tx_rate when it is lower than 1 Mbps
  i40e: Fix VF set max MTU size
  iavf: Fix set max MTU size with port VLAN and jumbo frames
  iavf: Fix bad page state
  MIPS: Loongson32: Fix PHY-mode being left unspecified
  MIPS: lantiq: export clk_get_io() for lantiq_wdt.ko
  net: team: Unsync device addresses on ndo_stop
  ipvlan: Fix out-of-bound bugs caused by unset skb->mac_header
  iavf: Fix cached head and tail value for iavf_get_tx_pending
  netfilter: nfnetlink_osf: fix possible bogus match in nf_osf_find()
  netfilter: nf_conntrack_irc: Tighten matching on DCC message
  netfilter: nf_conntrack_sip: fix ct_sip_walk_headers
  arm64: dts: rockchip: Remove 'enable-active-low' from rk3399-puma
  arm64: dts: rockchip: Set RK3399-Gru PCLK_EDP to 24 MHz
  arm64: dts: rockchip: Pull up wlan wake# on Gru-Bob
  mm/slub: fix to return errno if kmalloc() fails
  efi: libstub: check Shim mode using MokSBStateRT
  ALSA: hda/realtek: Enable 4-speaker output Dell Precision 5530 laptop
  ALSA: hda/realtek: Add quirk for ASUS GA503R laptop
  ALSA: hda/realtek: Add pincfg for ASUS G533Z HP jack
  ALSA: hda/realtek: Add pincfg for ASUS G513 HP jack
  ALSA: hda/realtek: Re-arrange quirk table entries
  ALSA: hda/realtek: Add quirk for Huawei WRT-WX9
  ALSA: hda: add Intel 5 Series / 3400 PCI DID
  ALSA: hda/tegra: set depop delay for tegra
  USB: serial: option: add Quectel RM520N
  USB: serial: option: add Quectel BG95 0x0203 composition
  USB: core: Fix RST error in hub.c
  Revert "usb: gadget: udc-xilinx: replace memcpy with memcpy_toio"
  Revert "usb: add quirks for Lenovo OneLink+ Dock"
  usb: cdns3: fix issue with rearming ISO OUT endpoint
  usb: gadget: udc-xilinx: replace memcpy with memcpy_toio
  usb: add quirks for Lenovo OneLink+ Dock
  tty: serial: atmel: Preserve previous USART mode if RS485 disabled
  serial: atmel: remove redundant assignment in rs485_config
  tty/serial: atmel: RS485 & ISO7816: wait for TXRDY before sending data
  wifi: mac80211: Fix UAF in ieee80211_scan_rx()
  usb: xhci-mtk: relax TT periodic bandwidth allocation
  usb: xhci-mtk: allow multiple Start-Split in a microframe
  usb: xhci-mtk: add some schedule error number
  usb: xhci-mtk: add a function to (un)load bandwidth info
  usb: xhci-mtk: use @sch_tt to check whether need do TT schedule
  usb: xhci-mtk: add only one extra CS for FS/LS INTR
  usb: xhci-mtk: get the microframe boundary for ESIT
  usb: dwc3: gadget: Avoid duplicate requests to enable Run/Stop
  usb: dwc3: gadget: Don't modify GEVNTCOUNT in pullup()
  usb: dwc3: gadget: Refactor pullup()
  usb: dwc3: gadget: Prevent repeat pullup()
  usb: dwc3: Issue core soft reset before enabling run/stop
  usb: dwc3: gadget: Avoid starting DWC3 gadget during UDC unbind
  ALSA: hda/sigmatel: Fix unused variable warning for beep power change
  cgroup: Add missing cpus_read_lock() to cgroup_attach_task_all()
  video: fbdev: pxa3xx-gcu: Fix integer overflow in pxa3xx_gcu_write
  mksysmap: Fix the mismatch of 'L0' symbols in System.map
  MIPS: OCTEON: irq: Fix octeon_irq_force_ciu_mapping()
  afs: Return -EAGAIN, not -EREMOTEIO, when a file already locked
  net: usb: qmi_wwan: add Quectel RM520N
  ALSA: hda/tegra: Align BDL entry to 4KB boundary
  ALSA: hda/sigmatel: Keep power up while beep is enabled
  rxrpc: Fix calc of resend age
  rxrpc: Fix local destruction being repeated
  regulator: pfuze100: Fix the global-out-of-bounds access in pfuze100_regulator_probe()
  ASoC: nau8824: Fix semaphore unbalance at error paths
  iomap: iomap that extends beyond EOF should be marked dirty
  MAINTAINERS: add Chandan as xfs maintainer for 5.4.y
  cifs: don't send down the destination address to sendmsg for a SOCK_STREAM
  cifs: revalidate mapping when doing direct writes
  tracing: hold caller_addr to hardirq_{enable,disable}_ip
  task_stack, x86/cea: Force-inline stack helpers
  ALSA: pcm: oss: Fix race at SNDCTL_DSP_SYNC
  parisc: ccio-dma: Add missing iounmap in error path in ccio_probe()
  drm/meson: Fix OSD1 RGB to YCbCr coefficient
  drm/meson: Correct OSD1 global alpha value
  gpio: mpc8xxx: Fix support for IRQ_TYPE_LEVEL_LOW flow_type in mpc85xx
  NFSv4: Turn off open-by-filehandle and NFS re-export for NFSv4.0
  of: fdt: fix off-by-one error in unflatten_dt_nodes()
  Revert "USB: core: Prevent nested device-reset calls"
  Revert "io_uring: disable polling pollfree files"
  Revert "netfilter: conntrack: NF_CONNTRACK_PROCFS should no longer default to y"
  Revert "sched/deadline: Fix priority inheritance with multiple scheduling classes"
  Revert "kernel/sched: Remove dl_boosted flag comment"
  Revert "mm/rmap: Fix anon_vma->degree ambiguity leading to double-reuse"
  Revert "fs: check FMODE_LSEEK to control internal pipe splicing"
  Linux 5.4.214
  tracefs: Only clobber mode/uid/gid on remount if asked
  soc: fsl: select FSL_GUTS driver for DPIO
  net: dp83822: disable rx error interrupt
  mm: Fix TLB flush for not-first PFNMAP mappings in unmap_region()
  usb: storage: Add ASUS <0x0b05:0x1932> to IGNORE_UAS
  platform/x86: acer-wmi: Acer Aspire One AOD270/Packard Bell Dot keymap fixes
  perf/arm_pmu_platform: fix tests for platform_get_irq() failure
  nvmet-tcp: fix unhandled tcp states in nvmet_tcp_state_change()
  Input: iforce - add support for Boeder Force Feedback Wheel
  ieee802154: cc2520: add rc code in cc2520_tx()
  tg3: Disable tg3 device on system reboot to avoid triggering AER
  hid: intel-ish-hid: ishtp: Fix ishtp client sending disordered message
  HID: ishtp-hid-clientHID: ishtp-hid-client: Fix comment typo
  drm/msm/rd: Fix FIFO-full deadlock
  Linux 5.4.213
  MIPS: loongson32: ls1c: Fix hang during startup
  x86/nospec: Fix i386 RSB stuffing
  sch_sfb: Also store skb len before calling child enqueue
  tcp: fix early ETIMEDOUT after spurious non-SACK RTO
  nvme-tcp: fix UAF when detecting digest errors
  RDMA/mlx5: Set local port to one when accessing counters
  ipv6: sr: fix out-of-bounds read when setting HMAC data.
  RDMA/siw: Pass a pointer to virt_to_page()
  i40e: Fix kernel crash during module removal
  tipc: fix shift wrapping bug in map_get()
  sch_sfb: Don't assume the skb is still around after enqueueing to child
  afs: Use the operation issue time instead of the reply time for callbacks
  rxrpc: Fix an insufficiently large sglist in rxkad_verify_packet_2()
  netfilter: nf_conntrack_irc: Fix forged IP logic
  netfilter: br_netfilter: Drop dst references before setting.
  RDMA/hns: Fix supported page size
  soc: brcmstb: pm-arm: Fix refcount leak and __iomem leak bugs
  RDMA/cma: Fix arguments order in net device validation
  regulator: core: Clean up on enable failure
  ARM: dts: imx6qdl-kontron-samx6i: remove duplicated node
  smb3: missing inode locks in punch hole
  cgroup: Fix threadgroup_rwsem <-> cpus_read_lock() deadlock
  cgroup: Elide write-locking threadgroup_rwsem when updating csses on an empty subtree
  cgroup: Optimize single thread migration
  scsi: lpfc: Add missing destroy_workqueue() in error path
  scsi: mpt3sas: Fix use-after-free warning
  nvmet: fix a use-after-free
  debugfs: add debugfs_lookup_and_remove()
  kprobes: Prohibit probes in gate area
  ALSA: usb-audio: Fix an out-of-bounds bug in __snd_usb_parse_audio_interface()
  ALSA: aloop: Fix random zeros in capture data when using jiffies timer
  ALSA: emu10k1: Fix out of bounds access in snd_emu10k1_pcm_channel_alloc()
  drm/amdgpu: mmVM_L2_CNTL3 register not initialized correctly
  fbdev: chipsfb: Add missing pci_disable_device() in chipsfb_pci_init()
  arm64: cacheinfo: Fix incorrect assignment of signed error value to unsigned fw_level
  parisc: Add runtime check to prevent PA2.0 kernels on PA1.x machines
  parisc: ccio-dma: Handle kmalloc failure in ccio_init_resources()
  drm/radeon: add a force flush to delay work when radeon
  drm/amdgpu: Check num_gfx_rings for gfx v9_0 rb setup.
  drm/gem: Fix GEM handle release errors
  scsi: megaraid_sas: Fix double kfree()
  USB: serial: ch341: fix disabled rx timer on older devices
  USB: serial: ch341: fix lost character on LCR updates
  usb: dwc3: disable USB core PHY management
  usb: dwc3: fix PHY disable sequence
  btrfs: harden identification of a stale device
  drm/i915/glk: ECS Liva Q2 needs GLK HDMI port timing quirk
  ALSA: seq: Fix data-race at module auto-loading
  ALSA: seq: oss: Fix data-race for max_midi_devs access
  net: mac802154: Fix a condition in the receive path
  ip: fix triggering of 'icmp redirect'
  wifi: mac80211: Don't finalize CSA in IBSS mode if state is disconnected
  driver core: Don't probe devices after bus_type.match() probe deferral
  usb: gadget: mass_storage: Fix cdrom data transfers on MAC-OS
  USB: core: Prevent nested device-reset calls
  s390: fix nospec table alignments
  s390/hugetlb: fix prepare_hugepage_range() check for 2 GB hugepages
  usb-storage: Add ignore-residue quirk for NXP PN7462AU
  USB: cdc-acm: Add Icom PMR F3400 support (0c26:0020)
  usb: dwc2: fix wrong order of phy_power_on and phy_init
  usb: typec: altmodes/displayport: correct pin assignment for UFP receptacles
  USB: serial: option: add support for Cinterion MV32-WA/WB RmNet mode
  USB: serial: option: add Quectel EM060K modem
  USB: serial: option: add support for OPPO R11 diag port
  USB: serial: cp210x: add Decagon UCA device id
  xhci: Add grace period after xHC start to prevent premature runtime suspend.
  thunderbolt: Use the actual buffer in tb_async_error()
  gpio: pca953x: Add mutex_lock for regcache sync in PM
  hwmon: (gpio-fan) Fix array out of bounds access
  clk: bcm: rpi: Fix error handling of raspberrypi_fw_get_rate
  Input: rk805-pwrkey - fix module autoloading
  clk: core: Fix runtime PM sequence in clk_core_unprepare()
  Revert "clk: core: Honor CLK_OPS_PARENT_ENABLE for clk gate ops"
  clk: core: Honor CLK_OPS_PARENT_ENABLE for clk gate ops
  drm/i915/reg: Fix spelling mistake "Unsupport" -> "Unsupported"
  usb: dwc3: qcom: fix use-after-free on runtime-PM wakeup
  binder: fix UAF of ref->proc caused by race condition
  USB: serial: ftdi_sio: add Omron CS1W-CIF31 device id
  misc: fastrpc: fix memory corruption on open
  misc: fastrpc: fix memory corruption on probe
  iio: adc: mcp3911: use correct formula for AD conversion
  Input: iforce - wake up after clearing IFORCE_XMIT_RUNNING flag
  tty: serial: lpuart: disable flow control while waiting for the transmit engine to complete
  vt: Clear selection before changing the font
  powerpc: align syscall table for ppc32
  staging: rtl8712: fix use after free bugs
  serial: fsl_lpuart: RS485 RTS polariy is inverse
  net/smc: Remove redundant refcount increase
  Revert "sch_cake: Return __NET_XMIT_STOLEN when consuming enqueued skb"
  tcp: annotate data-race around challenge_timestamp
  sch_cake: Return __NET_XMIT_STOLEN when consuming enqueued skb
  kcm: fix strp_init() order and cleanup
  ethernet: rocker: fix sleep in atomic context bug in neigh_timer_handler
  net: sched: tbf: don't call qdisc_put() while holding tree lock
  Revert "xhci: turn off port power in shutdown"
  wifi: cfg80211: debugfs: fix return type in ht40allow_map_read()
  ieee802154/adf7242: defer destroy_workqueue call
  iio: adc: mcp3911: make use of the sign bit
  platform/x86: pmc_atom: Fix SLP_TYPx bitfield mask
  drm/msm/dsi: Fix number of regulators for msm8996_dsi_cfg
  drm/msm/dsi: fix the inconsistent indenting
  net: dp83822: disable false carrier interrupt
  Revert "mm: kmemleak: take a full lowmem check in kmemleak_*_phys()"
  fs: only do a memory barrier for the first set_buffer_uptodate()
  net: mvpp2: debugfs: fix memory leak when using debugfs_lookup()
  wifi: iwlegacy: 4965: corrected fix for potential off-by-one overflow in il4965_rs_fill_link_cmd()
  efi: capsule-loader: Fix use-after-free in efi_capsule_write
  Linux 5.4.212
  net: neigh: don't call kfree_skb() under spin_lock_irqsave()
  net/af_packet: check len when min_header_len equals to 0
  io_uring: disable polling pollfree files
  kprobes: don't call disarm_kprobe() for disabled kprobes
  lib/vdso: Mark do_hres() and do_coarse() as __always_inline
  lib/vdso: Let do_coarse() return 0 to simplify the callsite
  btrfs: tree-checker: check for overlapping extent items
  netfilter: conntrack: NF_CONNTRACK_PROCFS should no longer default to y
  drm/amd/display: Fix pixel clock programming
  s390/hypfs: avoid error message under KVM
  neigh: fix possible DoS due to net iface start/stop loop
  drm/amd/display: clear optc underflow before turn off odm clock
  drm/amd/display: Avoid MPC infinite loop
  btrfs: unify lookup return value when dir entry is missing
  btrfs: do not pin logs too early during renames
  btrfs: introduce btrfs_lookup_match_dir
  mm/rmap: Fix anon_vma->degree ambiguity leading to double-reuse
  bpf: Don't redirect packets with invalid pkt_len
  ftrace: Fix NULL pointer dereference in is_ftrace_trampoline when ftrace is dead
  fbdev: fb_pm2fb: Avoid potential divide by zero error
  HID: hidraw: fix memory leak in hidraw_release()
  media: pvrusb2: fix memory leak in pvr_probe
  udmabuf: Set the DMA mask for the udmabuf device (v2)
  HID: steam: Prevent NULL pointer dereference in steam_{recv,send}_report
  Bluetooth: L2CAP: Fix build errors in some archs
  kbuild: Fix include path in scripts/Makefile.modpost
  x86/bugs: Add "unknown" reporting for MMIO Stale Data
  s390/mm: do not trigger write fault when vma does not allow VM_WRITE
  mm: Force TLB flush for PFNMAP mappings before unlink_file_vma()
  scsi: storvsc: Remove WQ_MEM_RECLAIM from storvsc_error_wq
  perf/x86/intel/uncore: Fix broken read_counter() for SNB IMC PMU
  md: call __md_stop_writes in md_stop
  mm/hugetlb: fix hugetlb not supporting softdirty tracking
  ACPI: processor: Remove freq Qos request for all CPUs
  s390: fix double free of GS and RI CBs on fork() failure
  asm-generic: sections: refactor memory_intersects
  loop: Check for overflow while configuring loop
  x86/unwind/orc: Unwind ftrace trampolines with correct ORC entry
  btrfs: check if root is readonly while setting security xattr
  btrfs: add info when mount fails due to stale replace target
  btrfs: replace: drop assert for suspended replace
  btrfs: fix silent failure when deleting root reference
  ixgbe: stop resetting SYSTIME in ixgbe_ptp_start_cyclecounter
  net: Fix a data-race around sysctl_somaxconn.
  net: Fix a data-race around netdev_budget_usecs.
  net: Fix a data-race around netdev_budget.
  net: Fix a data-race around sysctl_net_busy_read.
  net: Fix a data-race around sysctl_net_busy_poll.
  net: Fix a data-race around sysctl_tstamp_allow_data.
  ratelimit: Fix data-races in ___ratelimit().
  net: Fix data-races around netdev_tstamp_prequeue.
  net: Fix data-races around weight_p and dev_weight_[rt]x_bias.
  netfilter: nft_tunnel: restrict it to netdev family
  netfilter: nft_osf: restrict osf to ipv4, ipv6 and inet families
  netfilter: nft_payload: do not truncate csum_offset and csum_type
  netfilter: nft_payload: report ERANGE for too long offset and length
  bnxt_en: fix NQ resource accounting during vf creation on 57500 chips
  netfilter: ebtables: reject blobs that don't provide all entry points
  net: ipvtap - add __init/__exit annotations to module init/exit funcs
  bonding: 802.3ad: fix no transmission of LACPDUs
  net: moxa: get rid of asymmetry in DMA mapping/unmapping
  net/mlx5e: Properly disable vlan strip on non-UL reps
  rose: check NULL rose_loopback_neigh->loopback
  SUNRPC: RPC level errors should set task->tk_rpc_status
  af_key: Do not call xfrm_probe_algs in parallel
  xfrm: fix refcount leak in __xfrm_policy_check()
  kernel/sched: Remove dl_boosted flag comment
  sched/deadline: Fix priority inheritance with multiple scheduling classes
  sched/deadline: Fix stale throttling on de-/boosted tasks
  sched/deadline: Unthrottle PI boosted threads while enqueuing
  pinctrl: amd: Don't save/restore interrupt status and wake status bits
  Revert "selftests/bpf: Fix test_align verifier log patterns"
  Revert "selftests/bpf: Fix "dubious pointer arithmetic" test"
  usb: cdns3: Fix issue for clear halt endpoint
  kernel/sys_ni: add compat entry for fadvise64_64
  parisc: Fix exception handler for fldw and fstw instructions
  audit: fix potential double free on error path from fsnotify_add_inode_mark
  Revert "USB: HCD: Fix URB giveback issue in tasklet function"
  Linux 5.4.211
  btrfs: raid56: don't trust any cached sector in __raid56_parity_recover()
  btrfs: only write the sectors in the vertical stripe which has data stripes
  can: j1939: j1939_session_destroy(): fix memory leak of skbs
  can: j1939: j1939_sk_queue_activate_next_locked(): replace WARN_ON_ONCE with netdev_warn_once()
  tracing/probes: Have kprobes and uprobes use $COMM too
  MIPS: tlbex: Explicitly compare _PAGE_NO_EXEC against 0
  video: fbdev: i740fb: Check the argument of i740_calc_vclk()
  powerpc/64: Init jump labels before parse_early_param()
  smb3: check xattr value length earlier
  f2fs: fix to avoid use f2fs_bug_on() in f2fs_new_node_page()
  ALSA: timer: Use deferred fasync helper
  ALSA: core: Add async signal helpers
  powerpc/32: Don't always pass -mcpu=powerpc to the compiler
  watchdog: export lockup_detector_reconfigure
  RISC-V: Add fast call path of crash_kexec()
  riscv: mmap with PROT_WRITE but no PROT_READ is invalid
  mips: cavium-octeon: Fix missing of_node_put() in octeon2_usb_clocks_start
  vfio: Clear the caps->buf to NULL after free
  tty: serial: Fix refcount leak bug in ucc_uart.c
  lib/list_debug.c: Detect uninitialized lists
  ext4: avoid resizing to a partial cluster size
  ext4: avoid remove directory when directory is corrupted
  drivers:md:fix a potential use-after-free bug
  nvmet-tcp: fix lockdep complaint on nvmet_tcp_wq flush during queue teardown
  dmaengine: sprd: Cleanup in .remove() after pm_runtime_get_sync() failed
  selftests/kprobe: Do not test for GRP/ without event failures
  um: add "noreboot" command line option for PANIC_TIMEOUT=-1 setups
  PCI/ACPI: Guard ARM64-specific mcfg_quirks
  cxl: Fix a memory leak in an error handling path
  gadgetfs: ep_io - wait until IRQ finishes
  scsi: lpfc: Prevent buffer overflow crashes in debugfs with malformed user input
  clk: qcom: ipq8074: dont disable gcc_sleep_clk_src
  vboxguest: Do not use devm for irq
  usb: renesas: Fix refcount leak bug
  usb: host: ohci-ppc-of: Fix refcount leak bug
  drm/meson: Fix overflow implicit truncation warnings
  irqchip/tegra: Fix overflow implicit truncation warnings
  usb: gadget: uvc: call uvc uvcg_warn on completed status instead of uvcg_info
  usb: cdns3 fix use-after-free at workaround 2
  PCI: Add ACS quirk for Broadcom BCM5750x NICs
  drm/meson: Fix refcount bugs in meson_vpu_has_available_connectors()
  locking/atomic: Make test_and_*_bit() ordered on failure
  gcc-plugins: Undefine LATENT_ENTROPY_PLUGIN when plugin disabled for a file
  igb: Add lock to avoid data race
  fec: Fix timer capture timing in `fec_ptp_enable_pps()`
  i40e: Fix to stop tx_timeout recovery if GLOBR fails
  ice: Ignore EEXIST when setting promisc mode
  net: dsa: microchip: ksz9477: fix fdb_dump last invalid entry
  net: moxa: pass pdev instead of ndev to DMA functions
  net: dsa: mv88e6060: prevent crash on an unused port
  powerpc/pci: Fix get_phb_number() locking
  netfilter: nf_tables: really skip inactive sets when allocating name
  clk: rockchip: add sclk_mac_lbtest to rk3188_critical_clocks
  iavf: Fix adminq error handling
  nios2: add force_successful_syscall_return()
  nios2: restarts apply only to the first sigframe we build...
  nios2: fix syscall restart checks
  nios2: traced syscall does need to check the syscall number
  nios2: don't leave NULLs in sys_call_table[]
  nios2: page fault et.al. are *not* restartable syscalls...
  tee: add overflow check in register_shm_helper()
  dpaa2-eth: trace the allocated address instead of page struct
  atm: idt77252: fix use-after-free bugs caused by tst_timer
  xen/xenbus: fix return type in xenbus_file_read()
  nfp: ethtool: fix the display error of `ethtool -m DEVNAME`
  NTB: ntb_tool: uninitialized heap data in tool_fn_write()
  tools build: Switch to new openssl API for test-libcrypto
  tools/vm/slabinfo: use alphabetic order when two values are equal
  dt-bindings: arm: qcom: fix MSM8916 MTP compatibles
  vsock: Set socket state back to SS_UNCONNECTED in vsock_connect_timeout()
  vsock: Fix memory leak in vsock_connect()
  plip: avoid rcu debug splat
  geneve: do not use RT_TOS for IPv6 flowlabel
  ACPI: property: Return type of acpi_add_nondev_subnodes() should be bool
  pinctrl: sunxi: Add I/O bias setting for H6 R-PIO
  pinctrl: qcom: msm8916: Allow CAMSS GP clocks to be muxed
  pinctrl: nomadik: Fix refcount leak in nmk_pinctrl_dt_subnode_to_map
  net: bgmac: Fix a BUG triggered by wrong bytes_compl
  devlink: Fix use-after-free after a failed reload
  SUNRPC: Reinitialise the backchannel request buffers before reuse
  sunrpc: fix expiry of auth creds
  can: mcp251x: Fix race condition on receive interrupt
  NFSv4/pnfs: Fix a use-after-free bug in open
  NFSv4.1: RECLAIM_COMPLETE must handle EACCES
  NFSv4: Fix races in the legacy idmapper upcall
  NFSv4.1: Handle NFS4ERR_DELAY replies to OP_SEQUENCE correctly
  NFSv4.1: Don't decrease the value of seq_nr_highest_sent
  Documentation: ACPI: EINJ: Fix obsolete example
  apparmor: Fix memleak in aa_simple_write_to_buffer()
  apparmor: fix reference count leak in aa_pivotroot()
  apparmor: fix overlapping attachment computation
  apparmor: fix aa_label_asxprint return check
  apparmor: Fix failed mount permission check error message
  apparmor: fix absroot causing audited secids to begin with =
  apparmor: fix quiet_denied for file rules
  can: ems_usb: fix clang's -Wunaligned-access warning
  tracing: Have filter accept "common_cpu" to be consistent
  btrfs: fix lost error handling when looking up extended ref on log replay
  mmc: pxamci: Fix an error handling path in pxamci_probe()
  mmc: pxamci: Fix another error handling path in pxamci_probe()
  ata: libata-eh: Add missing command name
  rds: add missing barrier to release_refill
  ALSA: info: Fix llseek return value when using callback
  net_sched: cls_route: disallow handle of 0
  net/9p: Initialize the iounit field during fid creation
  Bluetooth: L2CAP: Fix l2cap_global_chan_by_psm regression
  Revert "net: usb: ax88179_178a needs FLAG_SEND_ZLP"
  scsi: sg: Allow waiting for commands to complete on removed device
  tcp: fix over estimation in sk_forced_mem_schedule()
  KVM: x86: Avoid theoretical NULL pointer dereference in kvm_irq_delivery_to_apic_fast()
  KVM: x86: Check lapic_in_kernel() before attempting to set a SynIC irq
  KVM: Add infrastructure and macro to mark VM as bugged
  btrfs: reject log replay if there is unsupported RO compat flag
  net_sched: cls_route: remove from list when handle is 0
  iommu/vt-d: avoid invalid memory access via node_online(NUMA_NO_NODE)
  firmware: arm_scpi: Ensure scpi_info is not assigned if the probe fails
  timekeeping: contribute wall clock to rng on time change
  ACPI: CPPC: Do not prevent CPPC from working in the future
  dm writecache: set a default MAX_WRITEBACK_JOBS
  dm thin: fix use-after-free crash in dm_sm_register_threshold_callback
  dm raid: fix address sanitizer warning in raid_status
  dm raid: fix address sanitizer warning in raid_resume
  intel_th: pci: Add Meteor Lake-P support
  intel_th: pci: Add Raptor Lake-S PCH support
  intel_th: pci: Add Raptor Lake-S CPU support
  ext4: correct the misjudgment in ext4_iget_extra_inode
  ext4: correct max_inline_xattr_value_size computing
  ext4: fix extent status tree race in writeback error recovery path
  ext4: update s_overhead_clusters in the superblock during an on-line resize
  ext4: fix use-after-free in ext4_xattr_set_entry
  ext4: make sure ext4_append() always allocates new block
  ext4: add EXT4_INODE_HAS_XATTR_SPACE macro in xattr.h
  btrfs: reset block group chunk force if we have to wait
  tpm: eventlog: Fix section mismatch for DEBUG_SECTION_MISMATCH
  kexec, KEYS, s390: Make use of built-in and secondary keyring for signature verification
  spmi: trace: fix stack-out-of-bound access in SPMI tracing functions
  x86/olpc: fix 'logical not is only applied to the left hand side'
  scsi: qla2xxx: Fix erroneous mailbox timeout after PCI error injection
  scsi: qla2xxx: Turn off multi-queue for 8G adapters
  scsi: qla2xxx: Fix discovery issues in FC-AL topology
  scsi: zfcp: Fix missing auto port scan and thus missing target ports
  video: fbdev: s3fb: Check the size of screen before memset_io()
  video: fbdev: arkfb: Check the size of screen before memset_io()
  video: fbdev: vt8623fb: Check the size of screen before memset_io()
  tools/thermal: Fix possible path truncations
  video: fbdev: arkfb: Fix a divide-by-zero bug in ark_set_pixclock()
  x86/numa: Use cpumask_available instead of hardcoded NULL check
  scripts/faddr2line: Fix vmlinux detection on arm64
  genelf: Use HAVE_LIBCRYPTO_SUPPORT, not the never defined HAVE_LIBCRYPTO
  powerpc/pci: Fix PHB numbering when using opal-phbid
  kprobes: Forbid probing on trampoline and BPF code areas
  perf symbol: Fail to read phdr workaround
  powerpc/cell/axon_msi: Fix refcount leak in setup_msi_msg_address
  powerpc/xive: Fix refcount leak in xive_get_max_prio
  powerpc/spufs: Fix refcount leak in spufs_init_isolated_loader
  powerpc/pci: Prefer PCI domain assignment via DT 'linux,pci-domain' and alias
  powerpc/32: Do not allow selection of e5500 or e6500 CPUs on PPC32
  video: fbdev: sis: fix typos in SiS_GetModeID()
  video: fbdev: amba-clcd: Fix refcount leak bugs
  watchdog: armada_37xx_wdt: check the return value of devm_ioremap() in armada_37xx_wdt_probe()
  ASoC: audio-graph-card: Add of_node_put() in fail path
  fuse: Remove the control interface for virtio-fs
  ASoC: qcom: q6dsp: Fix an off-by-one in q6adm_alloc_copp()
  s390/zcore: fix race when reading from hardware system area
  iommu/arm-smmu: qcom_iommu: Add of_node_put() when breaking out of loop
  mfd: max77620: Fix refcount leak in max77620_initialise_fps
  mfd: t7l66xb: Drop platform disable callback
  kfifo: fix kfifo_to_user() return type
  rpmsg: qcom_smd: Fix refcount leak in qcom_smd_parse_edge
  iommu/exynos: Handle failed IOMMU device registration properly
  tty: n_gsm: fix missing corner cases in gsmld_poll()
  tty: n_gsm: fix DM command
  tty: n_gsm: fix wrong T1 retry count handling
  vfio/ccw: Do not change FSM state in subchannel event
  remoteproc: qcom: wcnss: Fix handling of IRQs
  tty: n_gsm: fix race condition in gsmld_write()
  tty: n_gsm: fix packet re-transmission without open control channel
  tty: n_gsm: fix non flow control frames during mux flow off
  profiling: fix shift too large makes kernel panic
  ASoC: codecs: wcd9335: move gains from SX_TLV to S8_TLV
  ASoC: codecs: msm8916-wcd-digital: move gains from SX_TLV to S8_TLV
  serial: 8250_dw: Store LSR into lsr_saved_flags in dw8250_tx_wait_empty()
  ASoC: mediatek: mt8173-rt5650: Fix refcount leak in mt8173_rt5650_dev_probe
  ASoC: codecs: da7210: add check for i2c_add_driver
  ASoC: mt6797-mt6351: Fix refcount leak in mt6797_mt6351_dev_probe
  ASoC: mediatek: mt8173: Fix refcount leak in mt8173_rt5650_rt5676_dev_probe
  opp: Fix error check in dev_pm_opp_attach_genpd()
  jbd2: fix assertion 'jh->b_frozen_data == NULL' failure when journal aborted
  ext4: recover csum seed of tmp_inode after migrating to extents
  jbd2: fix outstanding credits assert in jbd2_journal_commit_transaction()
  null_blk: fix ida error handling in null_add_dev()
  RDMA/rxe: Fix error unwind in rxe_create_qp()
  mm/mmap.c: fix missing call to vm_unacct_memory in mmap_region
  platform/olpc: Fix uninitialized data in debugfs write
  USB: serial: fix tty-port initialized comments
  PCI: tegra194: Fix link up retry sequence
  PCI: tegra194: Fix Root Port interrupt handling
  HID: alps: Declare U1_UNICORN_LEGACY support
  mmc: cavium-thunderx: Add of_node_put() when breaking out of loop
  mmc: cavium-octeon: Add of_node_put() when breaking out of loop
  gpio: gpiolib-of: Fix refcount bugs in of_mm_gpiochip_add_data()
  RDMA/hfi1: fix potential memory leak in setup_base_ctxt()
  RDMA/siw: Fix duplicated reported IW_CM_EVENT_CONNECT_REPLY event
  RDMA/hns: Fix incorrect clearing of interrupt status register
  usb: gadget: udc: amd5536 depends on HAS_DMA
  scsi: smartpqi: Fix DMA direction for RAID requests
  mmc: sdhci-of-at91: fix set_uhs_signaling rewriting of MC1R
  memstick/ms_block: Fix a memory leak
  memstick/ms_block: Fix some incorrect memory allocation
  mmc: sdhci-of-esdhc: Fix refcount leak in esdhc_signal_voltage_switch
  staging: rtl8192u: Fix sleep in atomic context bug in dm_fsync_timer_callback
  intel_th: msu: Fix vmalloced buffers
  intel_th: msu-sink: Potential dereference of null pointer
  intel_th: Fix a resource leak in an error handling path
  soundwire: bus_type: fix remove and shutdown support
  clk: qcom: camcc-sdm845: Fix topology around titan_top power domain
  clk: qcom: ipq8074: set BRANCH_HALT_DELAY flag for UBI clocks
  clk: qcom: ipq8074: fix NSS port frequency tables
  usb: host: xhci: use snprintf() in xhci_decode_trb()
  clk: qcom: clk-krait: unlock spin after mux completion
  driver core: fix potential deadlock in __driver_attach
  misc: rtsx: Fix an error handling path in rtsx_pci_probe()
  clk: mediatek: reset: Fix written reset bit offset
  usb: xhci: tegra: Fix error check
  usb: ohci-nxp: Fix refcount leak in ohci_hcd_nxp_probe
  usb: host: Fix refcount leak in ehci_hcd_ppc_of_probe
  fpga: altera-pr-ip: fix unsigned comparison with less than zero
  mtd: st_spi_fsm: Add a clk_disable_unprepare() in .probe()'s error path
  mtd: partitions: Fix refcount leak in parse_redboot_of
  mtd: sm_ftl: Fix deadlock caused by cancel_work_sync in sm_release
  HID: cp2112: prevent a buffer overflow in cp2112_xfer()
  mtd: rawnand: meson: Fix a potential double free issue
  mtd: maps: Fix refcount leak in ap_flash_init
  mtd: maps: Fix refcount leak in of_flash_probe_versatile
  clk: renesas: r9a06g032: Fix UART clkgrp bitsel
  dccp: put dccp_qpolicy_full() and dccp_qpolicy_push() in the same lock
  net: rose: fix netdev reference changes
  netdevsim: Avoid allocation warnings triggered from user space
  iavf: Fix max_rate limiting
  crypto: inside-secure - Add missing MODULE_DEVICE_TABLE for of
  net/mlx5e: Fix the value of MLX5E_MAX_RQ_NUM_MTTS
  wifi: libertas: Fix possible refcount leak in if_usb_probe()
  wifi: iwlwifi: mvm: fix double list_add at iwl_mvm_mac_wake_tx_queue
  wifi: wil6210: debugfs: fix uninitialized variable use in `wil_write_file_wmi()`
  i2c: mux-gpmux: Add of_node_put() when breaking out of loop
  i2c: cadence: Support PEC for SMBus block read
  Bluetooth: hci_intel: Add check for platform_driver_register
  can: pch_can: pch_can_error(): initialize errc before using it
  can: error: specify the values of data[5..7] of CAN error frames
  can: usb_8dev: do not report txerr and rxerr during bus-off
  can: kvaser_usb_leaf: do not report txerr and rxerr during bus-off
  can: kvaser_usb_hydra: do not report txerr and rxerr during bus-off
  can: sun4i_can: do not report txerr and rxerr during bus-off
  can: hi311x: do not report txerr and rxerr during bus-off
  can: sja1000: do not report txerr and rxerr during bus-off
  can: rcar_can: do not report txerr and rxerr during bus-off
  can: pch_can: do not report txerr and rxerr during bus-off
  selftests/bpf: fix a test for snprintf() overflow
  wifi: p54: add missing parentheses in p54_flush()
  wifi: p54: Fix an error handling path in p54spi_probe()
  wifi: wil6210: debugfs: fix info leak in wil_write_file_wmi()
  fs: check FMODE_LSEEK to control internal pipe splicing
  selftests: timers: clocksource-switch: fix passing errors from child
  selftests: timers: valid-adjtimex: build fix for newer toolchains
  libbpf: Fix the name of a reused map
  tcp: make retransmitted SKB fit into the send window
  drm/exynos/exynos7_drm_decon: free resources when clk_set_parent() failed.
  mediatek: mt76: mac80211: Fix missing of_node_put() in mt76_led_init()
  media: platform: mtk-mdp: Fix mdp_ipi_comm structure alignment
  crypto: hisilicon - Kunpeng916 crypto driver don't sleep when in softirq
  drm/msm/mdp5: Fix global state lock backoff
  drm: bridge: sii8620: fix possible off-by-one
  drm/mediatek: dpi: Only enable dpi after the bridge is enabled
  drm/mediatek: dpi: Remove output format of YUV
  drm/rockchip: Fix an error handling path rockchip_dp_probe()
  drm/rockchip: vop: Don't crash for invalid duplicate_state()
  crypto: arm64/gcm - Select AEAD for GHASH_ARM64_CE
  drm/vc4: dsi: Correct DSI divider calculations
  drm/vc4: plane: Fix margin calculations for the right/bottom edges
  drm/vc4: plane: Remove subpixel positioning check
  media: hdpvr: fix error value returns in hdpvr_read
  drm/mcde: Fix refcount leak in mcde_dsi_bind
  drm: bridge: adv7511: Add check for mipi_dsi_driver_register
  wifi: iwlegacy: 4965: fix potential off-by-one overflow in il4965_rs_fill_link_cmd()
  ath9k: fix use-after-free in ath9k_hif_usb_rx_cb
  media: tw686x: Register the irq at the end of probe
  i2c: Fix a potential use after free
  drm: adv7511: override i2c address of cec before accessing it
  drm/mediatek: Add pull-down MIPI operation in mtk_dsi_poweroff function
  drm/radeon: fix potential buffer overflow in ni_set_mc_special_registers()
  drm/mipi-dbi: align max_chunk to 2 in spi_transfer
  wifi: rtlwifi: fix error codes in rtl_debugfs_set_write_h2c()
  ath10k: do not enforce interrupt trigger type
  dm: return early from dm_pr_call() if DM device is suspended
  thermal/tools/tmon: Include pthread and time headers in tmon.h
  nohz/full, sched/rt: Fix missed tick-reenabling bug in dequeue_task_rt()
  regulator: of: Fix refcount leak bug in of_get_regulation_constraints()
  blk-mq: don't create hctx debugfs dir until q->debugfs_dir is created
  erofs: avoid consecutive detection for Highmem memory
  arm64: dts: mt7622: fix BPI-R64 WPS button
  bus: hisi_lpc: fix missing platform_device_put() in hisi_lpc_acpi_probe()
  ARM: dts: qcom: pm8841: add required thermal-sensor-cells
  soc: qcom: aoss: Fix refcount leak in qmp_cooling_devices_register
  cpufreq: zynq: Fix refcount leak in zynq_get_revision
  ARM: OMAP2+: Fix refcount leak in omap3xxx_prm_late_init
  ARM: OMAP2+: Fix refcount leak in omapdss_init_of
  ARM: dts: qcom: mdm9615: add missing PMIC GPIO reg
  soc: fsl: guts: machine variable might be unset
  ARM: dts: ast2600-evb: fix board compatible
  ARM: dts: ast2500-evb: fix board compatible
  x86/pmem: Fix platform-device leak in error path
  ARM: bcm: Fix refcount leak in bcm_kona_smc_init
  meson-mx-socinfo: Fix refcount leak in meson_mx_socinfo_init
  ARM: findbit: fix overflowing offset
  spi: spi-rspi: Fix PIO fallback on RZ platforms
  selinux: Add boundary check in put_entry()
  PM: hibernate: defer device probing when resuming from hibernation
  ARM: shmobile: rcar-gen2: Increase refcount for new reference
  arm64: dts: allwinner: a64: orangepi-win: Fix LED node name
  arm64: dts: qcom: ipq8074: fix NAND node name
  ACPI: LPSS: Fix missing check in register_device_clock()
  ACPI: PM: save NVS memory for Lenovo G40-45
  ACPI: EC: Remove duplicate ThinkPad X1 Carbon 6th entry from DMI quirks
  ARM: OMAP2+: display: Fix refcount leak bug
  spi: synquacer: Add missing clk_disable_unprepare()
  ARM: dts: imx6ul: fix qspi node compatible
  ARM: dts: imx6ul: fix lcdif node compatible
  ARM: dts: imx6ul: fix csi node compatible
  ARM: dts: imx6ul: change operating-points to uint32-matrix
  ARM: dts: imx6ul: add missing properties for sram
  wait: Fix __wait_event_hrtimeout for RT/DL tasks
  genirq: Don't return error on missing optional irq_request_resources()
  ext2: Add more validity checks for inode counts
  arm64: fix oops in concurrently setting insn_emulation sysctls
  arm64: Do not forget syscall when starting a new thread.
  x86: Handle idle=nomwait cmdline properly for x86_idle
  epoll: autoremove wakers even more aggressively
  netfilter: nf_tables: fix null deref due to zeroed list head
  netfilter: nf_tables: do not allow RULE_ID to refer to another chain
  netfilter: nf_tables: do not allow SET_ID to refer to another table
  arm64: dts: uniphier: Fix USB interrupts for PXs3 SoC
  ARM: dts: uniphier: Fix USB interrupts for PXs2 SoC
  USB: HCD: Fix URB giveback issue in tasklet function
  coresight: Clear the connection field properly
  MIPS: cpuinfo: Fix a warning for CONFIG_CPUMASK_OFFSTACK
  powerpc/powernv: Avoid crashing if rng is NULL
  powerpc/ptdump: Fix display of RW pages on FSL_BOOK3E
  powerpc/fsl-pci: Fix Class Code of PCIe Root Port
  PCI: Add defines for normal and subtractive PCI bridges
  ia64, processor: fix -Wincompatible-pointer-types in ia64_get_irr()
  md-raid10: fix KASAN warning
  serial: mvebu-uart: uart2 error bits clearing
  fuse: limit nsec
  iio: light: isl29028: Fix the warning in isl29028_remove()
  drm/amdgpu: Check BO's requested pinning domains against its preferred_domains
  drm/nouveau: fix another off-by-one in nvbios_addr
  drm/gem: Properly annotate WW context on drm_gem_lock_reservations() error
  parisc: io_pgetevents_time64() needs compat syscall in 32-bit compat mode
  parisc: Fix device names in /proc/iomem
  ovl: drop WARN_ON() dentry is NULL in ovl_encode_fh()
  usbnet: Fix linkwatch use-after-free on disconnect
  fbcon: Fix boundary checks for fbcon=vc:n1-n2 parameters
  thermal: sysfs: Fix cooling_device_stats_setup() error code path
  fs: Add missing umask strip in vfs_tmpfile
  vfs: Check the truncate maximum size in inode_newsize_ok()
  tty: vt: initialize unicode screen buffer
  ALSA: hda/realtek: Add quirk for another Asus K42JZ model
  ALSA: hda/cirrus - support for iMac 12,1 model
  ALSA: hda/conexant: Add quirk for LENOVO 20149 Notebook model
  mm/mremap: hold the rmap lock in write mode when moving page table entries.
  KVM: x86: Set error code to segment selector on LLDT/LTR non-canonical #GP
  KVM: x86: Mark TSS busy during LTR emulation _after_ all fault checks
  KVM: nVMX: Let userspace set nVMX MSR to any _host_ supported value
  KVM: SVM: Don't BUG if userspace injects an interrupt with GIF=0
  KVM: nVMX: Snapshot pre-VM-Enter DEBUGCTL for !nested_run_pending case
  KVM: nVMX: Snapshot pre-VM-Enter BNDCFGS for !nested_run_pending case
  HID: wacom: Don't register pad_input for touch switch
  HID: wacom: Only report rotation for art pen
  add barriers to buffer_uptodate and set_buffer_uptodate
  wifi: mac80211_hwsim: use 32-bit skb cookie
  wifi: mac80211_hwsim: add back erroneously removed cast
  wifi: mac80211_hwsim: fix race condition in pending packet
  igc: Remove _I_PHY_ID checking
  ALSA: bcd2000: Fix a UAF bug on the error path of probing
  scsi: Revert "scsi: qla2xxx: Fix disk failure to rediscover"
  x86: link vdso and boot with -z noexecstack --no-warn-rwx-segments
  Makefile: link with -z noexecstack --no-warn-rwx-segments

 Conflicts:
	Documentation/devicetree/bindings/arm/qcom.yaml
	Documentation/devicetree/bindings~HEAD
	arch/x86/boot/compressed/Makefile
	drivers/mmc/core/sd.c
	drivers/rpmsg/qcom_glink_native.c
	drivers/usb/dwc3/core.c
	drivers/usb/dwc3/gadget.c
	drivers/usb/typec/ucsi/ucsi.c
	net/core/dev.c
	net/netfilter/nf_conntrack_irc.c

Change-Id: I796398110bc61fa6a8bb94f7ef41b9209683dbf7
2022-12-17 02:26:00 +02:00
Juri Lelli
bd80dd86f9 wait: Fix __wait_event_hrtimeout for RT/DL tasks
[ Upstream commit cceeeb6a6d02e7b9a74ddd27a3225013b34174aa ]

Changes to hrtimer mode (potentially made by __hrtimer_init_sleeper on
PREEMPT_RT) are not visible to hrtimer_start_range_ns, thus not
accounted for by hrtimer_start_expires call paths. In particular,
__wait_event_hrtimeout suffers from this problem as we have, for
example:

fs/aio.c::read_events
  wait_event_interruptible_hrtimeout
    __wait_event_hrtimeout
      hrtimer_init_sleeper_on_stack <- this might "mode |= HRTIMER_MODE_HARD"
                                       on RT if task runs at RT/DL priority
        hrtimer_start_range_ns
          WARN_ON_ONCE(!(mode & HRTIMER_MODE_HARD) ^ !timer->is_hard)
          fires since the latter doesn't see the change of mode done by
          init_sleeper

Fix it by making __wait_event_hrtimeout call hrtimer_sleeper_start_expires,
which is aware of the special RT/DL case, instead of hrtimer_start_range_ns.

Reported-by: Bruno Goncalves <bgoncalv@redhat.com>
Signed-off-by: Juri Lelli <juri.lelli@redhat.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Reviewed-by: Daniel Bristot de Oliveira <bristot@kernel.org>
Reviewed-by: Valentin Schneider <vschneid@redhat.com>
Link: https://lore.kernel.org/r/20220627095051.42470-1-juri.lelli@redhat.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
2022-08-25 11:17:29 +02:00
Srinivasarao Pathipati
8a6924048b Merge android11-5.4.147+ (983a7e7) into msm-5.4
* refs/heads/tmp-983a7e7:
  FROMGIT: USB: gadget: bRequestType is a bitfield, not a enum
  UPSTREAM: aio: fix use-after-free due to missing POLLFREE handling
  UPSTREAM: aio: keep poll requests on waitqueue until completed
  UPSTREAM: signalfd: use wake_up_pollfree()
  UPSTREAM: binder: use wake_up_pollfree()
  UPSTREAM: wait: add wake_up_pollfree()
  UPSTREAM: USB: gadget: zero allocate endpoint 0 buffers
  UPSTREAM: USB: gadget: detect too-big endpoint 0 requests
  UPSTREAM: HID: check for valid USB device for many HID drivers
  UPSTREAM: HID: wacom: fix problems when device is not a valid USB device
  UPSTREAM: HID: bigbenff: prevent null pointer dereference
  UPSTREAM: HID: add USB_HID dependancy on some USB HID drivers
  UPSTREAM: HID: add USB_HID dependancy to hid-chicony
  UPSTREAM: HID: add USB_HID dependancy to hid-prodikeys
  UPSTREAM: HID: add hid_is_usb() function to make it simpler for USB detection
  BACKPORT: f2fs: relocate inline conversion from mmap() to mkwrite()
  BACKPORT: f2fs: support RO feature
  BACKPORT: f2fs: fix wrong total_sections check and fsmeta check
  BACKPORT: FROMGIT: binder: fix freeze race
  FROMGIT: binder: BINDER_GET_FROZEN_INFO ioctl
  FROMGIT: binder: use EINTR for interrupted wait for work
  BACKPORT: FROMGIT: binder: BINDER_FREEZE ioctl
  ANDROID: usb: gadget: f_accessory: Mitgate handling of non-existent USB request
  FROMGIT: binder: fix test regression due to sender_euid change
  BACKPORT: binder: use cred instead of task for getsecid
  BACKPORT: binder: use cred instead of task for selinux checks
  BACKPORT: binder: use euid from cred instead of using task
  ANDROID: setlocalversion: make KMI_GENERATION optional

Change-Id: I00cf067e7b2e31eb3ad074ede720c087a7647959
Signed-off-by: Srinivasarao Pathipati <quic_spathi@quicinc.com>
2021-12-27 12:53:30 +05:30
Eric Biggers
e0c03d15cd wait: add wake_up_pollfree()
commit 42288cb44c4b5fff7653bc392b583a2b8bd6a8c0 upstream.

Several ->poll() implementations are special in that they use a
waitqueue whose lifetime is the current task, rather than the struct
file as is normally the case.  This is okay for blocking polls, since a
blocking poll occurs within one task; however, non-blocking polls
require another solution.  This solution is for the queue to be cleared
before it is freed, using 'wake_up_poll(wq, EPOLLHUP | POLLFREE);'.

However, that has a bug: wake_up_poll() calls __wake_up() with
nr_exclusive=1.  Therefore, if there are multiple "exclusive" waiters,
and the wakeup function for the first one returns a positive value, only
that one will be called.  That's *not* what's needed for POLLFREE;
POLLFREE is special in that it really needs to wake up everyone.

Considering the three non-blocking poll systems:

- io_uring poll doesn't handle POLLFREE at all, so it is broken anyway.

- aio poll is unaffected, since it doesn't support exclusive waits.
  However, that's fragile, as someone could add this feature later.

- epoll doesn't appear to be broken by this, since its wakeup function
  returns 0 when it sees POLLFREE.  But this is fragile.

Although there is a workaround (see epoll), it's better to define a
function which always sends POLLFREE to all waiters.  Add such a
function.  Also make it verify that the queue really becomes empty after
all waiters have been woken up.

Reported-by: Linus Torvalds <torvalds@linux-foundation.org>
Cc: stable@vger.kernel.org
Link: https://lore.kernel.org/r/20211209010455.42744-2-ebiggers@kernel.org
Signed-off-by: Eric Biggers <ebiggers@google.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-12-14 14:49:02 +01:00
Eric Biggers
a20ea4a195 UPSTREAM: wait: add wake_up_pollfree()
commit 42288cb44c4b5fff7653bc392b583a2b8bd6a8c0 upstream.

Several ->poll() implementations are special in that they use a
waitqueue whose lifetime is the current task, rather than the struct
file as is normally the case.  This is okay for blocking polls, since a
blocking poll occurs within one task; however, non-blocking polls
require another solution.  This solution is for the queue to be cleared
before it is freed, using 'wake_up_poll(wq, EPOLLHUP | POLLFREE);'.

However, that has a bug: wake_up_poll() calls __wake_up() with
nr_exclusive=1.  Therefore, if there are multiple "exclusive" waiters,
and the wakeup function for the first one returns a positive value, only
that one will be called.  That's *not* what's needed for POLLFREE;
POLLFREE is special in that it really needs to wake up everyone.

Considering the three non-blocking poll systems:

- io_uring poll doesn't handle POLLFREE at all, so it is broken anyway.

- aio poll is unaffected, since it doesn't support exclusive waits.
  However, that's fragile, as someone could add this feature later.

- epoll doesn't appear to be broken by this, since its wakeup function
  returns 0 when it sees POLLFREE.  But this is fragile.

Although there is a workaround (see epoll), it's better to define a
function which always sends POLLFREE to all waiters.  Add such a
function.  Also make it verify that the queue really becomes empty after
all waiters have been woken up.

Reported-by: Linus Torvalds <torvalds@linux-foundation.org>
Cc: stable@vger.kernel.org
Link: https://lore.kernel.org/r/20211209010455.42744-2-ebiggers@kernel.org
Signed-off-by: Eric Biggers <ebiggers@google.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Bug: 185125206
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I1ec70169a39be42640172af512f4b47827ef5569
2021-12-12 16:44:26 +01:00
Srinivasarao P
8bbb4abad0 Merge android11-5.4.134+ (dca02b1) into msm-5.4
* refs/heads/tmp-dca02b1:
  ANDROID: GKI: Update abi_gki_aarch64_cuttlefish
  ANDROID: GKI: Update abi_gki_aarch64_exynos
  ANDROID: GKI: Update android/abi_gki_aarch64_sonywalkman
  BACKPORT: blk-mq: fix is_flush_rq
  BACKPORT: blk-mq: clearing flush request reference in tags->rqs[]
  BACKPORT: blk-mq: clear stale request in tags->rq[] before freeing one request pool
  BACKPORT: blk-mq: grab rq->refcount before calling ->fn in blk_mq_tagset_busy_iter
  ANDROID: gki_defconfig: set DEFAULT_MMAP_MIN_ADDR=32768
  ANDROID: GKI: upate .xml file for new symbol addtions
  ANDROID: xt_quota2: set usersize in xt_match registration object
  ANDROID: xt_quota2: clear quota2_log message before sending
  ANDROID: xt_quota2: remove trailing junk which might have a digit in it
  UPSTREAM: io_uring: Fix current->fs handling in io_sq_wq_submit_work()
  ANDROID: ABI: Update allowed list for QCOM
  UPSTREAM: arm64: vdso: Avoid ISB after reading from cntvct_el0
  ANDROID: GKI: Disable X86_MCE drivers
  ANDROID: GKI: Add FCNT KMI symbol list
  ANDROID: fuse: Allocate zeroed memory for canonical path
  ANDROID: ABI: Update allowed list for Microsoft
  ANDROID: GKI: add padding to struct hid_device
  ANDROID: Update android/abi_gki_aarch64.xml
  ANDROID: Update android/abi_gki_aarch64_goldfish
  ANDROID: generate_initcall_order.pl: Use two dash long options for llvm-nm
  Linux 5.4.134
  seq_file: disallow extremely large seq buffer allocations
  misc: alcor_pci: fix inverted branch condition
  scsi: scsi_dh_alua: Fix signedness bug in alua_rtpg()
  MIPS: vdso: Invalid GIC access through VDSO
  mips: disable branch profiling in boot/decompress.o
  mips: always link byteswap helpers into decompressor
  scsi: be2iscsi: Fix an error handling path in beiscsi_dev_probe()
  firmware: turris-mox-rwtm: fail probing when firmware does not support hwrng
  firmware: turris-mox-rwtm: report failures better
  firmware: turris-mox-rwtm: fix reply status decoding function
  thermal/drivers/rcar_gen3_thermal: Fix coefficient calculations
  ARM: dts: imx6q-dhcom: Add gpios pinctrl for i2c bus recovery
  ARM: dts: imx6q-dhcom: Fix ethernet plugin detection problems
  ARM: dts: imx6q-dhcom: Fix ethernet reset time properties
  ARM: dts: am437x: align ti,pindir-d0-out-d1-in property with dt-shema
  ARM: dts: am335x: align ti,pindir-d0-out-d1-in property with dt-shema
  memory: fsl_ifc: fix leak of private memory on probe failure
  memory: fsl_ifc: fix leak of IO mapping on probe failure
  reset: bail if try_module_get() fails
  ARM: dts: BCM5301X: Fixup SPI binding
  firmware: arm_scmi: Reset Rx buffer to max size during async commands
  firmware: tegra: Fix error return code in tegra210_bpmp_init()
  ARM: dts: r8a7779, marzen: Fix DU clock names
  arm64: dts: renesas: v3msk: Fix memory size
  rtc: fix snprintf() checking in is_rtc_hctosys()
  memory: pl353: Fix error return code in pl353_smc_probe()
  reset: brcmstb: Add missing MODULE_DEVICE_TABLE
  memory: atmel-ebi: add missing of_node_put for loop iteration
  ARM: dts: exynos: fix PWM LED max brightness on Odroid XU4
  ARM: dts: exynos: fix PWM LED max brightness on Odroid HC1
  ARM: dts: exynos: fix PWM LED max brightness on Odroid XU/XU3
  ARM: exynos: add missing of_node_put for loop iteration
  reset: a10sr: add missing of_match_table reference
  ARM: dts: gemini-rut1xx: remove duplicate ethernet node
  hexagon: use common DISCARDS macro
  NFSv4/pNFS: Don't call _nfs4_pnfs_v3_ds_connect multiple times
  ALSA: isa: Fix error return code in snd_cmi8330_probe()
  nvme-tcp: can't set sk_user_data without write_lock
  virtio_net: move tx vq operation under tx queue lock
  pwm: imx1: Don't disable clocks at device remove time
  x86/fpu: Limit xstate copy size in xstateregs_set()
  PCI: iproc: Support multi-MSI only on uniprocessor kernel
  PCI: iproc: Fix multi-MSI base vector number allocation
  ubifs: Set/Clear I_LINKABLE under i_lock for whiteout inode
  nfs: fix acl memory leak of posix_acl_create()
  watchdog: aspeed: fix hardware timeout calculation
  um: fix error return code in winch_tramp()
  um: fix error return code in slip_open()
  NFSv4: Initialise connection to the server in nfs4_alloc_client()
  power: supply: rt5033_battery: Fix device tree enumeration
  PCI/sysfs: Fix dsm_label_utf16s_to_utf8s() buffer overrun
  f2fs: add MODULE_SOFTDEP to ensure crc32 is included in the initramfs
  x86/signal: Detect and prevent an alternate signal stack overflow
  virtio_console: Assure used length from device is limited
  virtio_net: Fix error handling in virtnet_restore()
  virtio-blk: Fix memory leak among suspend/resume procedure
  ACPI: video: Add quirk for the Dell Vostro 3350
  ACPI: AMBA: Fix resource name in /proc/iomem
  pwm: tegra: Don't modify HW state in .remove callback
  pwm: img: Fix PM reference leak in img_pwm_enable()
  power: supply: ab8500: add missing MODULE_DEVICE_TABLE
  power: supply: charger-manager: add missing MODULE_DEVICE_TABLE
  NFS: nfs_find_open_context() may only select open files
  ceph: remove bogus checks and WARN_ONs from ceph_set_page_dirty
  orangefs: fix orangefs df output.
  PCI: tegra: Add missing MODULE_DEVICE_TABLE
  x86/fpu: Return proper error codes from user access functions
  watchdog: iTCO_wdt: Account for rebooting on second timeout
  watchdog: imx_sc_wdt: fix pretimeout
  watchdog: Fix possible use-after-free by calling del_timer_sync()
  watchdog: sc520_wdt: Fix possible use-after-free in wdt_turnoff()
  watchdog: Fix possible use-after-free in wdt_startup()
  PCI/P2PDMA: Avoid pci_get_slot(), which may sleep
  ARM: 9087/1: kprobes: test-thumb: fix for LLVM_IAS=1
  power: reset: gpio-poweroff: add missing MODULE_DEVICE_TABLE
  power: supply: max17042: Do not enforce (incorrect) interrupt trigger type
  power: supply: ab8500: Avoid NULL pointers
  pwm: spear: Don't modify HW state in .remove callback
  power: supply: sc2731_charger: Add missing MODULE_DEVICE_TABLE
  power: supply: sc27xx: Add missing MODULE_DEVICE_TABLE
  lib/decompress_unlz4.c: correctly handle zero-padding around initrds.
  i2c: core: Disable client irq on reboot/shutdown
  intel_th: Wait until port is in reset before programming it
  staging: rtl8723bs: fix macro value for 2.4Ghz only device
  ALSA: usb-audio: scarlett2: Fix 6i6 Gen 2 line out descriptions
  ALSA: hda: Add IRQ check for platform_get_irq()
  backlight: lm3630a: Fix return code of .update_status() callback
  ASoC: Intel: kbl_da7219_max98357a: shrink platform_id below 20 characters
  powerpc/boot: Fixup device-tree on little endian
  usb: gadget: hid: fix error return code in hid_bind()
  usb: gadget: f_hid: fix endianness issue with descriptors
  ALSA: usb-audio: scarlett2: Fix scarlett2_*_ctl_put() return values
  ALSA: usb-audio: scarlett2: Fix data_mutex lock
  ALSA: usb-audio: scarlett2: Fix 18i8 Gen 2 PCM Input count
  ALSA: bebob: add support for ToneWeal FW66
  Input: hideep - fix the uninitialized use in hideep_nvm_unlock()
  s390/mem_detect: fix tprot() program check new psw handling
  s390/mem_detect: fix diag260() program check new psw handling
  s390/ipl_parm: fix program check new psw handling
  s390/processor: always inline stap() and __load_psw_mask()
  ASoC: soc-core: Fix the error return code in snd_soc_of_parse_audio_routing()
  gpio: pca953x: Add support for the On Semi pca9655
  selftests/powerpc: Fix "no_handler" EBB selftest
  ALSA: ppc: fix error return code in snd_pmac_probe()
  gpio: zynq: Check return value of pm_runtime_get_sync
  iommu/arm-smmu: Fix arm_smmu_device refcount leak in address translation
  iommu/arm-smmu: Fix arm_smmu_device refcount leak when arm_smmu_rpm_get fails
  powerpc/ps3: Add dma_mask to ps3_dma_region
  ALSA: sb: Fix potential double-free of CSP mixer elements
  selftests: timers: rtcpie: skip test if default RTC device does not exist
  s390/sclp_vt220: fix console name to match device
  serial: tty: uartlite: fix console setup
  ASoC: img: Fix PM reference leak in img_i2s_in_probe()
  mfd: cpcap: Fix cpcap dmamask not set warnings
  mfd: da9052/stmpe: Add and modify MODULE_DEVICE_TABLE
  scsi: qedi: Fix null ref during abort handling
  scsi: iscsi: Fix shost->max_id use
  scsi: iscsi: Fix conn use after free during resets
  scsi: iscsi: Add iscsi_cls_conn refcount helpers
  scsi: megaraid_sas: Handle missing interrupts while re-enabling IRQs
  scsi: megaraid_sas: Early detection of VD deletion through RaidMap update
  scsi: megaraid_sas: Fix resource leak in case of probe failure
  fs/jfs: Fix missing error code in lmLogInit()
  scsi: scsi_dh_alua: Check for negative result value
  tty: serial: 8250: serial_cs: Fix a memory leak in error handling path
  ALSA: ac97: fix PM reference leak in ac97_bus_remove()
  scsi: core: Cap scsi_host cmd_per_lun at can_queue
  scsi: lpfc: Fix crash when lpfc_sli4_hba_setup() fails to initialize the SGLs
  scsi: lpfc: Fix "Unexpected timeout" error in direct attach topology
  scsi: hisi_sas: Propagate errors in interrupt_init_v1_hw()
  w1: ds2438: fixing bug that would always get page0
  Revert "ALSA: bebob/oxfw: fix Kconfig entry for Mackie d.2 Pro"
  ALSA: usx2y: Don't call free_pages_exact() with NULL address
  iio: magn: bmc150: Balance runtime pm + use pm_runtime_resume_and_get()
  iio: gyro: fxa21002c: Balance runtime pm + use pm_runtime_resume_and_get().
  misc: alcor_pci: fix null-ptr-deref when there is no PCI bridge
  misc/libmasm/module: Fix two use after free in ibmasm_init_one
  tty: serial: fsl_lpuart: fix the potential risk of division or modulo by zero
  srcu: Fix broken node geometry after early ssp init
  dmaengine: fsl-qdma: check dma_set_mask return value
  net: moxa: Use devm_platform_get_and_ioremap_resource()
  fbmem: Do not delete the mode that is still in use
  cgroup: verify that source is a string
  tracing: Do not reference char * as a string in histograms
  scsi: core: Fix bad pointer dereference when ehandler kthread is invalid
  KVM: X86: Disable hardware breakpoints unconditionally before kvm_x86->run()
  KVM: x86: Use guest MAXPHYADDR from CPUID.0x8000_0008 iff TDP is enabled
  KVM: mmio: Fix use-after-free Read in kvm_vm_ioctl_unregister_coalesced_mmio
  Revert "media: subdev: disallow ioctl for saa6588/davinci"
  Linux 5.4.133
  smackfs: restrict bytes count in smk_set_cipso()
  jfs: fix GPF in diFree
  pinctrl: mcp23s08: Fix missing unlock on error in mcp23s08_irq()
  media: uvcvideo: Fix pixel format change for Elgato Cam Link 4K
  media: gspca/sunplus: fix zero-length control requests
  media: gspca/sq905: fix control-request direction
  media: zr364xx: fix memory leak in zr364xx_start_readpipe
  media: dtv5100: fix control-request directions
  media: subdev: disallow ioctl for saa6588/davinci
  PCI: aardvark: Implement workaround for the readback value of VEND_ID
  PCI: aardvark: Fix checking for PIO Non-posted Request
  PCI: Leave Apple Thunderbolt controllers on for s2idle or standby
  dm btree remove: assign new_root only when removal succeeds
  coresight: tmc-etf: Fix global-out-of-bounds in tmc_update_etf_buffer()
  ipack/carriers/tpci200: Fix a double free in tpci200_pci_probe
  tracing: Resize tgid_map to pid_max, not PID_MAX_DEFAULT
  tracing: Simplify & fix saved_tgids logic
  rq-qos: fix missed wake-ups in rq_qos_throttle try two
  seq_buf: Fix overflow in seq_buf_putmem_hex()
  extcon: intel-mrfld: Sync hardware and software state on init
  nvmem: core: add a missing of_node_put
  power: supply: ab8500: Fix an old bug
  ubifs: Fix races between xattr_{set|get} and listxattr operations
  thermal/drivers/int340x/processor_thermal: Fix tcc setting
  ipmi/watchdog: Stop watchdog timer when the current action is 'none'
  qemu_fw_cfg: Make fw_cfg_rev_attr a proper kobj_attribute
  ASoC: tegra: Set driver_name=tegra for all machine drivers
  MIPS: fix "mipsel-linux-ld: decompress.c:undefined reference to `memmove'"
  fpga: stratix10-soc: Add missing fpga_mgr_free() call
  clocksource/arm_arch_timer: Improve Allwinner A64 timer workaround
  cpu/hotplug: Cure the cpusets trainwreck
  ata: ahci_sunxi: Disable DIPM
  mmc: core: Allow UHS-I voltage switch for SDSC cards if supported
  mmc: core: clear flags before allowing to retune
  mmc: sdhci: Fix warning message when accessing RPMB in HS400 mode
  drm/arm/malidp: Always list modifiers
  drm/msm/mdp4: Fix modifier support enabling
  drm/tegra: Don't set allow_fb_modifiers explicitly
  drm/amd/display: Reject non-zero src_y and src_x for video planes
  pinctrl/amd: Add device HID for new AMD GPIO controller
  drm/amd/display: fix incorrrect valid irq check
  drm/rockchip: dsi: remove extra component_del() call
  drm/radeon: Add the missed drm_gem_object_put() in radeon_user_framebuffer_create()
  drm/amdgpu: Update NV SIMD-per-CU to 2
  powerpc/barrier: Avoid collision with clang's __lwsync macro
  powerpc/mm: Fix lockup on kernel exec fault
  perf bench: Fix 2 memory sanitizer warnings
  crypto: ccp - Annotate SEV Firmware file names
  fscrypt: don't ignore minor_hash when hash is 0
  MIPS: set mips32r5 for virt extensions
  MIPS: loongsoon64: Reserve memory below starting pfn to prevent Oops
  sctp: add size validation when walking chunks
  sctp: validate from_addr_param return
  Bluetooth: btusb: fix bt fiwmare downloading failure issue for qca btsoc.
  Bluetooth: Shutdown controller after workqueues are flushed or cancelled
  Bluetooth: Fix the HCI to MGMT status conversion table
  Bluetooth: btusb: Fixed too many in-token issue for Mediatek Chip.
  RDMA/cma: Fix rdma_resolve_route() memory leak
  net: ip: avoid OOM kills with large UDP sends over loopback
  media, bpf: Do not copy more entries than user space requested
  wireless: wext-spy: Fix out-of-bounds warning
  sfc: error code if SRIOV cannot be disabled
  sfc: avoid double pci_remove of VFs
  iwlwifi: pcie: fix context info freeing
  iwlwifi: pcie: free IML DMA memory allocation
  iwlwifi: mvm: don't change band on bound PHY contexts
  RDMA/rxe: Don't overwrite errno from ib_umem_get()
  vsock: notify server to shutdown when client has pending signal
  atm: nicstar: register the interrupt handler in the right place
  atm: nicstar: use 'dma_free_coherent' instead of 'kfree'
  MIPS: add PMD table accounting into MIPS'pmd_alloc_one
  rtl8xxxu: Fix device info for RTL8192EU devices
  drm/amdkfd: Walk through list with dqm lock hold
  net: sched: fix error return code in tcf_del_walker()
  net: fix mistake path for netdev_features_strings
  mt76: mt7615: fix fixed-rate tx status reporting
  bpf: Fix up register-based shifts in interpreter to silence KUBSAN
  cw1200: add missing MODULE_DEVICE_TABLE
  wl1251: Fix possible buffer overflow in wl1251_cmd_scan
  wlcore/wl12xx: Fix wl12xx get_mac error if device is in ELP
  xfrm: Fix error reporting in xfrm_state_construct.
  drm/amd/display: Verify Gamma & Degamma LUT sizes in amdgpu_dm_atomic_check
  r8169: avoid link-up interrupt issue on RTL8106e if user enables ASPM
  selinux: use __GFP_NOWARN with GFP_NOWAIT in the AVC
  fjes: check return value after calling platform_get_resource()
  drm/amdkfd: use allowed domain for vmbo validation
  drm/amd/display: Set DISPCLK_MAX_ERRDET_CYCLES to 7
  drm/amd/display: Release MST resources on switch from MST to SST
  drm/amd/display: Update scaling settings on modeset
  net: micrel: check return value after calling platform_get_resource()
  net: mvpp2: check return value after calling platform_get_resource()
  net: bcmgenet: check return value after calling platform_get_resource()
  virtio_net: Remove BUG() to avoid machine dead
  ice: set the value of global config lock timeout longer
  pinctrl: mcp23s08: fix race condition in irq handler
  dm space maps: don't reset space map allocation cursor when committing
  RDMA/cxgb4: Fix missing error code in create_qp()
  ipv6: use prandom_u32() for ID generation
  clk: tegra: Ensure that PLLU configuration is applied properly
  clk: renesas: r8a77995: Add ZA2 clock
  drm/bridge: cdns: Fix PM reference leak in cdns_dsi_transfer()
  igb: handle vlan types with checker enabled
  e100: handle eeprom as little endian
  udf: Fix NULL pointer dereference in udf_symlink function
  drm/sched: Avoid data corruptions
  drm/virtio: Fix double free on probe failure
  reiserfs: add check for invalid 1st journal block
  drm/mediatek: Fix PM reference leak in mtk_crtc_ddp_hw_init()
  net: Treat __napi_schedule_irqoff() as __napi_schedule() on PREEMPT_RT
  atm: nicstar: Fix possible use-after-free in nicstar_cleanup()
  mISDN: fix possible use-after-free in HFC_cleanup()
  atm: iphase: fix possible use-after-free in ia_module_exit()
  hugetlb: clear huge pte during flush function on mips platform
  drm/amd/display: fix use_max_lb flag for 420 pixel formats
  net: pch_gbe: Use proper accessors to BE data in pch_ptp_match()
  drm/vc4: fix argument ordering in vc4_crtc_get_margins()
  drm/amd/amdgpu/sriov disable all ip hw status by default
  drm/zte: Don't select DRM_KMS_FB_HELPER
  drm/mxsfb: Don't select DRM_KMS_FB_HELPER
  ANDROID: GKI: fix up crc change in ip.h
  Linux 5.4.132
  iommu/dma: Fix compile warning in 32-bit builds
  scsi: core: Retry I/O for Notify (Enable Spinup) Required error
  mmc: vub3000: fix control-request direction
  mmc: block: Disable CMDQ on the ioctl path
  block: return the correct bvec when checking for gaps
  scsi: target: cxgbit: Unmap DMA buffer before calling target_execute_cmd()
  perf llvm: Return -ENOMEM when asprintf() fails
  selftests/vm/pkeys: fix alloc_random_pkey() to make it really, really random
  mm/z3fold: fix potential memory leak in z3fold_destroy_pool()
  mm/huge_memory.c: don't discard hugepage if other processes are mapping it
  vfio/pci: Handle concurrent vma faults
  arm64: dts: marvell: armada-37xx: Fix reg for standard variant of UART
  serial: mvebu-uart: correctly calculate minimal possible baudrate
  serial: mvebu-uart: do not allow changing baudrate when uartclk is not available
  powerpc: Offline CPU in stop_this_cpu()
  leds: ktd2692: Fix an error handling path
  leds: as3645a: Fix error return code in as3645a_parse_node()
  configfs: fix memleak in configfs_release_bin_file
  ASoC: atmel-i2s: Fix usage of capture and playback at the same time
  extcon: max8997: Add missing modalias string
  extcon: sm5502: Drop invalid register write in sm5502_reg_data
  phy: ti: dm816x: Fix the error handling path in 'dm816x_usb_phy_probe()
  phy: uniphier-pcie: Fix updating phy parameters
  soundwire: stream: Fix test for DP prepare complete
  scsi: mpt3sas: Fix error return value in _scsih_expander_add()
  mtd: rawnand: marvell: add missing clk_disable_unprepare() on error in marvell_nfc_resume()
  of: Fix truncation of memory sizes on 32-bit platforms
  ASoC: cs42l42: Correct definition of CS42L42_ADC_PDN_MASK
  iio: prox: isl29501: Fix buffer alignment in iio_push_to_buffers_with_timestamp()
  iio: light: vcnl4035: Fix buffer alignment in iio_push_to_buffers_with_timestamp()
  serial: 8250: Actually allow UPF_MAGIC_MULTIPLIER baud rates
  staging: mt7621-dts: fix pci address for PCI memory range
  staging: rtl8712: fix memory leak in rtl871x_load_fw_cb
  staging: rtl8712: remove redundant check in r871xu_drv_init
  staging: gdm724x: check for overflow in gdm_lte_netif_rx()
  staging: gdm724x: check for buffer overflow in gdm_lte_multi_sdu_pkt()
  iio: magn: rm3100: Fix alignment of buffer in iio_push_to_buffers_with_timestamp()
  iio: adc: ti-ads8688: Fix alignment of buffer in iio_push_to_buffers_with_timestamp()
  iio: adc: mxs-lradc: Fix buffer alignment in iio_push_to_buffers_with_timestamp()
  iio: adc: hx711: Fix buffer alignment in iio_push_to_buffers_with_timestamp()
  iio: adc: at91-sama5d2: Fix buffer alignment in iio_push_to_buffers_with_timestamp()
  iio: at91-sama5d2_adc: remove usage of iio_priv_to_dev() helper
  eeprom: idt_89hpesx: Restore printing the unsupported fwnode name
  eeprom: idt_89hpesx: Put fwnode in matching case during ->probe()
  usb: dwc2: Don't reset the core after setting turnaround time
  usb: gadget: f_fs: Fix setting of device and driver data cross-references
  ASoC: mediatek: mtk-btcvsd: Fix an error handling path in 'mtk_btcvsd_snd_probe()'
  iommu/dma: Fix IOVA reserve dma ranges
  s390: appldata depends on PROC_SYSCTL
  visorbus: fix error return code in visorchipset_init()
  fsi/sbefifo: Fix reset timeout
  fsi/sbefifo: Clean up correct FIFO when receiving reset request from SBE
  fsi: occ: Don't accept response from un-initialized OCC
  fsi: scom: Reset the FSI2PIB engine for any error
  fsi: core: Fix return of error values on failures
  scsi: FlashPoint: Rename si_flags field
  leds: lm3692x: Put fwnode in any case during ->probe()
  leds: lm36274: cosmetic: rename lm36274_data to chip
  leds: lm3532: select regmap I2C API
  tty: nozomi: Fix the error handling path of 'nozomi_card_init()'
  firmware: stratix10-svc: Fix a resource leak in an error handling path
  char: pcmcia: error out if 'num_bytes_read' is greater than 4 in set_protocol()
  mtd: partitions: redboot: seek fis-index-block in the right node
  Input: hil_kbd - fix error return code in hil_dev_connect()
  ASoC: rsnd: tidyup loop on rsnd_adg_clk_query()
  backlight: lm3630a_bl: Put fwnode in error case during ->probe()
  ASoC: hisilicon: fix missing clk_disable_unprepare() on error in hi6210_i2s_startup()
  ASoC: rk3328: fix missing clk_disable_unprepare() on error in rk3328_platform_probe()
  iio: potentiostat: lmp91000: Fix alignment of buffer in iio_push_to_buffers_with_timestamp()
  iio: cros_ec_sensors: Fix alignment of buffer in iio_push_to_buffers_with_timestamp()
  iio: light: tcs3472: Fix buffer alignment in iio_push_to_buffers_with_timestamp()
  iio: light: tcs3414: Fix buffer alignment in iio_push_to_buffers_with_timestamp()
  iio: light: isl29125: Fix buffer alignment in iio_push_to_buffers_with_timestamp()
  iio: magn: bmc150: Fix buffer alignment in iio_push_to_buffers_with_timestamp()
  iio: magn: hmc5843: Fix buffer alignment in iio_push_to_buffers_with_timestamp()
  iio: prox: as3935: Fix buffer alignment in iio_push_to_buffers_with_timestamp()
  iio: prox: pulsed-light: Fix buffer alignment in iio_push_to_buffers_with_timestamp()
  iio: prox: srf08: Fix buffer alignment in iio_push_to_buffers_with_timestamp()
  iio: humidity: am2315: Fix buffer alignment in iio_push_to_buffers_with_timestamp()
  iio: gyro: bmg160: Fix buffer alignment in iio_push_to_buffers_with_timestamp()
  iio: adc: vf610: Fix buffer alignment in iio_push_to_buffers_with_timestamp()
  iio: adc: ti-ads1015: Fix buffer alignment in iio_push_to_buffers_with_timestamp()
  iio: accel: stk8ba50: Fix buffer alignment in iio_push_to_buffers_with_timestamp()
  iio: accel: stk8312: Fix buffer alignment in iio_push_to_buffers_with_timestamp()
  iio: accel: mxc4005: Fix overread of data and alignment issue.
  iio:accel:mxc4005: Drop unnecessary explicit casts in regmap_bulk_read calls
  iio: accel: kxcjk-1013: Fix buffer alignment in iio_push_to_buffers_with_timestamp()
  iio: accel: hid: Fix buffer alignment in iio_push_to_buffers_with_timestamp()
  iio: accel: bma220: Fix buffer alignment in iio_push_to_buffers_with_timestamp()
  iio: accel: bma180: Fix buffer alignment in iio_push_to_buffers_with_timestamp()
  iio: adis16400: do not return ints in irq handlers
  iio: adis_buffer: do not return ints in irq handlers
  mwifiex: re-fix for unaligned accesses
  tty: nozomi: Fix a resource leak in an error handling function
  rcu: Invoke rcu_spawn_core_kthreads() from rcu_spawn_gp_kthread()
  staging: fbtft: Rectify GPIO handling
  MIPS: Fix PKMAP with 32-bit MIPS huge page support
  RDMA/mlx5: Don't access NULL-cleared mpi pointer
  net: sched: fix warning in tcindex_alloc_perfect_hash
  net: lwtunnel: handle MTU calculation in forwading
  writeback: fix obtain a reference to a freeing memcg css
  clk: si5341: Update initialization magic
  clk: si5341: Avoid divide errors due to bogus register contents
  clk: actions: Fix bisp_factor_table based clocks on Owl S500 SoC
  clk: actions: Fix SD clocks factor table on Owl S500 SoC
  clk: actions: Fix UART clock dividers on Owl S500 SoC
  Bluetooth: Fix handling of HCI_LE_Advertising_Set_Terminated event
  Bluetooth: mgmt: Fix slab-out-of-bounds in tlv_data_is_valid
  Revert "be2net: disable bh with spin_lock in be_process_mcc"
  gve: Fix swapped vars when fetching max queues
  bpfilter: Specify the log level for the kmsg message
  e1000e: Check the PCIm state
  ipv6: fix out-of-bound access in ip6_parse_tlv()
  ibmvnic: free tx_pool if tso_pool alloc fails
  Revert "ibmvnic: remove duplicate napi_schedule call in open function"
  i40e: Fix autoneg disabling for non-10GBaseT links
  i40e: Fix error handling in i40e_vsi_open
  bpf: Do not change gso_size during bpf_skb_change_proto()
  ipv6: exthdrs: do not blindly use init_net
  net: bcmgenet: Fix attaching to PYH failed on RPi 4B
  mac80211: remove iwlwifi specific workaround NDPs of null_response
  ieee802154: hwsim: avoid possible crash in hwsim_del_edge_nl()
  ieee802154: hwsim: Fix memory leak in hwsim_add_one
  tc-testing: fix list handling
  net/ipv4: swap flow ports when validating source
  vxlan: add missing rcu_read_lock() in neigh_reduce()
  pkt_sched: sch_qfq: fix qfq_change_class() error path
  tls: prevent oversized sendfile() hangs by ignoring MSG_MORE
  net: sched: add barrier to ensure correct ordering for lockless qdisc
  vrf: do not push non-ND strict packets with a source LLA through packet taps again
  net: ethernet: ezchip: fix error handling
  net: ethernet: ezchip: fix UAF in nps_enet_remove
  net: ethernet: aeroflex: fix UAF in greth_of_remove
  samples/bpf: Fix the error return code of xdp_redirect's main()
  RDMA/rxe: Fix qp reference counting for atomic ops
  netfilter: nft_tproxy: restrict support to TCP and UDP transport protocols
  netfilter: nft_osf: check for TCP packet before further processing
  netfilter: nft_exthdr: check for IPv6 packet before further processing
  RDMA/mlx5: Don't add slave port to unaffiliated list
  netlabel: Fix memory leak in netlbl_mgmt_add_common
  ath10k: Fix an error code in ath10k_add_interface()
  brcmsmac: mac80211_if: Fix a resource leak in an error handling path
  brcmfmac: correctly report average RSSI in station info
  brcmfmac: fix setting of station info chains bitmask
  ssb: Fix error return code in ssb_bus_scan()
  wcn36xx: Move hal_buf allocation to devm_kmalloc in probe
  ieee802154: hwsim: Fix possible memory leak in hwsim_subscribe_all_others
  wireless: carl9170: fix LEDS build errors & warnings
  ath10k: add missing error return code in ath10k_pci_probe()
  ath10k: go to path err_unsupported when chip id is not supported
  tools/bpftool: Fix error return code in do_batch()
  drm: qxl: ensure surf.data is ininitialized
  RDMA/rxe: Fix failure during driver load
  RDMA/core: Sanitize WQ state received from the userspace
  net/sched: act_vlan: Fix modify to allow 0
  ehea: fix error return code in ehea_restart_qps()
  drm/rockchip: dsi: move all lane config except LCDC mux to bind()
  drm/rockchip: cdn-dp-core: add missing clk_disable_unprepare() on error in cdn_dp_grf_write()
  net: ftgmac100: add missing error return code in ftgmac100_probe()
  clk: meson: g12a: fix gp0 and hifi ranges
  pinctrl: renesas: r8a77990: JTAG pins do not have pull-down capabilities
  pinctrl: renesas: r8a7796: Add missing bias for PRESET# pin
  net: pch_gbe: Propagate error from devm_gpio_request_one()
  net: mvpp2: Put fwnode in error case during ->probe()
  video: fbdev: imxfb: Fix an error message
  xfrm: xfrm_state_mtu should return at least 1280 for ipv6
  dax: fix ENOMEM handling in grab_mapping_entry()
  ocfs2: fix snprintf() checking
  cpufreq: Make cpufreq_online() call driver->offline() on errors
  ACPI: bgrt: Fix CFI violation
  ACPI: Use DEVICE_ATTR_<RW|RO|WO> macros
  blk-wbt: make sure throttle is enabled properly
  blk-wbt: introduce a new disable state to prevent false positive by rwb_enabled()
  extcon: extcon-max8997: Fix IRQ freeing at error path
  ACPI: sysfs: Fix a buffer overrun problem with description_show()
  crypto: nx - Fix RCU warning in nx842_OF_upd_status
  spi: spi-sun6i: Fix chipselect/clock bug
  sched/uclamp: Fix uclamp_tg_restrict()
  sched/rt: Fix Deadline utilization tracking during policy change
  sched/rt: Fix RT utilization tracking during policy change
  btrfs: clear log tree recovering status if starting transaction fails
  regulator: hi655x: Fix pass wrong pointer to config.driver_data
  KVM: nVMX: Ensure 64-bit shift when checking VMFUNC bitmap
  hwmon: (max31790) Fix fan speed reporting for fan7..12
  hwmon: (max31722) Remove non-standard ACPI device IDs
  media: s5p-g2d: Fix a memory leak on ctx->fh.m2m_ctx
  arm64/mm: Fix ttbr0 values stored in struct thread_info for software-pan
  arm64: consistently use reserved_pg_dir
  mmc: usdhi6rol0: fix error return code in usdhi6_probe()
  crypto: omap-sham - Fix PM reference leak in omap sham ops
  crypto: nitrox - fix unchecked variable in nitrox_register_interrupts
  media: siano: Fix out-of-bounds warnings in smscore_load_firmware_family2()
  m68k: atari: Fix ATARI_KBD_CORE kconfig unmet dependency warning
  media: gspca/gl860: fix zero-length control requests
  media: tc358743: Fix error return code in tc358743_probe_of()
  media: au0828: fix a NULL vs IS_ERR() check
  media: exynos4-is: Fix a use after free in isp_video_release
  pata_ep93xx: fix deferred probing
  media: rc: i2c: Fix an error message
  crypto: ccp - Fix a resource leak in an error handling path
  evm: fix writing <securityfs>/evm overflow
  pata_octeon_cf: avoid WARN_ON() in ata_host_activate()
  kbuild: Fix objtool dependency for 'OBJECT_FILES_NON_STANDARD_<obj> := n'
  kbuild: run the checker after the compiler
  sched/uclamp: Fix locking around cpu_util_update_eff()
  sched/uclamp: Fix wrong implementation of cpu.uclamp.min
  media: I2C: change 'RST' to "RSET" to fix multiple build errors
  pata_rb532_cf: fix deferred probing
  sata_highbank: fix deferred probing
  crypto: ux500 - Fix error return code in hash_hw_final()
  crypto: ixp4xx - dma_unmap the correct address
  media: s5p_cec: decrement usage count if disabled
  writeback, cgroup: increment isw_nr_in_flight before grabbing an inode
  ia64: mca_drv: fix incorrect array size calculation
  kthread_worker: fix return value when kthread_mod_delayed_work() races with kthread_cancel_delayed_work_sync()
  block: fix discard request merge
  cifs: fix missing spinlock around update to ses->status
  HID: wacom: Correct base usage for capacitive ExpressKey status bits
  ACPI: tables: Add custom DSDT file as makefile prerequisite
  clocksource: Retry clock read if long delays detected
  PCI: hv: Add check for hyperv_initialized in init_hv_pci_drv()
  EDAC/Intel: Do not load EDAC driver when running as a guest
  nvmet-fc: do not check for invalid target port in nvmet_fc_handle_fcp_rqst()
  platform/x86: toshiba_acpi: Fix missing error code in toshiba_acpi_setup_keyboard()
  block: fix race between adding/removing rq qos and normal IO
  ACPI: resources: Add checks for ACPI IRQ override
  ACPI: bus: Call kobject_put() in acpi_init() error path
  ACPICA: Fix memory leak caused by _CID repair function
  fs: dlm: fix memory leak when fenced
  random32: Fix implicit truncation warning in prandom_seed_state()
  fs: dlm: cancel work sync othercon
  block_dump: remove block_dump feature in mark_inode_dirty()
  ACPI: EC: Make more Asus laptops use ECDT _GPE
  lib: vsprintf: Fix handling of number field widths in vsscanf
  hv_utils: Fix passing zero to 'PTR_ERR' warning
  ACPI: processor idle: Fix up C-state latency if not ordered
  EDAC/ti: Add missing MODULE_DEVICE_TABLE
  HID: do not use down_interruptible() when unbinding devices
  media: Fix Media Controller API config checks
  regulator: da9052: Ensure enough delay time for .set_voltage_time_sel
  regulator: mt6358: Fix vdram2 .vsel_mask
  KVM: s390: get rid of register asm usage
  lockding/lockdep: Avoid to find wrong lock dep path in check_irq_usage()
  locking/lockdep: Fix the dep path printing for backwards BFS
  btrfs: disable build on platforms having page size 256K
  btrfs: abort transaction if we fail to update the delayed inode
  btrfs: fix error handling in __btrfs_update_delayed_inode
  KVM: PPC: Book3S HV: Fix TLB management on SMT8 POWER9 and POWER10 processors
  drivers/perf: fix the missed ida_simple_remove() in ddr_perf_probe()
  hwmon: (max31790) Fix pwmX_enable attributes
  hwmon: (max31790) Report correct current pwm duty cycles
  media: imx-csi: Skip first few frames from a BT.656 source
  media: siano: fix device register error path
  media: dvb_net: avoid speculation from net slot
  crypto: shash - avoid comparing pointers to exported functions under CFI
  mmc: via-sdmmc: add a check against NULL pointer dereference
  mmc: sdhci-sprd: use sdhci_sprd_writew
  memstick: rtsx_usb_ms: fix UAF
  media: dvd_usb: memory leak in cinergyt2_fe_attach
  Makefile: fix GDB warning with CONFIG_RELR
  media: st-hva: Fix potential NULL pointer dereferences
  media: bt8xx: Fix a missing check bug in bt878_probe
  media: v4l2-core: Avoid the dangling pointer in v4l2_fh_release
  media: em28xx: Fix possible memory leak of em28xx struct
  sched/fair: Fix ascii art by relpacing tabs
  crypto: qat - remove unused macro in FW loader
  crypto: qat - check return code of qat_hal_rd_rel_reg()
  media: imx: imx7_mipi_csis: Fix logging of only error event counters
  media: pvrusb2: fix warning in pvr2_i2c_core_done
  media: cobalt: fix race condition in setting HPD
  media: cpia2: fix memory leak in cpia2_usb_probe
  media: sti: fix obj-$(config) targets
  crypto: nx - add missing MODULE_DEVICE_TABLE
  hwrng: exynos - Fix runtime PM imbalance on error
  regulator: uniphier: Add missing MODULE_DEVICE_TABLE
  spi: omap-100k: Fix the length judgment problem
  spi: spi-topcliff-pch: Fix potential double free in pch_spi_process_messages()
  spi: spi-loopback-test: Fix 'tx_buf' might be 'rx_buf'
  media: exynos-gsc: fix pm_runtime_get_sync() usage count
  media: sti/bdisp: fix pm_runtime_get_sync() usage count
  media: s5p-jpeg: fix pm_runtime_get_sync() usage count
  media: mtk-vcodec: fix PM runtime get logic
  media: sh_vou: fix pm_runtime_get_sync() usage count
  media: s5p: fix pm_runtime_get_sync() usage count
  media: mdk-mdp: fix pm_runtime_get_sync() usage count
  spi: Make of_register_spi_device also set the fwnode
  fuse: reject internal errno
  fuse: check connected before queueing on fpq->io
  fuse: ignore PG_workingset after stealing
  evm: Refuse EVM_ALLOW_METADATA_WRITES only if an HMAC key is loaded
  evm: Execute evm_inode_init_security() only when an HMAC key is loaded
  powerpc/stacktrace: Fix spurious "stale" traces in raise_backtrace_ipi()
  seq_buf: Make trace_seq_putmem_hex() support data longer than 8
  tracepoint: Add tracepoint_probe_register_may_exist() for BPF tracing
  tracing/histograms: Fix parsing of "sym-offset" modifier
  rsi: fix AP mode with WPA failure due to encrypted EAPOL
  rsi: Assign beacon rate settings to the correct rate_info descriptor field
  ssb: sdio: Don't overwrite const buffer if block_write fails
  ath9k: Fix kernel NULL pointer dereference during ath_reset_internal()
  serial_cs: remove wrong GLOBETROTTER.cis entry
  serial_cs: Add Option International GSM-Ready 56K/ISDN modem
  serial: sh-sci: Stop dmaengine transfer in sci_stop_tx()
  serial: mvebu-uart: fix calculation of clock divisor
  iio: ltr501: ltr501_read_ps(): add missing endianness conversion
  iio: ltr501: ltr559: fix initialization of LTR501_ALS_CONTR
  iio: ltr501: mark register holding upper 8 bits of ALS_DATA{0,1} and PS_DATA as volatile, too
  iio: light: tcs3472: do not free unallocated IRQ
  rtc: stm32: Fix unbalanced clk_disable_unprepare() on probe error path
  s390/cio: dont call css_wait_for_slow_path() inside a lock
  KVM: PPC: Book3S HV: Workaround high stack usage with clang
  perf/smmuv3: Don't trample existing events with global filter
  SUNRPC: Should wake up the privileged task firstly.
  SUNRPC: Fix the batch tasks count wraparound.
  mac80211: remove iwlwifi specific workaround that broke sta NDP tx
  can: peak_pciefd: pucan_handle_status(): fix a potential starvation issue in TX path
  can: j1939: j1939_sk_init(): set SOCK_RCU_FREE to call sk_destruct() after RCU is done
  can: gw: synchronize rcu operations before removing gw job entry
  can: bcm: delay release of struct bcm_op after synchronize_rcu()
  ext4: use ext4_grp_locked_error in mb_find_extent
  ext4: fix avefreec in find_group_orlov
  ext4: remove check for zero nr_to_scan in ext4_es_scan()
  ext4: correct the cache_nr in tracepoint ext4_es_shrink_exit
  ext4: return error code when ext4_fill_flex_info() fails
  ext4: fix kernel infoleak via ext4_extent_header
  ext4: cleanup in-core orphan list if ext4_truncate() failed to get a transaction handle
  btrfs: clear defrag status of a root if starting transaction fails
  btrfs: send: fix invalid path for unlink operations after parent orphanization
  ARM: dts: at91: sama5d4: fix pinctrl muxing
  arm_pmu: Fix write counter incorrect in ARMv7 big-endian mode
  Input: joydev - prevent use of not validated data in JSIOCSBTNMAP ioctl
  iov_iter_fault_in_readable() should do nothing in xarray case
  copy_page_to_iter(): fix ITER_DISCARD case
  ntfs: fix validity check for file name attribute
  xhci: solve a double free problem while doing s4
  usb: typec: Add the missed altmode_id_remove() in typec_register_altmode()
  usb: dwc3: Fix debugfs creation flow
  USB: cdc-acm: blacklist Heimann USB Appset device
  usb: gadget: eem: fix echo command packet response issue
  net: can: ems_usb: fix use-after-free in ems_usb_disconnect()
  Input: usbtouchscreen - fix control-request directions
  media: dvb-usb: fix wrong definition
  ALSA: hda/realtek: Apply LED fixup for HP Dragonfly G1, too
  ALSA: hda/realtek: Fix bass speaker DAC mapping for Asus UM431D
  ALSA: hda/realtek: Improve fixup for HP Spectre x360 15-df0xxx
  ALSA: hda/realtek: Add another ALC236 variant support
  ALSA: intel8x0: Fix breakage at ac97 clock measurement
  ALSA: usb-audio: scarlett2: Fix wrong resume call
  ALSA: usb-audio: Fix OOB access at proc output
  ALSA: usb-audio: fix rate on Ozone Z90 USB headset
  Linux 5.4.131
  xen/events: reset active flag for lateeoi events later
  KVM: SVM: Call SEV Guest Decommission if ASID binding fails
  s390/stack: fix possible register corruption with stack switch helper
  KVM: SVM: Periodically schedule when unregistering regions on destroy
  Linux 5.4.130
  RDMA/mlx5: Block FDB rules when not in switchdev mode
  gpio: AMD8111 and TQMX86 require HAS_IOPORT_MAP
  drm/nouveau: fix dma_address check for CPU/GPU sync
  scsi: sr: Return appropriate error code when disk is ejected
  x86/efi: remove unused variables
  Linux 5.4.129
  certs: Move load_system_certificate_list to a common function
  certs: Add EFI_CERT_X509_GUID support for dbx entries
  x86/efi: move common keyring handler functions to new file
  certs: Add wrapper function to check blacklisted binary hash
  mm, futex: fix shared futex pgoff on shmem huge page
  mm/thp: another PVMW_SYNC fix in page_vma_mapped_walk()
  mm/thp: fix page_vma_mapped_walk() if THP mapped by ptes
  mm: page_vma_mapped_walk(): get vma_address_end() earlier
  mm: page_vma_mapped_walk(): use goto instead of while (1)
  mm: page_vma_mapped_walk(): add a level of indentation
  mm: page_vma_mapped_walk(): crossing page table boundary
  mm: page_vma_mapped_walk(): prettify PVMW_MIGRATION block
  mm: page_vma_mapped_walk(): use pmde for *pvmw->pmd
  mm: page_vma_mapped_walk(): settle PageHuge on entry
  mm: page_vma_mapped_walk(): use page for pvmw->page
  mm: thp: replace DEBUG_VM BUG with VM_WARN when unmap fails for split
  mm/thp: unmap_mapping_page() to fix THP truncate_cleanup_page()
  mm/thp: fix page_address_in_vma() on file THP tails
  mm/thp: fix vma_address() if virtual address below file offset
  mm/thp: try_to_unmap() use TTU_SYNC for safe splitting
  mm/thp: make is_huge_zero_pmd() safe and quicker
  mm/thp: fix __split_huge_pmd_locked() on shmem migration entry
  mm, thp: use head page in __migration_entry_wait()
  mm/rmap: use page_not_mapped in try_to_unmap()
  mm/rmap: remove unneeded semicolon in page_not_mapped()
  mm: add VM_WARN_ON_ONCE_PAGE() macro
  kthread: prevent deadlock when kthread_mod_delayed_work() races with kthread_cancel_delayed_work_sync()
  kthread_worker: split code for canceling the delayed work timer
  i2c: robotfuzz-osif: fix control-request directions
  KVM: do not allow mapping valid but non-reference-counted pages
  nilfs2: fix memory leak in nilfs_sysfs_delete_device_group
  pinctrl: stm32: fix the reported number of GPIO lines per bank
  net: ll_temac: Avoid ndo_start_xmit returning NETDEV_TX_BUSY
  net: ll_temac: Add memory-barriers for TX BD access
  PCI: Add AMD RS690 quirk to enable 64-bit DMA
  recordmcount: Correct st_shndx handling
  net: qed: Fix memcpy() overflow of qed_dcbx_params()
  KVM: selftests: Fix kvm_check_cap() assertion
  r8169: Avoid memcpy() over-reading of ETH_SS_STATS
  sh_eth: Avoid memcpy() over-reading of ETH_SS_STATS
  r8152: Avoid memcpy() over-reading of ETH_SS_STATS
  net/packet: annotate accesses to po->ifindex
  net/packet: annotate accesses to po->bind
  net: caif: fix memory leak in ldisc_open
  net: phy: dp83867: perform soft reset and retain established link
  inet: annotate date races around sk->sk_txhash
  ping: Check return value of function 'ping_queue_rcv_skb'
  net: ethtool: clear heap allocations for ethtool function
  mac80211: drop multicast fragments
  net: ipv4: Remove unneed BUG() function
  dmaengine: mediatek: use GFP_NOWAIT instead of GFP_ATOMIC in prep_dma
  dmaengine: mediatek: do not issue a new desc if one is still current
  dmaengine: mediatek: free the proper desc in desc_free handler
  dmaengine: rcar-dmac: Fix PM reference leak in rcar_dmac_probe()
  cfg80211: call cfg80211_leave_ocb when switching away from OCB
  mac80211_hwsim: drop pending frames on stop
  mac80211: remove warning in ieee80211_get_sband()
  dmaengine: zynqmp_dma: Fix PM reference leak in zynqmp_dma_alloc_chan_resourc()
  Revert "PCI: PM: Do not read power state in pci_enable_device_flags()"
  spi: spi-nxp-fspi: move the register operation after the clock enable
  MIPS: generic: Update node names to avoid unit addresses
  arm64: link with -z norelro for LLD or aarch64-elf
  kbuild: add CONFIG_LD_IS_LLD
  mmc: meson-gx: use memcpy_to/fromio for dram-access-quirk
  ARM: 9081/1: fix gcc-10 thumb2-kernel regression
  drm/radeon: wait for moving fence after pinning
  drm/nouveau: wait for moving fence after pinning v2
  Revert "drm/amdgpu/gfx10: enlarge CP_MEC_DOORBELL_RANGE_UPPER to cover full doorbell."
  Revert "drm/amdgpu/gfx9: fix the doorbell missing when in CGPG issue."
  module: limit enabling module.sig_enforce
  Revert "clocksource/drivers/timer-ti-dm: Handle dra7 timer wrap errata i940"
  Linux 5.4.128
  usb: dwc3: core: fix kernel panic when do reboot
  usb: dwc3: debugfs: Add and remove endpoint dirs dynamically
  clocksource/drivers/timer-ti-dm: Handle dra7 timer wrap errata i940
  clocksource/drivers/timer-ti-dm: Prepare to handle dra7 timer wrap issue
  clocksource/drivers/timer-ti-dm: Add clockevent and clocksource support
  ARM: OMAP: replace setup_irq() by request_irq()
  KVM: arm/arm64: Fix KVM_VGIC_V3_ADDR_TYPE_REDIST read
  tools headers UAPI: Sync linux/in.h copy with the kernel sources
  net: fec_ptp: add clock rate zero check
  net: stmmac: disable clocks in stmmac_remove_config_dt()
  mm/slub.c: include swab.h
  mm/slub: fix redzoning for small allocations
  mm/slub: clarify verification reporting
  net: bridge: fix vlan tunnel dst refcnt when egressing
  net: bridge: fix vlan tunnel dst null pointer dereference
  net: ll_temac: Fix TX BD buffer overwrite
  net: ll_temac: Make sure to free skb when it is completely used
  drm/amdgpu/gfx9: fix the doorbell missing when in CGPG issue.
  drm/amdgpu/gfx10: enlarge CP_MEC_DOORBELL_RANGE_UPPER to cover full doorbell.
  cfg80211: avoid double free of PMSR request
  cfg80211: make certificate generation more robust
  dmaengine: pl330: fix wrong usage of spinlock flags in dma_cyclc
  x86/fpu: Reset state for all signal restore failures
  x86/pkru: Write hardware init value to PKRU when xstate is init
  x86/process: Check PF_KTHREAD and not current->mm for kernel threads
  ARCv2: save ABI registers across signal handling
  KVM: x86: Immediately reset the MMU context when the SMM flag is cleared
  PCI: Work around Huawei Intelligent NIC VF FLR erratum
  PCI: Add ACS quirk for Broadcom BCM57414 NIC
  PCI: aardvark: Fix kernel panic during PIO transfer
  PCI: aardvark: Don't rely on jiffies while holding spinlock
  PCI: Mark some NVIDIA GPUs to avoid bus reset
  PCI: Mark TI C667X to avoid bus reset
  tracing: Do no increment trace_clock_global() by one
  tracing: Do not stop recording comms if the trace file is being read
  tracing: Do not stop recording cmdlines when tracing is off
  usb: core: hub: Disable autosuspend for Cypress CY7C65632
  can: mcba_usb: fix memory leak in mcba_usb
  can: j1939: fix Use-after-Free, hold skb ref while in use
  can: bcm/raw/isotp: use per module netdevice notifier
  can: bcm: fix infoleak in struct bcm_msg_head
  hwmon: (scpi-hwmon) shows the negative temperature properly
  radeon: use memcpy_to/fromio for UVD fw upload
  pinctrl: ralink: rt2880: avoid to error in calls is pin is already enabled
  spi: stm32-qspi: Always wait BUSY bit to be cleared in stm32_qspi_wait_cmd()
  ASoC: rt5659: Fix the lost powers for the HDA header
  regulator: bd70528: Fix off-by-one for buck123 .n_voltages setting
  net: ethernet: fix potential use-after-free in ec_bhf_remove
  icmp: don't send out ICMP messages with a source address of 0.0.0.0
  bnxt_en: Call bnxt_ethtool_free() in bnxt_init_one() error path
  bnxt_en: Rediscover PHY capabilities after firmware reset
  cxgb4: fix wrong shift.
  net: cdc_eem: fix tx fixup skb leak
  net: hamradio: fix memory leak in mkiss_close
  be2net: Fix an error handling path in 'be_probe()'
  net/af_unix: fix a data-race in unix_dgram_sendmsg / unix_release_sock
  net: ipv4: fix memory leak in ip_mc_add1_src
  net: fec_ptp: fix issue caused by refactor the fec_devtype
  net: usb: fix possible use-after-free in smsc75xx_bind
  lantiq: net: fix duplicated skb in rx descriptor ring
  net: cdc_ncm: switch to eth%d interface naming
  ptp: improve max_adj check against unreasonable values
  net: qrtr: fix OOB Read in qrtr_endpoint_post
  netxen_nic: Fix an error handling path in 'netxen_nic_probe()'
  qlcnic: Fix an error handling path in 'qlcnic_probe()'
  net: make get_net_ns return error if NET_NS is disabled
  net: stmmac: dwmac1000: Fix extended MAC address registers definition
  alx: Fix an error handling path in 'alx_probe()'
  sch_cake: Fix out of bounds when parsing TCP options and header
  netfilter: synproxy: Fix out of bounds when parsing TCP options
  net/mlx5e: Block offload of outer header csum for UDP tunnels
  net/mlx5e: allow TSO on VXLAN over VLAN topologies
  net/mlx5: Consider RoCE cap before init RDMA resources
  net/mlx5e: Fix page reclaim for dead peer hairpin
  net/mlx5e: Remove dependency in IPsec initialization flows
  net/sched: act_ct: handle DNAT tuple collision
  rtnetlink: Fix regression in bridge VLAN configuration
  udp: fix race between close() and udp_abort()
  net: lantiq: disable interrupt before sheduling NAPI
  net: rds: fix memory leak in rds_recvmsg
  vrf: fix maximum MTU
  net: ipv4: fix memory leak in netlbl_cipsov4_add_std
  batman-adv: Avoid WARN_ON timing related checks
  kvm: LAPIC: Restore guard to prevent illegal APIC register access
  mm/memory-failure: make sure wait for page writeback in memory_failure
  afs: Fix an IS_ERR() vs NULL check
  dmaengine: stedma40: add missing iounmap() on error in d40_probe()
  dmaengine: QCOM_HIDMA_MGMT depends on HAS_IOMEM
  dmaengine: ALTERA_MSGDMA depends on HAS_IOMEM
  Linux 5.4.127
  fib: Return the correct errno code
  net: Return the correct errno code
  net/x25: Return the correct errno code
  rtnetlink: Fix missing error code in rtnl_bridge_notify()
  drm/amd/display: Allow bandwidth validation for 0 streams.
  net: ipconfig: Don't override command-line hostnames or domains
  nvme-loop: check for NVME_LOOP_Q_LIVE in nvme_loop_destroy_admin_queue()
  nvme-loop: clear NVME_LOOP_Q_LIVE when nvme_loop_configure_admin_queue() fails
  nvme-loop: reset queue count to 1 in nvme_loop_destroy_io_queues()
  scsi: scsi_devinfo: Add blacklist entry for HPE OPEN-V
  scsi: qedf: Do not put host in qedf_vport_create() unconditionally
  ethernet: myri10ge: Fix missing error code in myri10ge_probe()
  scsi: target: core: Fix warning on realtime kernels
  gfs2: Fix use-after-free in gfs2_glock_shrink_scan
  riscv: Use -mno-relax when using lld linker
  HID: gt683r: add missing MODULE_DEVICE_TABLE
  gfs2: Prevent direct-I/O write fallback errors from getting lost
  ARM: OMAP2+: Fix build warning when mmc_omap is not built
  drm/tegra: sor: Do not leak runtime PM reference
  HID: usbhid: fix info leak in hid_submit_ctrl
  HID: Add BUS_VIRTUAL to hid_connect logging
  HID: multitouch: set Stylus suffix for Stylus-application devices, too
  HID: quirks: Add quirk for Lenovo optical mouse
  HID: hid-sensor-hub: Return error for hid_set_field() failure
  HID: hid-input: add mapping for emoji picker key
  HID: quirks: Set INCREMENT_USAGE_ON_DUPLICATE for Saitek X65
  net: ieee802154: fix null deref in parse dev addr
  Revert "RDMA/ipoib: Fix warning caused by destroying non-initial netns"
  Linux 5.4.126
  proc: only require mm_struct for writing
  tracing: Correct the length check which causes memory corruption
  ftrace: Do not blindly read the ip address in ftrace_bug()
  scsi: core: Only put parent device if host state differs from SHOST_CREATED
  scsi: core: Put .shost_dev in failure path if host state changes to RUNNING
  scsi: core: Fix failure handling of scsi_add_host_with_dma()
  scsi: core: Fix error handling of scsi_host_alloc()
  NFSv4: nfs4_proc_set_acl needs to restore NFS_CAP_UIDGID_NOMAP on error.
  NFSv4: Fix second deadlock in nfs4_evict_inode()
  NFS: Fix use-after-free in nfs4_init_client()
  kvm: fix previous commit for 32-bit builds
  perf session: Correct buffer copying when peeking events
  NFSv4: Fix deadlock between nfs4_evict_inode() and nfs4_opendata_get_inode()
  NFS: Fix a potential NULL dereference in nfs_get_client()
  IB/mlx5: Fix initializing CQ fragments buffer
  KVM: x86: Ensure liveliness of nested VM-Enter fail tracepoint message
  sched/fair: Make sure to update tg contrib for blocked load
  perf: Fix data race between pin_count increment/decrement
  vmlinux.lds.h: Avoid orphan section with !SMP
  RDMA/mlx4: Do not map the core_clock page to user space unless enabled
  RDMA/ipoib: Fix warning caused by destroying non-initial netns
  usb: typec: mux: Fix copy-paste mistake in typec_mux_match
  regulator: max77620: Use device_set_of_node_from_dev()
  regulator: core: resolve supply for boot-on/always-on regulators
  usb: fix various gadget panics on 10gbps cabling
  usb: fix various gadgets null ptr deref on 10gbps cabling.
  usb: gadget: eem: fix wrong eem header operation
  USB: serial: cp210x: fix alternate function for CP2102N QFN20
  USB: serial: quatech2: fix control-request directions
  USB: serial: omninet: add device id for Zyxel Omni 56K Plus
  USB: serial: ftdi_sio: add NovaTech OrionMX product ID
  usb: gadget: f_fs: Ensure io_completion_wq is idle during unbind
  usb: typec: ucsi: Clear PPM capability data in ucsi_init() error path
  usb: typec: wcove: Use LE to CPU conversion when accessing msg->header
  usb: musb: fix MUSB_QUIRK_B_DISCONNECT_99 handling
  usb: dwc3: ep0: fix NULL pointer exception
  usb: pd: Set PD_T_SINK_WAIT_CAP to 310ms
  usb: f_ncm: only first packet of aggregate needs to start timer
  USB: f_ncm: ncm_bitrate (speed) is unsigned
  cgroup1: don't allow '\n' in renaming
  btrfs: promote debugging asserts to full-fledged checks in validate_super
  btrfs: return value from btrfs_mark_extent_written() in case of error
  staging: rtl8723bs: Fix uninitialized variables
  kvm: avoid speculation-based attacks from out-of-range memslot accesses
  drm: Lock pointer access in drm_master_release()
  drm: Fix use-after-free read in drm_getunique()
  spi: bcm2835: Fix out-of-bounds access with more than 4 slaves
  x86/boot: Add .text.* to setup.ld
  i2c: mpc: implement erratum A-004447 workaround
  i2c: mpc: Make use of i2c_recover_bus()
  spi: Cleanup on failure of initial setup
  spi: Don't have controller clean up spi device before driver unbind
  powerpc/fsl: set fsl,i2c-erratum-a004447 flag for P1010 i2c controllers
  powerpc/fsl: set fsl,i2c-erratum-a004447 flag for P2041 i2c controllers
  nvme-tcp: remove incorrect Kconfig dep in BLK_DEV_NVME
  bnx2x: Fix missing error code in bnx2x_iov_init_one()
  dm verity: fix require_signatures module_param permissions
  MIPS: Fix kernel hang under FUNCTION_GRAPH_TRACER and PREEMPT_TRACER
  nvme-fabrics: decode host pathing error for connect
  net: dsa: microchip: enable phy errata workaround on 9567
  net: appletalk: cops: Fix data race in cops_probe1
  net: macb: ensure the device is available before accessing GEMGXL control registers
  scsi: target: qla2xxx: Wait for stop_phase1 at WWN removal
  scsi: hisi_sas: Drop free_irq() of devm_request_irq() allocated irq
  scsi: vmw_pvscsi: Set correct residual data length
  scsi: bnx2fc: Return failure if io_req is already in ABTS processing
  RDS tcp loopback connection can hang
  net/qla3xxx: fix schedule while atomic in ql_sem_spinlock
  wq: handle VM suspension in stall detection
  cgroup: disable controllers at parse time
  net: mdiobus: get rid of a BUG_ON()
  netlink: disable IRQs for netlink_lock_table()
  bonding: init notify_work earlier to avoid uninitialized use
  isdn: mISDN: netjet: Fix crash in nj_probe:
  spi: sprd: Add missing MODULE_DEVICE_TABLE
  ASoC: sti-sas: add missing MODULE_DEVICE_TABLE
  vfio-ccw: Serialize FSM IDLE state with I/O completion
  ASoC: Intel: bytcr_rt5640: Add quirk for the Lenovo Miix 3-830 tablet
  ASoC: Intel: bytcr_rt5640: Add quirk for the Glavey TM800A550L tablet
  usb: cdns3: Fix runtime PM imbalance on error
  net/nfc/rawsock.c: fix a permission check bug
  spi: Fix spi device unregister flow
  ASoC: max98088: fix ni clock divider calculation
  proc: Track /proc/$pid/attr/ opener mm_struct
  ANDROID: GKI: update .xml file
  ANDROID: restore abi breakage in usbnet.h
  Linux 5.4.125
  neighbour: allow NUD_NOARP entries to be forced GCed
  i2c: qcom-geni: Suspend and resume the bus during SYSTEM_SLEEP_PM ops
  xen-pciback: redo VF placement in the virtual topology
  lib/lz4: explicitly support in-place decompression
  x86/kvm: Disable all PV features on crash
  x86/kvm: Disable kvmclock on all CPUs on shutdown
  x86/kvm: Teardown PV features on boot CPU as well
  KVM: arm64: Fix debug register indexing
  KVM: SVM: Truncate GPR value for DR and CR accesses in !64-bit mode
  btrfs: fix unmountable seed device after fstrim
  mm/filemap: fix storing to a THP shadow entry
  XArray: add xas_split
  XArray: add xa_get_order
  mm: add thp_order
  bnxt_en: Remove the setting of dev_port.
  mm, hugetlb: fix simple resv_huge_pages underflow on UFFDIO_COPY
  btrfs: fixup error handling in fixup_inode_link_counts
  btrfs: return errors from btrfs_del_csums in cleanup_ref_head
  btrfs: fix error handling in btrfs_del_csums
  btrfs: mark ordered extent and inode with error if we fail to finish
  x86/apic: Mark _all_ legacy interrupts when IO/APIC is missing
  drm/amdgpu: make sure we unpin the UVD BO
  drm/amdgpu: Don't query CE and UE errors
  nfc: fix NULL ptr dereference in llcp_sock_getname() after failed connect
  ocfs2: fix data corruption by fallocate
  pid: take a reference when initializing `cad_pid`
  usb: dwc2: Fix build in periphal-only mode
  ext4: fix bug on in ext4_es_cache_extent as ext4_split_extent_at failed
  ARM: dts: imx6q-dhcom: Add PU,VDD1P1,VDD2P5 regulators
  ARM: dts: imx6dl-yapp4: Fix RGMII connection to QCA8334 switch
  ALSA: hda: Fix for mute key LED for HP Pavilion 15-CK0xx
  ALSA: timer: Fix master timer notification
  HID: multitouch: require Finger field to mark Win8 reports as MT
  HID: magicmouse: fix NULL-deref on disconnect
  HID: i2c-hid: Skip ELAN power-on command after reset
  net: caif: fix memory leak in cfusbl_device_notify
  net: caif: fix memory leak in caif_device_notify
  net: caif: add proper error handling
  net: caif: added cfserl_release function
  Bluetooth: use correct lock to prevent UAF of hdev object
  Bluetooth: fix the erroneous flush_work() order
  tipc: fix unique bearer names sanity check
  tipc: add extack messages for bearer/media failure
  bus: ti-sysc: Fix flakey idling of uarts and stop using swsup_sidle_act
  ARM: dts: imx: emcon-avari: Fix nxp,pca8574 #gpio-cells
  ARM: dts: imx7d-pico: Fix the 'tuning-step' property
  ARM: dts: imx7d-meerkat96: Fix the 'tuning-step' property
  arm64: dts: zii-ultra: fix 12V_MAIN voltage
  arm64: dts: ls1028a: fix memory node
  i40e: add correct exception tracing for XDP
  i40e: optimize for XDP_REDIRECT in xsk path
  i2c: qcom-geni: Add shutdown callback for i2c
  ice: Allow all LLDP packets from PF to Tx
  ice: Fix VFR issues for AVF drivers that expect ATQLEN cleared
  ice: write register with correct offset
  ipv6: Fix KASAN: slab-out-of-bounds Read in fib6_nh_flush_exceptions
  ixgbevf: add correct exception tracing for XDP
  ieee802154: fix error return code in ieee802154_llsec_getparams()
  ieee802154: fix error return code in ieee802154_add_iface()
  netfilter: nfnetlink_cthelper: hit EBUSY on updates if size mismatches
  netfilter: nft_ct: skip expectations for confirmed conntrack
  ACPICA: Clean up context mutex during object deletion
  net/sched: act_ct: Fix ct template allocation for zone 0
  HID: i2c-hid: fix format string mismatch
  HID: pidff: fix error return code in hid_pidff_init()
  ipvs: ignore IP_VS_SVC_F_HASHED flag when adding service
  vfio/platform: fix module_put call in error flow
  samples: vfio-mdev: fix error handing in mdpy_fb_probe()
  vfio/pci: zap_vma_ptes() needs MMU
  vfio/pci: Fix error return code in vfio_ecap_init()
  efi: cper: fix snprintf() use in cper_dimm_err_location()
  efi: Allow EFI_MEMORY_XP and EFI_MEMORY_RO both to be cleared
  netfilter: conntrack: unregister ipv4 sockopts on error unwind
  hwmon: (dell-smm-hwmon) Fix index values
  nl80211: validate key indexes for cfg80211_registered_device
  ALSA: usb: update old-style static const declaration
  net: usb: cdc_ncm: don't spew notifications
  btrfs: tree-checker: do not error out if extent ref hash doesn't match
  ANDROID: GKI: Preserve abi change in ieee80211_data_to_8023_exthdr()
  Linux 5.4.124
  usb: core: reduce power-on-good delay time of root hub
  neighbour: Prevent Race condition in neighbour subsytem
  net: hso: bail out on interrupt URB allocation failure
  Revert "Revert "ALSA: usx2y: Fix potential NULL pointer dereference""
  net: hns3: check the return of skb_checksum_help()
  drivers/net/ethernet: clean up unused assignments
  i915: fix build warning in intel_dp_get_link_status()
  drm/i915/display: fix compiler warning about array overrun
  MIPS: ralink: export rt_sysc_membase for rt2880_wdt.c
  MIPS: alchemy: xxs1500: add gpio-au1000.h header file
  sch_dsmark: fix a NULL deref in qdisc_reset()
  net: ethernet: mtk_eth_soc: Fix packet statistics support for MT7628/88
  ALSA: usb-audio: scarlett2: snd_scarlett_gen2_controls_create() can be static
  ipv6: record frag_max_size in atomic fragments in input path
  net: lantiq: fix memory corruption in RX ring
  scsi: libsas: Use _safe() loop in sas_resume_port()
  ixgbe: fix large MTU request from VF
  bpf: Set mac_len in bpf_skb_change_head
  ASoC: cs35l33: fix an error code in probe()
  staging: emxx_udc: fix loop in _nbu2ss_nuke()
  cxgb4: avoid accessing registers when clearing filters
  gve: Correct SKB queue index validation.
  gve: Upgrade memory barrier in poll routine
  gve: Add NULL pointer checks when freeing irqs.
  gve: Update mgmt_msix_idx if num_ntfy changes
  gve: Check TX QPL was actually assigned
  mld: fix panic in mld_newpack()
  bnxt_en: Include new P5 HV definition in VF check.
  net: bnx2: Fix error return code in bnx2_init_board()
  net: hso: check for allocation failure in hso_create_bulk_serial_device()
  net: sched: fix tx action reschedule issue with stopped queue
  net: sched: fix tx action rescheduling issue during deactivation
  net: sched: fix packet stuck problem for lockless qdisc
  tls splice: check SPLICE_F_NONBLOCK instead of MSG_DONTWAIT
  openvswitch: meter: fix race when getting now_ms.
  net: mdio: octeon: Fix some double free issues
  net: mdio: thunder: Fix a double free issue in the .remove function
  net: fec: fix the potential memory leak in fec_enet_init()
  net: really orphan skbs tied to closing sk
  vfio-ccw: Check initialized flag in cp_init()
  ASoC: cs42l42: Regmap must use_single_read/write
  net: dsa: fix error code getting shifted with 4 in dsa_slave_get_sset_count
  net: netcp: Fix an error message
  drm/amd/amdgpu: fix a potential deadlock in gpu reset
  drm/amdgpu: Fix a use-after-free
  drm/amd/amdgpu: fix refcount leak
  drm/amd/display: Disconnect non-DP with no EDID
  SMB3: incorrect file id in requests compounded with open
  platform/x86: touchscreen_dmi: Add info for the Mediacom Winpad 7.0 W700 tablet
  platform/x86: intel_punit_ipc: Append MODULE_DEVICE_TABLE for ACPI
  platform/x86: hp-wireless: add AMD's hardware id to the supported list
  btrfs: do not BUG_ON in link_to_fixup_dir
  openrisc: Define memory barrier mb
  scsi: BusLogic: Fix 64-bit system enumeration error for Buslogic
  btrfs: return whole extents in fiemap
  brcmfmac: properly check for bus register errors
  Revert "brcmfmac: add a check for the status of usb_register"
  net: liquidio: Add missing null pointer checks
  Revert "net: liquidio: fix a NULL pointer dereference"
  media: gspca: properly check for errors in po1030_probe()
  Revert "media: gspca: Check the return value of write_bridge for timeout"
  media: gspca: mt9m111: Check write_bridge for timeout
  Revert "media: gspca: mt9m111: Check write_bridge for timeout"
  media: dvb: Add check on sp8870_readreg return
  Revert "media: dvb: Add check on sp8870_readreg"
  ASoC: cs43130: handle errors in cs43130_probe() properly
  Revert "ASoC: cs43130: fix a NULL pointer dereference"
  libertas: register sysfs groups properly
  Revert "libertas: add checks for the return value of sysfs_create_group"
  dmaengine: qcom_hidma: comment platform_driver_register call
  Revert "dmaengine: qcom_hidma: Check for driver register failure"
  isdn: mISDN: correctly handle ph_info allocation failure in hfcsusb_ph_info
  Revert "isdn: mISDN: Fix potential NULL pointer dereference of kzalloc"
  ath6kl: return error code in ath6kl_wmi_set_roam_lrssi_cmd()
  Revert "ath6kl: return error code in ath6kl_wmi_set_roam_lrssi_cmd()"
  isdn: mISDNinfineon: check/cleanup ioremap failure correctly in setup_io
  Revert "isdn: mISDNinfineon: fix potential NULL pointer dereference"
  Revert "ALSA: usx2y: Fix potential NULL pointer dereference"
  Revert "ALSA: gus: add a check of the status of snd_ctl_add"
  char: hpet: add checks after calling ioremap
  Revert "char: hpet: fix a missing check of ioremap"
  net: caif: remove BUG_ON(dev == NULL) in caif_xmit
  Revert "net/smc: fix a NULL pointer dereference"
  net: fujitsu: fix potential null-ptr-deref
  Revert "net: fujitsu: fix a potential NULL pointer dereference"
  serial: max310x: unregister uart driver in case of failure and abort
  Revert "serial: max310x: pass return value of spi_register_driver"
  Revert "ALSA: sb: fix a missing check of snd_ctl_add"
  Revert "media: usb: gspca: add a missed check for goto_low_power"
  gpio: cadence: Add missing MODULE_DEVICE_TABLE
  platform/x86: hp_accel: Avoid invoking _INI to speed up resume
  perf jevents: Fix getting maximum number of fds
  i2c: sh_mobile: Use new clock calculation formulas for RZ/G2E
  i2c: i801: Don't generate an interrupt on bus reset
  i2c: s3c2410: fix possible NULL pointer deref on read message after write
  net: dsa: sja1105: error out on unsupported PHY mode
  net: dsa: fix a crash if ->get_sset_count() fails
  net: dsa: mt7530: fix VLAN traffic leaks
  spi: spi-fsl-dspi: Fix a resource leak in an error handling path
  tipc: skb_linearize the head skb when reassembling msgs
  tipc: wait and exit until all work queues are done
  Revert "net:tipc: Fix a double free in tipc_sk_mcast_rcv"
  net/mlx4: Fix EEPROM dump support
  net/mlx5e: Fix nullptr in add_vlan_push_action()
  net/mlx5e: Fix multipath lag activation
  drm/meson: fix shutdown crash when component not probed
  NFSv4: Fix v4.0/v4.1 SEEK_DATA return -ENOTSUPP when set NFS_V4_2 config
  NFS: Don't corrupt the value of pg_bytes_written in nfs_do_recoalesce()
  NFS: Fix an Oopsable condition in __nfs_pageio_add_request()
  NFS: fix an incorrect limit in filelayout_decode_layout()
  fs/nfs: Use fatal_signal_pending instead of signal_pending
  Bluetooth: cmtp: fix file refcount when cmtp_attach_device fails
  spi: spi-geni-qcom: Fix use-after-free on unbind
  net: usb: fix memory leak in smsc75xx_bind
  usb: gadget: udc: renesas_usb3: Fix a race in usb3_start_pipen()
  usb: dwc3: gadget: Properly track pending and queued SG
  thermal/drivers/intel: Initialize RW trip to THERMAL_TEMP_INVALID
  USB: serial: pl2303: add device id for ADLINK ND-6530 GC
  USB: serial: ftdi_sio: add IDs for IDS GmbH Products
  USB: serial: option: add Telit LE910-S1 compositions 0x7010, 0x7011
  USB: serial: ti_usb_3410_5052: add startech.com device id
  serial: rp2: use 'request_firmware' instead of 'request_firmware_nowait'
  serial: sh-sci: Fix off-by-one error in FIFO threshold register setting
  serial: tegra: Fix a mask operation that is always true
  USB: usbfs: Don't WARN about excessively large memory allocations
  USB: trancevibrator: fix control-request direction
  serial: 8250_pci: handle FL_NOIRQ board flag
  serial: 8250_pci: Add support for new HPE serial device
  iio: adc: ad7793: Add missing error code in ad7793_setup()
  iio: adc: ad7124: Fix potential overflow due to non sequential channel numbers
  iio: adc: ad7124: Fix missbalanced regulator enable / disable on error.
  iio: adc: ad7768-1: Fix too small buffer passed to iio_push_to_buffers_with_timestamp()
  iio: gyro: fxas21002c: balance runtime power in error path
  staging: iio: cdc: ad7746: avoid overwrite of num_channels
  mei: request autosuspend after sending rx flow control
  thunderbolt: dma_port: Fix NVM read buffer bounds and offset issue
  misc/uss720: fix memory leak in uss720_probe
  serial: core: fix suspicious security_locked_down() call
  Documentation: seccomp: Fix user notification documentation
  kgdb: fix gcc-11 warnings harder
  selftests/gpio: Fix build when source tree is read only
  selftests/gpio: Move include of lib.mk up
  selftests/gpio: Use TEST_GEN_PROGS_EXTENDED
  drm/amdgpu/vcn2.5: add cancel_delayed_work_sync before power gate
  drm/amdgpu/vcn2.0: add cancel_delayed_work_sync before power gate
  drm/amdgpu/vcn1: add cancel_delayed_work_sync before power gate
  dm snapshot: properly fix a crash when an origin has no snapshots
  ath10k: Validate first subframe of A-MSDU before processing the list
  ath10k: Fix TKIP Michael MIC verification for PCIe
  ath10k: drop MPDU which has discard flag set by firmware for SDIO
  ath10k: drop fragments with multicast DA for SDIO
  ath10k: drop fragments with multicast DA for PCIe
  ath10k: add CCMP PN replay protection for fragmented frames for PCIe
  mac80211: extend protection against mixed key and fragment cache attacks
  mac80211: do not accept/forward invalid EAPOL frames
  mac80211: prevent attacks on TKIP/WEP as well
  mac80211: check defrag PN against current frame
  mac80211: add fragment cache to sta_info
  mac80211: drop A-MSDUs on old ciphers
  cfg80211: mitigate A-MSDU aggregation attacks
  mac80211: properly handle A-MSDUs that start with an RFC 1042 header
  mac80211: prevent mixed key and fragment cache attacks
  mac80211: assure all fragments are encrypted
  net: hso: fix control-request directions
  proc: Check /proc/$pid/attr/ writes against file opener
  perf scripts python: exported-sql-viewer.py: Fix warning display
  perf scripts python: exported-sql-viewer.py: Fix Array TypeError
  perf scripts python: exported-sql-viewer.py: Fix copy to clipboard from Top Calls by elapsed Time report
  perf intel-pt: Fix transaction abort handling
  perf intel-pt: Fix sample instruction bytes
  iommu/vt-d: Fix sysfs leak in alloc_iommu()
  NFSv4: Fix a NULL pointer dereference in pnfs_mark_matching_lsegs_return()
  cifs: set server->cipher_type to AES-128-CCM for SMB3.0
  ALSA: usb-audio: scarlett2: Improve driver startup messages
  ALSA: usb-audio: scarlett2: Fix device hang with ehci-pci
  ALSA: hda/realtek: Headphone volume is controlled by Front mixer
  ANDROID: GKI: update .xml file due to merge with `android11-5.4`
  Linux 5.4.123
  NFC: nci: fix memory leak in nci_allocate_device
  perf unwind: Set userdata for all __report_module() paths
  perf unwind: Fix separate debug info files when using elfutils' libdw's unwinder
  usb: dwc3: gadget: Enable suspend events
  bpf: No need to simulate speculative domain for immediates
  bpf: Fix mask direction swap upon off reg sign change
  bpf: Wrap aux data inside bpf_sanitize_info container
  ANDROID: GKI: add thermal_zone_get_slope() to the .xml file
  Linux 5.4.122
  Bluetooth: SMP: Fail if remote and local public keys are identical
  video: hgafb: correctly handle card detect failure during probe
  nvmet: use new ana_log_size instead the old one
  Bluetooth: L2CAP: Fix handling LE modes by L2CAP_OPTIONS
  ext4: fix error handling in ext4_end_enable_verity()
  nvme-multipath: fix double initialization of ANA state
  tty: vt: always invoke vc->vc_sw->con_resize callback
  vt: Fix character height handling with VT_RESIZEX
  vgacon: Record video mode changes with VT_RESIZEX
  video: hgafb: fix potential NULL pointer dereference
  qlcnic: Add null check after calling netdev_alloc_skb
  leds: lp5523: check return value of lp5xx_read and jump to cleanup code
  ics932s401: fix broken handling of errors when word reading fails
  net: rtlwifi: properly check for alloc_workqueue() failure
  scsi: ufs: handle cleanup correctly on devm_reset_control_get error
  net: stmicro: handle clk_prepare() failure during init
  ethernet: sun: niu: fix missing checks of niu_pci_eeprom_read()
  Revert "niu: fix missing checks of niu_pci_eeprom_read"
  Revert "qlcnic: Avoid potential NULL pointer dereference"
  Revert "rtlwifi: fix a potential NULL pointer dereference"
  Revert "media: rcar_drif: fix a memory disclosure"
  cdrom: gdrom: initialize global variable at init time
  cdrom: gdrom: deallocate struct gdrom_unit fields in remove_gdrom
  Revert "gdrom: fix a memory leak bug"
  Revert "scsi: ufs: fix a missing check of devm_reset_control_get"
  Revert "ecryptfs: replace BUG_ON with error handling code"
  Revert "video: imsttfb: fix potential NULL pointer dereferences"
  Revert "hwmon: (lm80) fix a missing check of bus read in lm80 probe"
  Revert "leds: lp5523: fix a missing check of return value of lp55xx_read"
  Revert "net: stmicro: fix a missing check of clk_prepare"
  Revert "video: hgafb: fix potential NULL pointer dereference"
  dm snapshot: fix crash with transient storage and zero chunk size
  xen-pciback: reconfigure also from backend watch handler
  mmc: sdhci-pci-gli: increase 1.8V regulator wait
  drm/amdgpu: update sdma golden setting for Navi12
  drm/amdgpu: update gc golden setting for Navi12
  drm/amdgpu: disable 3DCGCG on picasso/raven1 to avoid compute hang
  Revert "serial: mvebu-uart: Fix to avoid a potential NULL pointer dereference"
  rapidio: handle create_workqueue() failure
  Revert "rapidio: fix a NULL pointer dereference when create_workqueue() fails"
  uio_hv_generic: Fix a memory leak in error handling paths
  ALSA: hda/realtek: Add fixup for HP Spectre x360 15-df0xxx
  ALSA: hda/realtek: Add fixup for HP OMEN laptop
  ALSA: hda/realtek: Fix silent headphone output on ASUS UX430UA
  ALSA: hda/realtek: Add some CLOVE SSIDs of ALC293
  ALSA: hda/realtek: reset eapd coeff to default value for alc287
  ALSA: firewire-lib: fix check for the size of isochronous packet payload
  Revert "ALSA: sb8: add a check for request_region"
  ALSA: hda: fixup headset for ASUS GU502 laptop
  ALSA: bebob/oxfw: fix Kconfig entry for Mackie d.2 Pro
  ALSA: usb-audio: Validate MS endpoint descriptors
  ALSA: firewire-lib: fix calculation for size of IR context payload
  ALSA: dice: fix stream format at middle sampling rate for Alesis iO 26
  ALSA: line6: Fix racy initialization of LINE6 MIDI
  ALSA: intel8x0: Don't update period unless prepared
  ALSA: dice: fix stream format for TC Electronic Konnekt Live at high sampling transfer frequency
  cifs: fix memory leak in smb2_copychunk_range
  btrfs: avoid RCU stalls while running delayed iputs
  locking/mutex: clear MUTEX_FLAGS if wait_list is empty due to signal
  nvmet: seset ns->file when open fails
  ptrace: make ptrace() fail if the tracee changed its pid unexpectedly
  RDMA/uverbs: Fix a NULL vs IS_ERR() bug
  platform/x86: dell-smbios-wmi: Fix oops on rmmod dell_smbios
  platform/mellanox: mlxbf-tmfifo: Fix a memory barrier issue
  RDMA/core: Don't access cm_id after its destruction
  RDMA/mlx5: Recover from fatal event in dual port mode
  scsi: qla2xxx: Fix error return code in qla82xx_write_flash_dword()
  scsi: ufs: core: Increase the usable queue depth
  RDMA/rxe: Clear all QP fields if creation failed
  RDMA/siw: Release xarray entry
  RDMA/siw: Properly check send and receive CQ pointers
  openrisc: Fix a memory leak
  firmware: arm_scpi: Prevent the ternary sign expansion bug
  Linux 5.4.121
  scripts: switch explicitly to Python 3
  tweewide: Fix most Shebang lines
  KVM: arm64: Initialize VCPU mdcr_el2 before loading it
  ipv6: remove extra dev_hold() for fallback tunnels
  ip6_tunnel: sit: proper dev_{hold|put} in ndo_[un]init methods
  sit: proper dev_{hold|put} in ndo_[un]init methods
  ip6_gre: proper dev_{hold|put} in ndo_[un]init methods
  net: stmmac: Do not enable RX FIFO overflow interrupts
  lib: stackdepot: turn depot_lock spinlock to raw_spinlock
  block: reexpand iov_iter after read/write
  ALSA: hda: generic: change the DAC ctl name for LO+SPK or LO+HP
  gpiolib: acpi: Add quirk to ignore EC wakeups on Dell Venue 10 Pro 5055
  drm/amd/display: Fix two cursor duplication when using overlay
  bridge: Fix possible races between assigning rx_handler_data and setting IFF_BRIDGE_PORT bit
  scsi: target: tcmu: Return from tcmu_handle_completions() if cmd_id not found
  ceph: fix fscache invalidation
  scsi: lpfc: Fix illegal memory access on Abort IOCBs
  riscv: Workaround mcount name prior to clang-13
  scripts/recordmcount.pl: Fix RISC-V regex for clang
  ARM: 9075/1: kernel: Fix interrupted SMC calls
  um: Disable CONFIG_GCOV with MODULES
  um: Mark all kernel symbols as local
  Input: silead - add workaround for x86 BIOS-es which bring the chip up in a stuck state
  Input: elants_i2c - do not bind to i2c-hid compatible ACPI instantiated devices
  ACPI / hotplug / PCI: Fix reference count leak in enable_slot()
  ARM: 9066/1: ftrace: pause/unpause function graph tracer in cpu_suspend()
  dmaengine: dw-edma: Fix crash on loading/unloading driver
  PCI: thunder: Fix compile testing
  virtio_net: Do not pull payload in skb->head
  xsk: Simplify detection of empty and full rings
  pinctrl: ingenic: Improve unreachable code generation
  isdn: capi: fix mismatched prototypes
  cxgb4: Fix the -Wmisleading-indentation warning
  usb: sl811-hcd: improve misleading indentation
  kgdb: fix gcc-11 warning on indentation
  x86/msr: Fix wr/rdmsr_safe_regs_on_cpu() prototypes
  ANDROID: GKI: genksyms fixup for efed9a3337e3 ("kyber: fix out of bounds access when * preempted")
  Revert "PM: runtime: Fix unpaired parent child_count for force_resume"
  Revert "mm: fix struct page layout on 32-bit systems"
  Linux 5.4.120
  ASoC: rsnd: check all BUSIF status when error
  nvme: do not try to reconfigure APST when the controller is not live
  clk: exynos7: Mark aclk_fsys1_200 as critical
  netfilter: conntrack: Make global sysctls readonly in non-init netns
  kobject_uevent: remove warning in init_uevent_argv()
  usb: typec: tcpm: Fix error while calculating PPS out values
  ARM: 9027/1: head.S: explicitly map DT even if it lives in the first physical section
  ARM: 9020/1: mm: use correct section size macro to describe the FDT virtual address
  ARM: 9012/1: move device tree mapping out of linear region
  ARM: 9011/1: centralize phys-to-virt conversion of DT/ATAGS address
  f2fs: fix error handling in f2fs_end_enable_verity()
  thermal/core/fair share: Lock the thermal zone while looping over instances
  MIPS: Avoid handcoded DIVU in `__div64_32' altogether
  MIPS: Avoid DIVU in `__div64_32' is result would be zero
  MIPS: Reinstate platform `__div64_32' handler
  FDDI: defxx: Make MMIO the configuration default except for EISA
  mm: fix struct page layout on 32-bit systems
  KVM: x86: Cancel pvclock_gtod_work on module removal
  cdc-wdm: untangle a circular dependency between callback and softint
  iio: tsl2583: Fix division by a zero lux_val
  iio: gyro: mpu3050: Fix reported temperature value
  xhci: Add reset resume quirk for AMD xhci controller.
  xhci: Do not use GFP_KERNEL in (potentially) atomic context
  usb: dwc3: gadget: Return success always for kick transfer in ep queue
  usb: core: hub: fix race condition about TRSMRCY of resume
  usb: dwc2: Fix gadget DMA unmap direction
  usb: xhci: Increase timeout for HC halt
  usb: dwc3: pci: Enable usb2-gadget-lpm-disable for Intel Merrifield
  usb: dwc3: omap: improve extcon initialization
  iomap: fix sub-page uptodate handling
  blk-mq: Swap two calls in blk_mq_exit_queue()
  nbd: Fix NULL pointer in flush_workqueue
  kyber: fix out of bounds access when preempted
  ACPI: scan: Fix a memory leak in an error handling path
  hwmon: (occ) Fix poll rate limiting
  usb: fotg210-hcd: Fix an error message
  iio: proximity: pulsedlight: Fix rumtime PM imbalance on error
  drm/i915: Avoid div-by-zero on gen2
  drm/radeon/dpm: Disable sclk switching on Oland when two 4K 60Hz monitors are connected
  mm/hugetlb: fix F_SEAL_FUTURE_WRITE
  userfaultfd: release page in error path to avoid BUG_ON
  squashfs: fix divide error in calculate_skip()
  hfsplus: prevent corruption in shrinking truncate
  powerpc/64s: Fix crashes when toggling entry flush barrier
  powerpc/64s: Fix crashes when toggling stf barrier
  ARC: mm: PAE: use 40-bit physical page mask
  ARC: entry: fix off-by-one error in syscall number validation
  i40e: Fix PHY type identifiers for 2.5G and 5G adapters
  i40e: fix the restart auto-negotiation after FEC modified
  i40e: Fix use-after-free in i40e_client_subtask()
  netfilter: nftables: avoid overflows in nft_hash_buckets()
  kernel: kexec_file: fix error return code of kexec_calculate_store_digests()
  sched/fair: Fix unfairness caused by missing load decay
  sched: Fix out-of-bound access in uclamp
  can: m_can: m_can_tx_work_queue(): fix tx_skb race condition
  netfilter: nfnetlink_osf: Fix a missing skb_header_pointer() NULL check
  smc: disallow TCP_ULP in smc_setsockopt()
  net: fix nla_strcmp to handle more then one trailing null character
  ksm: fix potential missing rmap_item for stable_node
  mm/migrate.c: fix potential indeterminate pte entry in migrate_vma_insert_page()
  mm/hugeltb: handle the error case in hugetlb_fix_reserve_counts()
  khugepaged: fix wrong result value for trace_mm_collapse_huge_page_isolate()
  drm/radeon: Avoid power table parsing memory leaks
  drm/radeon: Fix off-by-one power_state index heap overwrite
  netfilter: xt_SECMARK: add new revision to fix structure layout
  sctp: fix a SCTP_MIB_CURRESTAB leak in sctp_sf_do_dupcook_b
  ethernet:enic: Fix a use after free bug in enic_hard_start_xmit
  sunrpc: Fix misplaced barrier in call_decode
  RISC-V: Fix error code returned by riscv_hartid_to_cpuid()
  sctp: do asoc update earlier in sctp_sf_do_dupcook_a
  net: hns3: disable phy loopback setting in hclge_mac_start_phy
  net: hns3: use netif_tx_disable to stop the transmit queue
  net: hns3: fix for vxlan gpe tx checksum bug
  net: hns3: add check for HNS3_NIC_STATE_INITED in hns3_reset_notify_up_enet()
  net: hns3: initialize the message content in hclge_get_link_mode()
  net: hns3: fix incorrect configuration for igu_egu_hw_err
  rtc: ds1307: Fix wday settings for rx8130
  ceph: fix inode leak on getattr error in __fh_to_dentry
  rtc: fsl-ftm-alarm: add MODULE_TABLE()
  NFSv4.2 fix handling of sr_eof in SEEK's reply
  pNFS/flexfiles: fix incorrect size check in decode_nfs_fh()
  PCI: endpoint: Fix missing destroy_workqueue()
  NFS: Deal correctly with attribute generation counter overflow
  NFSv4.2: Always flush out writes in nfs42_proc_fallocate()
  rpmsg: qcom_glink_native: fix error return code of qcom_glink_rx_data()
  ARM: 9064/1: hw_breakpoint: Do not directly check the event's overflow_handler hook
  PCI: Release OF node in pci_scan_device()'s error path
  PCI: iproc: Fix return value of iproc_msi_irq_domain_alloc()
  f2fs: fix a redundant call to f2fs_balance_fs if an error occurs
  thermal: thermal_of: Fix error return code of thermal_of_populate_bind_params()
  ASoC: rt286: Make RT286_SET_GPIO_* readable and writable
  ia64: module: fix symbolizer crash on fdescr
  bnxt_en: Add PCI IDs for Hyper-V VF devices.
  net: ethernet: mtk_eth_soc: fix RX VLAN offload
  iavf: remove duplicate free resources calls
  powerpc/iommu: Annotate nested lock for lockdep
  qtnfmac: Fix possible buffer overflow in qtnf_event_handle_external_auth
  wl3501_cs: Fix out-of-bounds warnings in wl3501_mgmt_join
  wl3501_cs: Fix out-of-bounds warnings in wl3501_send_pkt
  drm/amd/display: fixed divide by zero kernel crash during dsc enablement
  powerpc/pseries: Stop calling printk in rtas_stop_self()
  samples/bpf: Fix broken tracex1 due to kprobe argument change
  net: sched: tapr: prevent cycle_time == 0 in parse_taprio_schedule
  ethtool: ioctl: Fix out-of-bounds warning in store_link_ksettings_for_user()
  ASoC: rt286: Generalize support for ALC3263 codec
  powerpc/smp: Set numa node before updating mask
  flow_dissector: Fix out-of-bounds warning in __skb_flow_bpf_to_target()
  sctp: Fix out-of-bounds warning in sctp_process_asconf_param()
  ALSA: hda/hdmi: fix race in handling acomp ELD notification at resume
  kconfig: nconf: stop endless search loops
  selftests: Set CC to clang in lib.mk if LLVM is set
  drm/amd/display: Force vsync flip when reconfiguring MPCC
  iommu/amd: Remove performance counter pre-initialization test
  Revert "iommu/amd: Fix performance counter initialization"
  ASoC: rsnd: call rsnd_ssi_master_clk_start() from rsnd_ssi_init()
  cuse: prevent clone
  mt76: mt76x0: disable GTK offloading
  pinctrl: samsung: use 'int' for register masks in Exynos
  mac80211: clear the beacon's CRC after channel switch
  i2c: Add I2C_AQ_NO_REP_START adapter quirk
  ASoC: Intel: bytcr_rt5640: Add quirk for the Chuwi Hi8 tablet
  ip6_vti: proper dev_{hold|put} in ndo_[un]init methods
  Bluetooth: check for zapped sk before connecting
  net: bridge: when suppression is enabled exclude RARP packets
  Bluetooth: initialize skb_queue_head at l2cap_chan_create()
  Bluetooth: Set CONF_NOT_COMPLETE as l2cap_chan default
  ALSA: bebob: enable to deliver MIDI messages for multiple ports
  ALSA: rme9652: don't disable if not enabled
  ALSA: hdspm: don't disable if not enabled
  ALSA: hdsp: don't disable if not enabled
  i2c: bail out early when RDWR parameters are wrong
  ASoC: rsnd: core: Check convert rate in rsnd_hw_params
  net: stmmac: Set FIFO sizes for ipq806x
  ASoC: Intel: bytcr_rt5640: Enable jack-detect support on Asus T100TAF
  tipc: convert dest node's address to network order
  fs: dlm: fix debugfs dump
  PM: runtime: Fix unpaired parent child_count for force_resume
  KVM: x86/mmu: Remove the defunct update_pte() paging hook
  tpm, tpm_tis: Reserve locality in tpm_tis_resume()
  tpm, tpm_tis: Extend locality handling to TPM2 in tpm_tis_gen_interrupt()
  tpm: fix error return code in tpm2_get_cc_attrs_tbl()
  Revert "smp: Fix smp_call_function_single_async prototype"
  Revert "usb: typec: tcpm: Address incorrect values of tcpm psy for fixed supply"
  Revert "usb: typec: tcpm: Address incorrect values of tcpm psy for pps supply"
  Revert "usb: typec: tcpm: update power supply once partner accepts"
  Revert "spi: Fix use-after-free with devm_spi_alloc_*"
  Linux 5.4.119
  Revert "fdt: Properly handle "no-map" field in the memory region"
  Revert "of/fdt: Make sure no-map does not remove already reserved regions"
  sctp: delay auto_asconf init until binding the first addr
  Revert "net/sctp: fix race condition in sctp_destroy_sock"
  smp: Fix smp_call_function_single_async prototype
  net: Only allow init netns to set default tcp cong to a restricted algo
  mm/memory-failure: unnecessary amount of unmapping
  mm/sparse: add the missing sparse_buffer_fini() in error branch
  kfifo: fix ternary sign extension bugs
  net:nfc:digital: Fix a double free in digital_tg_recv_dep_req
  net: bridge: mcast: fix broken length + header check for MRDv6 Adv.
  RDMA/bnxt_re: Fix a double free in bnxt_qplib_alloc_res
  RDMA/siw: Fix a use after free in siw_alloc_mr
  net:emac/emac-mac: Fix a use after free in emac_mac_tx_buf_send
  bnxt_en: Fix RX consumer index logic in the error path.
  selftests: net: mirror_gre_vlan_bridge_1q: Make an FDB entry static
  net: geneve: modify IP header check in geneve6_xmit_skb and geneve_xmit_skb
  arm64: dts: uniphier: Change phy-mode to RGMII-ID to enable delay pins for RTL8211E
  ARM: dts: uniphier: Change phy-mode to RGMII-ID to enable delay pins for RTL8211E
  bnxt_en: fix ternary sign extension bug in bnxt_show_temp()
  powerpc/52xx: Fix an invalid ASM expression ('addi' used instead of 'add')
  ath10k: Fix ath10k_wmi_tlv_op_pull_peer_stats_info() unlock without lock
  ath9k: Fix error check in ath9k_hw_read_revisions() for PCI devices
  net: phy: intel-xway: enable integrated led functions
  net: renesas: ravb: Fix a stuck issue when a lot of frames are received
  net: davinci_emac: Fix incorrect masking of tx and rx error channel
  ALSA: usb: midi: don't return -ENOMEM when usb_urb_ep_type_check fails
  RDMA/i40iw: Fix error unwinding when i40iw_hmc_sd_one fails
  RDMA/cxgb4: add missing qpid increment
  gro: fix napi_gro_frags() Fast GRO breakage due to IP alignment check
  vsock/vmci: log once the failed queue pair allocation
  mwl8k: Fix a double Free in mwl8k_probe_hw
  i2c: sh7760: fix IRQ error path
  rtlwifi: 8821ae: upgrade PHY and RF parameters
  powerpc/pseries: extract host bridge from pci_bus prior to bus removal
  MIPS: pci-legacy: stop using of_pci_range_to_resource
  perf beauty: Fix fsconfig generator
  drm/i915/gvt: Fix error code in intel_gvt_init_device()
  ASoC: ak5558: correct reset polarity
  powerpc/xive: Fix xmon command "dxi"
  i2c: sh7760: add IRQ check
  i2c: jz4780: add IRQ check
  i2c: emev2: add IRQ check
  i2c: cadence: add IRQ check
  i2c: sprd: fix reference leak when pm_runtime_get_sync fails
  i2c: omap: fix reference leak when pm_runtime_get_sync fails
  i2c: imx-lpi2c: fix reference leak when pm_runtime_get_sync fails
  i2c: img-scb: fix reference leak when pm_runtime_get_sync fails
  RDMA/srpt: Fix error return code in srpt_cm_req_recv()
  net: thunderx: Fix unintentional sign extension issue
  cxgb4: Fix unintentional sign extension issues
  IB/hfi1: Fix error return code in parse_platform_config()
  RDMA/qedr: Fix error return code in qedr_iw_connect()
  KVM: PPC: Book3S HV P9: Restore host CTRL SPR after guest exit
  mt7601u: fix always true expression
  mac80211: bail out if cipher schemes are invalid
  powerpc: iommu: fix build when neither PCI or IBMVIO is set
  powerpc/perf: Fix PMU constraint check for EBB events
  powerpc/64s: Fix pte update for kernel memory on radix
  liquidio: Fix unintented sign extension of a left shift of a u16
  ASoC: simple-card: fix possible uninitialized single_cpu local variable
  ALSA: usb-audio: Add error checks for usb_driver_claim_interface() calls
  mips: bmips: fix syscon-reboot nodes
  net: hns3: Limiting the scope of vector_ring_chain variable
  nfc: pn533: prevent potential memory corruption
  bug: Remove redundant condition check in report_bug
  ALSA: core: remove redundant spin_lock pair in snd_card_disconnect
  powerpc: Fix HAVE_HARDLOCKUP_DETECTOR_ARCH build configuration
  inet: use bigger hash table for IP ID generation
  powerpc/prom: Mark identical_pvr_fixup as __init
  powerpc/fadump: Mark fadump_calculate_reserve_size as __init
  net: lapbether: Prevent racing when checking whether the netif is running
  perf symbols: Fix dso__fprintf_symbols_by_name() to return the number of printed chars
  HID: plantronics: Workaround for double volume key presses
  drivers/block/null_blk/main: Fix a double free in null_init.
  sched/debug: Fix cgroup_path[] serialization
  x86/events/amd/iommu: Fix sysfs type mismatch
  HSI: core: fix resource leaks in hsi_add_client_from_dt()
  nvme-pci: don't simple map sgl when sgls are disabled
  mfd: stm32-timers: Avoid clearing auto reload register
  scsi: ibmvfc: Fix invalid state machine BUG_ON()
  scsi: sni_53c710: Add IRQ check
  scsi: sun3x_esp: Add IRQ check
  scsi: jazz_esp: Add IRQ check
  scsi: hisi_sas: Fix IRQ checks
  clk: uniphier: Fix potential infinite loop
  clk: qcom: a53-pll: Add missing MODULE_DEVICE_TABLE
  clk: zynqmp: move zynqmp_pll_set_mode out of round_rate callback
  vfio/mdev: Do not allow a mdev_type to have a NULL parent pointer
  media: v4l2-ctrls.c: fix race condition in hdl->requests list
  nvme: retrigger ANA log update if group descriptor isn't found
  nvmet-tcp: fix incorrect locking in state_change sk callback
  nvme-tcp: block BH in sk state_change sk callback
  ata: libahci_platform: fix IRQ check
  sata_mv: add IRQ checks
  pata_ipx4xx_cf: fix IRQ check
  pata_arasan_cf: fix IRQ check
  x86/kprobes: Fix to check non boostable prefixes correctly
  drm/amdkfd: fix build error with AMD_IOMMU_V2=m
  media: m88rs6000t: avoid potential out-of-bounds reads on arrays
  media: platform: sunxi: sun6i-csi: fix error return code of sun6i_video_start_streaming()
  media: aspeed: fix clock handling logic
  media: omap4iss: return error code when omap4iss_get() failed
  media: vivid: fix assignment of dev->fbuf_out_flags
  soc: aspeed: fix a ternary sign expansion bug
  xen-blkback: fix compatibility bug with single page rings
  ttyprintk: Add TTY hangup callback.
  usb: dwc2: Fix hibernation between host and device modes.
  usb: dwc2: Fix host mode hibernation exit with remote wakeup flow.
  Drivers: hv: vmbus: Increase wait time for VMbus unload
  x86/platform/uv: Fix !KEXEC build failure
  platform/x86: pmc_atom: Match all Beckhoff Automation baytrail boards with critclk_systems DMI table
  usbip: vudc: fix missing unlock on error in usbip_sockfd_store()
  node: fix device cleanups in error handling code
  firmware: qcom-scm: Fix QCOM_SCM configuration
  serial: core: return early on unsupported ioctls
  tty: fix return value for unsupported ioctls
  tty: actually undefine superseded ASYNC flags
  USB: cdc-acm: fix TIOCGSERIAL implementation
  USB: cdc-acm: fix unprivileged TIOCCSERIAL
  usb: gadget: r8a66597: Add missing null check on return from platform_get_resource
  spi: fsl-lpspi: Fix PM reference leak in lpspi_prepare_xfer_hardware()
  cpufreq: armada-37xx: Fix determining base CPU frequency
  cpufreq: armada-37xx: Fix driver cleanup when registration failed
  clk: mvebu: armada-37xx-periph: Fix workaround for switching from L1 to L0
  clk: mvebu: armada-37xx-periph: Fix switching CPU freq from 250 Mhz to 1 GHz
  cpufreq: armada-37xx: Fix the AVS value for load L1
  clk: mvebu: armada-37xx-periph: remove .set_parent method for CPU PM clock
  cpufreq: armada-37xx: Fix setting TBG parent for load levels
  crypto: qat - Fix a double free in adf_create_ring
  ACPI: CPPC: Replace cppc_attr with kobj_attribute
  soc: qcom: mdt_loader: Detect truncated read of segments
  soc: qcom: mdt_loader: Validate that p_filesz < p_memsz
  spi: Fix use-after-free with devm_spi_alloc_*
  PM / devfreq: Use more accurate returned new_freq as resume_freq
  staging: greybus: uart: fix unprivileged TIOCCSERIAL
  staging: rtl8192u: Fix potential infinite loop
  irqchip/gic-v3: Fix OF_BAD_ADDR error handling
  mtd: rawnand: gpmi: Fix a double free in gpmi_nand_init
  m68k: mvme147,mvme16x: Don't wipe PCC timer config bits
  soundwire: stream: fix memory leak in stream config error path
  memory: pl353: fix mask of ECC page_size config register
  USB: gadget: udc: fix wrong pointer passed to IS_ERR() and PTR_ERR()
  usb: gadget: aspeed: fix dma map failure
  crypto: qat - fix error path in adf_isr_resource_alloc()
  phy: marvell: ARMADA375_USBCLUSTER_PHY should not default to y, unconditionally
  soundwire: bus: Fix device found flag correctly
  bus: qcom: Put child node before return
  mtd: require write permissions for locking and badblock ioctls
  fotg210-udc: Complete OUT requests on short packets
  fotg210-udc: Don't DMA more than the buffer can take
  fotg210-udc: Mask GRP2 interrupts we don't handle
  fotg210-udc: Remove a dubious condition leading to fotg210_done
  fotg210-udc: Fix EP0 IN requests bigger than two packets
  fotg210-udc: Fix DMA on EP0 for length > max packet size
  crypto: qat - ADF_STATUS_PF_RUNNING should be set after adf_dev_init
  crypto: qat - don't release uninitialized resources
  usb: gadget: pch_udc: Check for DMA mapping error
  usb: gadget: pch_udc: Check if driver is present before calling ->setup()
  usb: gadget: pch_udc: Replace cpu_to_le32() by lower_32_bits()
  x86/microcode: Check for offline CPUs before requesting new microcode
  arm64: dts: renesas: r8a77980: Fix vin4-7 endpoint binding
  spi: stm32: drop devres version of spi_register_master
  arm64: dts: qcom: sm8150: fix number of pins in 'gpio-ranges'
  mtd: rawnand: qcom: Return actual error code instead of -ENODEV
  mtd: Handle possible -EPROBE_DEFER from parse_mtd_partitions()
  mtd: rawnand: brcmnand: fix OOB R/W with Hamming ECC
  mtd: rawnand: fsmc: Fix error code in fsmc_nand_probe()
  regmap: set debugfs_name to NULL after it is freed
  usb: typec: tcpci: Check ROLE_CONTROL while interpreting CC_STATUS
  serial: stm32: fix tx_empty condition
  serial: stm32: fix incorrect characters on console
  ARM: dts: exynos: correct PMIC interrupt trigger level on Snow
  ARM: dts: exynos: correct PMIC interrupt trigger level on SMDK5250
  ARM: dts: exynos: correct PMIC interrupt trigger level on Odroid X/U3 family
  ARM: dts: exynos: correct PMIC interrupt trigger level on Midas family
  ARM: dts: exynos: correct MUIC interrupt trigger level on Midas family
  ARM: dts: exynos: correct fuel gauge interrupt trigger level on Midas family
  memory: gpmc: fix out of bounds read and dereference on gpmc_cs[]
  usb: gadget: pch_udc: Revert d3cb25a121 completely
  ovl: fix missing revert_creds() on error path
  Revert "i3c master: fix missing destroy_workqueue() on error in i3c_master_register"
  KVM: Stop looking for coalesced MMIO zones if the bus is destroyed
  KVM: nVMX: Truncate bits 63:32 of VMCS field on nested check in !64-bit
  KVM: s390: split kvm_s390_real_to_abs
  s390: fix detection of vector enhancements facility 1 vs. vector packed decimal facility
  KVM: s390: fix guarded storage control register handling
  KVM: s390: split kvm_s390_logical_to_effective
  ALSA: hda/realtek: ALC285 Thinkpad jack pin quirk is unreachable
  ALSA: hda/realtek: Remove redundant entry for ALC861 Haier/Uniwill devices
  ALSA: hda/realtek: Re-order ALC662 quirk table entries
  ALSA: hda/realtek: Re-order remaining ALC269 quirk table entries
  ALSA: hda/realtek: Re-order ALC269 Lenovo quirk table entries
  ALSA: hda/realtek: Re-order ALC269 Sony quirk table entries
  ALSA: hda/realtek: Re-order ALC269 ASUS quirk table entries
  ALSA: hda/realtek: Re-order ALC269 Dell quirk table entries
  ALSA: hda/realtek: Re-order ALC269 Acer quirk table entries
  ALSA: hda/realtek: Re-order ALC269 HP quirk table entries
  ALSA: hda/realtek: Re-order ALC882 Clevo quirk table entries
  ALSA: hda/realtek: Re-order ALC882 Sony quirk table entries
  ALSA: hda/realtek: Re-order ALC882 Acer quirk table entries
  drm/amd/display: Reject non-zero src_y and src_x for video planes
  drm/radeon: fix copy of uninitialized variable back to userspace
  drm/panfrost: Don't try to map pages that are already mapped
  drm/panfrost: Clear MMU irqs before handling the fault
  rtw88: Fix array overrun in rtw_get_tx_power_params()
  cfg80211: scan: drop entry from hidden_list on overflow
  ipw2x00: potential buffer overflow in libipw_wx_set_encodeext()
  md: Fix missing unused status line of /proc/mdstat
  md: md_open returns -EBUSY when entering racing area
  md: factor out a mddev_find_locked helper from mddev_find
  md: split mddev_find
  md-cluster: fix use-after-free issue when removing rdev
  md/bitmap: wait for external bitmap writes to complete during tear down
  misc: vmw_vmci: explicitly initialize vmci_datagram payload
  misc: vmw_vmci: explicitly initialize vmci_notify_bm_set_msg struct
  misc: lis3lv02d: Fix false-positive WARN on various HP models
  iio:accel:adis16201: Fix wrong axis assignment that prevents loading
  PCI: Allow VPD access for QLogic ISP2722
  FDDI: defxx: Bail out gracefully with unassigned PCI resource for CSR
  MIPS: pci-rt2880: fix slot 0 configuration
  MIPS: pci-mt7620: fix PLL lock check
  ASoC: Intel: kbl_da7219_max98927: Fix kabylake_ssp_fixup function
  ASoC: samsung: tm2_wm5110: check of of_parse return value
  usb: xhci-mtk: improve bandwidth scheduling with TT
  usb: xhci-mtk: remove or operator for setting schedule parameters
  usb: typec: tcpm: update power supply once partner accepts
  usb: typec: tcpm: Address incorrect values of tcpm psy for pps supply
  usb: typec: tcpm: Address incorrect values of tcpm psy for fixed supply
  staging: fwserial: fix TIOCSSERIAL permission check
  tty: moxa: fix TIOCSSERIAL permission check
  staging: fwserial: fix TIOCSSERIAL jiffies conversions
  USB: serial: ti_usb_3410_5052: fix TIOCSSERIAL permission check
  staging: greybus: uart: fix TIOCSSERIAL jiffies conversions
  USB: serial: usb_wwan: fix TIOCSSERIAL jiffies conversions
  tty: amiserial: fix TIOCSSERIAL permission check
  tty: moxa: fix TIOCSSERIAL jiffies conversions
  Revert "USB: cdc-acm: fix rounding error in TIOCSSERIAL"
  net/nfc: fix use-after-free llcp_sock_bind/connect
  bluetooth: eliminate the potential race condition when removing the HCI controller
  hsr: use netdev_err() instead of WARN_ONCE()
  Bluetooth: verify AMP hci_chan before amp_destroy
  ANDROID: GKI: restore a part of "struct mmc_host"
  Revert "mmc: block: Issue a cache flush only when it's enabled"
  Linux 5.4.118
  dm rq: fix double free of blk_mq_tag_set in dev remove after table load fails
  dm integrity: fix missing goto in bitmap_flush_interval error handling
  dm space map common: fix division bug in sm_ll_find_free_block()
  dm persistent data: packed struct should have an aligned() attribute too
  tracing: Restructure trace_clock_global() to never block
  tracing: Map all PIDs to command lines
  rsi: Use resume_noirq for SDIO
  tty: fix memory leak in vc_deallocate
  usb: dwc2: Fix session request interrupt handler
  usb: dwc3: gadget: Fix START_TRANSFER link state check
  usb: gadget/function/f_fs string table fix for multiple languages
  usb: gadget: Fix double free of device descriptor pointers
  usb: gadget: dummy_hcd: fix gpf in gadget_setup
  media: staging/intel-ipu3: Fix race condition during set_fmt
  media: staging/intel-ipu3: Fix set_fmt error handling
  media: staging/intel-ipu3: Fix memory leak in imu_fmt
  media: dvb-usb: Fix memory leak at error in dvb_usb_device_init()
  media: dvb-usb: Fix use-after-free access
  media: dvbdev: Fix memory leak in dvb_media_device_free()
  ext4: fix error code in ext4_commit_super
  ext4: do not set SB_ACTIVE in ext4_orphan_cleanup()
  ext4: fix check to prevent false positive report of incorrect used inodes
  kbuild: update config_data.gz only when the content of .config is changed
  x86/cpu: Initialize MSR_TSC_AUX if RDTSCP *or* RDPID is supported
  Revert 337f13046f ("futex: Allow FUTEX_CLOCK_REALTIME with FUTEX_WAIT op")
  jffs2: check the validity of dstlen in jffs2_zlib_compress()
  Fix misc new gcc warnings
  security: commoncap: fix -Wstringop-overread warning
  fuse: fix write deadlock
  dm raid: fix inconclusive reshape layout on fast raid4/5/6 table reload sequences
  md/raid1: properly indicate failure when ending a failed write request
  crypto: rng - fix crypto_rng_reset() refcounting when !CRYPTO_STATS
  tpm: vtpm_proxy: Avoid reading host log when using a virtual device
  tpm: efi: Use local variable for calculating final log size
  intel_th: pci: Add Alder Lake-M support
  powerpc: fix EDEADLOCK redefinition error in uapi/asm/errno.h
  powerpc/eeh: Fix EEH handling for hugepages in ioremap space.
  jffs2: Fix kasan slab-out-of-bounds problem
  Input: ili210x - add missing negation for touch indication on ili210x
  NFSv4: Don't discard segments marked for return in _pnfs_return_layout()
  NFS: Don't discard pNFS layout segments that are marked for return
  ACPI: GTDT: Don't corrupt interrupt mappings on watchdow probe failure
  openvswitch: fix stack OOB read while fragmenting IPv4 packets
  mlxsw: spectrum_mr: Update egress RIF list before route's action
  f2fs: fix to avoid out-of-bounds memory access
  ubifs: Only check replay with inode type to judge if inode linked
  virtiofs: fix memory leak in virtio_fs_probe()
  Makefile: Move -Wno-unused-but-set-variable out of GCC only block
  arm64/vdso: Discard .note.gnu.property sections in vDSO
  btrfs: fix race when picking most recent mod log operation for an old root
  ALSA: hda/realtek: Add quirk for Intel Clevo PCx0Dx
  ALSA: hda/realtek: fix static noise on ALC285 Lenovo laptops
  ALSA: hda/realtek: fix mic boost on Intel NUC 8
  ALSA: hda/realtek: GA503 use same quirks as GA401
  ALSA: usb-audio: Add dB range mapping for Sennheiser Communications Headset PC 8
  ALSA: usb-audio: More constifications
  ALSA: usb-audio: Explicitly set up the clock selector
  ALSA: sb: Fix two use after free in snd_sb_qsound_build
  ALSA: hda/conexant: Re-order CX5066 quirk table entries
  ALSA: emu8000: Fix a use after free in snd_emu8000_create_mixer
  s390/archrandom: add parameter check for s390_arch_random_generate
  scsi: libfc: Fix a format specifier
  mfd: arizona: Fix rumtime PM imbalance on error
  scsi: lpfc: Remove unsupported mbox PORT_CAPABILITIES logic
  scsi: lpfc: Fix error handling for mailboxes completed in MBX_POLL mode
  scsi: lpfc: Fix crash when a REG_RPI mailbox fails triggering a LOGO response
  drm/amdgpu: fix NULL pointer dereference
  amdgpu: avoid incorrect %hu format string
  drm/amdkfd: Fix cat debugfs hang_hws file causes system crash bug
  drm/msm/mdp5: Do not multiply vclk line count by 100
  drm/msm/mdp5: Configure PP_SYNC_HEIGHT to double the vtotal
  sched/fair: Ignore percpu threads for imbalance pulls
  media: gscpa/stv06xx: fix memory leak
  media: dvb-usb: fix memory leak in dvb_usb_adapter_init
  media: platform: sti: Fix runtime PM imbalance in regs_show
  media: i2c: adv7842: fix possible use-after-free in adv7842_remove()
  media: i2c: tda1997: Fix possible use-after-free in tda1997x_remove()
  media: i2c: adv7511-v4l2: fix possible use-after-free in adv7511_remove()
  media: adv7604: fix possible use-after-free in adv76xx_remove()
  media: tc358743: fix possible use-after-free in tc358743_remove()
  power: supply: s3c_adc_battery: fix possible use-after-free in s3c_adc_bat_remove()
  power: supply: generic-adc-battery: fix possible use-after-free in gab_remove()
  clk: socfpga: arria10: Fix memory leak of socfpga_clk on error return
  media: vivid: update EDID
  media: em28xx: fix memory leak
  scsi: scsi_dh_alua: Remove check for ASC 24h in alua_rtpg()
  scsi: smartpqi: Add new PCI IDs
  scsi: smartpqi: Correct request leakage during reset operations
  ata: ahci: Disable SXS for Hisilicon Kunpeng920
  mmc: sdhci-pci: Add PCI IDs for Intel LKF
  scsi: qla2xxx: Fix use after free in bsg
  drm/vkms: fix misuse of WARN_ON
  scsi: qla2xxx: Always check the return value of qla24xx_get_isp_stats()
  drm/amd/display: fix dml prefetch validation
  drm/amd/display: Fix UBSAN warning for not a valid value for type '_Bool'
  drm/amdgpu : Fix asic reset regression issue introduce by 8f211fe8ac7c4f
  drm/amdkfd: Fix UBSAN shift-out-of-bounds warning
  drm/amdgpu: mask the xgmi number of hops reported from psp to kfd
  power: supply: Use IRQF_ONESHOT
  media: gspca/sq905.c: fix uninitialized variable
  media: media/saa7164: fix saa7164_encoder_register() memory leak bugs
  extcon: arizona: Fix various races on driver unbind
  extcon: arizona: Fix some issues when HPDET IRQ fires after the jack has been unplugged
  power: supply: bq27xxx: fix power_avg for newer ICs
  media: imx: capture: Return -EPIPE from __capture_legacy_try_fmt()
  media: drivers: media: pci: sta2x11: fix Kconfig dependency on GPIOLIB
  media: ite-cir: check for receive overflow
  scsi: target: pscsi: Fix warning in pscsi_complete_cmd()
  scsi: lpfc: Fix pt2pt connection does not recover after LOGO
  scsi: lpfc: Fix incorrect dbde assignment when building target abts wqe
  drm/amd/display: Don't optimize bandwidth before disabling planes
  drm/amd/display: Check for DSC support instead of ASIC revision
  drm/qxl: release shadow on shutdown
  drm: Added orientation quirk for OneGX1 Pro
  btrfs: convert logic BUG_ON()'s in replace_path to ASSERT()'s
  platform/x86: intel_pmc_core: Don't use global pmcdev in quirks
  crypto: omap-aes - Fix PM reference leak on omap-aes.c
  crypto: stm32/cryp - Fix PM reference leak on stm32-cryp.c
  crypto: stm32/hash - Fix PM reference leak on stm32-hash.c
  phy: phy-twl4030-usb: Fix possible use-after-free in twl4030_usb_remove()
  intel_th: Consistency and off-by-one fix
  tty: n_gsm: check error while registering tty devices
  usb: core: hub: Fix PM reference leak in usb_port_resume()
  usb: musb: fix PM reference leak in musb_irq_work()
  spi: qup: fix PM reference leak in spi_qup_remove()
  spi: omap-100k: Fix reference leak to master
  spi: dln2: Fix reference leak to master
  xhci: fix potential array out of bounds with several interrupters
  xhci: check control context is valid before dereferencing it.
  usb: xhci-mtk: support quirk to disable usb2 lpm
  perf/arm_pmu_platform: Fix error handling
  tee: optee: do not check memref size on return from Secure World
  x86/build: Propagate $(CLANG_FLAGS) to $(REALMODE_FLAGS)
  PCI: PM: Do not read power state in pci_enable_device_flags()
  usb: xhci: Fix port minor revision
  usb: dwc3: gadget: Ignore EP queue requests during bus reset
  usb: gadget: f_uac1: validate input parameters
  usb: gadget: f_uac2: validate input parameters
  genirq/matrix: Prevent allocation counter corruption
  usb: webcam: Invalid size of Processing Unit Descriptor
  usb: gadget: uvc: add bInterval checking for HS mode
  crypto: qat - fix unmap invalid dma address
  crypto: api - check for ERR pointers in crypto_destroy_tfm()
  spi: ath79: remove spi-master setup and cleanup assignment
  spi: ath79: always call chipselect function
  staging: wimax/i2400m: fix byte-order issue
  bus: ti-sysc: Probe for l4_wkup and l4_cfg interconnect devices first
  fbdev: zero-fill colormap in fbcmap.c
  posix-timers: Preserve return value in clock_adjtime32()
  intel_th: pci: Add Rocket Lake CPU support
  btrfs: fix metadata extent leak after failure to create subvolume
  cifs: Return correct error code from smb2_get_enc_key
  irqchip/gic-v3: Do not enable irqs when handling spurious interrups
  modules: inherit TAINT_PROPRIETARY_MODULE
  modules: return licensing information from find_symbol
  modules: rename the licence field in struct symsearch to license
  modules: unexport __module_address
  modules: unexport __module_text_address
  modules: mark each_symbol_section static
  modules: mark find_symbol static
  modules: mark ref_module static
  mmc: core: Fix hanging on I/O during system suspend for removable cards
  mmc: core: Set read only for SD cards with permanent write protect bit
  mmc: core: Do a power cycle when the CMD11 fails
  mmc: block: Issue a cache flush only when it's enabled
  mmc: block: Update ext_csd.cache_ctrl if it was written
  mmc: sdhci-pci: Fix initialization of some SD cards for Intel BYT-based controllers
  mmc: sdhci: Check for reset prior to DMA address unmap
  mmc: uniphier-sd: Fix a resource leak in the remove function
  mmc: uniphier-sd: Fix an error handling path in uniphier_sd_probe()
  scsi: mpt3sas: Block PCI config access from userspace during reset
  scsi: qla2xxx: Fix crash in qla2xxx_mqueuecommand()
  spi: spi-ti-qspi: Free DMA resources
  erofs: add unsupported inode i_format check
  mtd: rawnand: atmel: Update ecc_stats.corrected counter
  mtd: spinand: core: add missing MODULE_DEVICE_TABLE()
  ecryptfs: fix kernel panic with null dev_name
  arm64: dts: mt8173: fix property typo of 'phys' in dsi node
  arm64: dts: marvell: armada-37xx: add syscon compatible to NB clk node
  ARM: 9056/1: decompressor: fix BSS size calculation for LLVM ld.lld
  ftrace: Handle commands when closing set_ftrace_filter file
  ACPI: custom_method: fix a possible memory leak
  ACPI: custom_method: fix potential use-after-free issue
  s390/disassembler: increase ebpf disasm buffer size
  ANDROID: GKI: Update the .xml file after android11-5.4 merge
  Linux 5.4.117
  vfio: Depend on MMU
  perf/core: Fix unconditional security_locked_down() call
  ovl: allow upperdir inside lowerdir
  scsi: ufs: Unlock on a couple error paths
  platform/x86: thinkpad_acpi: Correct thermal sensor allocation
  USB: Add reset-resume quirk for WD19's Realtek Hub
  USB: Add LPM quirk for Lenovo ThinkPad USB-C Dock Gen2 Ethernet
  ALSA: usb-audio: Add MIDI quirk for Vox ToneLab EX
  perf ftrace: Fix access to pid in array when setting a pid filter
  perf data: Fix error return code in perf_data__create_dir()
  iwlwifi: Fix softirq/hardirq disabling in iwl_pcie_gen2_enqueue_hcmd()
  avoid __memcat_p link failure
  bpf: Fix leakage of uninitialized bpf stack under speculation
  bpf: Fix masking negation logic upon negative dst register
  iwlwifi: Fix softirq/hardirq disabling in iwl_pcie_enqueue_hcmd()
  igb: Enable RSS for Intel I211 Ethernet Controller
  net: usb: ax88179_178a: initialize local variables before use
  ACPI: x86: Call acpi_boot_table_init() after acpi_table_upgrade()
  ACPI: tables: x86: Reserve memory occupied by ACPI tables
  mips: Do not include hi and lo in clobber list for R6
  Linux 5.4.116
  bpf: Update selftests to reflect new error states
  bpf: Tighten speculative pointer arithmetic mask
  bpf: Move sanitize_val_alu out of op switch
  bpf: Refactor and streamline bounds check into helper
  bpf: Improve verifier error messages for users
  bpf: Rework ptr_limit into alu_limit and add common error path
  bpf: Ensure off_reg has no mixed signed bounds for all types
  bpf: Move off_reg into sanitize_ptr_alu
  Linux 5.4.115
  USB: CDC-ACM: fix poison/unpoison imbalance
  net: hso: fix NULL-deref on disconnect regression
  x86/crash: Fix crash_setup_memmap_entries() out-of-bounds access
  ia64: tools: remove duplicate definition of ia64_mf() on ia64
  ia64: fix discontig.c section mismatches
  csky: change a Kconfig symbol name to fix e1000 build error
  cavium/liquidio: Fix duplicate argument
  xen-netback: Check for hotplug-status existence before watching
  s390/entry: save the caller of psw_idle
  net: geneve: check skb is large enough for IPv4/IPv6 header
  ARM: dts: Fix swapped mmc order for omap3
  HID: wacom: Assign boolean values to a bool variable
  HID: alps: fix error return code in alps_input_configured()
  HID: google: add don USB id
  perf auxtrace: Fix potential NULL pointer dereference
  perf/x86/kvm: Fix Broadwell Xeon stepping in isolation_ucodes[]
  perf/x86/intel/uncore: Remove uncore extra PCI dev HSWEP_PCI_PCU_3
  locking/qrwlock: Fix ordering in queued_write_lock_slowpath()
  arm64: dts: allwinner: Revert SD card CD GPIO for Pine64-LTS
  pinctrl: lewisburg: Update number of pins in community
  gpio: omap: Save and restore sysconfig
  s390/ptrace: return -ENOSYS when invalid syscall is supplied
  ANDROID: clang: update to 12.0.5
  Linux 5.4.114
  net: phy: marvell: fix detection of PHY on Topaz switches
  ARM: 9071/1: uprobes: Don't hook on thumb instructions
  r8169: don't advertise pause in jumbo mode
  r8169: tweak max read request size for newer chips also in jumbo mtu mode
  r8169: improve rtl_jumbo_config
  r8169: fix performance regression related to PCIe max read request size
  r8169: simplify setting PCI_EXP_DEVCTL_NOSNOOP_EN
  r8169: remove fiddling with the PCIe max read request size
  arm64: dts: allwinner: Fix SD card CD GPIO for SOPine systems
  ARM: footbridge: fix PCI interrupt mapping
  gro: ensure frag0 meets IP header alignment
  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
  i40e: fix the panic when running bpf in xdpdrv mode
  net: ip6_tunnel: Unregister catch-all devices
  net: sit: Unregister catch-all devices
  net: davicom: Fix regulator not turned off on failed probe
  netfilter: nft_limit: avoid possible divide error in nft_limit_init
  net: macb: fix the restore of cmp registers
  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
  netfilter: conntrack: do not print icmpv6 as unknown via /proc
  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
  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
  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
  ASoC: max98373: Added 30ms turn on/off time delay
  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
  dmaengine: dw: Make it dependent to HAS_IOMEM
  gpio: sysfs: Obey valid_mask
  Input: nspire-keypad - enable interrupts only when opened
  net/sctp: fix race condition in sctp_destroy_sock
  scsi: qla2xxx: Fix fabric scan hang
  scsi: qla2xxx: Fix stuck login session using prli_pend_timer
  scsi: qla2xxx: Add a shadow variable to hold disc_state history of fcport
  scsi: qla2xxx: Retry PLOGI on FC-NVMe PRLI failure
  scsi: qla2xxx: Fix device connect issues in P2P configuration
  scsi: qla2xxx: Dual FCP-NVMe target port support
  Revert "scsi: qla2xxx: Fix stuck login session using prli_pend_timer"
  Revert "scsi: qla2xxx: Retry PLOGI on FC-NVMe PRLI failure"
  Linux 5.4.113
  xen/events: fix setting irq affinity
  perf map: Tighten snprintf() string precision to pass gcc check on some 32-bit arches
  perf tools: Use %zd for size_t printf formats on 32-bit
  perf tools: Use %define api.pure full instead of %pure-parser
  driver core: Fix locking bug in deferred_probe_timeout_work_func()
  netfilter: x_tables: fix compat match/target pad out-of-bound write
  block: don't ignore REQ_NOWAIT for direct IO
  riscv,entry: fix misaligned base for excp_vect_table
  idr test suite: Create anchor before launching throbber
  idr test suite: Take RCU read lock in idr_find_test_1
  radix tree test suite: Register the main thread with the RCU library
  block: only update parent bi_status when bio fail
  drm/tegra: dc: Don't set PLL clock to 0Hz
  gfs2: report "already frozen/thawed" errors
  drm/imx: imx-ldb: fix out of bounds array access warning
  KVM: arm64: Disable guest access to trace filter controls
  KVM: arm64: Hide system instruction access to Trace registers
  interconnect: core: fix error return code of icc_link_destroy()
  Revert "UPSTREAM: scsi: ufs: Avoid busy-waiting by eliminating tag conflicts"
  Revert "UPSTREAM: scsi: ufs: Use blk_{get,put}_request() to allocate and free TMFs"
  Revert "UPSTREAM: scsi: ufs: core: Fix task management request completion timeout"
  Revert "UPSTREAM: scsi: ufs: core: Fix wrong Task Tag used in task management request UPIUs"
  Revert "net: xfrm: Localize sequence counter per network namespace"
  UPSTREAM: scsi: ufs: core: Fix wrong Task Tag used in task management request UPIUs
  UPSTREAM: scsi: ufs: core: Fix task management request completion timeout
  UPSTREAM: scsi: ufs: Use blk_{get,put}_request() to allocate and free TMFs
  UPSTREAM: scsi: ufs: Avoid busy-waiting by eliminating tag conflicts
  Linux 5.4.112
  Revert "cifs: Set CIFS_MOUNT_USE_PREFIX_PATH flag on setting cifs_sb->prepath."
  net: ieee802154: stop dump llsec params for monitors
  net: ieee802154: forbid monitor for del llsec seclevel
  net: ieee802154: forbid monitor for set llsec params
  net: ieee802154: fix nl802154 del llsec devkey
  net: ieee802154: fix nl802154 add llsec key
  net: ieee802154: fix nl802154 del llsec dev
  net: ieee802154: fix nl802154 del llsec key
  net: ieee802154: nl-mac: fix check on panid
  net: mac802154: Fix general protection fault
  drivers: net: fix memory leak in peak_usb_create_dev
  drivers: net: fix memory leak in atusb_probe
  net: tun: set tun->dev->addr_len during TUNSETLINK processing
  cfg80211: remove WARN_ON() in cfg80211_sme_connect
  net: sched: bump refcount for new action in ACT replace mode
  dt-bindings: net: ethernet-controller: fix typo in NVMEM
  clk: socfpga: fix iomem pointer cast on 64-bit
  RAS/CEC: Correct ce_add_elem()'s returned values
  RDMA/addr: Be strict with gid size
  RDMA/cxgb4: check for ipv6 address properly while destroying listener
  net/mlx5: Fix PBMC register mapping
  net/mlx5: Fix placement of log_max_flow_counter
  net: hns3: clear VF down state bit before request link status
  openvswitch: fix send of uninitialized stack memory in ct limit reply
  net: openvswitch: conntrack: simplify the return expression of ovs_ct_limit_get_default_limit()
  perf inject: Fix repipe usage
  s390/cpcmd: fix inline assembly register clobbering
  workqueue: Move the position of debug_work_activate() in __queue_work()
  clk: fix invalid usage of list cursor in unregister
  clk: fix invalid usage of list cursor in register
  net: macb: restore cmp registers on resume path
  scsi: ufs: core: Fix wrong Task Tag used in task management request UPIUs
  scsi: ufs: core: Fix task management request completion timeout
  scsi: ufs: Use blk_{get,put}_request() to allocate and free TMFs
  scsi: ufs: Avoid busy-waiting by eliminating tag conflicts
  scsi: ufs: Fix irq return code
  net: udp: Add support for getsockopt(..., ..., UDP_GRO, ..., ...);
  drm/msm: Set drvdata to NULL when msm_drm_init() fails
  i40e: Fix display statistics for veb_tc
  soc/fsl: qbman: fix conflicting alignment attributes
  net/rds: Fix a use after free in rds_message_map_pages
  net/mlx5: Don't request more than supported EQs
  net/mlx5e: Fix ethtool indication of connector type
  ASoC: sunxi: sun4i-codec: fill ASoC card owner
  net: phy: broadcom: Only advertise EEE for supported modes
  nfp: flower: ignore duplicate merge hints from FW
  net/ncsi: Avoid channel_monitor hrtimer deadlock
  ARM: dts: imx6: pbab01: Set vmmc supply for both SD interfaces
  net:tipc: Fix a double free in tipc_sk_mcast_rcv
  cxgb4: avoid collecting SGE_QBASE regs during traffic
  gianfar: Handle error code at MAC address change
  can: bcm/raw: fix msg_namelen values depending on CAN_REQUIRED_SIZE
  arm64: dts: imx8mm/q: Fix pad control of SD1_DATA0
  sch_red: fix off-by-one checks in red_check_params()
  amd-xgbe: Update DMA coherency values
  hostfs: fix memory handling in follow_link()
  hostfs: Use kasprintf() instead of fixed buffer formatting
  i40e: Fix kernel oops when i40e driver removes VF's
  i40e: Added Asym_Pause to supported link modes
  xfrm: Fix NULL pointer dereference on policy lookup
  ASoC: wm8960: Fix wrong bclk and lrclk with pll enabled for some chips
  ASoC: SOF: Intel: HDA: fix core status verification
  ASoC: SOF: Intel: hda: remove unnecessary parentheses
  esp: delete NETIF_F_SCTP_CRC bit from features for esp offload
  net: xfrm: Localize sequence counter per network namespace
  regulator: bd9571mwv: Fix AVS and DVFS voltage range
  xfrm: interface: fix ipv4 pmtu check to honor ip header df
  net: dsa: lantiq_gswip: Configure all remaining GSWIP_MII_CFG bits
  net: dsa: lantiq_gswip: Don't use PHY auto polling
  virtio_net: Add XDP meta data support
  i2c: turn recovery error on init to debug
  usbip: synchronize event handler with sysfs code paths
  usbip: vudc synchronize sysfs code paths
  usbip: stub-dev synchronize sysfs code paths
  usbip: add sysfs_lock to synchronize sysfs code paths
  net: let skb_orphan_partial wake-up waiters.
  net-ipv6: bugfix - raw & sctp - switch to ipv6_can_nonlocal_bind()
  net: hsr: Reset MAC header for Tx path
  mac80211: fix TXQ AC confusion
  net: sched: sch_teql: fix null-pointer dereference
  i40e: Fix sparse error: 'vsi->netdev' could be null
  i40e: Fix sparse warning: missing error code 'err'
  net: ensure mac header is set in virtio_net_hdr_to_skb()
  bpf, sockmap: Fix sk->prot unhash op reset
  ethernet/netronome/nfp: Fix a use after free in nfp_bpf_ctrl_msg_rx
  net: hso: fix null-ptr-deref during tty device unregistration
  ice: Cleanup fltr list in case of allocation issues
  ice: Fix for dereference of NULL pointer
  ice: Increase control queue timeout
  batman-adv: initialize "struct batadv_tvlv_tt_vlan_data"->reserved field
  ARM: dts: turris-omnia: configure LED[2]/INTn pin as interrupt pin
  parisc: avoid a warning on u8 cast for cmpxchg on u8 pointers
  parisc: parisc-agp requires SBA IOMMU driver
  fs: direct-io: fix missing sdio->boundary
  ocfs2: fix deadlock between setattr and dio_end_io_write
  nds32: flush_dcache_page: use page_mapping_file to avoid races with swapoff
  ia64: fix user_stack_pointer() for ptrace()
  gcov: re-fix clang-11+ support
  drm/i915: Fix invalid access to ACPI _DSM objects
  net: dsa: lantiq_gswip: Let GSWIP automatically set the xMII clock
  net: ipv6: check for validity before dereferencing cfg->fc_nlinfo.nlh
  xen/evtchn: Change irq_info lock to raw_spinlock_t
  nfc: Avoid endless loops caused by repeated llcp_sock_connect()
  nfc: fix memory leak in llcp_sock_connect()
  nfc: fix refcount leak in llcp_sock_connect()
  nfc: fix refcount leak in llcp_sock_bind()
  ASoC: intel: atom: Stop advertising non working S24LE support
  ALSA: hda/realtek: Fix speaker amp setup on Acer Aspire E1
  ALSA: aloop: Fix initialization of controls
  counter: stm32-timer-cnt: fix ceiling miss-alignment with reload register
  Linux 5.4.111
  init/Kconfig: make COMPILE_TEST depend on HAS_IOMEM
  init/Kconfig: make COMPILE_TEST depend on !S390
  nvme-mpath: replace direct_make_request with generic_make_request
  bpf, x86: Validate computation of branch displacements for x86-32
  bpf, x86: Validate computation of branch displacements for x86-64
  cifs: Silently ignore unknown oplock break handle
  cifs: revalidate mapping when we open files for SMB1 POSIX
  ia64: fix format strings for err_inject
  ia64: mca: allocate early mca with GFP_ATOMIC
  scsi: target: pscsi: Clean up after failure in pscsi_map_sg()
  x86/build: Turn off -fcf-protection for realmode targets
  platform/x86: thinkpad_acpi: Allow the FnLock LED to change state
  netfilter: conntrack: Fix gre tunneling over ipv6
  drm/msm: Ratelimit invalid-fence message
  drm/msm/adreno: a5xx_power: Don't apply A540 lm_setup to other GPUs
  mac80211: choose first enabled channel for monitor
  mISDN: fix crash in fritzpci
  net: pxa168_eth: Fix a potential data race in pxa168_eth_remove
  net/mlx5e: Enforce minimum value check for ICOSQ size
  bpf, x86: Use kvmalloc_array instead kmalloc_array in bpf_jit_comp
  platform/x86: intel-hid: Support Lenovo ThinkPad X1 Tablet Gen 2
  bus: ti-sysc: Fix warning on unbind if reset is not deasserted
  ARM: dts: am33xx: add aliases for mmc interfaces
  ANDROID: GKI: update .xml file
  Revert "net: introduce CAN specific pointer in the struct net_device"
  Linux 5.4.110
  drivers: video: fbcon: fix NULL dereference in fbcon_cursor()
  staging: rtl8192e: Change state information from u16 to u8
  staging: rtl8192e: Fix incorrect source in memcpy()
  usb: dwc2: Prevent core suspend when port connection flag is 0
  usb: dwc2: Fix HPRT0.PrtSusp bit setting for HiKey 960 board.
  usb: gadget: udc: amd5536udc_pci fix null-ptr-dereference
  USB: cdc-acm: fix use-after-free after probe failure
  USB: cdc-acm: fix double free on probe failure
  USB: cdc-acm: downgrade message to debug
  USB: cdc-acm: untangle a circular dependency between callback and softint
  cdc-acm: fix BREAK rx code path adding necessary calls
  usb: xhci-mtk: fix broken streams issue on 0.96 xHCI
  usb: musb: Fix suspend with devices connected for a64
  USB: quirks: ignore remote wake-up on Fibocom L850-GL LTE modem
  usbip: vhci_hcd fix shift out-of-bounds in vhci_hub_control()
  firewire: nosy: Fix a use-after-free bug in nosy_ioctl()
  extcon: Fix error handling in extcon_dev_register
  extcon: Add stubs for extcon_register_notifier_all() functions
  pinctrl: rockchip: fix restore error in resume
  vfio/nvlink: Add missing SPAPR_TCE_IOMMU depends
  reiserfs: update reiserfs_xattrs_initialized() condition
  drm/amdgpu: check alignment on CPU page for bo map
  drm/amdgpu: fix offset calculation in amdgpu_vm_bo_clear_mappings()
  mm: fix race by making init_zero_pfn() early_initcall
  tracing: Fix stack trace event size
  PM: runtime: Fix ordering in pm_runtime_get_suppliers()
  PM: runtime: Fix race getting/putting suppliers at probe
  xtensa: move coprocessor_flush to the .text section
  ALSA: hda/realtek: call alc_update_headset_mode() in hp_automute_hook
  ALSA: hda/realtek: fix a determine_headset_type issue for a Dell AIO
  ALSA: hda: Add missing sanity checks in PM prepare/complete callbacks
  ALSA: hda: Re-add dropped snd_poewr_change_state() calls
  ALSA: usb-audio: Apply sample rate quirk to Logitech Connect
  bpf: Remove MTU check in __bpf_skb_max_len
  net: wan/lmc: unregister device when no matching device is found
  appletalk: Fix skb allocation size in loopback case
  net: ethernet: aquantia: Handle error cleanup of start on open
  ath10k: hold RCU lock when calling ieee80211_find_sta_by_ifaddr()
  brcmfmac: clear EAP/association status bits on linkdown events
  can: tcan4x5x: fix max register value
  net: introduce CAN specific pointer in the struct net_device
  can: dev: move driver related infrastructure into separate subdir
  flow_dissector: fix TTL and TOS dissection on IPv4 fragments
  net: mvpp2: fix interrupt mask/unmask skip condition
  ext4: do not iput inode under running transaction in ext4_rename()
  locking/ww_mutex: Simplify use_ww_ctx & ww_ctx handling
  thermal/core: Add NULL pointer check before using cooling device stats
  ASoC: rt5659: Update MCLK rate in set_sysclk()
  staging: comedi: cb_pcidas64: fix request_irq() warn
  staging: comedi: cb_pcidas: fix request_irq() warn
  scsi: qla2xxx: Fix broken #endif placement
  scsi: st: Fix a use after free in st_open()
  vhost: Fix vhost_vq_reset()
  powerpc: Force inlining of cpu_has_feature() to avoid build failure
  NFSD: fix error handling in NFSv4.0 callbacks
  ASoC: cs42l42: Always wait at least 3ms after reset
  ASoC: cs42l42: Fix mixer volume control
  ASoC: cs42l42: Fix channel width support
  ASoC: cs42l42: Fix Bitclock polarity inversion
  ASoC: es8316: Simplify adc_pga_gain_tlv table
  ASoC: sgtl5000: set DAP_AVC_CTRL register to correct default value on probe
  ASoC: rt5651: Fix dac- and adc- vol-tlv values being off by a factor of 10
  ASoC: rt5640: Fix dac- and adc- vol-tlv values being off by a factor of 10
  iomap: Fix negative assignment to unsigned sis->pages in iomap_swapfile_activate
  rpc: fix NULL dereference on kmalloc failure
  fs: nfsd: fix kconfig dependency warning for NFSD_V4
  ext4: fix bh ref count on error paths
  ext4: shrink race window in ext4_should_retry_alloc()
  module: harden ELF info handling
  module: avoid *goto*s in module_sig_check()
  module: merge repetitive strings in module_sig_check()
  modsign: print module name along with error message
  ipv6: weaken the v4mapped source check
  selinux: vsock: Set SID for socket returned by accept()
  Revert "can: dev: Move device back to init netns on owning netns delete"
  Linux 5.4.109
  xen-blkback: don't leak persistent grants from xen_blkbk_map()
  can: peak_usb: Revert "can: peak_usb: add forgotten supported devices"
  ext4: add reclaim checks to xattr code
  mac80211: fix double free in ibss_leave
  net: qrtr: fix a kernel-infoleak in qrtr_recvmsg()
  net: dsa: b53: VLAN filtering is global to all users
  can: dev: Move device back to init netns on owning netns delete
  x86/mem_encrypt: Correct physical address calculation in __set_clr_pte_enc()
  locking/mutex: Fix non debug version of mutex_lock_io_nested()
  scsi: mpt3sas: Fix error return code of mpt3sas_base_attach()
  scsi: qedi: Fix error return code of qedi_alloc_global_queues()
  scsi: Revert "qla2xxx: Make sure that aborted commands are freed"
  block: recalculate segment count for multi-segment discards correctly
  perf auxtrace: Fix auxtrace queue conflict
  ACPI: scan: Use unique number for instance_no
  ACPI: scan: Rearrange memory allocation in acpi_device_add()
  Revert "netfilter: x_tables: Update remaining dereference to RCU"
  netfilter: x_tables: Use correct memory barriers.
  Revert "netfilter: x_tables: Switch synchronization to RCU"
  bpf: Don't do bpf_cgroup_storage_set() for kuprobe/tp programs
  RDMA/cxgb4: Fix adapter LE hash errors while destroying ipv6 listening server
  PM: EM: postpone creating the debugfs dir till fs_initcall
  net/mlx5e: Fix error path for ethtool set-priv-flag
  PM: runtime: Defer suspending suppliers
  arm64: kdump: update ppos when reading elfcorehdr
  drm/msm: fix shutdown hook in case GPU components failed to bind
  libbpf: Fix BTF dump of pointer-to-array-of-struct
  selftests: forwarding: vxlan_bridge_1d: Fix vxlan ecn decapsulate value
  net: stmmac: dwmac-sun8i: Provide TX and RX fifo sizes
  r8152: limit the RX buffer size of RTL8153A for USB 2.0
  net: cdc-phonet: fix data-interface release on probe failure
  octeontx2-af: fix infinite loop in unmapping NPC counter
  octeontx2-af: Fix irq free in rvu teardown
  libbpf: Use SOCK_CLOEXEC when opening the netlink socket
  nfp: flower: fix pre_tun mask id allocation
  mac80211: fix rate mask reset
  can: m_can: m_can_rx_peripheral(): fix RX being blocked by errors
  can: m_can: m_can_do_rx_poll(): fix extraneous msg loss warning
  can: c_can: move runtime PM enable/disable to c_can_platform
  can: c_can_pci: c_can_pci_remove(): fix use-after-free
  can: kvaser_pciefd: Always disable bus load reporting
  can: flexcan: flexcan_chip_freeze(): fix chip freeze for missing bitrate
  can: peak_usb: add forgotten supported devices
  tcp: relookup sock for RST+ACK packets handled by obsolete req sock
  netfilter: ctnetlink: fix dump of the expect mask attribute
  selftests/bpf: Set gopt opt_class to 0 if get tunnel opt failed
  ftgmac100: Restart MAC HW once
  net/qlcnic: Fix a use after free in qlcnic_83xx_get_minidump_template
  e1000e: Fix error handling in e1000_set_d0_lplu_state_82571
  e1000e: add rtnl_lock() to e1000_reset_task
  igc: Fix Supported Pause Frame Link Setting
  igc: Fix Pause Frame Advertising
  net: dsa: bcm_sf2: Qualify phydev->dev_flags based on port
  net: sched: validate stab values
  macvlan: macvlan_count_rx() needs to be aware of preemption
  ipv6: fix suspecious RCU usage warning
  net/mlx5e: Don't match on Geneve options in case option masks are all zero
  libbpf: Fix INSTALL flag order
  veth: Store queue_mapping independently of XDP prog presence
  bus: omap_l3_noc: mark l3 irqs as IRQF_NO_THREAD
  dm ioctl: fix out of bounds array access when no devices
  dm verity: fix DM_VERITY_OPTS_MAX value
  integrity: double check iint_cache was initialized
  ARM: dts: at91-sama5d27_som1: fix phy address to 7
  arm64: dts: ls1043a: mark crypto engine dma coherent
  arm64: dts: ls1012a: mark crypto engine dma coherent
  arm64: dts: ls1046a: mark crypto engine dma coherent
  ACPI: video: Add missing callback back for Sony VPCEH3U1E
  gcov: fix clang-11+ support
  kasan: fix per-page tags for non-page_alloc pages
  squashfs: fix xattr id and id lookup sanity checks
  squashfs: fix inode lookup sanity checks
  platform/x86: intel-vbtn: Stop reporting SW_DOCK events
  netsec: restore phy power state after controller reset
  ia64: fix ptrace(PTRACE_SYSCALL_INFO_EXIT) sign
  ia64: fix ia64_syscall_get_set_arguments() for break-based syscalls
  block: Suppress uevent for hidden device when removed
  nfs: we don't support removing system.nfs4_acl
  nvme-pci: add the DISABLE_WRITE_ZEROES quirk for a Samsung PM1725a
  nvme-fc: return NVME_SC_HOST_ABORTED_CMD when a command has been aborted
  nvme: add NVME_REQ_CANCELLED flag in nvme_cancel_request()
  drm/radeon: fix AGP dependency
  drm/amdgpu: fb BO should be ttm_bo_type_device
  drm/amd/display: Revert dram_clock_change_latency for DCN2.1
  regulator: qcom-rpmh: Correct the pmic5_hfsmps515 buck
  u64_stats,lockdep: Fix u64_stats_init() vs lockdep
  habanalabs: Call put_pid() when releasing control device
  sparc64: Fix opcode filtering in handling of no fault loads
  irqchip/ingenic: Add support for the JZ4760
  cifs: change noisy error message to FYI
  atm: idt77252: fix null-ptr-dereference
  atm: uPD98402: fix incorrect allocation
  net: davicom: Use platform_get_irq_optional()
  net: wan: fix error return code of uhdlc_init()
  net: hisilicon: hns: fix error return code of hns_nic_clear_all_rx_fetch()
  NFS: Correct size calculation for create reply length
  nfs: fix PNFS_FLEXFILE_LAYOUT Kconfig default
  gpiolib: acpi: Add missing IRQF_ONESHOT
  cpufreq: blacklist Arm Vexpress platforms in cpufreq-dt-platdev
  cifs: ask for more credit on async read/write code paths
  gianfar: fix jumbo packets+napi+rx overrun crash
  sun/niu: fix wrong RXMAC_BC_FRM_CNT_COUNT count
  net: intel: iavf: fix error return code of iavf_init_get_resources()
  net: tehuti: fix error return code in bdx_probe()
  ixgbe: Fix memleak in ixgbe_configure_clsu32
  ALSA: hda: ignore invalid NHLT table
  Revert "r8152: adjust the settings about MAC clock speed down for RTL8153"
  atm: lanai: dont run lanai_dev_close if not open
  atm: eni: dont release is never initialized
  powerpc/4xx: Fix build errors from mfdcr()
  net: fec: ptp: avoid register access when ipg clock is disabled
  hugetlbfs: hugetlb_fault_mutex_hash() cleanup
  ANDROID: refresh ABI XML to new version
  ANDROID: refresh ABI XML
  ANDROID: fix up ext4 build from 5.4.108
  Linux 5.4.108
  cifs: Fix preauth hash corruption
  x86/apic/of: Fix CPU devicetree-node lookups
  genirq: Disable interrupts for force threaded handlers
  firmware/efi: Fix a use after bug in efi_mem_reserve_persistent
  efi: use 32-bit alignment for efi_guid_t literals
  ext4: fix potential error in ext4_do_update_inode
  ext4: do not try to set xattr into ea_inode if value is empty
  ext4: find old entry again if failed to rename whiteout
  x86: Introduce TS_COMPAT_RESTART to fix get_nr_restart_syscall()
  x86: Move TS_COMPAT back to asm/thread_info.h
  kernel, fs: Introduce and use set_restart_fn() and arch_set_restart_data()
  x86/ioapic: Ignore IRQ2 again
  perf/x86/intel: Fix a crash caused by zero PEBS status
  PCI: rpadlpar: Fix potential drc_name corruption in store functions
  counter: stm32-timer-cnt: fix ceiling write max value
  iio: hid-sensor-temperature: Fix issues of timestamp channel
  iio: hid-sensor-prox: Fix scale not correct issue
  iio: hid-sensor-humidity: Fix alignment issue of timestamp channel
  iio: adc: ad7949: fix wrong ADC result due to incorrect bit mask
  iio: gyro: mpu3050: Fix error handling in mpu3050_trigger_handler
  iio: adis16400: Fix an error code in adis16400_initial_setup()
  iio:adc:qcom-spmi-vadc: add default scale to LR_MUX2_BAT_ID channel
  iio:adc:stm32-adc: Add HAS_IOMEM dependency
  usb: typec: tcpm: Invoke power_supply_changed for tcpm-source-psy-
  usb: gadget: configfs: Fix KASAN use-after-free
  USB: replace hardcode maximum usb string length by definition
  usbip: Fix incorrect double assignment to udc->ud.tcp_rx
  usb-storage: Add quirk to defeat Kindle's automatic unload
  nvme-rdma: fix possible hang when failing to set io queues
  counter: stm32-timer-cnt: Report count function when SLAVE_MODE_DISABLED
  scsi: myrs: Fix a double free in myrs_cleanup()
  scsi: lpfc: Fix some error codes in debugfs
  riscv: Correct SPARSEMEM configuration
  kbuild: Fix <linux/version.h> for empty SUBLEVEL or PATCHLEVEL again
  net/qrtr: fix __netdev_alloc_skb call
  sunrpc: fix refcount leak for rpc auth modules
  vfio: IOMMU_API should be selected
  svcrdma: disable timeouts on rdma backchannel
  NFSD: Repair misuse of sv_lock in 5.10.16-rt30.
  nfsd: Don't keep looking up unhashed files in the nfsd file cache
  nvmet: don't check iosqes,iocqes for discovery controllers
  nvme-tcp: fix a NULL deref when receiving a 0-length r2t PDU
  nvme-tcp: fix possible hang when failing to set io queues
  nvme: fix Write Zeroes limitations
  afs: Stop listxattr() from listing "afs.*" attributes
  ASoC: simple-card-utils: Do not handle device clock
  ASoC: SOF: intel: fix wrong poll bits in dsp power down
  ASoC: SOF: Intel: unregister DMIC device on probe error
  ASoC: fsl_ssi: Fix TDM slot setup for I2S mode
  btrfs: fix slab cache flags for free space tree bitmap
  btrfs: fix race when cloning extent buffer during rewind of an old root
  ARM: 9044/1: vfp: use undef hook for VFP support detection
  ARM: 9030/1: entry: omit FP emulation for UND exceptions taken in kernel mode
  s390/vtime: fix increased steal time accounting
  Revert "PM: runtime: Update device status before letting suppliers suspend"
  ALSA: hda/realtek: Apply headset-mic quirks for Xiaomi Redmibook Air
  ALSA: hda: generic: Fix the micmute led init state
  ALSA: hda/realtek: apply pin quirk for XiaomiNotebook Pro
  ALSA: dice: fix null pointer dereference when node is disconnected
  ASoC: ak5558: Add MODULE_DEVICE_TABLE
  ASoC: ak4458: Add MODULE_DEVICE_TABLE
  Linux 5.4.107
  net: dsa: b53: Support setting learning on port
  net: dsa: tag_mtk: fix 802.1ad VLAN egress
  crypto: x86/aes-ni-xts - use direct calls to and 4-way stride
  crypto: aesni - Use TEST %reg,%reg instead of CMP $0,%reg
  crypto: x86 - Regularize glue function prototypes
  fuse: fix live lock in fuse_iget()
  drm/i915/gvt: Fix vfio_edid issue for BXT/APL
  drm/i915/gvt: Fix port number for BDW on EDID region setup
  drm/i915/gvt: Fix virtual display setup for BXT/APL
  drm/i915/gvt: Fix mmio handler break on BXT/APL.
  drm/i915/gvt: Set SNOOP for PAT3 on BXT/APL to workaround GPU BB hang
  btrfs: scrub: Don't check free space before marking a block group RO
  bpf, selftests: Fix up some test_verifier cases for unprivileged
  bpf: Add sanity check for upper ptr_limit
  bpf: Simplify alu_limit masking for pointer arithmetic
  bpf: Fix off-by-one for area size in creating mask to left
  bpf: Prohibit alu ops for pointer types not defining ptr_limit
  KVM: arm64: nvhe: Save the SPE context early
  Linux 5.4.106
  xen/events: avoid handling the same event on two cpus at the same time
  xen/events: don't unmask an event channel when an eoi is pending
  xen/events: reset affinity of 2-level event when tearing it down
  KVM: arm64: Reject VM creation when the default IPA size is unsupported
  KVM: arm64: Ensure I-cache isolation between vcpus of a same VM
  nvme: release namespace head reference on error
  nvme: unlink head after removing last namespace
  KVM: arm64: Fix exclusive limit for IPA size
  x86/unwind/orc: Disable KASAN checking in the ORC unwinder, part 2
  binfmt_misc: fix possible deadlock in bm_register_write
  powerpc/64s: Fix instruction encoding for lis in ppc_function_entry()
  sched/membarrier: fix missing local execution of ipi_sync_rq_state()
  zram: fix return value on writeback_store
  include/linux/sched/mm.h: use rcu_dereference in in_vfork()
  stop_machine: mark helpers __always_inline
  hrtimer: Update softirq_expires_next correctly after __hrtimer_get_next_event()
  arm64: mm: use a 48-bit ID map when possible on 52-bit VA builds
  configfs: fix a use-after-free in __configfs_open_file
  block: rsxx: fix error return code of rsxx_pci_probe()
  NFSv4.2: fix return value of _nfs4_get_security_label()
  NFS: Don't gratuitously clear the inode cache when lookup failed
  NFS: Don't revalidate the directory permissions on a lookup failure
  SUNRPC: Set memalloc_nofs_save() for sync tasks
  arm64/mm: Fix pfn_valid() for ZONE_DEVICE based memory
  sh_eth: fix TRSCER mask for R7S72100
  staging: comedi: pcl818: Fix endian problem for AI command data
  staging: comedi: pcl711: Fix endian problem for AI command data
  staging: comedi: me4000: Fix endian problem for AI command data
  staging: comedi: dmm32at: Fix endian problem for AI command data
  staging: comedi: das800: Fix endian problem for AI command data
  staging: comedi: das6402: Fix endian problem for AI command data
  staging: comedi: adv_pci1710: Fix endian problem for AI command data
  staging: comedi: addi_apci_1500: Fix endian problem for command sample
  staging: comedi: addi_apci_1032: Fix endian problem for COS sample
  staging: rtl8192e: Fix possible buffer overflow in _rtl92e_wx_set_scan
  staging: rtl8712: Fix possible buffer overflow in r8712_sitesurvey_cmd
  staging: ks7010: prevent buffer overflow in ks_wlan_set_scan()
  staging: rtl8188eu: fix potential memory corruption in rtw_check_beacon_data()
  staging: rtl8712: unterminated string leads to read overflow
  staging: rtl8188eu: prevent ->ssid overflow in rtw_wx_set_scan()
  staging: rtl8192u: fix ->ssid overflow in r8192_wx_set_scan()
  misc: fastrpc: restrict user apps from sending kernel RPC messages
  misc/pvpanic: Export module FDT device table
  usbip: fix vudc usbip_sockfd_store races leading to gpf
  usbip: fix vhci_hcd attach_store() races leading to gpf
  usbip: fix stub_dev usbip_sockfd_store() races leading to gpf
  usbip: fix vudc to check for stream socket
  usbip: fix vhci_hcd to check for stream socket
  usbip: fix stub_dev to check for stream socket
  USB: serial: cp210x: add some more GE USB IDs
  USB: serial: cp210x: add ID for Acuity Brands nLight Air Adapter
  USB: serial: ch341: add new Product ID
  USB: serial: io_edgeport: fix memory leak in edge_startup
  xhci: Fix repeated xhci wake after suspend due to uncleared internal wake state
  usb: xhci: Fix ASMedia ASM1042A and ASM3242 DMA addressing
  xhci: Improve detection of device initiated wake signal.
  usb: xhci: do not perform Soft Retry for some xHCI hosts
  usb: renesas_usbhs: Clear PIPECFG for re-enabling pipe with other EPNUM
  USB: usblp: fix a hang in poll() if disconnected
  usb: dwc3: qcom: Honor wakeup enabled/disabled state
  usb: dwc3: qcom: Add missing DWC3 OF node refcount decrement
  usb: gadget: f_uac1: stop playback on function disable
  usb: gadget: f_uac2: always increase endpoint max_packet_size by one audio slot
  USB: gadget: u_ether: Fix a configfs return code
  Goodix Fingerprint device is not a modem
  mmc: cqhci: Fix random crash when remove mmc module/card
  mmc: core: Fix partition switch time for eMMC
  software node: Fix node registration
  s390/dasd: fix hanging IO request during DASD driver unbind
  s390/dasd: fix hanging DASD driver unbind
  arm64: kasan: fix page_alloc tagging with DEBUG_VIRTUAL
  Revert 95ebabde382c ("capabilities: Don't allow writing ambiguous v3 file capabilities")
  ALSA: usb-audio: Apply the control quirk to Plantronics headsets
  ALSA: usb-audio: Fix "cannot get freq eq" errors on Dell AE515 sound bar
  ALSA: hda: Avoid spurious unsol event handling during S3/S4
  ALSA: hda: Flush pending unsolicited events before suspend
  ALSA: hda: Drop the BATCH workaround for AMD controllers
  ALSA: hda/ca0132: Add Sound BlasterX AE-5 Plus support
  ALSA: hda/hdmi: Cancel pending works before suspend
  ALSA: usb: Add Plantronics C320-M USB ctrl msg delay quirk
  scsi: target: core: Prevent underflow for service actions
  scsi: target: core: Add cmd length set before cmd complete
  scsi: libiscsi: Fix iscsi_prep_scsi_cmd_pdu() error handling
  sysctl.c: fix underflow value setting risk in vm_table
  s390/smp: __smp_rescan_cpus() - move cpumask away from stack
  i40e: Fix memory leak in i40e_probe
  PCI: Fix pci_register_io_range() memory leak
  kbuild: clamp SUBLEVEL to 255
  PCI: mediatek: Add missing of_node_put() to fix reference leak
  PCI: xgene-msi: Fix race in installing chained irq handler
  Input: applespi - don't wait for responses to commands indefinitely.
  sparc64: Use arch_validate_flags() to validate ADI flag
  sparc32: Limit memblock allocation to low memory
  iommu/amd: Fix performance counter initialization
  powerpc/64: Fix stack trace not displaying final frame
  HID: logitech-dj: add support for the new lightspeed connection iteration
  powerpc/perf: Record counter overflow always if SAMPLE_IP is unset
  powerpc: improve handling of unrecoverable system reset
  spi: stm32: make spurious and overrun interrupts visible
  powerpc/pci: Add ppc_md.discover_phbs()
  Platform: OLPC: Fix probe error handling
  mmc: mediatek: fix race condition between msdc_request_timeout and irq
  mmc: mxs-mmc: Fix a resource leak in an error handling path in 'mxs_mmc_probe()'
  udf: fix silent AED tagLocation corruption
  i2c: rcar: optimize cacheline to minimize HW race condition
  i2c: rcar: faster irq code to minimize HW race condition
  net: phy: fix save wrong speed and duplex problem if autoneg is on
  net: enetc: initialize RFS/RSS memories for unused ports too
  net: hns3: fix error mask definition of flow director
  media: rc: compile rc-cec.c into rc-core
  media: v4l: vsp1: Fix bru null pointer access
  media: v4l: vsp1: Fix uif null pointer access
  media: usbtv: Fix deadlock on suspend
  sh_eth: fix TRSCER mask for R7S9210
  qxl: Fix uninitialised struct field head.surface_id
  s390/crypto: return -EFAULT if copy_to_user() fails
  s390/cio: return -EFAULT if copy_to_user() fails
  drm: meson_drv add shutdown function
  drm/shmem-helper: Don't remove the offset in vm_area_struct pgoff
  drm/shmem-helper: Check for purged buffers in fault handler
  drm/compat: Clear bounce structures
  bnxt_en: reliably allocate IRQ table on reset to avoid crash
  s390/cio: return -EFAULT if copy_to_user() fails again
  net: hns3: fix bug when calculating the TCAM table info
  net: hns3: fix query vlan mask value error for flow director
  perf traceevent: Ensure read cmdlines are null terminated.
  selftests: forwarding: Fix race condition in mirror installation
  net: stmmac: fix watchdog timeout during suspend/resume stress test
  net: stmmac: stop each tx channel independently
  ixgbe: fail to create xfrm offload of IPsec tunnel mode SA
  net: qrtr: fix error return code of qrtr_sendmsg()
  net: davicom: Fix regulator not turned off on driver removal
  net: davicom: Fix regulator not turned off on failed probe
  net: lapbether: Remove netif_start_queue / netif_stop_queue
  cipso,calipso: resolve a number of problems with the DOI refcounts
  netdevsim: init u64 stats for 32bit hardware
  net: usb: qmi_wwan: allow qmimux add/del with master up
  net: sched: avoid duplicates in classes dump
  nexthop: Do not flush blackhole nexthops when loopback goes down
  net: stmmac: fix incorrect DMA channel intr enable setting of EQoS v4.10
  net/mlx4_en: update moderation when config reset
  net: enetc: don't overwrite the RSS indirection table when initializing
  Revert "mm, slub: consider rest of partial list if acquire_slab() fails"
  cifs: return proper error code in statfs(2)
  mount: fix mounting of detached mounts onto targets that reside on shared mounts
  powerpc/603: Fix protection of user pages mapped with PROT_NONE
  mt76: dma: do not report truncated frames to mac80211
  ibmvnic: always store valid MAC address
  samples, bpf: Add missing munmap in xdpsock
  selftests/bpf: Mask bpf_csum_diff() return value to 16 bits in test_verifier
  selftests/bpf: No need to drop the packet when there is no geneve opt
  netfilter: x_tables: gpf inside xt_find_revision()
  netfilter: nf_nat: undo erroneous tcp edemux lookup
  tcp: add sanity tests to TCP_QUEUE_SEQ
  can: tcan4x5x: tcan4x5x_init(): fix initialization - clear MRAM before entering Normal Mode
  can: flexcan: invoke flexcan_chip_freeze() to enter freeze mode
  can: flexcan: enable RX FIFO after FRZ/HALT valid
  can: flexcan: assert FRZ bit in flexcan_chip_freeze()
  can: skb: can_skb_set_owner(): fix ref counting if socket was closed before setting skb ownership
  sh_eth: fix TRSCER mask for SH771x
  net: avoid infinite loop in mpls_gso_segment when mpls_hlen == 0
  net: check if protocol extracted by virtio_net_hdr_set_proto is correct
  net: Fix gro aggregation for udp encaps with zero csum
  ath9k: fix transmitting to stations in dynamic SMPS mode
  ethernet: alx: fix order of calls on resume
  powerpc/pseries: Don't enforce MSI affinity with kdump
  uapi: nfnetlink_cthelper.h: fix userspace compilation error
  Linux 5.4.105
  nvme-pci: add quirks for Lexar 256GB SSD
  nvme-pci: mark Seagate Nytro XM1440 as QUIRK_NO_NS_DESC_LIST.
  HID: i2c-hid: Add I2C_HID_QUIRK_NO_IRQ_AFTER_RESET for ITE8568 EC on Voyo Winpad A15
  mmc: sdhci-of-dwcmshc: set SDHCI_QUIRK2_PRESET_VALUE_BROKEN
  drm/msm/a5xx: Remove overwriting A5XX_PC_DBG_ECO_CNTL register
  misc: eeprom_93xx46: Add quirk to support Microchip 93LC46B eeprom
  PCI: Add function 1 DMA alias quirk for Marvell 9215 SATA controller
  ASoC: Intel: bytcr_rt5640: Add quirk for ARCHOS Cesium 140
  ACPI: video: Add DMI quirk for GIGABYTE GB-BXBT-2807
  media: cx23885: add more quirks for reset DMA on some AMD IOMMU
  HID: mf: add support for 0079:1846 Mayflash/Dragonrise USB Gamecube Adapter
  platform/x86: acer-wmi: Add ACER_CAP_KBD_DOCK quirk for the Aspire Switch 10E SW3-016
  platform/x86: acer-wmi: Add support for SW_TABLET_MODE on Switch devices
  platform/x86: acer-wmi: Add ACER_CAP_SET_FUNCTION_MODE capability flag
  platform/x86: acer-wmi: Add new force_caps module parameter
  platform/x86: acer-wmi: Cleanup accelerometer device handling
  platform/x86: acer-wmi: Cleanup ACER_CAP_FOO defines
  mwifiex: pcie: skip cancel_work_sync() on reset failure path
  iommu/amd: Fix sleeping in atomic in increase_address_space()
  ACPICA: Fix race in generic_serial_bus (I2C) and GPIO op_region parameter handling
  dm table: fix zoned iterate_devices based device capability checks
  dm table: fix DAX iterate_devices based device capability checks
  dm table: fix iterate_devices based device capability checks
  net: dsa: add GRO support via gro_cells
  ANDROID: GKI: update .xml file due to new symbol additions.
  Revert "crypto - shash: reduce minimum alignment of shash_desc structure"
  Linux 5.4.104
  r8169: fix resuming from suspend on RTL8105e if machine runs on battery
  rsxx: Return -EFAULT if copy_to_user() fails
  ftrace: Have recordmcount use w8 to read relp->r_info in arm64_is_fake_mcount
  ALSA: hda: intel-nhlt: verify config type
  IB/mlx5: Add missing error code
  RDMA/rxe: Fix missing kconfig dependency on CRYPTO
  ALSA: ctxfi: cthw20k2: fix mask on conf to allow 4 bits
  usbip: tools: fix build error for multiple definition
  crypto - shash: reduce minimum alignment of shash_desc structure
  arm64: ptrace: Fix seccomp of traced syscall -1 (NO_SYSCALL)
  drm/amdgpu: fix parameter error of RREG32_PCIE() in amdgpu_regs_pcie
  dm verity: fix FEC for RS roots unaligned to block size
  dm bufio: subtract the number of initial sectors in dm_bufio_get_device_size
  PM: runtime: Update device status before letting suppliers suspend
  btrfs: fix warning when creating a directory with smack enabled
  btrfs: unlock extents in btrfs_zero_range in case of quota reservation errors
  btrfs: free correct amount of space in btrfs_delayed_inode_reserve_metadata
  btrfs: validate qgroup inherit for SNAP_CREATE_V2 ioctl
  btrfs: fix raid6 qstripe kmap
  btrfs: raid56: simplify tracking of Q stripe presence
  tpm, tpm_tis: Decorate tpm_get_timeouts() with request_locality()
  tpm, tpm_tis: Decorate tpm_tis_gen_interrupt() with request_locality()
  ANDROID: GKI: hack up fs/sysfs/file.c to prevent GENKSYMS change
  Revert "sched/features: Fix hrtick reprogramming"
  Linux 5.4.103
  ALSA: hda/realtek: Apply dual codec quirks for MSI Godlike X570 board
  ALSA: hda/realtek: Add quirk for Intel NUC 10
  ALSA: hda/realtek: Add quirk for Clevo NH55RZQ
  media: v4l: ioctl: Fix memory leak in video_usercopy
  swap: fix swapfile read/write offset
  zsmalloc: account the number of compacted pages correctly
  xen-netback: respect gnttab_map_refs()'s return value
  Xen/gnttab: handle p2m update errors on a per-slot basis
  scsi: iscsi: Verify lengths on passthrough PDUs
  scsi: iscsi: Ensure sysfs attributes are limited to PAGE_SIZE
  sysfs: Add sysfs_emit and sysfs_emit_at to format sysfs output
  scsi: iscsi: Restrict sessions and handles to admin capabilities
  ASoC: Intel: bytcr_rt5640: Add quirk for the Acer One S1002 tablet
  ASoC: Intel: bytcr_rt5651: Add quirk for the Jumper EZpad 7 tablet
  ASoC: Intel: bytcr_rt5640: Add quirk for the Voyo Winpad A15 tablet
  ASoC: Intel: bytcr_rt5640: Add quirk for the Estar Beauty HD MID 7316R tablet
  sched/features: Fix hrtick reprogramming
  parisc: Bump 64-bit IRQ stack size to 64 KB
  perf/x86/kvm: Add Cascade Lake Xeon steppings to isolation_ucodes[]
  btrfs: fix error handling in commit_fs_roots
  ASoC: Intel: Add DMI quirk table to soc_intel_is_byt_cr()
  nvme-tcp: add clean action for failed reconnection
  nvme-rdma: add clean action for failed reconnection
  nvme-core: add cancel tagset helpers
  f2fs: fix to set/clear I_LINKABLE under i_lock
  f2fs: handle unallocated section and zone on pinned/atgc
  media: uvcvideo: Allow entities with no pads
  drm/amd/display: Guard against NULL pointer deref when get_i2c_info fails
  PCI: Add a REBAR size quirk for Sapphire RX 5600 XT Pulse
  drm/amdgpu: Add check to prevent IH overflow
  crypto: tcrypt - avoid signed overflow in byte count
  drm/hisilicon: Fix use-after-free
  brcmfmac: Add DMI nvram filename quirk for Voyo winpad A15 tablet
  brcmfmac: Add DMI nvram filename quirk for Predia Basic tablet
  staging: bcm2835-audio: Replace unsafe strcpy() with strscpy()
  staging: most: sound: add sanity check for function argument
  Bluetooth: Fix null pointer dereference in amp_read_loc_assoc_final_data
  x86/build: Treat R_386_PLT32 relocation as R_386_PC32
  ath10k: fix wmi mgmt tx queue full due to race condition
  pktgen: fix misuse of BUG_ON() in pktgen_thread_worker()
  Bluetooth: hci_h5: Set HCI_QUIRK_SIMULTANEOUS_DISCOVERY for btrtl
  wlcore: Fix command execute failure 19 for wl12xx
  vt/consolemap: do font sum unsigned
  x86/reboot: Add Zotac ZBOX CI327 nano PCI reboot quirk
  staging: fwserial: Fix error handling in fwserial_create
  rsi: Move card interrupt handling to RX thread
  rsi: Fix TX EAPOL packet handling against iwlwifi AP
  drm/virtio: use kvmalloc for large allocations
  MIPS: Drop 32-bit asm string functions
  dt-bindings: net: btusb: DT fix s/interrupt-name/interrupt-names/
  dt-bindings: ethernet-controller: fix fixed-link specification
  net: fix dev_ifsioc_locked() race condition
  net: ag71xx: remove unnecessary MTU reservation
  net: bridge: use switchdev for port flags set through sysfs too
  mm/hugetlb.c: fix unnecessary address expansion of pmd sharing
  nbd: handle device refs for DESTROY_ON_DISCONNECT properly
  net: fix up truesize of cloned skb in skb_prepare_for_shift()
  smackfs: restrict bytes count in smackfs write functions
  net/af_iucv: remove WARN_ONCE on malformed RX packets
  xfs: Fix assert failure in xfs_setattr_size()
  media: v4l2-ctrls.c: fix shift-out-of-bounds in std_validate
  erofs: fix shift-out-of-bounds of blkszbits
  media: mceusb: sanity check for prescaler value
  udlfb: Fix memory leak in dlfb_usb_probe
  JFS: more checks for invalid superblock
  MIPS: VDSO: Use CLANG_FLAGS instead of filtering out '--target='
  arm64 module: set plt* section addresses to 0x0
  nvme-pci: fix error unwind in nvme_map_data
  nvme-pci: refactor nvme_unmap_data
  Input: elantech - fix protocol errors for some trackpoints in SMBus mode
  net: usb: qmi_wwan: support ZTE P685M modem
  ANDROID: GKI: update .xml file due to new symbol additions.
  ANDROID: Adding kprobes build configs for Cuttlefish
  ANDROID: GKI: bring back icmpv6_send
  Linux 5.4.102
  ARM: dts: aspeed: Add LCLK to lpc-snoop
  net: qrtr: Fix memory leak in qrtr_tun_open
  dm era: Update in-core bitset after committing the metadata
  net: sched: fix police ext initialization
  net: icmp: pass zeroed opts from icmp{,v6}_ndo_send before sending
  ipv6: silence compilation warning for non-IPV6 builds
  ipv6: icmp6: avoid indirect call for icmpv6_send()
  xfrm: interface: use icmp_ndo_send helper
  sunvnet: use icmp_ndo_send helper
  gtp: use icmp_ndo_send helper
  icmp: allow icmpv6_ndo_send to work with CONFIG_IPV6=n
  icmp: introduce helper for nat'd source address in network device context
  drm/i915: Reject 446-480MHz HDMI clock on GLK
  dm era: only resize metadata in preresume
  dm era: Reinitialize bitset cache before digesting a new writeset
  dm era: Use correct value size in equality function of writeset tree
  dm era: Fix bitset memory leaks
  dm era: Verify the data block size hasn't changed
  dm era: Recover committed writeset after crash
  dm writecache: fix writing beyond end of underlying device when shrinking
  dm: fix deadlock when swapping to encrypted device
  gfs2: Recursive gfs2_quota_hold in gfs2_iomap_end
  gfs2: Don't skip dlm unlock if glock has an lvb
  spi: spi-synquacer: fix set_cs handling
  sparc32: fix a user-triggerable oops in clear_user()
  f2fs: fix out-of-repair __setattr_copy()
  um: mm: check more comprehensively for stub changes
  virtio/s390: implement virtio-ccw revision 2 correctly
  s390/vtime: fix inline assembly clobber list
  cpufreq: intel_pstate: Get per-CPU max freq via MSR_HWP_CAPABILITIES if available
  printk: fix deadlock when kernel panic
  gpio: pcf857x: Fix missing first interrupt
  spmi: spmi-pmic-arb: Fix hw_irq overflow
  powerpc/32s: Add missing call to kuep_lock on syscall entry
  mmc: sdhci-esdhc-imx: fix kernel panic when remove module
  module: Ignore _GLOBAL_OFFSET_TABLE_ when warning for undefined symbols
  media: smipcie: fix interrupt handling and IR timeout
  arm64: Extend workaround for erratum 1024718 to all versions of Cortex-A55
  hugetlb: fix copy_huge_page_from_user contig page struct assumption
  hugetlb: fix update_and_free_page contig page struct assumption
  x86: fix seq_file iteration for pat/memtype.c
  seq_file: document how per-entry resources are managed.
  fs/affs: release old buffer head on error path
  mtd: spi-nor: hisi-sfc: Put child node np on error path
  mtd: spi-nor: core: Add erase size check for erase command initialization
  mtd: spi-nor: core: Fix erase type discovery for overlaid region
  mtd: spi-nor: sfdp: Fix wrong erase type bitmask for overlaid region
  mtd: spi-nor: sfdp: Fix last erase region marking
  watchdog: mei_wdt: request stop on unregister
  watchdog: qcom: Remove incorrect usage of QCOM_WDT_ENABLE_IRQ
  arm64: uprobe: Return EOPNOTSUPP for AARCH32 instruction probing
  arm64: kexec_file: fix memory leakage in create_dtb() when fdt_open_into() fails
  floppy: reintroduce O_NDELAY fix
  rcu/nocb: Perform deferred wake up before last idle's need_resched() check
  rcu: Pull deferred rcuog wake up to rcu_eqs_enter() callers
  powerpc/prom: Fix "ibm,arch-vec-5-platform-support" scan
  x86/reboot: Force all cpus to exit VMX root if VMX is supported
  x86/virt: Eat faults on VMXOFF in reboot flows
  media: ipu3-cio2: Fix mbus_code processing in cio2_subdev_set_fmt()
  staging: rtl8188eu: Add Edimax EW-7811UN V2 to device table
  staging: gdm724x: Fix DMA from stack
  staging/mt7621-dma: mtk-hsdma.c->hsdma-mt7621.c
  dts64: mt7622: fix slow sd card access
  pstore: Fix typo in compression option name
  drivers/misc/vmw_vmci: restrict too big queue size in qp_host_alloc_queue
  misc: rtsx: init of rts522a add OCP power off when no card is present
  seccomp: Add missing return in non-void function
  crypto: sun4i-ss - initialize need_fallback
  crypto: sun4i-ss - handle BigEndian for cipher
  crypto: sun4i-ss - checking sg length is not sufficient
  crypto: aesni - prevent misaligned buffers on the stack
  crypto: arm64/sha - add missing module aliases
  btrfs: fix extent buffer leak on failure to copy root
  btrfs: splice remaining dirty_bg's onto the transaction dirty bg list
  btrfs: fix reloc root leak with 0 ref reloc roots on recovery
  btrfs: abort the transaction if we fail to inc ref in btrfs_copy_root
  KEYS: trusted: Fix migratable=1 failing
  tpm_tis: Clean up locality release
  tpm_tis: Fix check_locality for correct locality acquisition
  erofs: initialized fields can only be observed after bit is set
  drm/sched: Cancel and flush all outstanding jobs before finish.
  drm/nouveau/kms: handle mDP connectors
  drm/amdgpu: Set reference clock to 100Mhz on Renoir (v2)
  drm/amd/display: Add vupdate_no_lock interrupts for DCN2.1
  bcache: Move journal work to new flush wq
  bcache: Give btree_io_wq correct semantics again
  Revert "bcache: Kill btree_io_wq"
  ALSA: hda/realtek: modify EAPD in the ALC886
  ALSA: hda: Add another CometLake-H PCI ID
  USB: serial: mos7720: fix error code in mos7720_write()
  USB: serial: mos7840: fix error code in mos7840_write()
  USB: serial: ftdi_sio: fix FTX sub-integer prescaler
  usb: dwc3: gadget: Fix dep->interval for fullspeed interrupt
  usb: dwc3: gadget: Fix setting of DEPCFG.bInterval_m1
  usb: musb: Fix runtime PM race in musb_queue_resume_work
  USB: serial: option: update interface mapping for ZTE P685M
  media: mceusb: Fix potential out-of-bounds shift
  Input: i8042 - add ASUS Zenbook Flip to noselftest list
  Input: joydev - prevent potential read overflow in ioctl
  Input: xpad - add support for PowerA Enhanced Wired Controller for Xbox Series X|S
  Input: raydium_ts_i2c - do not send zero length
  HID: wacom: Ignore attempts to overwrite the touch_max value from HID
  HID: logitech-dj: add support for keyboard events in eQUAD step 4 Gaming
  ACPI: configfs: add missing check after configfs_register_default_group()
  ACPI: property: Fix fwnode string properties matching
  blk-settings: align max_sectors on "logical_block_size" boundary
  scsi: bnx2fc: Fix Kconfig warning & CNIC build errors
  mm/rmap: fix potential pte_unmap on an not mapped pte
  i2c: brcmstb: Fix brcmstd_send_i2c_cmd condition
  arm64: Add missing ISB after invalidating TLB in __primary_switch
  r8169: fix jumbo packet handling on RTL8168e
  mm/compaction: fix misbehaviors of fast_find_migrateblock()
  mm/hugetlb: fix potential double free in hugetlb_register_node() error path
  mm/memory.c: fix potential pte_unmap_unlock pte error
  ocfs2: fix a use after free on error
  vxlan: move debug check after netdev unregister
  net/mlx4_core: Add missed mlx4_free_cmd_mailbox()
  vfio/type1: Use follow_pte()
  i40e: Fix add TC filter for IPv6
  i40e: Fix VFs not created
  i40e: Fix addition of RX filters after enabling FW LLDP agent
  i40e: Fix overwriting flow control settings during driver loading
  i40e: Add zero-initialization of AQ command structures
  i40e: Fix flow for IPv6 next header (extension header)
  regmap: sdw: use _no_pm functions in regmap_read/write
  nvmem: core: skip child nodes not matching binding
  nvmem: core: Fix a resource leak on error in nvmem_add_cells_from_of()
  ext4: fix potential htree index checksum corruption
  vfio/iommu_type1: Fix some sanity checks in detach group
  drm/msm/mdp5: Fix wait-for-commit for cmd panels
  drm/msm/dsi: Correct io_start for MSM8994 (20nm PHY)
  mei: hbm: call mei_set_devstate() on hbm stop response
  PCI: Align checking of syscall user config accessors
  VMCI: Use set_page_dirty_lock() when unregistering guest memory
  pwm: rockchip: rockchip_pwm_probe(): Remove superfluous clk_unprepare()
  soundwire: cadence: fix ACK/NAK handling
  misc: eeprom_93xx46: Add module alias to avoid breaking support for non device tree users
  phy: rockchip-emmc: emmc_phy_init() always return 0
  misc: eeprom_93xx46: Fix module alias to enable module autoprobe
  sparc64: only select COMPAT_BINFMT_ELF if BINFMT_ELF is set
  Input: elo - fix an error code in elo_connect()
  perf test: Fix unaligned access in sample parsing test
  perf intel-pt: Fix premature IPC
  perf intel-pt: Fix missing CYC processing in PSB
  Input: sur40 - fix an error code in sur40_probe()
  RDMA/hns: Fixes missing error code of CMDQ
  nfsd: register pernet ops last, unregister first
  clk: aspeed: Fix APLL calculate formula from ast2600-A2
  regulator: qcom-rpmh: fix pm8009 ldo7
  spi: pxa2xx: Fix the controller numbering for Wildcat Point
  RDMA/hns: Fix type of sq_signal_bits
  RDMA/siw: Fix calculation of tx_valid_cpus size
  RDMA/hns: Fixed wrong judgments in the goto branch
  clk: qcom: gcc-msm8998: Fix Alpha PLL type for all GPLLs
  powerpc/8xx: Fix software emulation interrupt
  powerpc/pseries/dlpar: handle ibm, configure-connector delay status
  mfd: wm831x-auxadc: Prevent use after free in wm831x_auxadc_read_irq()
  spi: stm32: properly handle 0 byte transfer
  RDMA/rxe: Correct skb on loopback path
  RDMA/rxe: Fix coding error in rxe_rcv_mcast_pkt
  RDMA/rxe: Fix coding error in rxe_recv.c
  perf vendor events arm64: Fix Ampere eMag event typo
  perf tools: Fix DSO filtering when not finding a map for a sampled address
  tracepoint: Do not fail unregistering a probe due to memory failure
  IB/cm: Avoid a loop when device has 255 ports
  IB/mlx5: Return appropriate error code instead of ENOMEM
  amba: Fix resource leak for drivers without .remove
  i2c: qcom-geni: Store DMA mapping data in geni_i2c_dev struct
  ARM: 9046/1: decompressor: Do not clear SCTLR.nTLSMD for ARMv7+ cores
  mmc: renesas_sdhi_internal_dmac: Fix DMA buffer alignment from 8 to 128-bytes
  mmc: usdhi6rol0: Fix a resource leak in the error handling path of the probe
  mmc: sdhci-sprd: Fix some resource leaks in the remove function
  powerpc/47x: Disable 256k page size
  KVM: PPC: Make the VMX instruction emulation routines static
  IB/umad: Return EPOLLERR in case of when device disassociated
  IB/umad: Return EIO in case of when device disassociated
  objtool: Fix ".cold" section suffix check for newer versions of GCC
  objtool: Fix error handling for STD/CLD warnings
  auxdisplay: ht16k33: Fix refresh rate handling
  isofs: release buffer head before return
  regulator: core: Avoid debugfs: Directory ... already present! error
  regulator: s5m8767: Drop regulators OF node reference
  spi: atmel: Put allocated master before return
  regulator: s5m8767: Fix reference count leak
  certs: Fix blacklist flag type confusion
  regulator: axp20x: Fix reference cout leak
  clk: sunxi-ng: h6: Fix clock divider range on some clocks
  RDMA/mlx5: Use the correct obj_id upon DEVX TIR creation
  clocksource/drivers/mxs_timer: Add missing semicolon when DEBUG is defined
  clocksource/drivers/ixp4xx: Select TIMER_OF when needed
  rtc: s5m: select REGMAP_I2C
  power: reset: at91-sama5d2_shdwc: fix wkupdbc mask
  of/fdt: Make sure no-map does not remove already reserved regions
  fdt: Properly handle "no-map" field in the memory region
  mfd: bd9571mwv: Use devm_mfd_add_devices()
  dmaengine: hsu: disable spurious interrupt
  dmaengine: owl-dma: Fix a resource leak in the remove function
  dmaengine: fsldma: Fix a resource leak in an error handling path of the probe function
  dmaengine: fsldma: Fix a resource leak in the remove function
  RDMA/siw: Fix handling of zero-sized Read and Receive Queues.
  HID: core: detect and skip invalid inputs to snto32()
  clk: sunxi-ng: h6: Fix CEC clock
  spi: cadence-quadspi: Abort read if dummy cycles required are too many
  i2c: iproc: handle master read request
  i2c: iproc: update slave isr mask (ISR_MASK_SLAVE)
  i2c: iproc: handle only slave interrupts which are enabled
  quota: Fix memory leak when handling corrupted quota file
  selftests/powerpc: Make the test check in eeh-basic.sh posix compliant
  clk: meson: clk-pll: propagate the error from meson_clk_pll_set_rate()
  clk: meson: clk-pll: make "ret" a signed integer
  clk: meson: clk-pll: fix initializing the old rate (fallback) for a PLL
  HSI: Fix PM usage counter unbalance in ssi_hw_init
  capabilities: Don't allow writing ambiguous v3 file capabilities
  ubifs: Fix error return code in alloc_wbufs()
  ubifs: Fix memleak in ubifs_init_authentication
  jffs2: fix use after free in jffs2_sum_write_data()
  fs/jfs: fix potential integer overflow on shift of a int
  ASoC: simple-card-utils: Fix device module clock
  ima: Free IMA measurement buffer after kexec syscall
  ima: Free IMA measurement buffer on error
  crypto: ecdh_helper - Ensure 'len >= secret.len' in decode_key()
  hwrng: timeriomem - Fix cooldown period calculation
  btrfs: clarify error returns values in __load_free_space_cache
  ASoC: SOF: debug: Fix a potential issue on string buffer termination
  Drivers: hv: vmbus: Avoid use-after-free in vmbus_onoffer_rescind()
  f2fs: fix a wrong condition in __submit_bio
  drm/amdgpu: Prevent shift wrapping in amdgpu_read_mask()
  f2fs: fix to avoid inconsistent quota data
  mtd: parsers: afs: Fix freeing the part name memory in failure
  ASoC: cpcap: fix microphone timeslot mask
  ata: ahci_brcm: Add back regulators management
  drm/nouveau: bail out of nouveau_channel_new if channel init fails
  crypto: talitos - Work around SEC6 ERRATA (AES-CTR mode data size error)
  mtd: parser: imagetag: fix error codes in bcm963xx_parse_imagetag_partitions()
  sched/eas: Don't update misfit status if the task is pinned
  media: uvcvideo: Accept invalid bFormatIndex and bFrameIndex values
  media: pxa_camera: declare variable when DEBUG is defined
  media: cx25821: Fix a bug when reallocating some dma memory
  media: qm1d1c0042: fix error return code in qm1d1c0042_init()
  media: lmedm04: Fix misuse of comma
  media: software_node: Fix refcounts in software_node_get_next_child()
  drm/amd/display: Fix HDMI deep color output for DCE 6-11.
  drm/amd/display: Fix 10/12 bpc setup in DCE output bit depth reduction.
  bsg: free the request before return error code
  MIPS: properly stop .eh_frame generation
  drm/sun4i: tcon: fix inverted DCLK polarity
  crypto: bcm - Rename struct device_private to bcm_device_private
  evm: Fix memleak in init_desc
  ASoC: cs42l56: fix up error handling in probe
  media: aspeed: fix error return code in aspeed_video_setup_video()
  media: tm6000: Fix memleak in tm6000_start_stream
  media: media/pci: Fix memleak in empress_init
  media: em28xx: Fix use-after-free in em28xx_alloc_urbs
  media: vsp1: Fix an error handling path in the probe function
  media: camss: missing error code in msm_video_register()
  media: imx: Fix csc/scaler unregister
  media: imx: Unregister csc/scaler only if registered
  media: i2c: ov5670: Fix PIXEL_RATE minimum value
  MIPS: lantiq: Explicitly compare LTQ_EBU_PCC_ISTAT against 0
  MIPS: c-r4k: Fix section mismatch for loongson2_sc_init
  drm/amdgpu: Fix macro name _AMDGPU_TRACE_H_ in preprocessor if condition
  crypto: arm64/aes-ce - really hide slower algos when faster ones are enabled
  crypto: sun4i-ss - fix kmap usage
  crypto: sun4i-ss - linearize buffers content must be kept
  drm/fb-helper: Add missed unlocks in setcmap_legacy()
  gma500: clean up error handling in init
  drm/gma500: Fix error return code in psb_driver_load()
  fbdev: aty: SPARC64 requires FB_ATY_CT
  net: mvneta: Remove per-cpu queue mapping for Armada 3700
  net: amd-xgbe: Fix network fluctuations when using 1G BELFUSE SFP
  net: amd-xgbe: Reset link when the link never comes back
  net: amd-xgbe: Fix NETDEV WATCHDOG transmit queue timeout warning
  net: amd-xgbe: Reset the PHY rx data path when mailbox command timeout
  ibmvnic: skip send_request_unmap for timeout reset
  ibmvnic: add memory barrier to protect long term buffer
  b43: N-PHY: Fix the update of coef for the PHY revision >= 3case
  cxgb4/chtls/cxgbit: Keeping the max ofld immediate data size same in cxgb4 and ulds
  net: axienet: Handle deferred probe on clock properly
  tcp: fix SO_RCVLOWAT related hangs under mem pressure
  bpf: Fix bpf_fib_lookup helper MTU check for SKB ctx
  mac80211: fix potential overflow when multiplying to u32 integers
  xen/netback: fix spurious event detection for common event case
  bnxt_en: reverse order of TX disable and carrier off
  ibmvnic: Set to CLOSED state even on error
  ath9k: fix data bus crash when setting nf_override via debugfs
  bpf_lru_list: Read double-checked variable once without lock
  soc: aspeed: snoop: Add clock control logic
  ARM: s3c: fix fiq for clang IAS
  arm64: dts: msm8916: Fix reserved and rfsa nodes unit address
  Bluetooth: btusb: Fix memory leak in btusb_mtk_wmt_recv
  arm64: dts: armada-3720-turris-mox: rename u-boot mtd partition to a53-firmware
  ARM: dts: armada388-helios4: assign pinctrl to each fan
  ARM: dts: armada388-helios4: assign pinctrl to LEDs
  staging: rtl8723bs: wifi_regd.c: Fix incorrect number of regulatory rules
  usb: dwc2: Make "trimming xfer length" a debug message
  usb: dwc2: Abort transaction after errors with unknown reason
  usb: dwc2: Do not update data length if it is 0 on inbound transfers
  ARM: dts: Configure missing thermal interrupt for 4430
  memory: ti-aemif: Drop child node when jumping out loop
  Bluetooth: Put HCI device if inquiry procedure interrupts
  Bluetooth: drop HCI device reference before return
  usb: gadget: u_audio: Free requests only after callback
  ACPICA: Fix exception code class checks
  cpufreq: brcmstb-avs-cpufreq: Fix resource leaks in ->remove()
  cpufreq: brcmstb-avs-cpufreq: Free resources in error path
  arm64: dts: allwinner: A64: Limit MMC2 bus frequency to 150 MHz
  arm64: dts: allwinner: H6: Allow up to 150 MHz MMC bus frequency
  arm64: dts: allwinner: Drop non-removable from SoPine/LTS SD card
  arm64: dts: allwinner: H6: properly connect USB PHY to port 0
  arm64: dts: allwinner: A64: properly connect USB PHY to port 0
  bpf: Avoid warning when re-casting __bpf_call_base into __bpf_call_base_args
  bpf: Add bpf_patch_call_args prototype to include/linux/bpf.h
  memory: mtk-smi: Fix PM usage counter unbalance in mtk_smi ops
  arm64: dts: exynos: correct PMIC interrupt trigger level on Espresso
  arm64: dts: exynos: correct PMIC interrupt trigger level on TM2
  ARM: dts: exynos: correct PMIC interrupt trigger level on Odroid XU3 family
  ARM: dts: exynos: correct PMIC interrupt trigger level on Arndale Octa
  ARM: dts: exynos: correct PMIC interrupt trigger level on Spring
  ARM: dts: exynos: correct PMIC interrupt trigger level on Rinato
  ARM: dts: exynos: correct PMIC interrupt trigger level on Monk
  ARM: dts: exynos: correct PMIC interrupt trigger level on Artik 5
  Bluetooth: Fix initializing response id after clearing struct
  Bluetooth: hci_uart: Fix a race for write_work scheduling
  Bluetooth: btqcomsmd: Fix a resource leak in error handling paths in the probe function
  ath10k: Fix error handling in case of CE pipe init failure
  random: fix the RNDRESEEDCRNG ioctl
  MIPS: vmlinux.lds.S: add missing PAGE_ALIGNED_DATA() section
  ALSA: usb-audio: Fix PCM buffer allocation in non-vmalloc mode
  bfq: Avoid false bfq queue merging
  virt: vbox: Do not use wait_event_interruptible when called from kernel context
  PCI: Decline to resize resources if boot config must be preserved
  PCI: qcom: Use PHY_REFCLK_USE_PAD only for ipq8064
  kdb: Make memory allocations more robust
  debugfs: do not attempt to create a new file before the filesystem is initalized
  debugfs: be more robust at handling improper input in debugfs_lookup()
  kvm: x86: replace kvm_spec_ctrl_test_value with runtime test on the host
  vmlinux.lds.h: add DWARF v5 sections
  Linux 5.4.101
  scripts/recordmcount.pl: support big endian for ARCH sh
  cifs: Set CIFS_MOUNT_USE_PREFIX_PATH flag on setting cifs_sb->prepath.
  cxgb4: Add new T6 PCI device id 0x6092
  NET: usb: qmi_wwan: Adding support for Cinterion MV31
  KVM: Use kvm_pfn_t for local PFN variable in hva_to_pfn_remapped()
  mm: provide a saner PTE walking API for modules
  KVM: do not assume PTE is writable after follow_pfn
  mm: simplify follow_pte{,pmd}
  mm: unexport follow_pte_pmd
  scripts: set proper OpenSSL include dir also for sign-file
  scripts: use pkg-config to locate libcrypto
  arm64: tegra: Add power-domain for Tegra210 HDA
  ntfs: check for valid standard information attribute
  usb: quirks: add quirk to start video capture on ELMO L-12F document camera reliable
  USB: quirks: sort quirk entries
  HID: make arrays usage and value to be the same
  bpf: Fix truncation handling for mod32 dst reg wrt zero
  Linux 5.4.100
  btrfs: fix backport of 2175bf57dc952 in 5.4.95
  media: pwc: Use correct device for DMA
  xen-blkback: fix error handling in xen_blkbk_map()
  xen-scsiback: don't "handle" error by BUG()
  xen-netback: don't "handle" error by BUG()
  xen-blkback: don't "handle" error by BUG()
  xen/arm: don't ignore return errors from set_phys_to_machine
  Xen/gntdev: correct error checking in gntdev_map_grant_pages()
  Xen/gntdev: correct dev_bus_addr handling in gntdev_map_grant_pages()
  Xen/x86: also check kernel mapping in set_foreign_p2m_mapping()
  Xen/x86: don't bail early from clear_foreign_p2m_mapping()
  net: bridge: Fix a warning when del bridge sysfs
  net: qrtr: Fix port ID for control messages
  KVM: SEV: fix double locking due to incorrect backport
  ANDROID: GKI: Fix up .xml file after merge with android11-5.4
  ANDROID: GKI: Fix up .xml file after merge with android11-5.4
  ANDROID: GKI: fix up .xml file after big merge with android11-5.4
  Linux 5.4.99
  ovl: expand warning in ovl_d_real()
  net/qrtr: restrict user-controlled length in qrtr_tun_write_iter()
  net/rds: restrict iovecs length for RDS_CMSG_RDMA_ARGS
  vsock: fix locking in vsock_shutdown()
  vsock/virtio: update credit only if socket is not closed
  net: watchdog: hold device global xmit lock during tx disable
  net/vmw_vsock: improve locking in vsock_connect_timeout()
  net: fix iteration for sctp transport seq_files
  net: gro: do not keep too many GRO packets in napi->rx_list
  net: dsa: call teardown method on probe failure
  udp: fix skb_copy_and_csum_datagram with odd segment sizes
  rxrpc: Fix clearance of Tx/Rx ring when releasing a call
  usb: dwc3: ulpi: Replace CPU-based busyloop with Protocol-based one
  usb: dwc3: ulpi: fix checkpatch warning
  h8300: fix PREEMPTION build, TI_PRE_COUNT undefined
  i2c: stm32f7: fix configuration of the digital filter
  clk: sunxi-ng: mp: fix parent rate change flag check
  drm/sun4i: dw-hdmi: Fix max. frequency for H6
  drm/sun4i: Fix H6 HDMI PHY configuration
  drm/sun4i: tcon: set sync polarity for tcon1 channel
  firmware_loader: align .builtin_fw to 8
  net: hns3: add a check for queue_id in hclge_reset_vf_queue()
  x86/build: Disable CET instrumentation in the kernel for 32-bit too
  netfilter: conntrack: skip identical origin tuple in same zone only
  ibmvnic: Clear failover_pending if unable to schedule
  net: stmmac: set TxQ mode back to DCB after disabling CBS
  selftests: txtimestamp: fix compilation issue
  net: enetc: initialize the RFS and RSS memories
  xen/netback: avoid race in xenvif_rx_ring_slots_available()
  netfilter: flowtable: fix tcp and udp header checksum update
  netfilter: nftables: fix possible UAF over chains from packet path in netns
  netfilter: xt_recent: Fix attempt to update deleted entry
  bpf: Check for integer overflow when using roundup_pow_of_two()
  drm/vc4: hvs: Fix buffer overflow with the dlist handling
  mt76: dma: fix a possible memory leak in mt76_add_fragment()
  lkdtm: don't move ctors to .rodata
  vmlinux.lds.h: Create section for protection against instrumentation
  ARM: kexec: fix oops after TLB are invalidated
  ARM: ensure the signal page contains defined contents
  ARM: dts: lpc32xx: Revert set default clock rate of HCLK PLL
  bfq-iosched: Revert "bfq: Fix computation of shallow depth"
  riscv: virt_addr_valid must check the address belongs to linear mapping
  drm/amd/display: Decrement refcount of dc_sink before reassignment
  drm/amd/display: Free atomic state after drm_atomic_commit
  drm/amd/display: Fix dc_sink kref count in emulated_link_detect
  drm/amd/display: Add more Clock Sources to DCN2.1
  nvme-pci: ignore the subsysem NQN on Phison E16
  ovl: skip getxattr of security labels
  cap: fix conversions on getxattr
  ovl: perform vfs_getxattr() with mounter creds
  platform/x86: hp-wmi: Disable tablet-mode reporting by default
  ARM: OMAP2+: Fix suspcious RCU usage splats for omap_enter_idle_coupled
  arm64: dts: qcom: sdm845: Reserve LPASS clocks in gcc
  arm64: dts: rockchip: Fix PCIe DT properties on rk3399
  cgroup: fix psi monitor for root cgroup
  arm/xen: Don't probe xenbus as part of an early initcall
  tracing: Check length before giving out the filter buffer
  tracing: Do not count ftrace events in top level enable output
  gpio: ep93xx: Fix single irqchip with multi gpiochips
  gpio: ep93xx: fix BUG_ON port F usage
  Linux 5.4.98
  squashfs: add more sanity checks in xattr id lookup
  squashfs: add more sanity checks in inode lookup
  squashfs: add more sanity checks in id lookup
  Fix unsynchronized access to sev members through svm_register_enc_region
  bpf: Fix 32 bit src register truncation on div/mod
  regulator: Fix lockdep warning resolving supplies
  blk-cgroup: Use cond_resched() when destroy blkgs
  i2c: mediatek: Move suspend and resume handling to NOIRQ phase
  SUNRPC: Handle 0 length opaque XDR object data properly
  SUNRPC: Move simple_get_bytes and simple_get_netobj into private header
  iwlwifi: mvm: guard against device removal in reprobe
  iwlwifi: mvm: invalidate IDs of internal stations at mvm start
  iwlwifi: pcie: fix context info memory leak
  iwlwifi: pcie: add a NULL check in iwl_pcie_txq_unmap
  iwlwifi: mvm: take mutex for calling iwl_mvm_get_sync_time()
  iwlwifi: mvm: skip power command when unbinding vif during CSA
  ASoC: ak4458: correct reset polarity
  pNFS/NFSv4: Try to return invalid layout in pnfs_layout_process()
  chtls: Fix potential resource leak
  ASoC: Intel: Skylake: Zero snd_ctl_elem_value
  mac80211: 160MHz with extended NSS BW in CSA
  regulator: core: avoid regulator_resolve_supply() race condition
  af_key: relax availability checks for skb size calculation
  tracing/kprobe: Fix to support kretprobe events on unloaded modules
  UPSTREAM: usb: xhci-mtk: break loop when find the endpoint to drop
  UPSTREAM: usb: xhci-mtk: skip dropping bandwidth of unchecked endpoints
  Linux 5.4.97
  usb: host: xhci: mvebu: make USB 3.0 PHY optional for Armada 3720
  net: sched: replaced invalid qdisc tree flush helper in qdisc_replace
  net: dsa: mv88e6xxx: override existent unicast portvec in port_fdb_add
  net: ip_tunnel: fix mtu calculation
  neighbour: Prevent a dead entry from updating gc_list
  igc: Report speed and duplex as unknown when device is runtime suspended
  md: Set prev_flush_start and flush_bio in an atomic way
  iommu/vt-d: Do not use flush-queue when caching-mode is on
  Input: xpad - sync supported devices with fork on GitHub
  iwlwifi: mvm: don't send RFH_QUEUE_CONFIG_CMD with no queues
  x86/apic: Add extra serialization for non-serializing MSRs
  x86/build: Disable CET instrumentation in the kernel
  mm: thp: fix MADV_REMOVE deadlock on shmem THP
  mm, compaction: move high_pfn to the for loop scope
  mm: hugetlb: remove VM_BUG_ON_PAGE from page_huge_active
  mm: hugetlb: fix a race between isolating and freeing page
  mm: hugetlb: fix a race between freeing and dissolving the page
  mm: hugetlbfs: fix cannot migrate the fallocated HugeTLB page
  ARM: footbridge: fix dc21285 PCI configuration accessors
  KVM: x86: Update emulator context mode if SYSENTER xfers to 64-bit mode
  KVM: SVM: Treat SVM as unsupported when running as an SEV guest
  nvme-pci: avoid the deepest sleep state on Kingston A2000 SSDs
  drm/amd/display: Revert "Fix EDID parsing after resume from suspend"
  mmc: core: Limit retries when analyse of SDIO tuples fails
  smb3: fix crediting for compounding when only one request in flight
  smb3: Fix out-of-bounds bug in SMB2_negotiate()
  cifs: report error instead of invalid when revalidating a dentry fails
  xhci: fix bounce buffer usage for non-sg list case
  genirq/msi: Activate Multi-MSI early when MSI_FLAG_ACTIVATE_EARLY is set
  libnvdimm/dimm: Avoid race between probe and available_slots_show()
  kretprobe: Avoid re-registration of the same kretprobe earlier
  fgraph: Initialize tracing_graph_pause at task creation
  mac80211: fix station rate table updates on assoc
  ovl: fix dentry leak in ovl_get_redirect
  usb: host: xhci-plat: add priv quirk for skip PHY initialization
  usb: xhci-mtk: break loop when find the endpoint to drop
  usb: xhci-mtk: skip dropping bandwidth of unchecked endpoints
  usb: xhci-mtk: fix unreleased bandwidth data
  usb: dwc3: fix clock issue during resume in OTG mode
  usb: dwc2: Fix endpoint direction check in ep_from_windex
  usb: renesas_usbhs: Clear pipe running flag in usbhs_pkt_pop()
  USB: usblp: don't call usb_set_interface if there's a single alt
  USB: gadget: legacy: fix an error code in eth_bind()
  memblock: do not start bottom-up allocations with kernel_end
  nvmet-tcp: fix out-of-bounds access when receiving multiple h2cdata PDUs
  ARM: dts: sun7i: a20: bananapro: Fix ethernet phy-mode
  r8169: fix WoL on shutdown if CONFIG_DEBUG_SHIRQ is set
  net: mvpp2: TCAM entry enable should be written after SRAM data
  net: lapb: Copy the skb before sending a packet
  net/mlx5: Fix leak upon failure of rule creation
  i40e: Revert "i40e: don't report link up for a VF who hasn't enabled queues"
  igc: check return value of ret_val in igc_config_fc_after_link_up
  igc: set the default return value to -IGC_ERR_NVM in igc_write_nvm_srwr
  arm64: dts: ls1046a: fix dcfg address range
  rxrpc: Fix deadlock around release of dst cached on udp tunnel
  um: virtio: free vu_dev only with the contained struct device
  bpf, cgroup: Fix problematic bounds check
  bpf, cgroup: Fix optlen WARN_ON_ONCE toctou
  arm64: dts: rockchip: fix vopl iommu irq on px30
  arm64: dts: amlogic: meson-g12: Set FL-adj property value
  Input: i8042 - unbreak Pegatron C15B
  arm64: dts: qcom: c630: keep both touchpad devices enabled
  USB: serial: option: Adding support for Cinterion MV31
  USB: serial: cp210x: add new VID/PID for supporting Teraoka AD2000
  USB: serial: cp210x: add pid/vid for WSDA-200-USB
  Linux 5.4.96
  workqueue: Restrict affinity change to rescuer
  kthread: Extract KTHREAD_IS_PER_CPU
  objtool: Don't fail on missing symbol table
  drm/amd/display: Change function decide_dp_link_settings to avoid infinite looping
  drm/amd/display: Update dram_clock_change_latency for DCN2.1
  selftests/powerpc: Only test lwm/stmw on big endian
  nvme: check the PRINFO bit before deciding the host buffer length
  udf: fix the problem that the disc content is not displayed
  ALSA: hda: Add Cometlake-R PCI ID
  scsi: ibmvfc: Set default timeout to avoid crash during migration
  mac80211: fix fast-rx encryption check
  ASoC: SOF: Intel: hda: Resume codec to do jack detection
  scsi: fnic: Fix memleak in vnic_dev_init_devcmd2
  scsi: libfc: Avoid invoking response handler twice if ep is already completed
  scsi: scsi_transport_srp: Don't block target in failfast state
  x86: __always_inline __{rd,wr}msr()
  platform/x86: intel-vbtn: Support for tablet mode on Dell Inspiron 7352
  platform/x86: touchscreen_dmi: Add swap-x-y quirk for Goodix touchscreen on Estar Beauty HD tablet
  phy: cpcap-usb: Fix warning for missing regulator_disable
  net_sched: gen_estimator: support large ewma log
  btrfs: backref, use correct count to resolve normal data refs
  btrfs: backref, only search backref entries from leaves of the same root
  btrfs: backref, don't add refs from shared block when resolving normal backref
  btrfs: backref, only collect file extent items matching backref offset
  tcp: make TCP_USER_TIMEOUT accurate for zero window probes
  arm64: Do not pass tagged addresses to __is_lm_address()
  arm64: Fix kernel address detection of __is_lm_address()
  ACPI: thermal: Do not call acpi_thermal_check() directly
  Revert "Revert "block: end bio with BLK_STS_AGAIN in case of non-mq devs and REQ_NOWAIT""
  ibmvnic: Ensure that CRQ entry read are correctly ordered
  net: switchdev: don't set port_obj_info->handled true when -EOPNOTSUPP
  net: dsa: bcm_sf2: put device node before return
  Linux 5.4.95
  tcp: fix TLP timer not set when CA_STATE changes from DISORDER to OPEN
  team: protect features update by RCU to avoid deadlock
  ASoC: topology: Fix memory corruption in soc_tplg_denum_create_values()
  NFC: fix possible resource leak
  NFC: fix resource leak when target index is invalid
  rxrpc: Fix memory leak in rxrpc_lookup_local
  iommu/vt-d: Don't dereference iommu_device if IOMMU_API is not built
  iommu/vt-d: Gracefully handle DMAR units with no supported address widths
  selftests: forwarding: Specify interface when invoking mausezahn
  nvme-multipath: Early exit if no path is available
  can: dev: prevent potential information leak in can_fill_info()
  net/mlx5e: Reduce tc unsupported key print level
  net/mlx5e: E-switch, Fix rate calculation for overflow
  net/mlx5: Fix memory leak on flow table creation error flow
  igc: fix link speed advertising
  i40e: acquire VSI pointer only after VF is initialized
  mac80211: pause TX while changing interface type
  iwlwifi: pcie: reschedule in long-running memory reads
  iwlwifi: pcie: use jiffies for memory read spin time limit
  pNFS/NFSv4: Fix a layout segment leak in pnfs_layout_process()
  ASoC: Intel: Skylake: skl-topology: Fix OOPs ib skl_tplg_complete
  RDMA/cxgb4: Fix the reported max_recv_sge value
  firmware: imx: select SOC_BUS to fix firmware build
  ARM: dts: imx6qdl-kontron-samx6i: fix i2c_lcd/cam default status
  arm64: dts: ls1028a: fix the offset of the reset register
  xfrm: Fix wraparound in xfrm_policy_addr_delta()
  selftests: xfrm: fix test return value override issue in xfrm_policy.sh
  xfrm: fix disable_xfrm sysctl when used on xfrm interfaces
  xfrm: Fix oops in xfrm_replay_advance_bmp
  netfilter: nft_dynset: add timeout extension to template
  ARM: imx: build suspend-imx6.S with arm instruction set
  xen-blkfront: allow discard-* nodes to be optional
  tee: optee: replace might_sleep with cond_resched
  drm/i915: Check for all subplatform bits
  drm/nouveau/svm: fail NOUVEAU_SVM_INIT ioctl on unsupported devices
  mt7601u: fix rx buffer refcounting
  mt7601u: fix kernel crash unplugging the device
  arm64: dts: broadcom: Fix USB DMA address translation for Stingray
  leds: trigger: fix potential deadlock with libata
  xen: Fix XenStore initialisation for XS_LOCAL
  KVM: Forbid the use of tagged userspace addresses for memslots
  KVM: x86: get smi pending status correctly
  KVM: nVMX: Sync unsync'd vmcs02 state to vmcs12 on migration
  KVM: x86/pmu: Fix UBSAN shift-out-of-bounds warning in intel_pmu_refresh()
  KVM: x86/pmu: Fix HW_REF_CPU_CYCLES event pseudo-encoding in intel_arch_events[]
  btrfs: fix possible free space tree corruption with online conversion
  drivers: soc: atmel: add null entry at the end of at91_soc_allowed_list[]
  drivers: soc: atmel: Avoid calling at91_soc_init on non AT91 SoCs
  PM: hibernate: flush swap writer after marking
  s390/vfio-ap: No need to disable IRQ after queue reset
  net: usb: qmi_wwan: added support for Thales Cinterion PLSx3 modem family
  wext: fix NULL-ptr-dereference with cfg80211's lack of commit()
  ARM: dts: imx6qdl-gw52xx: fix duplicate regulator naming
  media: rc: ensure that uevent can be read directly after rc device register
  ALSA: hda/via: Apply the workaround generically for Clevo machines
  ALSA: hda/realtek: Enable headset of ASUS B1400CEPE with ALC256
  kernel: kexec: remove the lock operation of system_transition_mutex
  ACPI: sysfs: Prefer "compatible" modalias
  nbd: freeze the queue while we're adding connections
  IPv6: reply ICMP error if the first fragment don't include all headers
  ICMPv6: Add ICMPv6 Parameter Problem, code 3 definition
  ANDROID: arm64: mm: ensure that memstart_addr and physvirt_offset remain in sync
  Revert "arm64: mm: use single quantity to represent the PA to VA translation"
  Linux 5.4.94
  fs: fix lazytime expiration handling in __writeback_single_inode()
  writeback: Drop I_DIRTY_TIME_EXPIRE
  dm integrity: conditionally disable "recalculate" feature
  tools: Factor HOSTCC, HOSTLD, HOSTAR definitions
  SMB3.1.1: do not log warning message if server doesn't populate salt
  arm64: mm: use single quantity to represent the PA to VA translation
  tracing: Fix race in trace_open and buffer resize call
  io_uring: Fix current->fs handling in io_sq_wq_submit_work()
  HID: wacom: Correct NULL dereference on AES pen proximity
  futex: Handle faults correctly for PI futexes
  futex: Simplify fixup_pi_state_owner()
  futex: Use pi_state_update_owner() in put_pi_state()
  rtmutex: Remove unused argument from rt_mutex_proxy_unlock()
  futex: Provide and use pi_state_update_owner()
  futex: Replace pointless printk in fixup_owner()
  futex: Ensure the correct return value from futex_lock_pi()
  Revert "mm/slub: fix a memory leak in sysfs_slab_add()"
  gpio: mvebu: fix pwm .get_state period calculation
  ANDROID: GKI: api preservation of struct inet_connection_sock
  ANDROID: GKI: update .xml file in android11-5.4-lts
  Linux 5.4.93
  tcp: fix TCP_USER_TIMEOUT with zero window
  tcp: do not mess with cloned skbs in tcp_add_backlog()
  net: dsa: b53: fix an off by one in checking "vlan->vid"
  net: Disable NETIF_F_HW_TLS_RX when RXCSUM is disabled
  net: mscc: ocelot: allow offloading of bridge on top of LAG
  ipv6: set multicast flag on the multicast route
  net_sched: reject silly cell_log in qdisc_get_rtab()
  net_sched: avoid shift-out-of-bounds in tcindex_set_parms()
  ipv6: create multicast route with RTPROT_KERNEL
  udp: mask TOS bits in udp_v4_early_demux()
  kasan: fix incorrect arguments passing in kasan_add_zero_shadow
  kasan: fix unaligned address is unhandled in kasan_remove_zero_shadow
  skbuff: back tiny skbs with kmalloc() in __netdev_alloc_skb() too
  lightnvm: fix memory leak when submit fails
  sh_eth: Fix power down vs. is_opened flag ordering
  net: dsa: mv88e6xxx: also read STU state in mv88e6250_g1_vtu_getnext
  sh: dma: fix kconfig dependency for G2_DMA
  netfilter: rpfilter: mask ecn bits before fib lookup
  x86/cpu/amd: Set __max_die_per_package on AMD
  pinctrl: ingenic: Fix JZ4760 support
  driver core: Extend device_is_dependent()
  xhci: tegra: Delay for disabling LFPS detector
  xhci: make sure TRB is fully written before giving it to the controller
  usb: bdc: Make bdc pci driver depend on BROKEN
  usb: udc: core: Use lock when write to soft_connect
  usb: gadget: aspeed: fix stop dma register setting.
  USB: ehci: fix an interrupt calltrace error
  ehci: fix EHCI host controller initialization sequence
  serial: mvebu-uart: fix tx lost characters at power off
  stm class: Fix module init return on allocation failure
  intel_th: pci: Add Alder Lake-P support
  x86/mmx: Use KFPU_387 for MMX string operations
  x86/topology: Make __max_die_per_package available unconditionally
  x86/fpu: Add kernel_fpu_begin_mask() to selectively initialize state
  irqchip/mips-cpu: Set IPI domain parent chip
  cifs: do not fail __smb_send_rqst if non-fatal signals are pending
  iio: ad5504: Fix setting power-down state
  can: peak_usb: fix use after free bugs
  can: vxcan: vxcan_xmit: fix use after free bug
  can: dev: can_restart: fix use after free bug
  selftests: net: fib_tests: remove duplicate log test
  platform/x86: intel-vbtn: Drop HP Stream x360 Convertible PC 11 from allow-list
  i2c: octeon: check correct size of maximum RECV_LEN packet
  powerpc: Fix alignment bug within the init sections
  scsi: megaraid_sas: Fix MEGASAS_IOC_FIRMWARE regression
  pinctrl: aspeed: g6: Fix PWMG0 pinctrl setting
  powerpc: Use the common INIT_DATA_SECTION macro in vmlinux.lds.S
  drm/nouveau/kms/nv50-: fix case where notifier buffer is at offset 0
  drm/nouveau/mmu: fix vram heap sizing
  drm/nouveau/i2c/gm200: increase width of aux semaphore owner fields
  drm/nouveau/privring: ack interrupts the same way as RM
  drm/nouveau/bios: fix issue shadowing expansion ROMs
  drm/amd/display: Fix to be able to stop crc calculation
  drm/amdgpu/psp: fix psp gfx ctrl cmds
  riscv: defconfig: enable gpio support for HiFive Unleashed
  dts: phy: fix missing mdio device and probe failure of vsc8541-01 device
  x86/xen: Add xen_no_vector_callback option to test PCI INTX delivery
  xen: Fix event channel callback via INTX/GSI
  arm64: make atomic helpers __always_inline
  clk: tegra30: Add hda clock default rates to clock driver
  HID: Ignore battery for Elan touchscreen on ASUS UX550
  HID: logitech-dj: add the G602 receiver
  riscv: Fix sifive serial driver
  riscv: Fix kernel time_init()
  scsi: sd: Suppress spurious errors when WRITE SAME is being disabled
  scsi: qedi: Correct max length of CHAP secret
  scsi: ufs: Correct the LUN used in eh_device_reset_handler() callback
  dm integrity: select CRYPTO_SKCIPHER
  HID: multitouch: Enable multi-input for Synaptics pointstick/touchpad device
  ASoC: Intel: haswell: Add missing pm_ops
  drm/i915/gt: Prevent use of engine->wa_ctx after error
  drm/syncobj: Fix use-after-free
  drm/atomic: put state on error path
  dm integrity: fix a crash if "recalculate" used without "internal_hash"
  dm: avoid filesystem lookup in dm_get_dev_t()
  mmc: sdhci-xenon: fix 1.8v regulator stabilization
  mmc: core: don't initialize block size from ext_csd if not present
  btrfs: send: fix invalid clone operations when cloning from the same file and root
  btrfs: don't clear ret in btrfs_start_dirty_block_groups
  btrfs: fix lockdep splat in btrfs_recover_relocation
  btrfs: don't get an EINTR during drop_snapshot for reloc
  ACPI: scan: Make acpi_bus_get_device() clear return pointer on error
  ALSA: hda/via: Add minimum mute flag
  ALSA: seq: oss: Fix missing error check in snd_seq_oss_synth_make_info()
  platform/x86: ideapad-laptop: Disable touchpad_switch for ELAN0634
  platform/x86: i2c-multi-instantiate: Don't create platform device for INT3515 ACPI nodes
  i2c: bpmp-tegra: Ignore unknown I2C_M flags
  Linux 5.4.92
  spi: cadence: cache reference clock rate during probe
  mac80211: check if atf has been disabled in __ieee80211_schedule_txq
  mac80211: do not drop tx nulldata packets on encrypted links
  tipc: fix NULL deref in tipc_link_xmit()
  net, sctp, filter: remap copy_from_user failure error
  rxrpc: Fix handling of an unsupported token type in rxrpc_read()
  net: avoid 32 x truesize under-estimation for tiny skbs
  net: sit: unregister_netdevice on newlink's error path
  net: stmmac: Fixed mtu channged by cache aligned
  rxrpc: Call state should be read with READ_ONCE() under some circumstances
  net: dcb: Accept RTM_GETDCB messages carrying set-like DCB commands
  net: dcb: Validate netlink message in DCB handler
  esp: avoid unneeded kmap_atomic call
  rndis_host: set proper input size for OID_GEN_PHYSICAL_MEDIUM request
  net: mvpp2: Remove Pause and Asym_Pause support
  mlxsw: core: Increase critical threshold for ASIC thermal zone
  mlxsw: core: Add validation of transceiver temperature thresholds
  net: ipv6: Validate GSO SKB before finish IPv6 processing
  net: skbuff: disambiguate argument and member for skb_list_walk_safe helper
  net: introduce skb_list_walk_safe for skb segment walking
  netxen_nic: fix MSI/MSI-x interrupts
  udp: Prevent reuseport_select_sock from reading uninitialized socks
  bpf: Fix helper bpf_map_peek_elem_proto pointing to wrong callback
  bpf: Don't leak memory in bpf getsockopt when optlen == 0
  nfsd4: readdirplus shouldn't return parent of export
  spi: npcm-fiu: Disable clock in probe error path
  spi: npcm-fiu: simplify the return expression of npcm_fiu_probe()
  scsi: lpfc: Make lpfc_defer_acc_rsp static
  scsi: lpfc: Make function lpfc_defer_pt2pt_acc static
  elfcore: fix building with clang
  xen/privcmd: allow fetching resource sizes
  compiler.h: Raise minimum version of GCC to 5.1 for arm64
  usb: ohci: Make distrust_firmware param default to false
  Linux 5.4.91
  netfilter: nft_compat: remove flush counter optimization
  netfilter: nf_nat: Fix memleak in nf_nat_init
  netfilter: conntrack: fix reading nf_conntrack_buckets
  ALSA: firewire-tascam: Fix integer overflow in midi_port_work()
  ALSA: fireface: Fix integer overflow in transmit_midi_msg()
  dm: eliminate potential source of excessive kernel log noise
  net: sunrpc: interpret the return value of kstrtou32 correctly
  iommu/vt-d: Fix unaligned addresses for intel_flush_svm_range_dev()
  mm, slub: consider rest of partial list if acquire_slab() fails
  drm/i915/dsi: Use unconditional msleep for the panel_on_delay when there is no reset-deassert MIPI-sequence
  IB/mlx5: Fix error unwinding when set_has_smi_cap fails
  RDMA/mlx5: Fix wrong free of blue flame register on error
  bnxt_en: Improve stats context resource accounting with RDMA driver loaded.
  RDMA/usnic: Fix memleak in find_free_vf_and_create_qp_grp
  RDMA/restrack: Don't treat as an error allocation ID wrapping
  ext4: fix superblock checksum failure when setting password salt
  NFS: nfs_igrab_and_active must first reference the superblock
  NFS/pNFS: Fix a leak of the layout 'plh_outstanding' counter
  pNFS: Stricter ordering of layoutget and layoutreturn
  pNFS: Mark layout for return if return-on-close was not sent
  pNFS: We want return-on-close to complete when evicting the inode
  NFS4: Fix use-after-free in trace_event_raw_event_nfs4_set_lock
  nvme-tcp: fix possible data corruption with bio merges
  ASoC: Intel: fix error code cnl_set_dsp_D0()
  ASoC: meson: axg-tdmin: fix axg skew offset
  ASoC: meson: axg-tdm-interface: fix loopback
  dump_common_audit_data(): fix racy accesses to ->d_name
  perf intel-pt: Fix 'CPU too large' error
  ARM: picoxcell: fix missing interrupt-parent properties
  drm/msm: Call msm_init_vram before binding the gpu
  ACPI: scan: add stub acpi_create_platform_device() for !CONFIG_ACPI
  usb: typec: Fix copy paste error for NVIDIA alt-mode description
  drm/amdgpu: fix a GPU hang issue when remove device
  nvmet-rdma: Fix list_del corruption on queue establishment failure
  nvme-pci: mark Samsung PM1725a as IGNORE_DEV_SUBNQN
  selftests: fix the return value for UDP GRO test
  net: ethernet: fs_enet: Add missing MODULE_LICENSE
  misdn: dsp: select CONFIG_BITREVERSE
  arch/arc: add copy_user_page() to <asm/page.h> to fix build error on ARC
  bfq: Fix computation of shallow depth
  lib/raid6: Let $(UNROLL) rules work with macOS userland
  hwmon: (pwm-fan) Ensure that calculation doesn't discard big period values
  habanalabs: Fix memleak in hl_device_reset
  habanalabs: register to pci shutdown callback
  ethernet: ucc_geth: fix definition and size of ucc_geth_tx_global_pram
  regulator: bd718x7: Add enable times
  btrfs: fix transaction leak and crash after RO remount caused by qgroup rescan
  netfilter: ipset: fixes possible oops in mtype_resize
  ARC: build: move symlink creation to arch/arc/Makefile to avoid race
  ARC: build: add boot_targets to PHONY
  ARC: build: add uImage.lzma to the top-level target
  ARC: build: remove non-existing bootpImage from KBUILD_IMAGE
  dm integrity: fix flush with external metadata device
  cifs: fix interrupted close commands
  smb3: remove unused flag passed into close functions
  ext4: don't leak old mountpoint samples
  ext4: fix bug for rename with RENAME_WHITEOUT
  drm/i915/backlight: fix CPU mode backlight takeover on LPT
  btrfs: tree-checker: check if chunk item end overflows
  r8152: Add Lenovo Powered USB-C Travel Hub
  dm integrity: fix the maximum number of arguments
  dm snapshot: flush merged data before committing metadata
  dm raid: fix discard limits for raid1
  mm/hugetlb: fix potential missing huge page size info
  ACPI: scan: Harden acpi_device_add() against device ID overflows
  RDMA/ocrdma: Fix use after free in ocrdma_dealloc_ucontext_pd()
  MIPS: relocatable: fix possible boot hangup with KASLR enabled
  MIPS: boot: Fix unaligned access with CONFIG_MIPS_RAW_APPENDED_DTB
  mips: lib: uncached: fix non-standard usage of variable 'sp'
  mips: fix Section mismatch in reference
  tracing/kprobes: Do the notrace functions check without kprobes on ftrace
  x86/hyperv: check cpu mask after interrupt has been disabled
  ASoC: dapm: remove widget from dirty list on free
  btrfs: prevent NULL pointer dereference in extent_io_tree_panic
  kbuild: enforce -Werror=return-type
  Linux 5.4.90
  regmap: debugfs: Fix a reversed if statement in regmap_debugfs_init()
  net: drop bogus skb with CHECKSUM_PARTIAL and offset beyond end of trimmed packet
  block: fix use-after-free in disk_part_iter_next
  KVM: arm64: Don't access PMCR_EL0 when no PMU is available
  net: mvpp2: disable force link UP during port init procedure
  regulator: qcom-rpmh-regulator: correct hfsmps515 definition
  wan: ds26522: select CONFIG_BITREVERSE
  regmap: debugfs: Fix a memory leak when calling regmap_attach_dev
  net/mlx5e: Fix two double free cases
  net/mlx5e: Fix memleak in mlx5e_create_l2_table_groups
  bpftool: Fix compilation failure for net.o with older glibc
  iommu/intel: Fix memleak in intel_irq_remapping_alloc
  lightnvm: select CONFIG_CRC32
  block: rsxx: select CONFIG_CRC32
  wil6210: select CONFIG_CRC32
  qed: select CONFIG_CRC32
  dmaengine: xilinx_dma: fix mixed_enum_type coverity warning
  dmaengine: xilinx_dma: fix incompatible param warning in _child_probe()
  dmaengine: xilinx_dma: check dma_async_device_register return value
  dmaengine: mediatek: mtk-hsdma: Fix a resource leak in the error handling path of the probe function
  i2c: i801: Fix the i2c-mux gpiod_lookup_table not being properly terminated
  spi: stm32: FIFO threshold level - fix align packet size
  cpufreq: powernow-k8: pass policy rather than use cpufreq_cpu_get()
  can: kvaser_pciefd: select CONFIG_CRC32
  can: m_can: m_can_class_unregister(): remove erroneous m_can_clk_stop()
  can: tcan4x5x: fix bittiming const, use common bittiming from m_can driver
  dmaengine: dw-edma: Fix use after free in dw_edma_alloc_chunk()
  i2c: sprd: use a specific timeout to avoid system hang up issue
  ARM: OMAP2+: omap_device: fix idling of devices during probe
  HID: wacom: Fix memory leakage caused by kfifo_alloc
  iio: imu: st_lsm6dsx: fix edge-trigger interrupts
  vmlinux.lds.h: Add PGO and AutoFDO input sections
  exfat: Month timestamp metadata accidentally incremented
  x86/resctrl: Don't move a task to the same resource group
  x86/resctrl: Use an IPI instead of task_work_add() to update PQR_ASSOC MSR
  chtls: Fix chtls resources release sequence
  chtls: Added a check to avoid NULL pointer dereference
  chtls: Replace skb_dequeue with skb_peek
  chtls: Fix panic when route to peer not configured
  chtls: Remove invalid set_tcb call
  chtls: Fix hardware tid leak
  net/mlx5e: ethtool, Fix restriction of autoneg with 56G
  net/mlx5: Use port_num 1 instead of 0 when delete a RoCE address
  net: dsa: lantiq_gswip: Exclude RMII from modes that report 1 GbE
  s390/qeth: fix L2 header access in qeth_l3_osa_features_check()
  nexthop: Unlink nexthop group entry in error path
  nexthop: Fix off-by-one error in error path
  octeontx2-af: fix memory leak of lmac and lmac->name
  net: ip: always refragment ip defragmented packets
  net: fix pmtu check in nopmtudisc mode
  tools: selftests: add test for changing routes with PTMU exceptions
  net: ipv6: fib: flush exceptions when purging route
  net/sonic: Fix some resource leaks in error handling paths
  net: vlan: avoid leaks on register_vlan_dev() failures
  net: stmmac: dwmac-sun8i: Balance internal PHY power
  net: stmmac: dwmac-sun8i: Balance internal PHY resource references
  net: hns3: fix a phy loopback fail issue
  net: hns3: fix the number of queues actually used by ARQ
  net: cdc_ncm: correct overhead in delayed_ndp_size
  vfio iommu: Add dma available capability
  x86/asm/32: Add ENDs to some functions and relabel with SYM_CODE_*
  Linux 5.4.89
  scsi: target: Fix XCOPY NAA identifier lookup
  KVM: x86: fix shift out of bounds reported by UBSAN
  x86/mtrr: Correct the range check before performing MTRR type lookups
  netfilter: nft_dynset: report EOPNOTSUPP on missing set feature
  netfilter: xt_RATEEST: reject non-null terminated string from userspace
  netfilter: ipset: fix shift-out-of-bounds in htable_bits()
  netfilter: x_tables: Update remaining dereference to RCU
  drm/i915: clear the gpu reloc batch
  dmabuf: fix use-after-free of dmabuf's file->f_inode
  Revert "device property: Keep secondary firmware node secondary by type"
  btrfs: send: fix wrong file path when there is an inode with a pending rmdir
  ALSA: hda/realtek: Add two "Intel Reference board" SSID in the ALC256.
  ALSA: hda/realtek: Enable mute and micmute LED on HP EliteBook 850 G7
  ALSA: hda/realtek - Fix speaker volume control on Lenovo C940
  ALSA: hda/conexant: add a new hda codec CX11970
  ALSA: hda/via: Fix runtime PM for Clevo W35xSS
  kvm: check tlbs_dirty directly
  x86/mm: Fix leak of pmd ptlock
  USB: serial: keyspan_pda: remove unused variable
  usb: gadget: configfs: Fix use-after-free issue with udc_name
  usb: gadget: configfs: Preserve function ordering after bind failure
  usb: gadget: Fix spinlock lockup on usb_function_deactivate
  USB: gadget: legacy: fix return error code in acm_ms_bind()
  usb: gadget: u_ether: Fix MTU size mismatch with RX packet size
  usb: gadget: function: printer: Fix a memory leak for interface descriptor
  usb: gadget: f_uac2: reset wMaxPacketSize
  usb: gadget: select CONFIG_CRC32
  ALSA: usb-audio: Fix UBSAN warnings for MIDI jacks
  USB: usblp: fix DMA to stack
  USB: yurex: fix control-URB timeout handling
  USB: serial: option: add Quectel EM160R-GL
  USB: serial: option: add LongSung M5710 module support
  USB: serial: iuu_phoenix: fix DMA from stack
  usb: uas: Add PNY USB Portable SSD to unusual_uas
  usb: usbip: vhci_hcd: protect shift size
  USB: xhci: fix U1/U2 handling for hardware with XHCI_INTEL_HOST quirk set
  usb: chipidea: ci_hdrc_imx: add missing put_device() call in usbmisc_get_init_data()
  usb: dwc3: ulpi: Use VStsDone to detect PHY regs access completion
  USB: cdc-wdm: Fix use after free in service_outstanding_interrupt().
  USB: cdc-acm: blacklist another IR Droid device
  usb: gadget: enable super speed plus
  staging: mt7621-dma: Fix a resource leak in an error handling path
  powerpc: Handle .text.{hot,unlikely}.* in linker script
  crypto: asym_tpm: correct zero out potential secrets
  crypto: ecdh - avoid buffer overflow in ecdh_set_secret()
  video: hyperv_fb: Fix the mmap() regression for v5.4.y and older
  Bluetooth: revert: hci_h5: close serdev device and free hu in h5_close
  kbuild: don't hardcode depmod path
  net/sched: sch_taprio: ensure to reset/destroy all child qdiscs
  ionic: account for vlan tag len in rx buffer len
  vhost_net: fix ubuf refcount incorrectly when sendmsg fails
  net: usb: qmi_wwan: add Quectel EM160R-GL
  CDC-NCM: remove "connected" log message
  net: dsa: lantiq_gswip: Fix GSWIP_MII_CFG(p) register access
  net: dsa: lantiq_gswip: Enable GSWIP_MII_CFG_EN also for internal PHYs
  r8169: work around power-saving bug on some chip versions
  net: hdlc_ppp: Fix issues when mod_timer is called while timer is running
  erspan: fix version 1 check in gre_parse_header()
  net: hns: fix return value check in __lb_other_process()
  net: sched: prevent invalid Scell_log shift count
  ipv4: Ignore ECN bits for fib lookups in fib_compute_spec_dst()
  net: mvpp2: fix pkt coalescing int-threshold configuration
  tun: fix return value when the number of iovs exceeds MAX_SKB_FRAGS
  net: ethernet: ti: cpts: fix ethtool output when no ptp_clock registered
  net-sysfs: take the rtnl lock when accessing xps_rxqs_map and num_tc
  net-sysfs: take the rtnl lock when storing xps_rxqs
  net-sysfs: take the rtnl lock when accessing xps_cpus_map and num_tc
  net-sysfs: take the rtnl lock when storing xps_cpus
  net: ethernet: Fix memleak in ethoc_probe
  net/ncsi: Use real net-device for response handler
  virtio_net: Fix recursive call to cpus_read_lock()
  qede: fix offload for IPIP tunnel packets
  net: ethernet: mvneta: Fix error handling in mvneta_probe
  ibmvnic: continue fatal error reset after passive init
  net: mvpp2: Fix GoP port 3 Networking Complex Control configurations
  atm: idt77252: call pci_disable_device() on error path
  ethernet: ucc_geth: set dev->max_mtu to 1518
  ethernet: ucc_geth: fix use-after-free in ucc_geth_remove()
  net: systemport: set dev->max_mtu to UMAC_MAX_MTU_SIZE
  net: mvpp2: prs: fix PPPoE with ipv6 packet parse
  net: mvpp2: Add TCAM entry to drop flow control pause frames
  iavf: fix double-release of rtnl_lock
  i40e: Fix Error I40E_AQ_RC_EINVAL when removing VFs
  proc: fix lookup in /proc/net subdirectories after setns(2)
  proc: change ->nlink under proc_subdir_lock
  depmod: handle the case of /sbin/depmod without /sbin in PATH
  lib/genalloc: fix the overflow when size is too big
  scsi: scsi_transport_spi: Set RQF_PM for domain validation commands
  scsi: ide: Do not set the RQF_PREEMPT flag for sense requests
  scsi: ufs-pci: Ensure UFS device is in PowerDown mode for suspend-to-disk ->poweroff()
  scsi: ufs: Fix wrong print message in dev_err()
  workqueue: Kick a worker based on the actual activation of delayed works
  Revert "rwsem: Implement down_read_killable_nested"
  Revert "rwsem: Implement down_read_interruptible"
  Revert "perf: Use new infrastructure to fix deadlocks in execve"
  Revert "perf: Break deadlock involving exec_update_mutex"
  Revert "exec: Add exec_update_mutex to replace cred_guard_mutex"
  Revert "kernel/kcmp.c: Use new infrastructure to fix deadlocks in execve"
  Revert "proc: Use new infrastructure to fix deadlocks in execve"
  Revert "proc: io_accounting: Use new infrastructure to fix deadlocks in execve"
  Revert "exec: Fix a deadlock in strace"
  Revert "exec: Transform exec_update_mutex into a rw_semaphore"
  Revert "Revert "exec: Fix a deadlock in strace""
  Revert "Revert "perf: Use new infrastructure to fix deadlocks in execve""
  Revert "Revert "proc: io_accounting: Use new infrastructure to fix deadlocks in execve""
  Revert "Revert "proc: Use new infrastructure to fix deadlocks in execve""
  Revert "Revert "kernel/kcmp.c: Use new infrastructure to fix deadlocks in execve""
  Revert "Revert "exec: Add exec_update_mutex to replace cred_guard_mutex""
  Linux 5.4.88
  mwifiex: Fix possible buffer overflows in mwifiex_cmd_802_11_ad_hoc_start
  exec: Transform exec_update_mutex into a rw_semaphore
  rwsem: Implement down_read_interruptible
  rwsem: Implement down_read_killable_nested
  perf: Break deadlock involving exec_update_mutex
  fuse: fix bad inode
  iio:imu:bmi160: Fix alignment and data leak issues
  kdev_t: always inline major/minor helper functions
  dmaengine: at_hdmac: add missing kfree() call in at_dma_xlate()
  dmaengine: at_hdmac: add missing put_device() call in at_dma_xlate()
  dmaengine: at_hdmac: Substitute kzalloc with kmalloc
  Revert "mtd: spinand: Fix OOB read"
  Revert "drm/amd/display: Fix memory leaks in S3 resume"
  Linux 5.4.87
  dm verity: skip verity work if I/O error when system is shutting down
  ALSA: pcm: Clear the full allocated memory at hw_params
  tick/sched: Remove bogus boot "safety" check
  um: ubd: Submit all data segments atomically
  fs/namespace.c: WARN if mnt_count has become negative
  module: delay kobject uevent until after module init call
  f2fs: avoid race condition for shrinker count
  NFSv4: Fix a pNFS layout related use-after-free race when freeing the inode
  i3c master: fix missing destroy_workqueue() on error in i3c_master_register
  powerpc: sysdev: add missing iounmap() on error in mpic_msgr_probe()
  rtc: pl031: fix resource leak in pl031_probe
  quota: Don't overflow quota file offsets
  module: set MODULE_STATE_GOING state when a module fails to load
  rtc: sun6i: Fix memleak in sun6i_rtc_clk_init
  fcntl: Fix potential deadlock in send_sig{io, urg}()
  bfs: don't use WARNING: string when it's just info.
  ALSA: rawmidi: Access runtime->avail always in spinlock
  ALSA: seq: Use bool for snd_seq_queue internal flags
  f2fs: fix shift-out-of-bounds in sanity_check_raw_super()
  media: gp8psk: initialize stats at power control logic
  misc: vmw_vmci: fix kernel info-leak by initializing dbells in vmci_ctx_get_chkpt_doorbells()
  reiserfs: add check for an invalid ih_entry_count
  Bluetooth: hci_h5: close serdev device and free hu in h5_close
  scsi: cxgb4i: Fix TLS dependency
  cgroup: Fix memory leak when parsing multiple source parameters
  of: fix linker-section match-table corruption
  null_blk: Fix zone size initialization
  tools headers UAPI: Sync linux/const.h with the kernel headers
  uapi: move constants from <linux/kernel.h> to <linux/const.h>
  scsi: block: Fix a race in the runtime power management code
  jffs2: Fix NULL pointer dereference in rp_size fs option parsing
  jffs2: Allow setting rp_size to zero during remounting
  powerpc/bitops: Fix possible undefined behaviour with fls() and fls64()
  KVM: x86: reinstate vendor-agnostic check on SPEC_CTRL cpuid bits
  KVM: SVM: relax conditions for allowing MSR_IA32_SPEC_CTRL accesses
  KVM: x86: avoid incorrect writes to host MSR_IA32_SPEC_CTRL
  ext4: don't remount read-only with errors=continue on reboot
  btrfs: fix race when defragmenting leads to unnecessary IO
  vfio/pci: Move dummy_resources_list init in vfio_pci_probe()
  fscrypt: remove kernel-internal constants from UAPI header
  fscrypt: add fscrypt_is_nokey_name()
  f2fs: prevent creating duplicate encrypted filenames
  ubifs: prevent creating duplicate encrypted filenames
  ext4: prevent creating duplicate encrypted filenames
  thermal/drivers/cpufreq_cooling: Update cpufreq_state only if state has changed
  md/raid10: initialize r10_bio->read_slot before use.
  net/sched: sch_taprio: reset child qdiscs before freeing them

 Conflicts:
	Documentation/devicetree/bindings
	Documentation/devicetree/bindings/net/btusb.txt
	Documentation/devicetree/bindings/net/ethernet-controller.yaml
	arch/arm/kernel/smccc-call.S
	arch/arm64/kernel/cpufeature.c
	block/blk-pm.c
	drivers/dma-buf/dma-buf.c
	drivers/iommu/arm-smmu.c
	drivers/md/dm-verity-target.c
	drivers/spmi/spmi-pmic-arb.c
	drivers/staging/exfat/exfat_super.c
	drivers/usb/core/hub.c
	drivers/usb/dwc3/core.c
	drivers/usb/dwc3/debugfs.c
	drivers/usb/dwc3/gadget.c
	drivers/usb/gadget/function/f_fs.c
	drivers/usb/gadget/function/f_uac2.c
	drivers/usb/gadget/function/u_audio.c
	fs/fuse/fuse_i.h
	include/linux/mm.h
	kernel/cpu.c
	kernel/sched/fair.c
	kernel/workqueue.c
	mm/huge_memory.c
	net/ipv4/tcp_timer.c
	net/qrtr/qrtr.c
	net/qrtr/tun.c
	security/selinux/avc.c

 fixed build errors.

Change-Id: I8c05a8523ac57cedf52589a41ec4c582fd512a26
Signed-off-by: Srinivasarao P <spathi@codeaurora.org>
2021-10-06 09:48:07 +05:30
Jan Kara
4d4f11c356 rq-qos: fix missed wake-ups in rq_qos_throttle try two
commit 11c7aa0ddea8611007768d3e6b58d45dc60a19e1 upstream.

Commit 545fbd0775 ("rq-qos: fix missed wake-ups in rq_qos_throttle")
tried to fix a problem that a process could be sleeping in rq_qos_wait()
without anyone to wake it up. However the fix is not complete and the
following can still happen:

CPU1 (waiter1)		CPU2 (waiter2)		CPU3 (waker)
rq_qos_wait()		rq_qos_wait()
  acquire_inflight_cb() -> fails
			  acquire_inflight_cb() -> fails

						completes IOs, inflight
						  decreased
  prepare_to_wait_exclusive()
			  prepare_to_wait_exclusive()
  has_sleeper = !wq_has_single_sleeper() -> true as there are two sleepers
			  has_sleeper = !wq_has_single_sleeper() -> true
  io_schedule()		  io_schedule()

Deadlock as now there's nobody to wakeup the two waiters. The logic
automatically blocking when there are already sleepers is really subtle
and the only way to make it work reliably is that we check whether there
are some waiters in the queue when adding ourselves there. That way, we
are guaranteed that at least the first process to enter the wait queue
will recheck the waiting condition before going to sleep and thus
guarantee forward progress.

Fixes: 545fbd0775 ("rq-qos: fix missed wake-ups in rq_qos_throttle")
CC: stable@vger.kernel.org
Signed-off-by: Jan Kara <jack@suse.cz>
Link: https://lore.kernel.org/r/20210607112613.25344-1-jack@suse.cz
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-07-19 08:53:16 +02:00
Pradeep P V K
45eba39e07 wait: add wake_up_sync()
The synchronous wakeup interface is available only for the interruptible
wakeup. Add it for normal wakeup.

Change-Id: Ia4460aa55690d14d203cdc843bd600c9e26c53f1
Suggested-by: Pavankumar Kondeti <pkondeti@codeaurora.org>
Signed-off-by: Pradeep P V K <pragalla@codeaurora.org>
2021-06-28 22:59:07 -07:00
Linus Torvalds
7f2444d38f Merge branch 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
Pull core timer updates from Thomas Gleixner:
 "Timers and timekeeping updates:

   - A large overhaul of the posix CPU timer code which is a preparation
     for moving the CPU timer expiry out into task work so it can be
     properly accounted on the task/process.

     An update to the bogus permission checks will come later during the
     merge window as feedback was not complete before heading of for
     travel.

   - Switch the timerqueue code to use cached rbtrees and get rid of the
     homebrewn caching of the leftmost node.

   - Consolidate hrtimer_init() + hrtimer_init_sleeper() calls into a
     single function

   - Implement the separation of hrtimers to be forced to expire in hard
     interrupt context even when PREEMPT_RT is enabled and mark the
     affected timers accordingly.

   - Implement a mechanism for hrtimers and the timer wheel to protect
     RT against priority inversion and live lock issues when a (hr)timer
     which should be canceled is currently executing the callback.
     Instead of infinitely spinning, the task which tries to cancel the
     timer blocks on a per cpu base expiry lock which is held and
     released by the (hr)timer expiry code.

   - Enable the Hyper-V TSC page based sched_clock for Hyper-V guests
     resulting in faster access to timekeeping functions.

   - Updates to various clocksource/clockevent drivers and their device
     tree bindings.

   - The usual small improvements all over the place"

* 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (101 commits)
  posix-cpu-timers: Fix permission check regression
  posix-cpu-timers: Always clear head pointer on dequeue
  hrtimer: Add a missing bracket and hide `migration_base' on !SMP
  posix-cpu-timers: Make expiry_active check actually work correctly
  posix-timers: Unbreak CONFIG_POSIX_TIMERS=n build
  tick: Mark sched_timer to expire in hard interrupt context
  hrtimer: Add kernel doc annotation for HRTIMER_MODE_HARD
  x86/hyperv: Hide pv_ops access for CONFIG_PARAVIRT=n
  posix-cpu-timers: Utilize timerqueue for storage
  posix-cpu-timers: Move state tracking to struct posix_cputimers
  posix-cpu-timers: Deduplicate rlimit handling
  posix-cpu-timers: Remove pointless comparisons
  posix-cpu-timers: Get rid of 64bit divisions
  posix-cpu-timers: Consolidate timer expiry further
  posix-cpu-timers: Get rid of zero checks
  rlimit: Rewrite non-sensical RLIMIT_CPU comment
  posix-cpu-timers: Respect INFINITY for hard RTTIME limit
  posix-cpu-timers: Switch thread group sampling to array
  posix-cpu-timers: Restructure expiry array
  posix-cpu-timers: Remove cputime_expires
  ...
2019-09-17 12:35:15 -07:00
Sebastian Andrzej Siewior
dbc1625fc9 hrtimer: Consolidate hrtimer_init() + hrtimer_init_sleeper() calls
hrtimer_init_sleeper() calls require prior initialisation of the hrtimer
object which is embedded into the hrtimer_sleeper.

Combine the initialization and spare a function call. Fixup all call sites.

This is also a preparatory change for PREEMPT_RT to do hrtimer sleeper
specific initializations of the embedded hrtimer without modifying any of
the call sites.

No functional change.

[ anna-maria: Minor cleanups ]
[ tglx: Adopted to the removal of the task argument of
  	hrtimer_init_sleeper() and trivial polishing.
	Folded a fix from Stephen Rothwell for the vsoc code ]

Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Signed-off-by: Anna-Maria Gleixner <anna-maria@linutronix.de>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Link: https://lkml.kernel.org/r/20190726185752.887468908@linutronix.de
2019-08-01 17:43:15 +02:00
Thomas Gleixner
b744948725 hrtimer: Remove task argument from hrtimer_init_sleeper()
All callers hand in 'current' and that's the only task pointer which
actually makes sense. Remove the task argument and set current in the
function.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Reviewed-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Link: https://lkml.kernel.org/r/20190726185752.791885290@linutronix.de
2019-07-30 23:57:51 +02:00
Josef Bacik
a6d81d30d3 wait: add wq_has_single_sleeper helper
rq-qos sits in the io path so we want to take locks as sparingly as
possible.  To accomplish this we try not to take the waitqueue head lock
unless we are sure we need to go to sleep, and we have an optimization
to make sure that we don't starve out existing waiters.  Since we check
if there are existing waiters locklessly we need to be able to update
our view of the waitqueue list after we've added ourselves to the
waitqueue.  Accomplish this by adding this helper to see if there is
more than just ourselves on the list.

Reviewed-by: Oleg Nesterov <oleg@redhat.com>
Signed-off-by: Josef Bacik <josef@toxicpanda.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2019-07-18 10:20:13 -06:00
Tobin C. Harding
8c1007fdc7 docs: Add colon clearing sphinx warning
Sphinx emits various warnings all caused by a missing colon before code
block:

	WARNING: Block quote ends without a blank line; unexpected unindent.
	ERROR: Unexpected indentation.
	WARNING: Block quote ends without a blank line; unexpected unindent.

Add the colon, clearing sphinx warnings.

Signed-off-by: Tobin C. Harding <tobin@kernel.org>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
2019-04-09 15:14:49 -06:00
Hugo Lefeuvre
2b9c2a4859 sched/wait: Use freezable_schedule() when possible
Replace 'schedule(); try_to_freeze();' with a call to freezable_schedule().

Tasks calling freezable_schedule() set the PF_FREEZER_SKIP flag
before calling schedule(). Unlike tasks calling schedule();
try_to_freeze() tasks calling freezable_schedule() are not awaken by
try_to_freeze_tasks(). Instead they call try_to_freeze() when they
wake up if the freeze is still underway.

It is not a problem since sleeping tasks can't do anything which isn't
allowed for a frozen task while sleeping.

The result is a potential performance gain during freeze, since less
tasks have to be awaken.

For instance on a bare Debian vm running a 4.19 stable kernel, the
number of tasks skipped in freeze_task() went up from 12 without the
patch to 32 with the patch (out of 448), an increase of > x2.5.

Signed-off-by: Hugo Lefeuvre <hle@owl.eu.com>
Reviewed-by: Joel Fernandes (Google) <joel@joelfernandes.org>
Cc: Joel Fernandes <joel@joelfernandes.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Rafael J. Wysocki <rjw@rjwysocki.net>
Cc: Thomas Gleixner <tglx@linutronix.de>
Link: http://lkml.kernel.org/r/20190207200352.GA27859@behemoth.owl.eu.com.local
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2019-02-11 08:34:04 +01:00
Nicholas Bellinger
25ab0bc334 scsi: sched/wait: Add wait_event_lock_irq_timeout for TASK_UNINTERRUPTIBLE usage
Short of reverting commit 00d909a107 ("scsi: target: Make the session
shutdown code also wait for commands that are being aborted") for v4.19,
target-core needs a wait_event_t macro can be executed using
TASK_UNINTERRUPTIBLE to function correctly with existing fabric drivers that
expect to run with signals pending during session shutdown and active se_cmd
I/O quiesce.

The most notable is iscsi-target/iser-target, while ibmvscsi_tgt invokes
session shutdown logic from userspace via configfs attribute that could also
potentially have signals pending.

So go ahead and introduce wait_event_lock_irq_timeout() to achieve this, and
update + rename __wait_event_lock_irq_timeout() to make it accept 'state' as a
parameter.

Fixes: 00d909a107 ("scsi: target: Make the session shutdown code also wait for commands that are being aborted")
Cc: <stable@vger.kernel.org> # v4.19+
Cc: Bart Van Assche <bvanassche@acm.org>
Cc: Mike Christie <mchristi@redhat.com>
Cc: Hannes Reinecke <hare@suse.com>
Cc: Christoph Hellwig <hch@lst.de>
Cc: Sagi Grimberg <sagi@grimberg.me>
Cc: Bryant G. Ly <bryantly@linux.vnet.ibm.com>
Cc: Peter Zijlstra (Intel) <peterz@infradead.org>
Tested-by: Nicholas Bellinger <nab@linux-iscsi.org>
Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
Reviewed-by: Bryant G. Ly <bly@catalogicsoftware.com>
Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Reviewed-by: Bart Van Assche <bvanassche@acm.org>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
2018-10-16 00:11:13 -04:00
NeilBrown
0957a2c1d9 sched/wait: add wait_event_idle() functions.
The new TASK_IDLE state (TASK_UNINTERRUPTIBLE | __TASK_NOLOAD)
is not much used.  One way to make it easier to use is to
add wait_event*() family functions that make use of it.
This patch adds:
  wait_event_idle()
  wait_event_idle_timeout()
  wait_event_idle_exclusive()
  wait_event_idle_exclusive_timeout()

This set was chosen because lustre needs them before
it can discard its own l_wait_event() macro.

Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Signed-off-by: NeilBrown <neilb@suse.com>
Reviewed-by: Patrick Farrell <paf@cray.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2018-02-16 15:19:09 +01:00
Al Viro
3ad6f93e98 annotate poll-related wait keys
__poll_t is also used as wait key in some waitqueues.
Verify that wait_..._poll() gets __poll_t as key and
provide a helper for wakeup functions to get back to
that __poll_t value.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2017-11-27 16:19:54 -05:00
Greg Kroah-Hartman
b24413180f License cleanup: add SPDX GPL-2.0 license identifier to files with no license
Many source files in the tree are missing licensing information, which
makes it harder for compliance tools to determine the correct license.

By default all files without license information are under the default
license of the kernel, which is GPL version 2.

Update the files which contain no license information with the 'GPL-2.0'
SPDX license identifier.  The SPDX identifier is a legally binding
shorthand, which can be used instead of the full boiler plate text.

This patch is based on work done by Thomas Gleixner and Kate Stewart and
Philippe Ombredanne.

How this work was done:

Patches were generated and checked against linux-4.14-rc6 for a subset of
the use cases:
 - file had no licensing information it it.
 - file was a */uapi/* one with no licensing information in it,
 - file was a */uapi/* one with existing licensing information,

Further patches will be generated in subsequent months to fix up cases
where non-standard license headers were used, and references to license
had to be inferred by heuristics based on keywords.

The analysis to determine which SPDX License Identifier to be applied to
a file was done in a spreadsheet of side by side results from of the
output of two independent scanners (ScanCode & Windriver) producing SPDX
tag:value files created by Philippe Ombredanne.  Philippe prepared the
base worksheet, and did an initial spot review of a few 1000 files.

The 4.13 kernel was the starting point of the analysis with 60,537 files
assessed.  Kate Stewart did a file by file comparison of the scanner
results in the spreadsheet to determine which SPDX license identifier(s)
to be applied to the file. She confirmed any determination that was not
immediately clear with lawyers working with the Linux Foundation.

Criteria used to select files for SPDX license identifier tagging was:
 - Files considered eligible had to be source code files.
 - Make and config files were included as candidates if they contained >5
   lines of source
 - File already had some variant of a license header in it (even if <5
   lines).

All documentation files were explicitly excluded.

The following heuristics were used to determine which SPDX license
identifiers to apply.

 - when both scanners couldn't find any license traces, file was
   considered to have no license information in it, and the top level
   COPYING file license applied.

   For non */uapi/* files that summary was:

   SPDX license identifier                            # files
   ---------------------------------------------------|-------
   GPL-2.0                                              11139

   and resulted in the first patch in this series.

   If that file was a */uapi/* path one, it was "GPL-2.0 WITH
   Linux-syscall-note" otherwise it was "GPL-2.0".  Results of that was:

   SPDX license identifier                            # files
   ---------------------------------------------------|-------
   GPL-2.0 WITH Linux-syscall-note                        930

   and resulted in the second patch in this series.

 - if a file had some form of licensing information in it, and was one
   of the */uapi/* ones, it was denoted with the Linux-syscall-note if
   any GPL family license was found in the file or had no licensing in
   it (per prior point).  Results summary:

   SPDX license identifier                            # files
   ---------------------------------------------------|------
   GPL-2.0 WITH Linux-syscall-note                       270
   GPL-2.0+ WITH Linux-syscall-note                      169
   ((GPL-2.0 WITH Linux-syscall-note) OR BSD-2-Clause)    21
   ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause)    17
   LGPL-2.1+ WITH Linux-syscall-note                      15
   GPL-1.0+ WITH Linux-syscall-note                       14
   ((GPL-2.0+ WITH Linux-syscall-note) OR BSD-3-Clause)    5
   LGPL-2.0+ WITH Linux-syscall-note                       4
   LGPL-2.1 WITH Linux-syscall-note                        3
   ((GPL-2.0 WITH Linux-syscall-note) OR MIT)              3
   ((GPL-2.0 WITH Linux-syscall-note) AND MIT)             1

   and that resulted in the third patch in this series.

 - when the two scanners agreed on the detected license(s), that became
   the concluded license(s).

 - when there was disagreement between the two scanners (one detected a
   license but the other didn't, or they both detected different
   licenses) a manual inspection of the file occurred.

 - In most cases a manual inspection of the information in the file
   resulted in a clear resolution of the license that should apply (and
   which scanner probably needed to revisit its heuristics).

 - When it was not immediately clear, the license identifier was
   confirmed with lawyers working with the Linux Foundation.

 - If there was any question as to the appropriate license identifier,
   the file was flagged for further research and to be revisited later
   in time.

In total, over 70 hours of logged manual review was done on the
spreadsheet to determine the SPDX license identifiers to apply to the
source files by Kate, Philippe, Thomas and, in some cases, confirmation
by lawyers working with the Linux Foundation.

Kate also obtained a third independent scan of the 4.13 code base from
FOSSology, and compared selected files where the other two scanners
disagreed against that SPDX file, to see if there was new insights.  The
Windriver scanner is based on an older version of FOSSology in part, so
they are related.

Thomas did random spot checks in about 500 files from the spreadsheets
for the uapi headers and agreed with SPDX license identifier in the
files he inspected. For the non-uapi files Thomas did random spot checks
in about 15000 files.

In initial set of patches against 4.14-rc6, 3 files were found to have
copy/paste license identifier errors, and have been fixed to reflect the
correct identifier.

Additionally Philippe spent 10 hours this week doing a detailed manual
inspection and review of the 12,461 patched files from the initial patch
version early this week with:
 - a full scancode scan run, collecting the matched texts, detected
   license ids and scores
 - reviewing anything where there was a license detected (about 500+
   files) to ensure that the applied SPDX license was correct
 - reviewing anything where there was no detection but the patch license
   was not GPL-2.0 WITH Linux-syscall-note to ensure that the applied
   SPDX license was correct

This produced a worksheet with 20 files needing minor correction.  This
worksheet was then exported into 3 different .csv files for the
different types of files to be modified.

These .csv files were then reviewed by Greg.  Thomas wrote a script to
parse the csv files and add the proper SPDX tag to the file, in the
format that the file expected.  This script was further refined by Greg
based on the output to detect more types of files automatically and to
distinguish between header and source .c files (which need different
comment types.)  Finally Greg ran the script using the .csv files to
generate the patches.

Reviewed-by: Kate Stewart <kstewart@linuxfoundation.org>
Reviewed-by: Philippe Ombredanne <pombredanne@nexb.com>
Reviewed-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2017-11-02 11:10:55 +01:00
Tim Chen
11a19c7b09 sched/wait: Introduce wakeup boomark in wake_up_page_bit
Now that we have added breaks in the wait queue scan and allow bookmark
on scan position, we put this logic in the wake_up_page_bit function.

We can have very long page wait list in large system where multiple
pages share the same wait list. We break the wake up walk here to allow
other cpus a chance to access the list, and not to disable the interrupts
when traversing the list for too long.  This reduces the interrupt and
rescheduling latency, and excessive page wait queue lock hold time.

[ v2: Remove bookmark_wake_function ]

Signed-off-by: Tim Chen <tim.c.chen@linux.intel.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2017-09-14 09:56:18 -07:00
Tim Chen
2554db9165 sched/wait: Break up long wake list walk
We encountered workloads that have very long wake up list on large
systems. A waker takes a long time to traverse the entire wake list and
execute all the wake functions.

We saw page wait list that are up to 3700+ entries long in tests of
large 4 and 8 socket systems. It took 0.8 sec to traverse such list
during wake up. Any other CPU that contends for the list spin lock will
spin for a long time. It is a result of the numa balancing migration of
hot pages that are shared by many threads.

Multiple CPUs waking are queued up behind the lock, and the last one
queued has to wait until all CPUs did all the wakeups.

The page wait list is traversed with interrupt disabled, which caused
various problems. This was the original cause that triggered the NMI
watch dog timer in: https://patchwork.kernel.org/patch/9800303/ . Only
extending the NMI watch dog timer there helped.

This patch bookmarks the waker's scan position in wake list and break
the wake up walk, to allow access to the list before the waker resume
its walk down the rest of the wait list. It lowers the interrupt and
rescheduling latency.

This patch also provides a performance boost when combined with the next
patch to break up page wakeup list walk. We saw 22% improvement in the
will-it-scale file pread2 test on a Xeon Phi system running 256 threads.

[ v2: Merged in Linus' changes to remove the bookmark_wake_function, and
  simply access to flags. ]

Reported-by: Kan Liang <kan.liang@intel.com>
Tested-by: Kan Liang <kan.liang@intel.com>
Signed-off-by: Tim Chen <tim.c.chen@linux.intel.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2017-09-14 09:56:17 -07:00
Luis R. Rodriguez
8ada92799e wait: add wait_event_killable_timeout()
These are the few pending fixes I have queued up for v4.13-final.  One
is a a generic regression fix for recursive loops on kmod and the other
one is a trivial print out correction.

During the v4.13 development we assumed that recursive kmod loops were
no longer possible.  Clearly that is not true.  The regression fix makes
use of a new killable wait.  We use a killable wait to be paranoid in
how signals might be sent to modprobe and only accept a proper SIGKILL.
The signal will only be available to userspace to issue *iff* a thread
has already entered a wait state, and that happens only if we've already
throttled after 50 kmod threads have been hit.

Note that although it may seem excessive to trigger a failure afer 5
seconds if all kmod thread remain busy, prior to the series of changes
that went into v4.13 we would actually *always* fatally fail any request
which came in if the limit was already reached.  The new waiting
implemented in v4.13 actually gives us *more* breathing room -- the wait
for 5 seconds is a wait for *any* kmod thread to finish.  We give up and
fail *iff* no kmod thread has finished and they're *all* running
straight for 5 consecutive seconds.  If 50 kmod threads are running
consecutively for 5 seconds something else must be really bad.

Recursive loops with kmod are bad but they're also hard to implement
properly as a selftest without currently fooling current userspace tools
like kmod [1].  For instance kmod will complain when you run depmod if
it finds a recursive loop with symbol dependency between modules as such
this type of recursive loop cannot go upstream as the modules_install
target will fail after running depmod.

These tests already exist on userspace kmod upstream though (refer to
the testsuite/module-playground/mod-loop-*.c files).  The same is not
true if request_module() is used though, or worst if aliases are used.

Likewise the issue with 64-bit kernels booting 32-bit userspace without
a binfmt handler built-in is also currently not detected and proactively
avoided by userspace kmod tools, or kconfig for all architectures.
Although we could complain in the kernel when some of these individual
recursive issues creep up, proactively avoiding these situations in
userspace at build time is what we should keep striving for.

Lastly, since recursive loops could happen with kmod it may mean
recursive loops may also be possible with other kernel usermode helpers,
this should be investigated and long term if we can come up with a more
sensible generic solution even better!

[0] https://git.kernel.org/pub/scm/linux/kernel/git/mcgrof/linux.git/log/?h=20170809-kmod-for-v4.13-final
[1] https://git.kernel.org/pub/scm/utils/kernel/kmod/kmod.git

This patch (of 3):

This wait is similar to wait_event_interruptible_timeout() but only
accepts SIGKILL interrupt signal.  Other signals are ignored.

Link: http://lkml.kernel.org/r/20170809234635.13443-2-mcgrof@kernel.org
Signed-off-by: Luis R. Rodriguez <mcgrof@kernel.org>
Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Kees Cook <keescook@chromium.org>
Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Cc: Jessica Yu <jeyu@redhat.com>
Cc: Rusty Russell <rusty@rustcorp.com.au>
Cc: Michal Marek <mmarek@suse.com>
Cc: Petr Mladek <pmladek@suse.com>
Cc: Miroslav Benes <mbenes@suse.cz>
Cc: Josh Poimboeuf <jpoimboe@redhat.com>
Cc: "Eric W. Biederman" <ebiederm@xmission.com>
Cc: Shuah Khan <shuah@kernel.org>
Cc: Matt Redfearn <matt.redfearn@imgtec.com>
Cc: Dan Carpenter <dan.carpenter@oracle.com>
Cc: Colin Ian King <colin.king@canonical.com>
Cc: Daniel Mentz <danielmentz@google.com>
Cc: David Binderman <dcb314@hotmail.com>
Cc: Matt Redfearn <matt.redfearn@imgetc.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2017-08-18 15:32:01 -07:00
Jonathan Corbet
6c423f5751 sched/wait: Clean up some documentation warnings
A couple of kerneldoc comments in <linux/wait.h> had incorrect names for
macro parameters, with this unsightly result:

  ./include/linux/wait.h:555: warning: No description found for parameter 'wq'
  ./include/linux/wait.h:555: warning: Excess function parameter 'wq_head' description in 'wait_event_interruptible_hrtimeout'
  ./include/linux/wait.h:759: warning: No description found for parameter 'wq_head'
  ./include/linux/wait.h:759: warning: Excess function parameter 'wq' description in 'wait_event_killable'

Correct the comments and kill the warnings.

Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: linux-doc@vger.kernel.org
Link: http://lkml.kernel.org/r/20170724135800.769c4042@lwn.net
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2017-07-25 11:17:02 +02:00
Ingo Molnar
2055da9738 sched/wait: Disambiguate wq_entry->task_list and wq_head->task_list naming
So I've noticed a number of instances where it was not obvious from the
code whether ->task_list was for a wait-queue head or a wait-queue entry.

Furthermore, there's a number of wait-queue users where the lists are
not for 'tasks' but other entities (poll tables, etc.), in which case
the 'task_list' name is actively confusing.

To clear this all up, name the wait-queue head and entry list structure
fields unambiguously:

	struct wait_queue_head::task_list	=> ::head
	struct wait_queue_entry::task_list	=> ::entry

For example, this code:

	rqw->wait.task_list.next != &wait->task_list

... is was pretty unclear (to me) what it's doing, while now it's written this way:

	rqw->wait.head.next != &wait->entry

... which makes it pretty clear that we are iterating a list until we see the head.

Other examples are:

	list_for_each_entry_safe(pos, next, &x->task_list, task_list) {
	list_for_each_entry(wq, &fence->wait.task_list, task_list) {

... where it's unclear (to me) what we are iterating, and during review it's
hard to tell whether it's trying to walk a wait-queue entry (which would be
a bug), while now it's written as:

	list_for_each_entry_safe(pos, next, &x->head, entry) {
	list_for_each_entry(wq, &fence->wait.head, entry) {

Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2017-06-20 12:19:14 +02:00
Ingo Molnar
5dd43ce2f6 sched/wait: Split out the wait_bit*() APIs from <linux/wait.h> into <linux/wait_bit.h>
The wait_bit*() types and APIs are mixed into wait.h, but they
are a pretty orthogonal extension of wait-queues.

Furthermore, only about 50 kernel files use these APIs, while
over 1000 use the regular wait-queue functionality.

So clean up the main wait.h by moving the wait-bit functionality
out of it, into a separate .h and .c file:

  include/linux/wait_bit.h  for types and APIs
  kernel/sched/wait_bit.c   for the implementation

Update all header dependencies.

This reduces the size of wait.h rather significantly, by about 30%.

Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2017-06-20 12:19:09 +02:00
Ingo Molnar
4b1c480bfa sched/wait: Re-adjust macro line continuation backslashes in <linux/wait.h>
So there's over 300 CPP macro line-continuation backslashes in
include/linux/wait.h (!!), which are aligned vertically to make
the macro maze a bit more navigable.

The recent renames and reorganization broke some of them, and
instead of re-aligning them in every patch (which would add
a lot of stylistic noise to the patches and make them less
readable), I just ignored them - and fixed them up in a single
go in this patch.

Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2017-06-20 12:18:29 +02:00
Ingo Molnar
939798a072 sched/wait: Improve the bit-wait API parameter names in the API function prototypes
Contrary to kernel tradition, most of the bit-wait function prototypes
in <linux/wait.h> don't fully define the parameter names, they only
list the types:

	int out_of_line_wait_on_bit_timeout(void *, int, wait_bit_action_f *, unsigned, unsigned long);

... which is pretty passive-aggressive in terms of informing the reader
about what these functions are doing.

Fill in the parameter names, such as:

	int out_of_line_wait_on_bit_timeout(void *word, int, wait_bit_action_f *action, unsigned int mode, unsigned long timeout);

Also turn spurious (and inconsistently utilized) cases of 'unsigned' into 'unsigned int'.

Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2017-06-20 12:18:29 +02:00
Ingo Molnar
76c85ddc46 sched/wait: Standardize wait_bit_queue naming
So wait-bit-queue head variables are often named:

	struct wait_bit_queue *q

... which is a bit ambiguous and super confusing, because
they clearly suggest wait-queue head semantics and behavior
(they rhyme with the old wait_queue_t *q naming), while they
are extended wait-queue _entries_, not heads!

They are misnomers in two ways:

 - the 'wait_bit_queue' leaves open the question of whether
   it's an entry or a head

 - the 'q' parameter and local variable naming falsely implies
   that it's a 'queue' - while it's an entry.

This resulted in sometimes confusing cases such as:

	finish_wait(wq, &q->wait);

where the 'q' is not a wait-queue head, but a wait-bit-queue entry.

So improve this all by standardizing wait-bit-queue nomenclature
similar to wait-queue head naming:

	struct wait_bit_queue   => struct wait_bit_queue_entry
	q			=> wbq_entry

Which makes it all a much clearer:

	struct wait_bit_queue_entry *wbq_entry

... and turns the former confusing piece of code into:

	finish_wait(wq_head, &wbq_entry->wq_entry;

which IMHO makes it apparently clear what we are doing,
without having to analyze the context of the code: we are
adding a wait-queue entry to a regular wait-queue head,
which entry is embedded in a wait-bit-queue entry.

I'm not a big fan of acronyms, but repeating wait_bit_queue_entry
in field and local variable names is too long, so Hopefully it's
clear enough that 'wq_' prefixes stand for wait-queues, while
'wbq_' prefixes stand for wait-bit-queues.

Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2017-06-20 12:18:29 +02:00
Ingo Molnar
2141713616 sched/wait: Standardize 'struct wait_bit_queue' wait-queue entry field name
Rename 'struct wait_bit_queue::wait' to ::wq_entry, to more clearly
name it as a wait-queue entry.

Propagate it to a couple of usage sites where the wait-bit-queue internals
are exposed.

Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2017-06-20 12:18:28 +02:00
Ingo Molnar
9d9d676f59 sched/wait: Standardize internal naming of wait-queue heads
The wait-queue head parameters and variables are named in a
couple of ways, we have the following variants currently:

	wait_queue_head_t *q
	wait_queue_head_t *wq
	wait_queue_head_t *head

In particular the 'wq' naming is ambiguous in the sense whether it's
a wait-queue head or entry name - as entries were often named 'wait'.

( Not to mention the confusion of any readers coming over from
  workqueue-land. )

Standardize all this around a single, unambiguous parameter and
variable name:

	struct wait_queue_head *wq_head

which is easy to grep for and also rhymes nicely with the wait-queue
entry naming:

	struct wait_queue_entry *wq_entry

Also rename:

	struct __wait_queue_head => struct wait_queue_head

... and use this struct type to migrate from typedefs usage to 'struct'
usage, which is more in line with existing kernel practices.

Don't touch any external users and preserve the main wait_queue_head_t
typedef.

Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2017-06-20 12:18:28 +02:00
Ingo Molnar
50816c4899 sched/wait: Standardize internal naming of wait-queue entries
So the various wait-queue entry variables in include/linux/wait.h
and kernel/sched/wait.c are named in a colorfully inconsistent
way:

	wait_queue_entry_t *wait
	wait_queue_entry_t *__wait	(even in plain C code!)
	wait_queue_entry_t *q		(!)
	wait_queue_entry_t *new		(making anyone who knows C++ cringe)
	wait_queue_entry_t *old

I think part of the reason for the inconsistency is the constant
apparent confusion about what a wait queue 'head' versus 'entry' is.

( Some of the documentation talks about a 'wait descriptor', which is
  the wait-queue entry itself - further adding to the confusion. )

The most common name is 'wait', but that in itself is somewhat
ambiguous as well, as it does not really make it clear whether
it's a wait-queue entry or head.

To improve all this name the wait-queue entry structure parameters
and variables consistently and push through this naming into all
the wait.h and wait.c code:

	struct wait_queue_entry *wq_entry

The 'wq_' prefix makes it easy to grep for, and we also use the
opportunity to move away from the typedef to a plain 'struct' naming:
in the kernel we typically reserve typedefs for cases where a
C structure is really small and somewhat opaque - such as pte_t.

wait-queue entries are neither small nor opaque, so use the more
standard 'struct xxx_entry' list management code nomenclature instead.

( We don't touch external users, and we preserve the typedef as well
  for actual wait-queue users, to reduce unnecessary churn. )

Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2017-06-20 12:18:27 +02:00
Ingo Molnar
ac6424b981 sched/wait: Rename wait_queue_t => wait_queue_entry_t
Rename:

	wait_queue_t		=>	wait_queue_entry_t

'wait_queue_t' was always a slight misnomer: its name implies that it's a "queue",
but in reality it's a queue *entry*. The 'real' queue is the wait queue head,
which had to carry the name.

Start sorting this out by renaming it to 'wait_queue_entry_t'.

This also allows the real structure name 'struct __wait_queue' to
lose its double underscore and become 'struct wait_queue_entry',
which is the more canonical nomenclature for such data types.

Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2017-06-20 12:18:27 +02:00
Linus Torvalds
bd0f9b356d sched/headers: fix up header file dependency on <linux/sched/signal.h>
The scheduler header file split and cleanups ended up exposing a few
nasty header file dependencies, and in particular it showed how we in
<linux/wait.h> ended up depending on "signal_pending()", which now comes
from <linux/sched/signal.h>.

That's a very subtle and annoying dependency, which already caused a
semantic merge conflict (see commit e58bc92783 "Pull overlayfs updates
from Miklos Szeredi", which added that fixup in the merge commit).

It turns out that we can avoid this dependency _and_ improve code
generation by moving the guts of the fairly nasty helper #define
__wait_event_interruptible_locked() to out-of-line code.  The code that
includes the signal_pending() check is all in the slow-path where we
actually go to sleep waiting for the event anyway, so using a helper
function is the right thing to do.

Using a helper function is also what we already did for the non-locked
versions, see the "__wait_event*()" macros and the "prepare_to_wait*()"
set of helper functions.

We might want to try to unify all these macro games, we have a _lot_ of
subtly different wait-event loops.  But this is the minimal patch to fix
the annoying header dependency.

Acked-by: Ingo Molnar <mingo@kernel.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2017-03-08 10:36:03 -08:00
Ingo Molnar
5b825c3af1 sched/headers: Prepare to remove <linux/cred.h> inclusion from <linux/sched.h>
Add #include <linux/cred.h> dependencies to all .c files rely on sched.h
doing that for them.

Note that even if the count where we need to add extra headers seems high,
it's still a net win, because <linux/sched.h> is included in over
2,200 files ...

Acked-by: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Mike Galbraith <efault@gmx.de>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2017-03-02 08:42:31 +01:00
Thomas Gleixner
2456e85535 ktime: Get rid of the union
ktime is a union because the initial implementation stored the time in
scalar nanoseconds on 64 bit machine and in a endianess optimized timespec
variant for 32bit machines. The Y2038 cleanup removed the timespec variant
and switched everything to scalar nanoseconds. The union remained, but
become completely pointless.

Get rid of the union and just keep ktime_t as simple typedef of type s64.

The conversion was done with coccinelle and some manual mopping up.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: Peter Zijlstra <peterz@infradead.org>
2016-12-25 17:21:22 +01:00
Oleg Nesterov
0176beaffb sched/wait: Introduce init_wait_entry()
The partial initialization of wait_queue_t in prepare_to_wait_event() looks
ugly. This was done to shrink .text, but we can simply add the new helper
which does the full initialization and shrink the compiled code a bit more.

And. This way prepare_to_wait_event() can have more users. In particular we
are ready to remove the signal_pending_state() checks from wait_bit_action_f
helpers and change __wait_on_bit_lock() to use prepare_to_wait_event().

Signed-off-by: Oleg Nesterov <oleg@redhat.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Al Viro <viro@ZenIV.linux.org.uk>
Cc: Bart Van Assche <bvanassche@acm.org>
Cc: Johannes Weiner <hannes@cmpxchg.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Mike Galbraith <efault@gmx.de>
Cc: Neil Brown <neilb@suse.de>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Link: http://lkml.kernel.org/r/20160906140055.GA6167@redhat.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2016-09-30 10:54:03 +02:00
Oleg Nesterov
eaf9ef5224 sched/wait: Avoid abort_exclusive_wait() in __wait_on_bit_lock()
__wait_on_bit_lock() doesn't need abort_exclusive_wait() too. Right
now it can't use prepare_to_wait_event() (see the next change), but
it can do the additional finish_wait() if action() fails.

abort_exclusive_wait() no longer has callers, remove it.

Signed-off-by: Oleg Nesterov <oleg@redhat.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Al Viro <viro@ZenIV.linux.org.uk>
Cc: Bart Van Assche <bvanassche@acm.org>
Cc: Johannes Weiner <hannes@cmpxchg.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Mike Galbraith <efault@gmx.de>
Cc: Neil Brown <neilb@suse.de>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Link: http://lkml.kernel.org/r/20160906140053.GA6164@redhat.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2016-09-30 10:54:03 +02:00
Oleg Nesterov
b1ea06a90f sched/wait: Avoid abort_exclusive_wait() in ___wait_event()
___wait_event() doesn't really need abort_exclusive_wait(), we can simply
change prepare_to_wait_event() to remove the waiter from q->task_list if
it was interrupted.

This simplifies the code/logic, and this way prepare_to_wait_event() can
have more users, see the next change.

Signed-off-by: Oleg Nesterov <oleg@redhat.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Al Viro <viro@ZenIV.linux.org.uk>
Cc: Bart Van Assche <bvanassche@acm.org>
Cc: Johannes Weiner <hannes@cmpxchg.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Mike Galbraith <efault@gmx.de>
Cc: Neil Brown <neilb@suse.de>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Link: http://lkml.kernel.org/r/20160908164815.GA18801@redhat.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
--
 include/linux/wait.h |    7 +------
 kernel/sched/wait.c  |   35 +++++++++++++++++++++++++----------
 2 files changed, 26 insertions(+), 16 deletions(-)
2016-09-30 10:53:44 +02:00
Oleg Nesterov
38a3e1fc1d sched/wait: Fix abort_exclusive_wait(), it should pass TASK_NORMAL to wake_up()
Otherwise this logic only works if mode is "compatible" with another
exclusive waiter.

If some wq has both TASK_INTERRUPTIBLE and TASK_UNINTERRUPTIBLE waiters,
abort_exclusive_wait() won't wait an uninterruptible waiter.

The main user is __wait_on_bit_lock() and currently it is fine but only
because TASK_KILLABLE includes TASK_UNINTERRUPTIBLE and we do not have
lock_page_interruptible() yet.

Just use TASK_NORMAL and remove the "mode" arg from abort_exclusive_wait().
Yes, this means that (say) wake_up_interruptible() can wake up the non-
interruptible waiter(s), but I think this is fine. And in fact I think
that abort_exclusive_wait() must die, see the next change.

Signed-off-by: Oleg Nesterov <oleg@redhat.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Al Viro <viro@ZenIV.linux.org.uk>
Cc: Bart Van Assche <bvanassche@acm.org>
Cc: Johannes Weiner <hannes@cmpxchg.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Mike Galbraith <efault@gmx.de>
Cc: Neil Brown <neilb@suse.de>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Link: http://lkml.kernel.org/r/20160906140047.GA6157@redhat.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2016-09-30 10:53:19 +02:00
Al Viro
6a0fb30673 new helper: wait_event_killable_exclusive()
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2016-07-19 03:08:07 -04:00
Stafford Horne
f4bcfa1da6 sched/wait: Fix wait_event_freezable() documentation
I noticed the comment label 'wait_event' was wrong.

Signed-off-by: Stafford Horne <shorne@gmail.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Link: http://lkml.kernel.org/r/1456234768-24933-1-git-send-email-shorne@gmail.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2016-02-24 09:09:45 +01:00
Linus Torvalds
aee3bfa330 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next
Pull networking updates from Davic Miller:

 1) Support busy polling generically, for all NAPI drivers.  From Eric
    Dumazet.

 2) Add byte/packet counter support to nft_ct, from Floriani Westphal.

 3) Add RSS/XPS support to mvneta driver, from Gregory Clement.

 4) Implement IPV6_HDRINCL socket option for raw sockets, from Hannes
    Frederic Sowa.

 5) Add support for T6 adapter to cxgb4 driver, from Hariprasad Shenai.

 6) Add support for VLAN device bridging to mlxsw switch driver, from
    Ido Schimmel.

 7) Add driver for Netronome NFP4000/NFP6000, from Jakub Kicinski.

 8) Provide hwmon interface to mlxsw switch driver, from Jiri Pirko.

 9) Reorganize wireless drivers into per-vendor directories just like we
    do for ethernet drivers.  From Kalle Valo.

10) Provide a way for administrators "destroy" connected sockets via the
    SOCK_DESTROY socket netlink diag operation.  From Lorenzo Colitti.

11) Add support to add/remove multicast routes via netlink, from Nikolay
    Aleksandrov.

12) Make TCP keepalive settings per-namespace, from Nikolay Borisov.

13) Add forwarding and packet duplication facilities to nf_tables, from
    Pablo Neira Ayuso.

14) Dead route support in MPLS, from Roopa Prabhu.

15) TSO support for thunderx chips, from Sunil Goutham.

16) Add driver for IBM's System i/p VNIC protocol, from Thomas Falcon.

17) Rationalize, consolidate, and more completely document the checksum
    offloading facilities in the networking stack.  From Tom Herbert.

18) Support aborting an ongoing scan in mac80211/cfg80211, from
    Vidyullatha Kanchanapally.

19) Use per-bucket spinlock for bpf hash facility, from Tom Leiming.

* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next: (1375 commits)
  net: bnxt: always return values from _bnxt_get_max_rings
  net: bpf: reject invalid shifts
  phonet: properly unshare skbs in phonet_rcv()
  dwc_eth_qos: Fix dma address for multi-fragment skbs
  phy: remove an unneeded condition
  mdio: remove an unneed condition
  mdio_bus: NULL dereference on allocation error
  net: Fix typo in netdev_intersect_features
  net: freescale: mac-fec: Fix build error from phy_device API change
  net: freescale: ucc_geth: Fix build error from phy_device API change
  bonding: Prevent IPv6 link local address on enslaved devices
  IB/mlx5: Add flow steering support
  net/mlx5_core: Export flow steering API
  net/mlx5_core: Make ipv4/ipv6 location more clear
  net/mlx5_core: Enable flow steering support for the IB driver
  net/mlx5_core: Initialize namespaces only when supported by device
  net/mlx5_core: Set priority attributes
  net/mlx5_core: Connect flow tables
  net/mlx5_core: Introduce modify flow table command
  net/mlx5_core: Managing root flow table
  ...
2016-01-12 18:57:02 -08:00
Ingo Molnar
567bee2803 Merge branch 'sched/urgent' into sched/core, to pick up fixes before merging new patches
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2016-01-06 11:02:29 +01:00
David S. Miller
b3e0d3d7ba Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
Conflicts:
	drivers/net/geneve.c

Here we had an overlapping change, where in 'net' the extraneous stats
bump was being removed whilst in 'net-next' the final argument to
udp_tunnel6_xmit_skb() was being changed.

Signed-off-by: David S. Miller <davem@davemloft.net>
2015-12-17 22:08:28 -05:00
Peter Zijlstra
dfd01f0260 sched/wait: Fix the signal handling fix
Jan Stancek reported that I wrecked things for him by fixing things for
Vladimir :/

His report was due to an UNINTERRUPTIBLE wait getting -EINTR, which
should not be possible, however my previous patch made this possible by
unconditionally checking signal_pending().

We cannot use current->state as was done previously, because the
instruction after the store to that variable it can be changed.  We must
instead pass the initial state along and use that.

Fixes: 68985633bc ("sched/wait: Fix signal handling in bit wait helpers")
Reported-by: Jan Stancek <jstancek@redhat.com>
Reported-by: Chris Mason <clm@fb.com>
Tested-by: Jan Stancek <jstancek@redhat.com>
Tested-by: Vladimir Murzin <vladimir.murzin@arm.com>
Tested-by: Chris Mason <clm@fb.com>
Reviewed-by: Paul Turner <pjt@google.com>
Cc: Ingo Molnar <mingo@kernel.org>
Cc: tglx@linutronix.de
Cc: Oleg Nesterov <oleg@redhat.com>
Cc: hpa@zytor.com
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2015-12-13 14:30:59 -08:00
Herbert Xu
1ce0bf50ae net: Generalise wq_has_sleeper helper
The memory barrier in the helper wq_has_sleeper is needed by just
about every user of waitqueue_active.  This patch generalises it
by making it take a wait_queue_head_t directly.  The existing
helper is renamed to skwq_has_sleeper.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
2015-11-30 14:47:33 -05:00
Peter Zijlstra
69e51e92a3 sched/wait: Document waitqueue_active()
Kosuku reports that there were a fair number of buggy
waitqueue_active() users and this function deserves a big comment in
order to avoid growing more.

Reported-by: Kosuke Tatsukawa <tatsu@ab.jp.nec.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Mike Galbraith <efault@gmx.de>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2015-11-23 09:37:52 +01:00