Commit Graph

935 Commits

Author SHA1 Message Date
Michael Bestas
c066ac93be
Merge tag 'ASB-2023-02-05_11-5.4' of https://android.googlesource.com/kernel/common into android13-5.4-lahaina
https://source.android.com/docs/security/bulletin/2023-02-01
CVE-2022-39189
CVE-2022-39842
CVE-2022-41222
CVE-2023-20937
CVE-2023-20938
CVE-2022-0850

* tag 'ASB-2023-02-05_11-5.4' of https://android.googlesource.com/kernel/common:
  ANDROID: ABI: Cuttlefish Symbol update
  UPSTREAM: media: dvb-core: Fix UAF due to refcount races at releasing
  ANDROID: abi_gki_aarch64_qcom: Add hrtimer_sleeper_start_expires
  UPSTREAM: ALSA: pcm: Move rwsem lock inside snd_ctl_elem_read to prevent UAF
  ANDROID: Revert "tracing/ring-buffer: Have polling block on watermark"
  UPSTREAM: usb: gadget: f_hid: fix f_hidg lifetime vs cdev
  UPSTREAM: usb: gadget: f_hid: optional SETUP/SET_REPORT mode
  ANDROID: add TEST_MAPPING for net/, include/net
  UPSTREAM: nfp: fix use-after-free in area_cache_get()
  UPSTREAM: proc: avoid integer type confusion in get_proc_long
  UPSTREAM: proc: proc_skip_spaces() shouldn't think it is working on C strings
  ANDROID: usb: f_accessory: Check buffer size when initialised via composite
  BACKPORT: mm: don't be stuck to rmap lock on reclaim path
  ANDROID: Add more hvc devices for virtio-console.
  Revert "mmc: sdhci: Fix voltage switch delay"
  ANDROID: gki_defconfig: add CONFIG_FUNCTION_ERROR_INJECTION
  Linux 5.4.226
  ipc/sem: Fix dangling sem_array access in semtimedop race
  v4l2: don't fall back to follow_pfn() if pin_user_pages_fast() fails
  proc: proc_skip_spaces() shouldn't think it is working on C strings
  proc: avoid integer type confusion in get_proc_long
  mmc: sdhci: Fix voltage switch delay
  mmc: sdhci: use FIELD_GET for preset value bit masks
  char: tpm: Protect tpm_pm_suspend with locks
  Revert "clocksource/drivers/riscv: Events are stopped during CPU suspend"
  x86/ioremap: Fix page aligned size calculation in __ioremap_caller()
  Bluetooth: L2CAP: Fix accepting connection request for invalid SPSM
  x86/pm: Add enumeration check before spec MSRs save/restore setup
  x86/tsx: Add a feature bit for TSX control MSR support
  nvme: ensure subsystem reset is single threaded
  nvme: restrict management ioctls to admin
  epoll: check for events when removing a timed out thread from the wait queue
  epoll: call final ep_events_available() check under the lock
  tracing/ring-buffer: Have polling block on watermark
  ipv4: Fix route deletion when nexthop info is not specified
  ipv4: Handle attempt to delete multipath route when fib_info contains an nh reference
  selftests: net: fix nexthop warning cleanup double ip typo
  selftests: net: add delete nexthop route warning test
  Kconfig.debug: provide a little extra FRAME_WARN leeway when KASAN is enabled
  parisc: Increase FRAME_WARN to 2048 bytes on parisc
  xtensa: increase size of gcc stack frame check
  parisc: Increase size of gcc stack frame check
  iommu/vt-d: Fix PCI device refcount leak in dmar_dev_scope_init()
  pinctrl: single: Fix potential division by zero
  ASoC: ops: Fix bounds check for _sx controls
  mm: Fix '.data.once' orphan section warning
  arm64: errata: Fix KVM Spectre-v2 mitigation selection for Cortex-A57/A72
  arm64: Fix panic() when Spectre-v2 causes Spectre-BHB to re-allocate KVM vectors
  tracing: Free buffers when a used dynamic event is removed
  mmc: sdhci-sprd: Fix no reset data and command after voltage switch
  mmc: sdhci-esdhc-imx: correct CQHCI exit halt state check
  mmc: core: Fix ambiguous TRIM and DISCARD arg
  mmc: mmc_test: Fix removal of debugfs file
  pinctrl: intel: Save and restore pins in "direct IRQ" mode
  x86/bugs: Make sure MSR_SPEC_CTRL is updated properly upon resume from S3
  nilfs2: fix NULL pointer dereference in nilfs_palloc_commit_free_entry()
  tools/vm/slabinfo-gnuplot: use "grep -E" instead of "egrep"
  error-injection: Add prompt for function error injection
  net/mlx5: DR, Fix uninitialized var warning
  hwmon: (coretemp) fix pci device refcount leak in nv1a_ram_new()
  hwmon: (coretemp) Check for null before removing sysfs attrs
  net: ethernet: renesas: ravb: Fix promiscuous mode after system resumed
  sctp: fix memory leak in sctp_stream_outq_migrate()
  packet: do not set TP_STATUS_CSUM_VALID on CHECKSUM_COMPLETE
  net: tun: Fix use-after-free in tun_detach()
  afs: Fix fileserver probe RTT handling
  net: hsr: Fix potential use-after-free
  dsa: lan9303: Correct stat name
  net: ethernet: nixge: fix NULL dereference
  net/9p: Fix a potential socket leak in p9_socket_open
  net: net_netdev: Fix error handling in ntb_netdev_init_module()
  net: phy: fix null-ptr-deref while probe() failed
  wifi: cfg80211: fix buffer overflow in elem comparison
  qlcnic: fix sleep-in-atomic-context bugs caused by msleep
  can: cc770: cc770_isa_probe(): add missing free_cc770dev()
  can: sja1000_isa: sja1000_isa_probe(): add missing free_sja1000dev()
  net/mlx5e: Fix use-after-free when reverting termination table
  net/mlx5: Fix uninitialized variable bug in outlen_write()
  of: property: decrement node refcount in of_fwnode_get_reference_args()
  hwmon: (ibmpex) Fix possible UAF when ibmpex_register_bmc() fails
  hwmon: (i5500_temp) fix missing pci_disable_device()
  scripts/faddr2line: Fix regression in name resolution on ppc64le
  iio: light: rpr0521: add missing Kconfig dependencies
  iio: health: afe4404: Fix oob read in afe4404_[read|write]_raw
  iio: health: afe4403: Fix oob read in afe4403_read_raw
  btrfs: qgroup: fix sleep from invalid context bug in btrfs_qgroup_inherit()
  drm/amdgpu: Partially revert "drm/amdgpu: update drm_display_info correctly when the edid is read"
  drm/amdgpu: update drm_display_info correctly when the edid is read
  btrfs: move QUOTA_ENABLED check to rescan_should_stop from btrfs_qgroup_rescan_worker
  spi: spi-imx: Fix spi_bus_clk if requested clock is higher than input clock
  btrfs: free btrfs_path before copying inodes to userspace
  fuse: lock inode unconditionally in fuse_fallocate()
  drm/i915: fix TLB invalidation for Gen12 video and compute engines
  drm/amdgpu: always register an MMU notifier for userptr
  drm/amd/dc/dce120: Fix audio register mapping, stop triggering KASAN
  btrfs: sysfs: normalize the error handling branch in btrfs_init_sysfs()
  btrfs: free btrfs_path before copying subvol info to userspace
  btrfs: free btrfs_path before copying fspath to userspace
  btrfs: free btrfs_path before copying root refs to userspace
  binder: Gracefully handle BINDER_TYPE_FDA objects with num_fds=0
  binder: Address corner cases in deferred copy and fixup
  binder: fix pointer cast warning
  binder: defer copies of pre-patched txn data
  binder: read pre-translated fds from sender buffer
  binder: avoid potential data leakage when copying txn
  dm integrity: flush the journal on suspend
  net: usb: qmi_wwan: add Telit 0x103a composition
  tcp: configurable source port perturb table size
  platform/x86: hp-wmi: Ignore Smart Experience App event
  platform/x86: acer-wmi: Enable SW_TABLET_MODE on Switch V 10 (SW5-017)
  platform/x86: asus-wmi: add missing pci_dev_put() in asus_wmi_set_xusb2pr()
  xen/platform-pci: add missing free_irq() in error path
  serial: 8250: 8250_omap: Avoid RS485 RTS glitch on ->set_termios()
  ASoC: Intel: bytcht_es8316: Add quirk for the Nanote UMPC-01
  Input: synaptics - switch touchpad on HP Laptop 15-da3001TU to RMI mode
  gcov: clang: fix the buffer overflow issue
  nilfs2: fix nilfs_sufile_mark_dirty() not set segment usage as dirty
  firmware: coreboot: Register bus in module init
  firmware: google: Release devices before unregistering the bus
  ceph: avoid putting the realm twice when decoding snaps fails
  ceph: do not update snapshot context when there is no new snapshot
  iio: pressure: ms5611: fixed value compensation bug
  iio: ms5611: Simplify IO callback parameters
  nios2: add FORCE for vmlinuz.gz
  init/Kconfig: fix CC_HAS_ASM_GOTO_TIED_OUTPUT test with dash
  iio: core: Fix entry not deleted when iio_register_sw_trigger_type() fails
  iio: light: apds9960: fix wrong register for gesture gain
  arm64: dts: rockchip: lower rk3399-puma-haikou SD controller clock frequency
  usb: dwc3: exynos: Fix remove() function
  lib/vdso: use "grep -E" instead of "egrep"
  s390/crashdump: fix TOD programmable field size
  net: thunderx: Fix the ACPI memory leak
  nfc: st-nci: fix memory leaks in EVT_TRANSACTION
  nfc: st-nci: fix incorrect validating logic in EVT_TRANSACTION
  s390/dasd: fix no record found for raw_track_access
  dccp/tcp: Reset saddr on failure after inet6?_hash_connect().
  bnx2x: fix pci device refcount leak in bnx2x_vf_is_pcie_pending()
  regulator: twl6030: re-add TWL6032_SUBCLASS
  NFC: nci: fix memory leak in nci_rx_data_packet()
  xfrm: Fix ignored return value in xfrm6_init()
  tipc: check skb_linearize() return value in tipc_disc_rcv()
  tipc: add an extra conn_get in tipc_conn_alloc
  tipc: set con sock in tipc_conn_alloc
  net/mlx5: Fix FW tracer timestamp calculation
  Drivers: hv: vmbus: fix possible memory leak in vmbus_device_register()
  Drivers: hv: vmbus: fix double free in the error path of vmbus_add_channel_work()
  nfp: add port from netdev validation for EEPROM access
  net: pch_gbe: fix pci device refcount leak while module exiting
  net/qla3xxx: fix potential memleak in ql3xxx_send()
  net/mlx4: Check retval of mlx4_bitmap_init
  ARM: mxs: fix memory leak in mxs_machine_init()
  9p/fd: fix issue of list_del corruption in p9_fd_cancel()
  net: pch_gbe: fix potential memleak in pch_gbe_tx_queue()
  nfc/nci: fix race with opening and closing
  net: liquidio: simplify if expression
  ARM: dts: at91: sam9g20ek: enable udc vbus gpio pinctrl
  tee: optee: fix possible memory leak in optee_register_device()
  bus: sunxi-rsb: Support atomic transfers
  regulator: core: fix UAF in destroy_regulator()
  regulator: core: fix kobject release warning and memory leak in regulator_register()
  ASoC: sgtl5000: Reset the CHIP_CLK_CTRL reg on remove
  ARM: dts: am335x-pcm-953: Define fixed regulators in root node
  af_key: Fix send_acquire race with pfkey_register
  MIPS: pic32: treat port as signed integer
  RISC-V: vdso: Do not add missing symbols to version section in linker script
  arm64/syscall: Include asm/ptrace.h in syscall_wrapper header.
  block, bfq: fix null pointer dereference in bfq_bio_bfqg()
  drm: panel-orientation-quirks: Add quirk for Acer Switch V 10 (SW5-017)
  spi: stm32: fix stm32_spi_prepare_mbr() that halves spi clk for every run
  wifi: mac80211: Fix ack frame idr leak when mesh has no route
  audit: fix undefined behavior in bit shift for AUDIT_BIT
  wifi: mac80211_hwsim: fix debugfs attribute ps with rc table support
  wifi: mac80211: fix memory free error when registering wiphy fail
  Revert "can: af_can: fix NULL pointer dereference in can_rx_register()"
  Linux 5.4.225
  ntfs: check overflow when iterating ATTR_RECORDs
  ntfs: fix out-of-bounds read in ntfs_attr_find()
  ntfs: fix use-after-free in ntfs_attr_find()
  mm: fs: initialize fsdata passed to write_begin/write_end interface
  9p/trans_fd: always use O_NONBLOCK read/write
  gfs2: Switch from strlcpy to strscpy
  gfs2: Check sb_bsize_shift after reading superblock
  9p: trans_fd/p9_conn_cancel: drop client lock earlier
  kcm: close race conditions on sk_receive_queue
  bpf, test_run: Fix alignment problem in bpf_prog_test_run_skb()
  kcm: avoid potential race in kcm_tx_work
  tcp: cdg: allow tcp_cdg_release() to be called multiple times
  macvlan: enforce a consistent minimal mtu
  Input: i8042 - fix leaking of platform device on module removal
  kprobes: Skip clearing aggrprobe's post_handler in kprobe-on-ftrace case
  scsi: target: tcm_loop: Fix possible name leak in tcm_loop_setup_hba_bus()
  ring-buffer: Include dropped pages in counting dirty patches
  serial: 8250: Flush DMA Rx on RLSI
  misc/vmw_vmci: fix an infoleak in vmci_host_do_receive_datagram()
  docs: update mediator contact information in CoC doc
  mmc: sdhci-pci: Fix possible memory leak caused by missing pci_dev_put()
  mmc: sdhci-pci-o2micro: fix card detect fail issue caused by CD# debounce timeout
  mmc: core: properly select voltage range without power cycle
  scsi: zfcp: Fix double free of FSF request when qdio send fails
  Input: iforce - invert valid length check when fetching device IDs
  serial: 8250_lpss: Configure DMA also w/o DMA filter
  serial: 8250: Fall back to non-DMA Rx if IIR_RDI occurs
  dm ioctl: fix misbehavior if list_versions races with module loading
  iio: pressure: ms5611: changed hardcoded SPI speed to value limited
  iio: trigger: sysfs: fix possible memory leak in iio_sysfs_trig_init()
  iio: adc: at91_adc: fix possible memory leak in at91_adc_allocate_trigger()
  usb: chipidea: fix deadlock in ci_otg_del_timer
  usb: add NO_LPM quirk for Realforce 87U Keyboard
  USB: serial: option: add Fibocom FM160 0x0111 composition
  USB: serial: option: add u-blox LARA-L6 modem
  USB: serial: option: add u-blox LARA-R6 00B modem
  USB: serial: option: remove old LARA-R6 PID
  USB: serial: option: add Sierra Wireless EM9191
  speakup: fix a segfault caused by switching consoles
  slimbus: stream: correct presence rate frequencies
  Revert "usb: dwc3: disable USB core PHY management"
  ALSA: usb-audio: Drop snd_BUG_ON() from snd_usbmidi_output_open()
  ring_buffer: Do not deactivate non-existant pages
  ftrace: Fix null pointer dereference in ftrace_add_mod()
  ftrace: Optimize the allocation for mcount entries
  ftrace: Fix the possible incorrect kernel message
  cifs: add check for returning value of SMB2_set_info_init
  net: thunderbolt: Fix error handling in tbnet_init()
  cifs: Fix wrong return value checking when GETFLAGS
  net/x25: Fix skb leak in x25_lapb_receive_frame()
  platform/x86/intel: pmc: Don't unconditionally attach Intel PMC when virtualized
  drbd: use after free in drbd_create_device()
  xen/pcpu: fix possible memory leak in register_pcpu()
  bnxt_en: Remove debugfs when pci_register_driver failed
  net: caif: fix double disconnect client in chnl_net_open()
  net: macvlan: Use built-in RCU list checking
  mISDN: fix misuse of put_device() in mISDN_register_device()
  net: liquidio: release resources when liquidio driver open failed
  mISDN: fix possible memory leak in mISDN_dsp_element_register()
  net: bgmac: Drop free_netdev() from bgmac_enet_remove()
  ata: libata-transport: fix double ata_host_put() in ata_tport_add()
  arm64: dts: imx8mn: Fix NAND controller size-cells
  arm64: dts: imx8mm: Fix NAND controller size-cells
  pinctrl: devicetree: fix null pointer dereferencing in pinctrl_dt_to_map
  parport_pc: Avoid FIFO port location truncation
  siox: fix possible memory leak in siox_device_add()
  block: sed-opal: kmalloc the cmd/resp buffers
  ASoC: soc-utils: Remove __exit for snd_soc_util_exit()
  tty: n_gsm: fix sleep-in-atomic-context bug in gsm_control_send
  serial: imx: Add missing .thaw_noirq hook
  serial: 8250: omap: Flush PM QOS work on remove
  serial: 8250: omap: Fix unpaired pm_runtime_put_sync() in omap8250_remove()
  serial: 8250_omap: remove wait loop from Errata i202 workaround
  ASoC: core: Fix use-after-free in snd_soc_exit()
  spi: stm32: Print summary 'callbacks suppressed' message
  ASoC: codecs: jz4725b: Fix spelling mistake "Sourc" -> "Source", "Routee" -> "Route"
  Bluetooth: L2CAP: Fix l2cap_global_chan_by_psm
  btrfs: remove pointless and double ulist frees in error paths of qgroup tests
  drm/imx: imx-tve: Fix return type of imx_tve_connector_mode_valid
  i2c: i801: add lis3lv02d's I2C address for Vostro 5568
  NFSv4: Retry LOCK on OLD_STATEID during delegation return
  selftests/intel_pstate: fix build for ARCH=x86_64
  selftests/futex: fix build for clang
  ASoC: codecs: jz4725b: fix capture selector naming
  ASoC: codecs: jz4725b: use right control for Capture Volume
  ASoC: codecs: jz4725b: fix reported volume for Master ctl
  ASoC: codecs: jz4725b: add missed Line In power control bit
  spi: intel: Fix the offset to get the 64K erase opcode
  ASoC: wm8962: Add an event handler for TEMP_HP and TEMP_SPK
  ASoC: wm8997: Revert "ASoC: wm8997: Fix PM disable depth imbalance in wm8997_probe"
  ASoC: wm5110: Revert "ASoC: wm5110: Fix PM disable depth imbalance in wm5110_probe"
  ASoC: wm5102: Revert "ASoC: wm5102: Fix PM disable depth imbalance in wm5102_probe"
  x86/cpu: Restore AMD's DE_CFG MSR after resume
  net: tun: call napi_schedule_prep() to ensure we own a napi
  dmaengine: at_hdmac: Check return code of dma_async_device_register
  dmaengine: at_hdmac: Fix impossible condition
  dmaengine: at_hdmac: Don't allow CPU to reorder channel enable
  dmaengine: at_hdmac: Fix completion of unissued descriptor in case of errors
  dmaengine: at_hdmac: Don't start transactions at tx_submit level
  dmaengine: at_hdmac: Fix at_lli struct definition
  cert host tools: Stop complaining about deprecated OpenSSL functions
  can: j1939: j1939_send_one(): fix missing CAN header initialization
  udf: Fix a slab-out-of-bounds write bug in udf_find_entry()
  btrfs: selftests: fix wrong error check in btrfs_free_dummy_root()
  platform/x86: hp_wmi: Fix rfkill causing soft blocked wifi
  drm/i915/dmabuf: fix sg_table handling in map_dma_buf
  nilfs2: fix use-after-free bug of ns_writer on remount
  nilfs2: fix deadlock in nilfs_count_free_blocks()
  vmlinux.lds.h: Fix placement of '.data..decrypted' section
  ALSA: usb-audio: Add DSD support for Accuphase DAC-60
  ALSA: usb-audio: Add quirk entry for M-Audio Micro
  ALSA: hda: fix potential memleak in 'add_widget_node'
  ALSA: hda/ca0132: add quirk for EVGA Z390 DARK
  mmc: sdhci-tegra: Fix SDHCI_RESET_ALL for CQHCI
  mmc: sdhci-of-arasan: Fix SDHCI_RESET_ALL for CQHCI
  mmc: cqhci: Provide helper for resetting both SDHCI and CQHCI
  MIPS: jump_label: Fix compat branch range check
  arm64: efi: Fix handling of misaligned runtime regions and drop warning
  riscv: process: fix kernel info leakage
  net: macvlan: fix memory leaks of macvlan_common_newlink
  ethernet: tundra: free irq when alloc ring failed in tsi108_open()
  net: mv643xx_eth: disable napi when init rxq or txq failed in mv643xx_eth_open()
  ethernet: s2io: disable napi when start nic failed in s2io_card_up()
  cxgb4vf: shut down the adapter when t4vf_update_port_info() failed in cxgb4vf_open()
  net: cxgb3_main: disable napi when bind qsets failed in cxgb_up()
  net: cpsw: disable napi in cpsw_ndo_open()
  net/mlx5: Allow async trigger completion execution on single CPU systems
  net: nixge: disable napi when enable interrupts failed in nixge_open()
  perf stat: Fix printing os->prefix in CSV metrics output
  drivers: net: xgene: disable napi when register irq failed in xgene_enet_open()
  dmaengine: mv_xor_v2: Fix a resource leak in mv_xor_v2_remove()
  dmaengine: pxa_dma: use platform_get_irq_optional
  tipc: fix the msg->req tlv len check in tipc_nl_compat_name_table_dump_header
  can: af_can: fix NULL pointer dereference in can_rx_register()
  ipv6: addrlabel: fix infoleak when sending struct ifaddrlblmsg to network
  drm/vc4: Fix missing platform_unregister_drivers() call in vc4_drm_register()
  hamradio: fix issue of dev reference count leakage in bpq_device_event()
  net: lapbether: fix issue of dev reference count leakage in lapbeth_device_event()
  capabilities: fix undefined behavior in bit shift for CAP_TO_MASK
  net: fman: Unregister ethernet device on removal
  bnxt_en: fix potentially incorrect return value for ndo_rx_flow_steer
  bnxt_en: Fix possible crash in bnxt_hwrm_set_coal()
  net: tun: Fix memory leaks of napi_get_frags
  net: gso: fix panic on frag_list with mixed head alloc types
  HID: hyperv: fix possible memory leak in mousevsc_probe()
  bpf, sockmap: Fix the sk->sk_forward_alloc warning of sk_stream_kill_queues
  wifi: cfg80211: fix memory leak in query_regdb_file()
  wifi: cfg80211: silence a sparse RCU warning
  phy: stm32: fix an error code in probe
  xfs: drain the buf delwri queue before xfsaild idles
  xfs: preserve inode versioning across remounts
  xfs: use MMAPLOCK around filemap_map_pages()
  xfs: redesign the reflink remap loop to fix blkres depletion crash
  xfs: rename xfs_bmap_is_real_extent to is_written_extent
  xfs: preserve rmapbt swapext block reservation from freed blocks
  ANDROID: properly copy the scm_io_uring field in struct sk_buff
  Linux 5.4.224
  ipc: remove memcg accounting for sops objects in do_semtimedop()
  wifi: brcmfmac: Fix potential buffer overflow in brcmf_fweh_event_worker()
  drm/i915/sdvo: Setup DDC fully before output init
  drm/i915/sdvo: Filter out invalid outputs more sensibly
  drm/rockchip: dsi: Force synchronous probe
  mtd: rawnand: gpmi: Set WAIT_FOR_READY timeout based on program/erase times
  KVM: x86: emulator: update the emulation mode after CR0 write
  KVM: x86: emulator: introduce emulator_recalc_and_set_mode
  KVM: x86: emulator: em_sysexit should update ctxt->mode
  KVM: x86: Mask off reserved bits in CPUID.80000008H
  KVM: x86: Mask off reserved bits in CPUID.8000001AH
  ext4: fix BUG_ON() when directory entry has invalid rec_len
  ext4: fix warning in 'ext4_da_release_space'
  parisc: Avoid printing the hardware path twice
  parisc: Export iosapic_serial_irq() symbol for serial port driver
  parisc: Make 8250_gsc driver dependend on CONFIG_PARISC
  ALSA: usb-audio: Add quirks for MacroSilicon MS2100/MS2106 devices
  perf/x86/intel: Add Cooper Lake stepping to isolation_ucodes[]
  perf/x86/intel: Fix pebs event constraints for ICL
  efi: random: reduce seed size to 32 bytes
  fuse: add file_modified() to fallocate
  capabilities: fix potential memleak on error path from vfs_getxattr_alloc()
  tracing/histogram: Update document for KEYS_MAX size
  tools/nolibc/string: Fix memcmp() implementation
  kprobe: reverse kp->flags when arm_kprobe failed
  tcp/udp: Make early_demux back namespacified.
  btrfs: fix type of parameter generation in btrfs_get_dentry
  binder: fix UAF of alloc->vma in race with munmap()
  memcg: enable accounting of ipc resources
  tcp/udp: Fix memory leak in ipv6_renew_options().
  block, bfq: protect 'bfqd->queued' by 'bfqd->lock'
  Bluetooth: L2CAP: Fix attempting to access uninitialized memory
  xfs: Add the missed xfs_perag_put() for xfs_ifree_cluster()
  xfs: don't fail unwritten extent conversion on writeback due to edquot
  xfs: group quota should return EDQUOT when prj quota enabled
  xfs: gut error handling in xfs_trans_unreserve_and_mod_sb()
  xfs: use ordered buffers to initialize dquot buffers during quotacheck
  xfs: don't fail verifier on empty attr3 leaf block
  i2c: xiic: Add platform module alias
  HID: saitek: add madcatz variant of MMO7 mouse device ID
  scsi: core: Restrict legal sdev_state transitions via sysfs
  media: meson: vdec: fix possible refcount leak in vdec_probe()
  media: dvb-frontends/drxk: initialize err to 0
  media: cros-ec-cec: limit msg.len to CEC_MAX_MSG_SIZE
  media: s5p_cec: limit msg.len to CEC_MAX_MSG_SIZE
  ipv6: fix WARNING in ip6_route_net_exit_late()
  net, neigh: Fix null-ptr-deref in neigh_table_clear()
  net: mdio: fix undefined behavior in bit shift for __mdiobus_register
  Bluetooth: L2CAP: fix use-after-free in l2cap_conn_del()
  Bluetooth: L2CAP: Fix use-after-free caused by l2cap_reassemble_sdu
  btrfs: fix ulist leaks in error paths of qgroup self tests
  btrfs: fix inode list leak during backref walking at find_parent_nodes()
  btrfs: fix inode list leak during backref walking at resolve_indirect_refs()
  isdn: mISDN: netjet: fix wrong check of device registration
  mISDN: fix possible memory leak in mISDN_register_device()
  rose: Fix NULL pointer dereference in rose_send_frame()
  ipvs: fix WARNING in ip_vs_app_net_cleanup()
  ipvs: fix WARNING in __ip_vs_cleanup_batch()
  ipvs: use explicitly signed chars
  netfilter: nf_tables: release flow rule object from commit path
  net: tun: fix bugs for oversize packet when napi frags enabled
  net: sched: Fix use after free in red_enqueue()
  ata: pata_legacy: fix pdc20230_set_piomode()
  net: fec: fix improper use of NETDEV_TX_BUSY
  nfc: nfcmrvl: Fix potential memory leak in nfcmrvl_i2c_nci_send()
  nfc: s3fwrn5: Fix potential memory leak in s3fwrn5_nci_send()
  RDMA/qedr: clean up work queue on failure in qedr_alloc_resources()
  RDMA/core: Fix null-ptr-deref in ib_core_cleanup()
  net: dsa: Fix possible memory leaks in dsa_loop_init()
  nfs4: Fix kmemleak when allocate slot failed
  NFSv4.1: We must always send RECLAIM_COMPLETE after a reboot
  NFSv4.1: Handle RECLAIM_COMPLETE trunking errors
  IB/hfi1: Correctly move list in sc_disable()
  RDMA/cma: Use output interface for net_dev check
  Linux 5.4.223
  can: rcar_canfd: rcar_canfd_handle_global_receive(): fix IRQ storm on global FIFO receive
  net: enetc: survive memory pressure without crashing
  net/mlx5: Fix possible use-after-free in async command interface
  net/mlx5e: Do not increment ESN when updating IPsec ESN state
  nh: fix scope used to find saddr when adding non gw nh
  net: ehea: fix possible memory leak in ehea_register_port()
  openvswitch: switch from WARN to pr_warn
  ALSA: aoa: Fix I2S device accounting
  ALSA: aoa: i2sbus: fix possible memory leak in i2sbus_add_dev()
  PM: domains: Fix handling of unavailable/disabled idle states
  net: ksz884x: fix missing pci_disable_device() on error in pcidev_init()
  i40e: Fix flow-type by setting GL_HASH_INSET registers
  i40e: Fix VF hang when reset is triggered on another VF
  i40e: Fix ethtool rx-flow-hash setting for X722
  media: videodev2.h: V4L2_DV_BT_BLANKING_HEIGHT should check 'interlaced'
  media: v4l2-dv-timings: add sanity checks for blanking values
  media: vivid: dev->bitmap_cap wasn't freed in all cases
  media: vivid: s_fbuf: add more sanity checks
  PM: hibernate: Allow hybrid sleep to work with s2idle
  can: mscan: mpc5xxx: mpc5xxx_can_probe(): add missing put_clock() in error path
  tcp: fix indefinite deferral of RTO with SACK reneging
  net: lantiq_etop: don't free skb when returning NETDEV_TX_BUSY
  net: fix UAF issue in nfqnl_nf_hook_drop() when ops_init() failed
  kcm: annotate data-races around kcm->rx_wait
  kcm: annotate data-races around kcm->rx_psock
  amd-xgbe: add the bit rate quirk for Molex cables
  amd-xgbe: fix the SFP compliance codes check for DAC cables
  x86/unwind/orc: Fix unreliable stack dump with gcov
  net: netsec: fix error handling in netsec_register_mdio()
  tipc: fix a null-ptr-deref in tipc_topsrv_accept
  ALSA: ac97: fix possible memory leak in snd_ac97_dev_register()
  arc: iounmap() arg is volatile
  drm/msm: Fix return type of mdp4_lvds_connector_mode_valid
  media: v4l2: Fix v4l2_i2c_subdev_set_name function documentation
  net: ieee802154: fix error return code in dgram_bind()
  mm,hugetlb: take hugetlb_lock before decrementing h->resv_huge_pages
  cgroup-v1: add disabled controller check in cgroup1_parse_param()
  xen/gntdev: Prevent leaking grants
  Xen/gntdev: don't ignore kernel unmapping error
  xfs: force the log after remapping a synchronous-writes file
  xfs: clear XFS_DQ_FREEING if we can't lock the dquot buffer to flush
  xfs: finish dfops on every insert range shift iteration
  s390/pci: add missing EX_TABLE entries to __pcistg_mio_inuser()/__pcilg_mio_inuser()
  s390/futex: add missing EX_TABLE entry to __futex_atomic_op()
  perf auxtrace: Fix address filter symbol name match for modules
  kernfs: fix use-after-free in __kernfs_remove
  mmc: core: Fix kernel panic when remove non-standard SDIO card
  drm/msm/hdmi: fix memory corruption with too many bridges
  drm/msm/dsi: fix memory corruption with too many bridges
  mac802154: Fix LQI recording
  fbdev: smscufx: Fix several use-after-free bugs
  iio: light: tsl2583: Fix module unloading
  tools: iio: iio_utils: fix digit calculation
  xhci: Remove device endpoints from bandwidth list when freeing the device
  mtd: rawnand: marvell: Use correct logic for nand-keep-config
  usb: xhci: add XHCI_SPURIOUS_SUCCESS to ASM1042 despite being a V0.96 controller
  usb: bdc: change state when port disconnected
  usb: dwc3: gadget: Don't set IMI for no_interrupt
  usb: dwc3: gadget: Stop processing more requests on IMI
  USB: add RESET_RESUME quirk for NVIDIA Jetson devices in RCM
  ALSA: au88x0: use explicitly signed char
  ALSA: Use del_timer_sync() before freeing timer
  can: kvaser_usb: Fix possible completions during init_completion
  can: j1939: transport: j1939_session_skb_drop_old(): spin_unlock_irqrestore() before kfree_skb()
  UPSTREAM: once: fix section mismatch on clang builds
  ANDROID: fix up struct sk_buf ABI breakage
  ANDROID: fix up CRC issue with struct tcp_sock
  Linux 5.4.222
  once: fix section mismatch on clang builds
  ANDROID: fix up 131287ff83 ("once: add DO_ONCE_SLOW() for sleepable contexts")
  Revert "serial: 8250: Fix restoring termios speed after suspend"
  Linux 5.4.221
  mm: /proc/pid/smaps_rollup: fix no vma's null-deref
  hv_netvsc: Fix race between VF offering and VF association message from host
  Makefile.debug: re-enable debug info for .S files
  ACPI: video: Force backlight native for more TongFang devices
  riscv: topology: fix default topology reporting
  arm64: topology: move store_cpu_topology() to shared code
  iommu/vt-d: Clean up si_domain in the init_dmars() error path
  net: hns: fix possible memory leak in hnae_ae_register()
  net: sched: cake: fix null pointer access issue when cake_init() fails
  net: phy: dp83867: Extend RX strap quirk for SGMII mode
  net/atm: fix proc_mpc_write incorrect return value
  HID: magicmouse: Do not set BTN_MOUSE on double report
  tipc: fix an information leak in tipc_topsrv_kern_subscr
  tipc: Fix recognition of trial period
  ACPI: extlog: Handle multiple records
  btrfs: fix processing of delayed tree block refs during backref walking
  btrfs: fix processing of delayed data refs during backref walking
  r8152: add PID for the Lenovo OneLink+ Dock
  arm64: errata: Remove AES hwcap for COMPAT tasks
  media: venus: dec: Handle the case where find_format fails
  KVM: arm64: vgic: Fix exit condition in scan_its_table()
  ata: ahci: Match EM_MAX_SLOTS with SATA_PMP_MAX_PORTS
  ata: ahci-imx: Fix MODULE_ALIAS
  hwmon/coretemp: Handle large core ID value
  x86/microcode/AMD: Apply the patch early on every logical thread
  ocfs2: fix BUG when iput after ocfs2_mknod fails
  ocfs2: clear dinode links count in case of error
  xfs: fix use-after-free on CIL context on shutdown
  xfs: move inode flush to the sync workqueue
  xfs: reflink should force the log out if mounted with wsync
  xfs: factor out a new xfs_log_force_inode helper
  xfs: trylock underlying buffer on dquot flush
  xfs: don't write a corrupt unmount record to force summary counter recalc
  xfs: tail updates only need to occur when LSN changes
  xfs: factor common AIL item deletion code
  xfs: Throttle commits on delayed background CIL push
  xfs: Lower CIL flush limit for large logs
  xfs: preserve default grace interval during quotacheck
  xfs: fix unmount hang and memory leak on shutdown during quotaoff
  xfs: factor out quotaoff intent AIL removal and memory free
  xfs: Replace function declaration by actual definition
  xfs: remove the xfs_qoff_logitem_t typedef
  xfs: remove the xfs_dq_logitem_t typedef
  xfs: remove the xfs_disk_dquot_t and xfs_dquot_t
  xfs: Use scnprintf() for avoiding potential buffer overflow
  xfs: check owner of dir3 blocks
  xfs: check owner of dir3 data blocks
  xfs: fix buffer corruption reporting when xfs_dir3_free_header_check fails
  xfs: xfs_buf_corruption_error should take __this_address
  xfs: add a function to deal with corrupt buffers post-verifiers
  xfs: rework collapse range into an atomic operation
  xfs: rework insert range into an atomic operation
  xfs: open code insert range extent split helper
  Linux 5.4.220
  thermal: intel_powerclamp: Use first online CPU as control_cpu
  inet: fully convert sk->sk_rx_dst to RCU rules
  efi: libstub: drop pointless get_memory_map() call
  md: Replace snprintf with scnprintf
  ext4: continue to expand file system when the target size doesn't reach
  net/ieee802154: don't warn zero-sized raw_sendmsg()
  Revert "net/ieee802154: reject zero-sized raw_sendmsg()"
  net: ieee802154: return -EINVAL for unknown addr type
  io_uring/af_unix: defer registered files gc to io_uring release
  perf intel-pt: Fix segfault in intel_pt_print_info() with uClibc
  clk: bcm2835: Make peripheral PLLC critical
  usb: idmouse: fix an uninit-value in idmouse_open
  nvmet-tcp: add bounds check on Transfer Tag
  nvme: copy firmware_rev on each init
  staging: rtl8723bs: fix a potential memory leak in rtw_init_cmd_priv()
  Revert "usb: storage: Add quirk for Samsung Fit flash"
  usb: musb: Fix musb_gadget.c rxstate overflow bug
  usb: host: xhci: Fix potential memory leak in xhci_alloc_stream_info()
  md/raid5: Wait for MD_SB_CHANGE_PENDING in raid5d
  HID: roccat: Fix use-after-free in roccat_read()
  bcache: fix set_at_max_writeback_rate() for multiple attached devices
  ata: libahci_platform: Sanity check the DT child nodes number
  staging: vt6655: fix potential memory leak
  power: supply: adp5061: fix out-of-bounds read in adp5061_get_chg_type()
  nbd: Fix hung when signal interrupts nbd_start_device_ioctl()
  scsi: 3w-9xxx: Avoid disabling device if failing to enable it
  clk: zynqmp: pll: rectify rate rounding in zynqmp_pll_round_rate
  media: cx88: Fix a null-ptr-deref bug in buffer_prepare()
  clk: zynqmp: Fix stack-out-of-bounds in strncpy`
  btrfs: scrub: try to fix super block errors
  ARM: dts: imx6sx: add missing properties for sram
  ARM: dts: imx6sll: add missing properties for sram
  ARM: dts: imx6sl: add missing properties for sram
  ARM: dts: imx6qp: add missing properties for sram
  ARM: dts: imx6dl: add missing properties for sram
  ARM: dts: imx6q: add missing properties for sram
  ARM: dts: imx7d-sdb: config the max pressure for tsc2046
  mmc: sdhci-msm: add compatible string check for sdm670
  drm/amdgpu: fix initial connector audio value
  platform/x86: msi-laptop: Change DMI match / alias strings to fix module autoloading
  drm: panel-orientation-quirks: Add quirk for Anbernic Win600
  drm/vc4: vec: Fix timings for VEC modes
  drm/amd/display: fix overflow on MIN_I64 definition
  drm: Prevent drm_copy_field() to attempt copying a NULL pointer
  drm: Use size_t type for len variable in drm_copy_field()
  drm/nouveau/nouveau_bo: fix potential memory leak in nouveau_bo_alloc()
  r8152: Rate limit overflow messages
  Bluetooth: L2CAP: Fix user-after-free
  net: If sock is dead don't access sock's sk_wq in sk_stream_wait_memory
  wifi: rt2x00: correctly set BBP register 86 for MT7620
  wifi: rt2x00: set SoC wmac clock register
  wifi: rt2x00: set VGC gain for both chains of MT7620
  wifi: rt2x00: set correct TX_SW_CFG1 MAC register for MT7620
  wifi: rt2x00: don't run Rt5592 IQ calibration on MT7620
  can: bcm: check the result of can_send() in bcm_can_tx()
  Bluetooth: hci_sysfs: Fix attempting to call device_add multiple times
  Bluetooth: L2CAP: initialize delayed works at l2cap_chan_create()
  wifi: brcmfmac: fix use-after-free bug in brcmf_netdev_start_xmit()
  xfrm: Update ipcomp_scratches with NULL when freed
  wifi: ath9k: avoid uninit memory read in ath9k_htc_rx_msg()
  tcp: annotate data-race around tcp_md5sig_pool_populated
  openvswitch: Fix overreporting of drops in dropwatch
  openvswitch: Fix double reporting of drops in dropwatch
  bpftool: Clear errno after libcap's checks
  wifi: brcmfmac: fix invalid address access when enabling SCAN log level
  NFSD: Return nfserr_serverfault if splice_ok but buf->pages have data
  thermal: intel_powerclamp: Use get_cpu() instead of smp_processor_id() to avoid crash
  powercap: intel_rapl: fix UBSAN shift-out-of-bounds issue
  MIPS: BCM47XX: Cast memcmp() of function to (void *)
  ACPI: video: Add Toshiba Satellite/Portege Z830 quirk
  f2fs: fix race condition on setting FI_NO_EXTENT flag
  crypto: cavium - prevent integer overflow loading firmware
  kbuild: remove the target in signal traps when interrupted
  iommu/iova: Fix module config properly
  crypto: ccp - Release dma channels before dmaengine unrgister
  crypto: akcipher - default implementation for setting a private key
  iommu/omap: Fix buffer overflow in debugfs
  cgroup/cpuset: Enable update_tasks_cpumask() on top_cpuset
  powerpc: Fix SPE Power ISA properties for e500v1 platforms
  powerpc/64s: Fix GENERIC_CPU build flags for PPC970 / G5
  x86/hyperv: Fix 'struct hv_enlightened_vmcs' definition
  powerpc/powernv: add missing of_node_put() in opal_export_attrs()
  powerpc/pci_dn: Add missing of_node_put()
  powerpc/sysdev/fsl_msi: Add missing of_node_put()
  powerpc/math_emu/efp: Include module.h
  mailbox: bcm-ferxrm-mailbox: Fix error check for dma_map_sg
  clk: ast2600: BCLK comes from EPLL
  clk: ti: dra7-atl: Fix reference leak in of_dra7_atl_clk_probe
  clk: bcm2835: fix bcm2835_clock_rate_from_divisor declaration
  spmi: pmic-arb: correct duplicate APID to PPID mapping logic
  dmaengine: ioat: stop mod_timer from resurrecting deleted timer in __cleanup()
  clk: mediatek: mt8183: mfgcfg: Propagate rate changes to parent
  mfd: sm501: Add check for platform_driver_register()
  mfd: fsl-imx25: Fix check for platform_get_irq() errors
  mfd: lp8788: Fix an error handling path in lp8788_irq_init() and lp8788_irq_init()
  mfd: lp8788: Fix an error handling path in lp8788_probe()
  mfd: fsl-imx25: Fix an error handling path in mx25_tsadc_setup_irq()
  mfd: intel_soc_pmic: Fix an error handling path in intel_soc_pmic_i2c_probe()
  fsi: core: Check error number after calling ida_simple_get
  scsi: libsas: Fix use-after-free bug in smp_execute_task_sg()
  serial: 8250: Fix restoring termios speed after suspend
  firmware: google: Test spinlock on panic path to avoid lockups
  staging: vt6655: fix some erroneous memory clean-up loops
  phy: qualcomm: call clk_disable_unprepare in the error handling
  tty: serial: fsl_lpuart: disable dma rx/tx use flags in lpuart_dma_shutdown
  drivers: serial: jsm: fix some leaks in probe
  usb: gadget: function: fix dangling pnp_string in f_printer.c
  xhci: Don't show warning for reinit on known broken suspend
  md/raid5: Ensure stripe_fill happens on non-read IO with journal
  mtd: rawnand: meson: fix bit map use in meson_nfc_ecc_correct()
  ata: fix ata_id_has_dipm()
  ata: fix ata_id_has_ncq_autosense()
  ata: fix ata_id_has_devslp()
  ata: fix ata_id_sense_reporting_enabled() and ata_id_has_sense_reporting()
  RDMA/siw: Always consume all skbuf data in sk_data_ready() upcall.
  mtd: devices: docg3: check the return value of devm_ioremap() in the probe
  dyndbg: let query-modname override actual module name
  dyndbg: fix module.dyndbg handling
  misc: ocxl: fix possible refcount leak in afu_ioctl()
  RDMA/rxe: Fix the error caused by qp->sk
  RDMA/rxe: Fix "kernel NULL pointer dereference" error
  media: xilinx: vipp: Fix refcount leak in xvip_graph_dma_init
  tty: xilinx_uartps: Fix the ignore_status
  media: exynos4-is: fimc-is: Add of_node_put() when breaking out of loop
  HSI: omap_ssi_port: Fix dma_map_sg error check
  HSI: omap_ssi: Fix refcount leak in ssi_probe
  clk: tegra20: Fix refcount leak in tegra20_clock_init
  clk: tegra: Fix refcount leak in tegra114_clock_init
  clk: tegra: Fix refcount leak in tegra210_clock_init
  clk: berlin: Add of_node_put() for of_get_parent()
  clk: oxnas: Hold reference returned by of_get_parent()
  clk: meson: Hold reference returned by of_get_parent()
  iio: ABI: Fix wrong format of differential capacitance channel ABI.
  iio: inkern: only release the device node when done with it
  iio: adc: at91-sama5d2_adc: lock around oversampling and sample freq
  iio: adc: at91-sama5d2_adc: check return status for pressure and touch
  iio: adc: at91-sama5d2_adc: fix AT91_SAMA5D2_MR_TRACKTIM_MAX
  ARM: dts: exynos: fix polarity of VBUS GPIO of Origen
  ARM: Drop CMDLINE_* dependency on ATAGS
  ARM: dts: exynos: correct s5k6a3 reset polarity on Midas family
  ARM: dts: kirkwood: lsxl: remove first ethernet port
  ARM: dts: kirkwood: lsxl: fix serial line
  ARM: dts: turris-omnia: Fix mpp26 pin name and comment
  soc: qcom: smem_state: Add refcounting for the 'state->of_node'
  soc: qcom: smsm: Fix refcount leak bugs in qcom_smsm_probe()
  memory: of: Fix refcount leak bug in of_get_ddr_timings()
  memory: pl353-smc: Fix refcount leak bug in pl353_smc_probe()
  ALSA: hda/hdmi: Don't skip notification handling during PM operation
  ASoC: wm5102: Fix PM disable depth imbalance in wm5102_probe
  ASoC: wm5110: Fix PM disable depth imbalance in wm5110_probe
  ASoC: wm8997: Fix PM disable depth imbalance in wm8997_probe
  mmc: wmt-sdmmc: Fix an error handling path in wmt_mci_probe()
  ALSA: dmaengine: increment buffer pointer atomically
  drm/msm/dpu: index dpu_kms->hw_vbif using vbif_idx
  ASoC: eureka-tlv320: Hold reference returned from of_find_xxx API
  mmc: au1xmmc: Fix an error handling path in au1xmmc_probe()
  drm/omap: dss: Fix refcount leak bugs
  ALSA: hda: beep: Simplify keep-power-at-enable behavior
  ASoC: rsnd: Add check for rsnd_mod_power_on
  drm/bridge: megachips: Fix a null pointer dereference bug
  drm: fix drm_mipi_dbi build errors
  platform/x86: msi-laptop: Fix resource cleanup
  platform/x86: msi-laptop: Fix old-ec check for backlight registering
  platform/chrome: fix memory corruption in ioctl
  platform/chrome: fix double-free in chromeos_laptop_prepare()
  drm/mipi-dsi: Detach devices when removing the host
  drm: bridge: adv7511: fix CEC power down control register offset
  net: mvpp2: fix mvpp2 debugfs leak
  once: add DO_ONCE_SLOW() for sleepable contexts
  net/ieee802154: reject zero-sized raw_sendmsg()
  bnx2x: fix potential memory leak in bnx2x_tpa_stop()
  net: rds: don't hold sock lock when cancelling work from rds_tcp_reset_callbacks()
  tcp: fix tcp_cwnd_validate() to not forget is_cwnd_limited
  sctp: handle the error returned from sctp_auth_asoc_init_active_key
  mISDN: fix use-after-free bugs in l1oip timer handlers
  vhost/vsock: Use kvmalloc/kvfree for larger packets.
  spi: s3c64xx: Fix large transfers with DMA
  netfilter: nft_fib: Fix for rpath check with VRF devices
  spi/omap100k:Fix PM disable depth imbalance in omap1_spi100k_probe
  x86/microcode/AMD: Track patch allocation size explicitly
  bpf: Ensure correct locking around vulnerable function find_vpid()
  net: fs_enet: Fix wrong check in do_pd_setup
  wifi: rtl8xxxu: gen2: Fix mistake in path B IQ calibration
  bpf: btf: fix truncated last_member_type_id in btf_struct_resolve
  wifi: rtl8xxxu: Fix skb misuse in TX queue selection
  spi: qup: add missing clk_disable_unprepare on error in spi_qup_pm_resume_runtime()
  spi: qup: add missing clk_disable_unprepare on error in spi_qup_resume()
  wifi: rtl8xxxu: tighten bounds checking in rtl8xxxu_read_efuse()
  x86/resctrl: Fix to restore to original value when re-enabling hardware prefetch register
  bpftool: Fix a wrong type cast in btf_dumper_int
  wifi: mac80211: allow bw change during channel switch in mesh
  wifi: ath10k: add peer map clean up for peer delete in ath10k_sta_state()
  nfsd: Fix a memory leak in an error handling path
  ARM: 9247/1: mm: set readonly for MT_MEMORY_RO with ARM_LPAE
  sh: machvec: Use char[] for section boundaries
  userfaultfd: open userfaultfds with O_RDONLY
  tracing: Disable interrupt or preemption before acquiring arch_spinlock_t
  selinux: use "grep -E" instead of "egrep"
  drm/nouveau: fix a use-after-free in nouveau_gem_prime_import_sg_table()
  gcov: support GCC 12.1 and newer compilers
  KVM: VMX: Drop bits 31:16 when shoving exception error code into VMCS
  KVM: nVMX: Unconditionally purge queued/injected events on nested "exit"
  KVM: x86/emulator: Fix handing of POP SS to correctly set interruptibility
  media: cedrus: Set the platform driver data earlier
  ring-buffer: Fix race between reset page and reading page
  ring-buffer: Check pending waiters when doing wake ups as well
  ring-buffer: Have the shortest_full queue be the shortest not longest
  ring-buffer: Allow splice to read previous partially read pages
  ftrace: Properly unset FTRACE_HASH_FL_MOD
  livepatch: fix race between fork and KLP transition
  ext4: place buffer head allocation before handle start
  ext4: make ext4_lazyinit_thread freezable
  ext4: fix null-ptr-deref in ext4_write_info
  ext4: avoid crash when inline data creation follows DIO write
  jbd2: wake up journal waiters in FIFO order, not LIFO
  nilfs2: fix use-after-free bug of struct nilfs_root
  f2fs: fix to do sanity check on summary info
  f2fs: fix to do sanity check on destination blkaddr during recovery
  f2fs: increase the limit for reserve_root
  btrfs: fix race between quota enable and quota rescan ioctl
  fbdev: smscufx: Fix use-after-free in ufx_ops_open()
  powerpc/boot: Explicitly disable usage of SPE instructions
  PCI: Sanitise firmware BAR assignments behind a PCI-PCI bridge
  UM: cpuinfo: Fix a warning for CONFIG_CPUMASK_OFFSTACK
  riscv: Pass -mno-relax only on lld < 15.0.0
  riscv: Allow PROT_WRITE-only mmap()
  parisc: fbdev/stifb: Align graphics memory size to 4MB
  RISC-V: Make port I/O string accessors actually work
  regulator: qcom_rpm: Fix circular deferral regression
  ASoC: wcd9335: fix order of Slimbus unprepare/disable
  quota: Check next/prev free block number after reading from quota file
  HID: multitouch: Add memory barriers
  fs: dlm: handle -EBUSY first in lock arg validation
  fs: dlm: fix race between test_bit() and queue_work()
  mmc: sdhci-sprd: Fix minimum clock limit
  can: kvaser_usb_leaf: Fix CAN state after restart
  can: kvaser_usb_leaf: Fix TX queue out of sync after restart
  can: kvaser_usb_leaf: Fix overread with an invalid command
  can: kvaser_usb: Fix use of uninitialized completion
  usb: add quirks for Lenovo OneLink+ Dock
  iio: pressure: dps310: Reset chip after timeout
  iio: pressure: dps310: Refactor startup procedure
  iio: dac: ad5593r: Fix i2c read protocol requirements
  cifs: Fix the error length of VALIDATE_NEGOTIATE_INFO message
  cifs: destage dirty pages before re-reading them for cache=none
  mtd: rawnand: atmel: Unmap streaming DMA mappings
  ALSA: hda/realtek: Add Intel Reference SSID to support headset keys
  ALSA: hda/realtek: Add quirk for ASUS GV601R laptop
  ALSA: hda/realtek: Correct pin configs for ASUS G533Z
  ALSA: hda/realtek: remove ALC289_FIXUP_DUAL_SPK for Dell 5530
  ALSA: usb-audio: Fix NULL dererence at error path
  ALSA: usb-audio: Fix potential memory leaks
  ALSA: rawmidi: Drop register_mutex in snd_rawmidi_free()
  ALSA: oss: Fix potential deadlock at unregistration

 Conflicts:
	drivers/android/binder.c
	include/linux/rmap.h
	kernel/cgroup/cpuset.c
	mm/rmap.c

Change-Id: I34fe2d5c9b0d5844560de9c983867511b5d57265
2023-02-08 18:28:38 +02:00
Minchan Kim
8912db2538 BACKPORT: mm: don't be stuck to rmap lock on reclaim path
The rmap locks(i_mmap_rwsem and anon_vma->root->rwsem) could be contended
under memory pressure if processes keep working on their vmas(e.g., fork,
mmap, munmap).  It makes reclaim path stuck.  In our real workload traces,
we see kswapd is waiting the lock for 300ms+(worst case, a sec) and it
makes other processes entering direct reclaim, which were also stuck on
the lock.

This patch makes lru aging path try_lock mode like shink_page_list so the
reclaim context will keep working with next lru pages without being stuck.
if it found the rmap lock contended, it rotates the page back to head of
lru in both active/inactive lrus to make them consistent behavior, which
is basic starting point rather than adding more heristic.

Since this patch introduces a new "contended" field as out-param along
with try_lock in-param in rmap_walk_control, it's not immutable any longer
if the try_lock is set so remove const keywords on rmap related functions.
Since rmap walking is already expensive operation, I doubt the const
would help sizable benefit( And we didn't have it until 5.17).

In a heavy app workload in Android, trace shows following statistics.  It
almost removes rmap lock contention from reclaim path.

Martin Liu reported:

Before:

   max_dur(ms)  min_dur(ms)  max-min(dur)ms  avg_dur(ms)  sum_dur(ms)  count blocked_function
         1632            0            1631   151.542173        31672    209  page_lock_anon_vma_read
          601            0             601   145.544681        28817    198  rmap_walk_file

After:

   max_dur(ms)  min_dur(ms)  max-min(dur)ms  avg_dur(ms)  sum_dur(ms)  count blocked_function
          NaN          NaN              NaN          NaN          NaN    0.0             NaN
            0            0                0     0.127645            1     12  rmap_walk_file

[minchan@kernel.org: add comment, per Matthew]
  Link: https://lkml.kernel.org/r/YnNqeB5tUf6LZ57b@google.com
Link: https://lkml.kernel.org/r/20220510215423.164547-1-minchan@kernel.org
Signed-off-by: Minchan Kim <minchan@kernel.org>
Acked-by: Johannes Weiner <hannes@cmpxchg.org>
Cc: Suren Baghdasaryan <surenb@google.com>
Cc: Michal Hocko <mhocko@suse.com>
Cc: John Dias <joaodias@google.com>
Cc: Tim Murray <timmurray@google.com>
Cc: Matthew Wilcox <willy@infradead.org>
Cc: Vladimir Davydov <vdavydov.dev@gmail.com>
Cc: Martin Liu <liumartin@google.com>
Cc: Minchan Kim <minchan@kernel.org>
Cc: Matthew Wilcox <willy@infradead.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>

Conflicts:
	folio->page

(cherry picked from commit 6d4675e601357834dadd2ba1d803f6484596015c)
Bug: 239681156
Bug: 252333201
Bug: 265247508
Signed-off-by: Minchan Kim <minchan@google.com>
Change-Id: I0c63e0291120c8a1b5f2d83b8a7b210cb56c27a2
Signed-off-by: chenxin <chenxinxin@xiaomi.corp-partner.google.com>
Signed-off-by: guchongchong <guchongchong@xiaomi.corp-partner.google.com>
(cherry picked from commit a0eae55f26a0cbdd828db226592093ad2142889c)
2023-01-13 08:56:32 +00:00
Srinivasarao Pathipati
16e939c6e4 Merge android11-5.4.161+ (b9d179c) into msm-5.4
* refs/heads/tmp-b9d179c:
  UPSTREAM: driver core: Fix possible memory leak in device_link_add()
  UPSTREAM: blk-mq: fix kernel panic during iterating over flush request
  UPSTREAM: net: xfrm: fix memory leak in xfrm_user_rcv_msg
  UPSTREAM: binder: fix the missing BR_FROZEN_REPLY in binder_return_strings
  ANDROID: incremental-fs: fix mount_fs issue
  UPSTREAM: vfs: fs_context: fix up param length parsing in legacy_parse_param
  ANDROID: GKI: disable CONFIG_FORTIFY_SOURCE
  Linux 5.4.161
  erofs: fix unsafe pagevec reuse of hooked pclusters
  erofs: remove the occupied parameter from z_erofs_pagevec_enqueue()
  PCI: Add MSI masking quirk for Nvidia ION AHCI
  PCI/MSI: Deal with devices lying about their MSI mask capability
  PCI/MSI: Destroy sysfs before freeing entries
  parisc/entry: fix trace test in syscall exit path
  fortify: Explicitly disable Clang support
  scsi: ufs: Fix tm request when non-fatal error happens
  ext4: fix lazy initialization next schedule time computation in more granular unit
  MIPS: Fix assembly error from MIPSr2 code used within MIPS_ISA_ARCH_LEVEL
  scsi: ufs: Fix interrupt error message for shared interrupts
  soc/tegra: pmc: Fix imbalanced clock disabling in error code path
  Revert "net: sched: update default qdisc visibility after Tx queue cnt changes"
  Revert "serial: core: Fix initializing and restoring termios speed"
  Linux 5.4.160
  selftests/bpf: Fix also no-alu32 strobemeta selftest
  ath10k: fix invalid dma_addr_t token assignment
  SUNRPC: Partial revert of commit 6f9f17287e78
  PCI: Add PCI_EXP_DEVCTL_PAYLOAD_* macros
  powerpc/powernv/prd: Unregister OPAL_MSG_PRD2 notifier during module unload
  s390/cio: make ccw_device_dma_* more robust
  s390/tape: fix timer initialization in tape_std_assign()
  s390/cio: check the subchannel validity for dev_busid
  video: backlight: Drop maximum brightness override for brightness zero
  mm, oom: do not trigger out_of_memory from the #PF
  mm, oom: pagefault_out_of_memory: don't force global OOM for dying tasks
  powerpc/bpf: Emit stf barrier instruction sequences for BPF_NOSPEC
  powerpc/security: Add a helper to query stf_barrier type
  powerpc/bpf: Fix BPF_SUB when imm == 0x80000000
  powerpc/bpf: Validate branch ranges
  powerpc/lib: Add helper to check if offset is within conditional branch range
  ovl: fix deadlock in splice write
  9p/net: fix missing error check in p9_check_errors
  net, neigh: Enable state migration between NUD_PERMANENT and NTF_USE
  f2fs: should use GFP_NOFS for directory inodes
  irqchip/sifive-plic: Fixup EOI failed when masked
  parisc: Fix set_fixmap() on PA1.x CPUs
  parisc: Fix backtrace to always include init funtion names
  ARM: 9156/1: drop cc-option fallbacks for architecture selection
  ARM: 9155/1: fix early early_iounmap()
  selftests/net: udpgso_bench_rx: fix port argument
  cxgb4: fix eeprom len when diagnostics not implemented
  net/smc: fix sk_refcnt underflow on linkdown and fallback
  vsock: prevent unnecessary refcnt inc for nonblocking connect
  net: hns3: allow configure ETS bandwidth of all TCs
  net/sched: sch_taprio: fix undefined behavior in ktime_mono_to_any
  bpf: sockmap, strparser, and tls are reusing qdisc_skb_cb and colliding
  arm64: pgtable: make __pte_to_phys/__phys_to_pte_val inline functions
  nfc: pn533: Fix double free when pn533_fill_fragment_skbs() fails
  llc: fix out-of-bound array index in llc_sk_dev_hash()
  perf bpf: Add missing free to bpf_event__print_bpf_prog_info()
  zram: off by one in read_block_state()
  mm/zsmalloc.c: close race window between zs_pool_dec_isolated() and zs_unregister_migration()
  bonding: Fix a use-after-free problem when bond_sysfs_slave_add() failed
  ACPI: PMIC: Fix intel_pmic_regs_handler() read accesses
  net: vlan: fix a UAF in vlan_dev_real_dev()
  net: davinci_emac: Fix interrupt pacing disable
  xen-pciback: Fix return in pm_ctrl_init()
  i2c: xlr: Fix a resource leak in the error handling path of 'xlr_i2c_probe()'
  NFSv4: Fix a regression in nfs_set_open_stateid_locked()
  scsi: qla2xxx: Turn off target reset during issue_lip
  scsi: qla2xxx: Fix gnl list corruption
  ar7: fix kernel builds for compiler test
  watchdog: f71808e_wdt: fix inaccurate report in WDIOC_GETTIMEOUT
  m68k: set a default value for MEMORY_RESERVE
  signal/sh: Use force_sig(SIGKILL) instead of do_group_exit(SIGKILL)
  dmaengine: dmaengine_desc_callback_valid(): Check for `callback_result`
  netfilter: nfnetlink_queue: fix OOB when mac header was cleared
  soc: fsl: dpaa2-console: free buffer before returning from dpaa2_console_read
  auxdisplay: ht16k33: Fix frame buffer device blanking
  auxdisplay: ht16k33: Connect backlight to fbdev
  auxdisplay: img-ascii-lcd: Fix lock-up when displaying empty string
  dmaengine: at_xdmac: fix AT_XDMAC_CC_PERID() macro
  mtd: core: don't remove debugfs directory if device is in use
  mtd: spi-nor: hisi-sfc: Remove excessive clk_disable_unprepare()
  fs: orangefs: fix error return code of orangefs_revalidate_lookup()
  NFS: Fix deadlocks in nfs_scan_commit_list()
  opp: Fix return in _opp_add_static_v2()
  PCI: aardvark: Fix preserving PCI_EXP_RTCTL_CRSSVE flag on emulated bridge
  PCI: aardvark: Don't spam about PIO Response Status
  drm/plane-helper: fix uninitialized variable reference
  pnfs/flexfiles: Fix misplaced barrier in nfs4_ff_layout_prepare_ds
  rpmsg: Fix rpmsg_create_ept return when RPMSG config is not defined
  apparmor: fix error check
  power: supply: bq27xxx: Fix kernel crash on IRQ handler register error
  mips: cm: Convert to bitfield API to fix out-of-bounds access
  powerpc/44x/fsp2: add missing of_node_put
  HID: u2fzero: properly handle timeouts in usb_submit_urb
  HID: u2fzero: clarify error check and length calculations
  serial: xilinx_uartps: Fix race condition causing stuck TX
  phy: qcom-qusb2: Fix a memory leak on probe
  ASoC: cs42l42: Defer probe if request_threaded_irq() returns EPROBE_DEFER
  ASoC: cs42l42: Correct some register default values
  ARM: dts: stm32: fix SAI sub nodes register range
  staging: ks7010: select CRYPTO_HASH/CRYPTO_MICHAEL_MIC
  RDMA/mlx4: Return missed an error if device doesn't support steering
  scsi: csiostor: Uninitialized data in csio_ln_vnp_read_cbfn()
  power: supply: rt5033_battery: Change voltage values to µV
  usb: gadget: hid: fix error code in do_config()
  serial: 8250_dw: Drop wrong use of ACPI_PTR()
  video: fbdev: chipsfb: use memset_io() instead of memset()
  clk: at91: check pmc node status before registering syscore ops
  memory: fsl_ifc: fix leak of irq and nand_irq in fsl_ifc_ctrl_probe
  soc/tegra: Fix an error handling path in tegra_powergate_power_up()
  arm: dts: omap3-gta04a4: accelerometer irq fix
  ALSA: hda: Reduce udelay() at SKL+ position reporting
  JFS: fix memleak in jfs_mount
  MIPS: loongson64: make CPU_LOONGSON64 depends on MIPS_FP_SUPPORT
  scsi: dc395: Fix error case unwinding
  ARM: dts: at91: tse850: the emac<->phy interface is rmii
  arm64: dts: meson-g12a: Fix the pwm regulator supply properties
  RDMA/bnxt_re: Fix query SRQ failure
  ARM: dts: qcom: msm8974: Add xo_board reference clock to DSI0 PHY
  arm64: dts: rockchip: Fix GPU register width for RK3328
  ARM: s3c: irq-s3c24xx: Fix return value check for s3c24xx_init_intc()
  clk: mvebu: ap-cpu-clk: Fix a memory leak in error handling paths
  RDMA/rxe: Fix wrong port_cap_flags
  ibmvnic: Process crqs after enabling interrupts
  ibmvnic: don't stop queue in xmit
  udp6: allow SO_MARK ctrl msg to affect routing
  selftests/bpf: Fix fclose/pclose mismatch in test_progs
  crypto: pcrypt - Delay write to padata->info
  net: phylink: avoid mvneta warning when setting pause parameters
  net: amd-xgbe: Toggle PLL settings during rate change
  drm/amdgpu/gmc6: fix DMA mask from 44 to 40 bits
  wcn36xx: add proper DMA memory barriers in rx path
  libertas: Fix possible memory leak in probe and disconnect
  libertas_tf: Fix possible memory leak in probe and disconnect
  KVM: s390: Fix handle_sske page fault handling
  samples/kretprobes: Fix return value if register_kretprobe() failed
  tcp: don't free a FIN sk_buff in tcp_remove_empty_skb()
  irq: mips: avoid nested irq_enter()
  s390/gmap: don't unconditionally call pte_unmap_unlock() in __gmap_zap()
  libbpf: Fix BTF data layout checks and allow empty BTF
  smackfs: use netlbl_cfg_cipsov4_del() for deleting cipso_v4_doi
  drm/msm: Fix potential NULL dereference in DPU SSPP
  clocksource/drivers/timer-ti-dm: Select TIMER_OF
  PM: hibernate: fix sparse warnings
  nvme-rdma: fix error code in nvme_rdma_setup_ctrl
  phy: micrel: ksz8041nl: do not use power down mode
  mwifiex: Send DELBA requests according to spec
  rsi: stop thread firstly in rsi_91x_init() error handling
  mt76: mt76x02: fix endianness warnings in mt76x02_mac.c
  platform/x86: thinkpad_acpi: Fix bitwise vs. logical warning
  block: ataflop: fix breakage introduced at blk-mq refactoring
  mmc: mxs-mmc: disable regulator on error and in the remove function
  net: stream: don't purge sk_error_queue in sk_stream_kill_queues()
  drm/msm: uninitialized variable in msm_gem_import()
  ath10k: fix max antenna gain unit
  hwmon: (pmbus/lm25066) Let compiler determine outer dimension of lm25066_coeff
  hwmon: Fix possible memleak in __hwmon_device_register()
  net, neigh: Fix NTF_EXT_LEARNED in combination with NTF_USE
  memstick: jmb38x_ms: use appropriate free function in jmb38x_ms_alloc_host()
  memstick: avoid out-of-range warning
  mmc: sdhci-omap: Fix NULL pointer exception if regulator is not configured
  b43: fix a lower bounds test
  b43legacy: fix a lower bounds test
  hwrng: mtk - Force runtime pm ops for sleep ops
  crypto: qat - disregard spurious PFVF interrupts
  crypto: qat - detect PFVF collision after ACK
  media: dvb-frontends: mn88443x: Handle errors of clk_prepare_enable()
  netfilter: nft_dynset: relax superfluous check on set updates
  EDAC/amd64: Handle three rank interleaving mode
  ath9k: Fix potential interrupt storm on queue reset
  media: em28xx: Don't use ops->suspend if it is NULL
  cpuidle: Fix kobject memory leaks in error paths
  crypto: ecc - fix CRYPTO_DEFAULT_RNG dependency
  kprobes: Do not use local variable when creating debugfs file
  media: cx23885: Fix snd_card_free call on null card pointer
  media: tm6000: Avoid card name truncation
  media: si470x: Avoid card name truncation
  media: radio-wl1273: Avoid card name truncation
  media: mtk-vpu: Fix a resource leak in the error handling path of 'mtk_vpu_probe()'
  media: TDA1997x: handle short reads of hdmi info frame.
  media: dvb-usb: fix ununit-value in az6027_rc_query
  media: cxd2880-spi: Fix a null pointer dereference on error handling path
  media: em28xx: add missing em28xx_close_extension
  drm/amdgpu: fix warning for overflow check
  ath10k: Fix missing frame timestamp for beacon/probe-resp
  net: dsa: rtl8366rb: Fix off-by-one bug
  rxrpc: Fix _usecs_to_jiffies() by using usecs_to_jiffies()
  crypto: caam - disable pkc for non-E SoCs
  Bluetooth: btmtkuart: fix a memleak in mtk_hci_wmt_sync
  wilc1000: fix possible memory leak in cfg_scan_result()
  cgroup: Make rebind_subsystems() disable v2 controllers all at once
  net: net_namespace: Fix undefined member in key_remove_domain()
  virtio-gpu: fix possible memory allocation failure
  drm/v3d: fix wait for TMU write combiner flush
  rcu: Fix existing exp request check in sync_sched_exp_online_cleanup()
  Bluetooth: fix init and cleanup of sco_conn.timeout_work
  selftests/bpf: Fix strobemeta selftest regression
  netfilter: conntrack: set on IPS_ASSURED if flows enters internal stream state
  parisc/kgdb: add kgdb_roundup() to make kgdb work with idle polling
  parisc/unwind: fix unwinder when CONFIG_64BIT is enabled
  task_stack: Fix end_of_stack() for architectures with upwards-growing stack
  parisc: fix warning in flush_tlb_all
  x86/hyperv: Protect set_hv_tscchange_cb() against getting preempted
  spi: bcm-qspi: Fix missing clk_disable_unprepare() on error in bcm_qspi_probe()
  btrfs: do not take the uuid_mutex in btrfs_rm_device
  net: annotate data-race in neigh_output()
  vrf: run conntrack only in context of lower/physdev for locally generated packets
  ARM: 9136/1: ARMv7-M uses BE-8, not BE-32
  gre/sit: Don't generate link-local addr if addr_gen_mode is IN6_ADDR_GEN_MODE_NONE
  ARM: clang: Do not rely on lr register for stacktrace
  smackfs: use __GFP_NOFAIL for smk_cipso_doi()
  iwlwifi: mvm: disable RX-diversity in powersave
  selftests: kvm: fix mismatched fclose() after popen()
  PM: hibernate: Get block device exclusively in swsusp_check()
  nvme: drop scan_lock and always kick requeue list when removing namespaces
  nvmet-tcp: fix use-after-free when a port is removed
  nvmet: fix use-after-free when a port is removed
  block: remove inaccurate requeue check
  mwl8k: Fix use-after-free in mwl8k_fw_state_machine()
  tracing/cfi: Fix cmp_entries_* functions signature mismatch
  workqueue: make sysfs of unbound kworker cpumask more clever
  lib/xz: Validate the value before assigning it to an enum variable
  lib/xz: Avoid overlapping memcpy() with invalid input with in-place decompression
  memstick: r592: Fix a UAF bug when removing the driver
  leaking_addresses: Always print a trailing newline
  ACPI: battery: Accept charges over the design capacity as full
  iov_iter: Fix iov_iter_get_pages{,_alloc} page fault return value
  ath: dfs_pattern_detector: Fix possible null-pointer dereference in channel_detector_create()
  tracefs: Have tracefs directories not set OTH permission bits by default
  net-sysfs: try not to restart the syscall if it will fail eventually
  media: usb: dvd-usb: fix uninit-value bug in dibusb_read_eeprom_byte()
  media: ipu3-imgu: VIDIOC_QUERYCAP: Fix bus_info
  media: ipu3-imgu: imgu_fmt: Handle properly try
  ACPICA: Avoid evaluating methods too early during system resume
  ipmi: Disable some operations during a panic
  media: rcar-csi2: Add checking to rcsi2_start_receiver()
  brcmfmac: Add DMI nvram filename quirk for Cyberbook T116 tablet
  ia64: don't do IA64_CMPXCHG_DEBUG without CONFIG_PRINTK
  media: mceusb: return without resubmitting URB in case of -EPROTO error.
  media: imx: set a media_device bus_info string
  media: s5p-mfc: Add checking to s5p_mfc_probe().
  media: s5p-mfc: fix possible null-pointer dereference in s5p_mfc_probe()
  media: uvcvideo: Set unique vdev name based in type
  media: uvcvideo: Return -EIO for control errors
  media: uvcvideo: Set capability in s_param
  media: stm32: Potential NULL pointer dereference in dcmi_irq_thread()
  media: netup_unidvb: handle interrupt properly according to the firmware
  media: mt9p031: Fix corrupted frame after restarting stream
  ath10k: high latency fixes for beacon buffer
  mwifiex: Properly initialize private structure on interface type changes
  mwifiex: Run SET_BSS_MODE when changing from P2P to STATION vif-type
  x86: Increase exception stack sizes
  smackfs: Fix use-after-free in netlbl_catmap_walk()
  net: sched: update default qdisc visibility after Tx queue cnt changes
  locking/lockdep: Avoid RCU-induced noinstr fail
  MIPS: lantiq: dma: reset correct number of channel
  MIPS: lantiq: dma: add small delay after reset
  platform/x86: wmi: do not fail if disabling fails
  drm/panel-orientation-quirks: add Valve Steam Deck
  Bluetooth: fix use-after-free error in lock_sock_nested()
  Bluetooth: sco: Fix lock_sock() blockage by memcpy_from_msg()
  drm: panel-orientation-quirks: Add quirk for the Samsung Galaxy Book 10.6
  drm: panel-orientation-quirks: Add quirk for KD Kurio Smart C15200 2-in-1
  drm: panel-orientation-quirks: Update the Lenovo Ideapad D330 quirk (v2)
  dma-buf: WARN on dmabuf release with pending attachments
  USB: chipidea: fix interrupt deadlock
  USB: iowarrior: fix control-message timeouts
  USB: serial: keyspan: fix memleak on probe errors
  iio: dac: ad5446: Fix ad5622_write() return value
  pinctrl: core: fix possible memory leak in pinctrl_enable()
  quota: correct error number in free_dqentry()
  quota: check block number when reading the block in quota file
  PCI: aardvark: Read all 16-bits from PCIE_MSI_PAYLOAD_REG
  PCI: aardvark: Fix return value of MSI domain .alloc() method
  PCI: aardvark: Fix reporting Data Link Layer Link Active
  PCI: aardvark: Do not unmask unused interrupts
  PCI: aardvark: Fix checking for link up via LTSSM state
  PCI: aardvark: Do not clear status bits of masked interrupts
  PCI: pci-bridge-emul: Fix emulation of W1C bits
  xen/balloon: add late_initcall_sync() for initial ballooning done
  ALSA: mixer: fix deadlock in snd_mixer_oss_set_volume
  ALSA: mixer: oss: Fix racy access to slots
  serial: core: Fix initializing and restoring termios speed
  powerpc/85xx: Fix oops when mpc85xx_smp_guts_ids node cannot be found
  can: j1939: j1939_can_recv(): ignore messages with invalid source address
  can: j1939: j1939_tp_cmd_recv(): ignore abort message in the BAM transport
  KVM: nVMX: Query current VMCS when determining if MSR bitmaps are in use
  power: supply: max17042_battery: use VFSOC for capacity when no rsns
  power: supply: max17042_battery: Prevent int underflow in set_soc_threshold
  signal/mips: Update (_save|_restore)_fp_context to fail with -EFAULT
  signal: Remove the bogus sigkill_pending in ptrace_stop
  RDMA/qedr: Fix NULL deref for query_qp on the GSI QP
  rsi: Fix module dev_oper_mode parameter description
  rsi: fix rate mask set leading to P2P failure
  rsi: fix key enabled check causing unwanted encryption for vap_id > 0
  rsi: fix occasional initialisation failure with BT coex
  wcn36xx: handle connection loss indication
  libata: fix checking of DMA state
  mwifiex: Read a PCI register after writing the TX ring write pointer
  wcn36xx: Fix HT40 capability for 2Ghz band
  evm: mark evm_fixmode as __ro_after_init
  rtl8187: fix control-message timeouts
  PCI: Mark Atheros QCA6174 to avoid bus reset
  ath10k: fix division by zero in send path
  ath10k: fix control-message timeout
  ath6kl: fix control-message timeout
  ath6kl: fix division by zero in send path
  mwifiex: fix division by zero in fw download path
  EDAC/sb_edac: Fix top-of-high-memory value for Broadwell/Haswell
  regulator: dt-bindings: samsung,s5m8767: correct s5m8767,pmic-buck-default-dvs-idx property
  regulator: s5m8767: do not use reset value as DVS voltage if GPIO DVS is disabled
  hwmon: (pmbus/lm25066) Add offset coefficients
  ia64: kprobes: Fix to pass correct trampoline address to the handler
  btrfs: call btrfs_check_rw_degradable only if there is a missing device
  btrfs: fix lost error handling when replaying directory deletes
  btrfs: clear MISSING device status bit in btrfs_close_one_device
  net/smc: Correct spelling mistake to TCPF_SYN_RECV
  nfp: bpf: relax prog rejection for mtu check through max_pkt_offset
  vmxnet3: do not stop tx queues after netif_device_detach()
  r8169: Add device 10ec:8162 to driver r8169
  nvmet-tcp: fix header digest verification
  drm: panel-orientation-quirks: Add quirk for GPD Win3
  watchdog: Fix OMAP watchdog early handling
  net: multicast: calculate csum of looped-back and forwarded packets
  spi: spl022: fix Microwire full duplex mode
  nvmet-tcp: fix a memory leak when releasing a queue
  xen/netfront: stop tx queues during live migration
  bpf: Prevent increasing bpf_jit_limit above max
  bpf: Define bpf_jit_alloc_exec_limit for arm64 JIT
  drm: panel-orientation-quirks: Add quirk for Aya Neo 2021
  mmc: winbond: don't build on M68K
  reset: socfpga: add empty driver allowing consumers to probe
  ARM: dts: sun7i: A20-olinuxino-lime2: Fix ethernet phy-mode
  hyperv/vmbus: include linux/bitops.h
  sfc: Don't use netif_info before net_device setup
  cavium: Fix return values of the probe function
  scsi: qla2xxx: Fix unmap of already freed sgl
  scsi: qla2xxx: Return -ENOMEM if kzalloc() fails
  cavium: Return negative value when pci_alloc_irq_vectors() fails
  x86/irq: Ensure PI wakeup handler is unregistered before module unload
  x86/cpu: Fix migration safety with X86_BUG_NULL_SEL
  x86/sme: Use #define USE_EARLY_PGTABLE_L5 in mem_encrypt_identity.c
  fuse: fix page stealing
  ALSA: timer: Unconditionally unlink slave instances, too
  ALSA: timer: Fix use-after-free problem
  ALSA: synth: missing check for possible NULL after the call to kstrdup
  ALSA: usb-audio: Add registration quirk for JBL Quantum 400
  ALSA: line6: fix control and interrupt message timeouts
  ALSA: 6fire: fix control and bulk message timeouts
  ALSA: ua101: fix division by zero at probe
  ALSA: hda/realtek: Add quirk for HP EliteBook 840 G7 mute LED
  ALSA: hda/realtek: Add quirk for ASUS UX550VE
  ALSA: hda/realtek: Add a quirk for Acer Spin SP513-54N
  ALSA: hda/realtek: Add quirk for Clevo PC70HS
  media: v4l2-ioctl: Fix check_ext_ctrls
  media: ir-kbd-i2c: improve responsiveness of hauppauge zilog receivers
  media: ite-cir: IR receiver stop working after receive overflow
  crypto: s5p-sss - Add error handling in s5p_aes_probe()
  firmware/psci: fix application of sizeof to pointer
  tpm: Check for integer overflow in tpm2_map_response_body()
  parisc: Fix ptrace check on syscall return
  mmc: dw_mmc: Dont wait for DRTO on Write RSP error
  scsi: qla2xxx: Fix use after free in eh_abort path
  scsi: qla2xxx: Fix kernel crash when accessing port_speed sysfs file
  ocfs2: fix data corruption on truncate
  libata: fix read log timeout value
  Input: i8042 - Add quirk for Fujitsu Lifebook T725
  Input: elantench - fix misreporting trackpoint coordinates
  Input: iforce - fix control-message timeout
  binder: use cred instead of task for getsecid
  binder: use cred instead of task for selinux checks
  binder: use euid from cred instead of using task
  usb: xhci: Enable runtime-pm by default on AMD Yellow Carp platform
  xhci: Fix USB 3.1 enumeration issues by increasing roothub power-on-good delay
  Linux 5.4.159
  rsi: fix control-message timeout
  media: staging/intel-ipu3: css: Fix wrong size comparison imgu_css_fw_init
  staging: rtl8192u: fix control-message timeouts
  staging: r8712u: fix control-message timeout
  comedi: vmk80xx: fix bulk and interrupt message timeouts
  comedi: vmk80xx: fix bulk-buffer overflow
  comedi: vmk80xx: fix transfer-buffer overflows
  comedi: ni_usb6501: fix NULL-deref in command paths
  comedi: dt9812: fix DMA buffers on stack
  isofs: Fix out of bound access for corrupted isofs image
  printk/console: Allow to disable console output by using console="" or console=null
  binder: don't detect sender/target during buffer cleanup
  usb-storage: Add compatibility quirk flags for iODD 2531/2541
  usb: musb: Balance list entry in musb_gadget_queue
  usb: gadget: Mark USB_FSL_QE broken on 64-bit
  usb: ehci: handshake CMD_RUN instead of STS_HALT
  Revert "x86/kvm: fix vcpu-id indexed array sizes"
  Linux 5.4.158
  ARM: 9120/1: Revert "amba: make use of -1 IRQs warn"
  Revert "drm/ttm: fix memleak in ttm_transfered_destroy"
  sfc: Fix reading non-legacy supported link modes
  Revert "usb: core: hcd: Add support for deferring roothub registration"
  Revert "xhci: Set HCD flag to defer primary roothub registration"
  media: firewire: firedtv-avc: fix a buffer overflow in avc_ca_pmt()
  net: ethernet: microchip: lan743x: Fix skb allocation failure
  vrf: Revert "Reset skb conntrack connection..."
  scsi: core: Put LLD module refcnt after SCSI device is released
  Linux 5.4.157
  perf script: Check session->header.env.arch before using it
  KVM: s390: preserve deliverable_mask in __airqs_kick_single_vcpu
  KVM: s390: clear kicked_mask before sleeping again
  cfg80211: correct bridge/4addr mode check
  net: use netif_is_bridge_port() to check for IFF_BRIDGE_PORT
  sctp: add vtag check in sctp_sf_ootb
  sctp: add vtag check in sctp_sf_do_8_5_1_E_sa
  sctp: add vtag check in sctp_sf_violation
  sctp: fix the processing for COOKIE_ECHO chunk
  sctp: fix the processing for INIT_ACK chunk
  sctp: use init_tag from inithdr for ABORT chunk
  phy: phy_start_aneg: Add an unlocked version
  phy: phy_ethtool_ksettings_get: Lock the phy for consistency
  net/tls: Fix flipped sign in async_wait.err assignment
  net: nxp: lpc_eth.c: avoid hang when bringing interface down
  net: ethernet: microchip: lan743x: Fix dma allocation failure by using dma_set_mask_and_coherent
  net: ethernet: microchip: lan743x: Fix driver crash when lan743x_pm_resume fails
  nios2: Make NIOS2_DTB_SOURCE_BOOL depend on !COMPILE_TEST
  RDMA/sa_query: Use strscpy_pad instead of memcpy to copy a string
  net: Prevent infinite while loop in skb_tx_hash()
  net: batman-adv: fix error handling
  regmap: Fix possible double-free in regcache_rbtree_exit()
  arm64: dts: allwinner: h5: NanoPI Neo 2: Fix ethernet node
  RDMA/mlx5: Set user priority for DCT
  nvme-tcp: fix data digest pointer calculation
  nvmet-tcp: fix data digest pointer calculation
  IB/hfi1: Fix abba locking issue with sc_disable()
  IB/qib: Protect from buffer overflow in struct qib_user_sdma_pkt fields
  tcp_bpf: Fix one concurrency problem in the tcp_bpf_send_verdict function
  drm/ttm: fix memleak in ttm_transfered_destroy
  net: lan78xx: fix division by zero in send path
  cfg80211: scan: fix RCU in cfg80211_add_nontrans_list()
  mmc: sdhci-esdhc-imx: clear the buffer_read_ready to reset standard tuning circuit
  mmc: sdhci: Map more voltage level to SDHCI_POWER_330
  mmc: dw_mmc: exynos: fix the finding clock sample value
  mmc: cqhci: clear HALT state after CQE enable
  mmc: vub300: fix control-message timeouts
  net/tls: Fix flipped sign in tls_err_abort() calls
  Revert "net: mdiobus: Fix memory leak in __mdiobus_register"
  nfc: port100: fix using -ERRNO as command type mask
  ata: sata_mv: Fix the error handling of mv_chip_id()
  Revert "pinctrl: bcm: ns: support updated DT binding as syscon subnode"
  usbnet: fix error return code in usbnet_probe()
  usbnet: sanity check for maxpacket
  ipv4: use siphash instead of Jenkins in fnhe_hashfun()
  ipv6: use siphash in rt6_exception_hash()
  powerpc/bpf: Fix BPF_MOD when imm == 1
  ARM: 9141/1: only warn about XIP address when not compile testing
  ARM: 9139/1: kprobes: fix arch_init_kprobes() prototype
  ARM: 9134/1: remove duplicate memcpy() definition
  ARM: 9133/1: mm: proc-macros: ensure *_tlb_fns are 4B aligned
  Linux 5.4.156
  pinctrl: stm32: use valid pin identifier in stm32_pinctrl_resume()
  ARM: 9122/1: select HAVE_FUTEX_CMPXCHG
  tracing: Have all levels of checks prevent recursion
  net: mdiobus: Fix memory leak in __mdiobus_register
  scsi: core: Fix shost->cmd_per_lun calculation in scsi_add_host_with_dma()
  Input: snvs_pwrkey - add clk handling
  ALSA: hda: avoid write to STATESTS if controller is in reset
  platform/x86: intel_scu_ipc: Update timeout value in comment
  isdn: mISDN: Fix sleeping function called from invalid context
  ARM: dts: spear3xx: Fix gmac node
  net: stmmac: add support for dwmac 3.40a
  btrfs: deal with errors when checking if a dir entry exists during log replay
  gcc-plugins/structleak: add makefile var for disabling structleak
  selftests: netfilter: remove stray bash debug line
  netfilter: Kconfig: use 'default y' instead of 'm' for bool config option
  isdn: cpai: check ctr->cnr to avoid array index out of bound
  nfc: nci: fix the UAF of rf_conn_info object
  mm, slub: fix potential memoryleak in kmem_cache_open()
  mm, slub: fix mismatch between reconstructed freelist depth and cnt
  powerpc/idle: Don't corrupt back chain when going idle
  KVM: PPC: Book3S HV: Make idle_kvm_start_guest() return 0 if it went to guest
  KVM: PPC: Book3S HV: Fix stack handling in idle_kvm_start_guest()
  powerpc64/idle: Fix SP offsets when saving GPRs
  audit: fix possible null-pointer dereference in audit_filter_rules
  ASoC: DAPM: Fix missing kctl change notifications
  ALSA: hda/realtek: Add quirk for Clevo PC50HS
  ALSA: usb-audio: Provide quirk for Sennheiser GSP670 Headset
  vfs: check fd has read access in kernel_read_file_from_fd()
  elfcore: correct reference to CONFIG_UML
  ocfs2: mount fails with buffer overflow in strlen
  ocfs2: fix data corruption after conversion from inline format
  ceph: fix handling of "meta" errors
  can: j1939: j1939_xtp_rx_rts_session_new(): abort TP less than 9 bytes
  can: j1939: j1939_xtp_rx_dat_one(): cancel session if receive TP.DT with error length
  can: j1939: j1939_netdev_start(): fix UAF for rx_kref of j1939_priv
  can: j1939: j1939_tp_rxtimer(): fix errant alert in j1939_tp_rxtimer
  can: peak_pci: peak_pci_remove(): fix UAF
  can: peak_usb: pcan_usb_fd_decode_status(): fix back to ERROR_ACTIVE state notification
  can: rcar_can: fix suspend/resume
  net: enetc: fix ethtool counter name for PM0_TERR
  net: stmmac: Fix E2E delay mechanism
  net: hns3: disable sriov before unload hclge layer
  net: hns3: add limit ets dwrr bandwidth cannot be 0
  net: hns3: reset DWRR of unused tc to zero
  NIOS2: irqflags: rename a redefined register name
  net: dsa: lantiq_gswip: fix register definition
  lan78xx: select CRC32
  netfilter: ipvs: make global sysctl readonly in non-init netns
  ASoC: wm8960: Fix clock configuration on slave mode
  dma-debug: fix sg checks in debug_dma_map_sg()
  NFSD: Keep existing listeners on portlist error
  xtensa: xtfpga: Try software restart before simulating CPU reset
  xtensa: xtfpga: use CONFIG_USE_OF instead of CONFIG_OF
  ARM: dts: at91: sama5d2_som1_ek: disable ISC node by default
  tee: optee: Fix missing devices unregister during optee_remove
  net: switchdev: do not propagate bridge updates across bridges
  parisc: math-emu: Fix fall-through warnings
  Linux 5.4.155
  ionic: don't remove netdev->dev_addr when syncing uc list
  r8152: select CRC32 and CRYPTO/CRYPTO_HASH/CRYPTO_SHA256
  qed: Fix missing error code in qed_slowpath_start()
  mqprio: Correct stats in mqprio_dump_class_stats().
  acpi/arm64: fix next_platform_timer() section mismatch error
  drm/msm/dsi: fix off by one in dsi_bus_clk_enable error handling
  drm/msm/dsi: Fix an error code in msm_dsi_modeset_init()
  drm/msm: Fix null pointer dereference on pointer edp
  drm/panel: olimex-lcd-olinuxino: select CRC32
  platform/mellanox: mlxreg-io: Fix argument base in kstrtou32() call
  mlxsw: thermal: Fix out-of-bounds memory accesses
  ata: ahci_platform: fix null-ptr-deref in ahci_platform_enable_regulators()
  pata_legacy: fix a couple uninitialized variable bugs
  NFC: digital: fix possible memory leak in digital_in_send_sdd_req()
  NFC: digital: fix possible memory leak in digital_tg_listen_mdaa()
  nfc: fix error handling of nfc_proto_register()
  ethernet: s2io: fix setting mac address during resume
  net: encx24j600: check error in devm_regmap_init_encx24j600
  net: stmmac: fix get_hw_feature() on old hardware
  net/mlx5e: Mutually exclude RX-FCS and RX-port-timestamp
  net: korina: select CRC32
  net: arc: select CRC32
  gpio: pca953x: Improve bias setting
  sctp: account stream padding length for reconf chunk
  iio: dac: ti-dac5571: fix an error code in probe()
  iio: ssp_sensors: fix error code in ssp_print_mcu_debug()
  iio: ssp_sensors: add more range checking in ssp_parse_dataframe()
  iio: light: opt3001: Fixed timeout error when 0 lux
  iio: mtk-auxadc: fix case IIO_CHAN_INFO_PROCESSED
  iio: adc128s052: Fix the error handling path of 'adc128_probe()'
  iio: adc: aspeed: set driver data when adc probe.
  powerpc/xive: Discard disabled interrupts in get_irqchip_state()
  x86/Kconfig: Do not enable AMD_MEM_ENCRYPT_ACTIVE_BY_DEFAULT automatically
  nvmem: Fix shift-out-of-bound (UBSAN) with byte size cells
  EDAC/armada-xp: Fix output of uncorrectable error counter
  virtio: write back F_VERSION_1 before validate
  USB: serial: option: add prod. id for Quectel EG91
  USB: serial: option: add Telit LE910Cx composition 0x1204
  USB: serial: option: add Quectel EC200S-CN module support
  USB: serial: qcserial: add EM9191 QDL support
  Input: xpad - add support for another USB ID of Nacon GC-100
  usb: musb: dsps: Fix the probe error path
  efi: Change down_interruptible() in virt_efi_reset_system() to down_trylock()
  efi/cper: use stack buffer for error record decoding
  cb710: avoid NULL pointer subtraction
  xhci: Enable trust tx length quirk for Fresco FL11 USB controller
  xhci: Fix command ring pointer corruption while aborting a command
  xhci: guard accesses to ep_state in xhci_endpoint_reset()
  mei: me: add Ice Lake-N device id.
  x86/resctrl: Free the ctrlval arrays when domain_setup_mon_state() fails
  watchdog: orion: use 0 for unset heartbeat
  btrfs: check for error when looking up inode during dir entry replay
  btrfs: deal with errors when adding inode reference during log replay
  btrfs: deal with errors when replaying dir entry during log replay
  btrfs: unlock newly allocated extent buffer after error
  csky: Fixup regs.sr broken in ptrace
  csky: don't let sigreturn play with priveleged bits of status register
  s390: fix strrchr() implementation
  nds32/ftrace: Fix Error: invalid operands (*UND* and *UND* sections) for `^'
  ALSA: hda/realtek: Fix the mic type detection issue for ASUS G551JW
  ALSA: hda/realtek - ALC236 headset MIC recording issue
  ALSA: hda/realtek: Add quirk for Clevo X170KM-G
  ALSA: hda/realtek: Complete partial device name to avoid ambiguity
  ALSA: seq: Fix a potential UAF by wrong private_free call order
  ALSA: usb-audio: Add quirk for VF0770
  ovl: simplify file splice
  Linux 5.4.154
  sched: Always inline is_percpu_thread()
  scsi: virtio_scsi: Fix spelling mistake "Unsupport" -> "Unsupported"
  scsi: ses: Fix unsigned comparison with less than zero
  drm/amdgpu: fix gart.bo pin_count leak
  net: sun: SUNVNET_COMMON should depend on INET
  mac80211: check return value of rhashtable_init
  net: prevent user from passing illegal stab size
  m68k: Handle arrivals of multiple signals correctly
  mac80211: Drop frames from invalid MAC address in ad-hoc mode
  netfilter: nf_nat_masquerade: defer conntrack walk to work queue
  netfilter: nf_nat_masquerade: make async masq_inet6_event handling generic
  HID: wacom: Add new Intuos BT (CTL-4100WL/CTL-6100WL) device IDs
  netfilter: ip6_tables: zero-initialize fragment offset
  HID: apple: Fix logical maximum and usage maximum of Magic Keyboard JIS
  ext4: correct the error path of ext4_write_inline_data_end()
  net: phy: bcm7xxx: Fixed indirect MMD operations
  UPSTREAM: ovl: simplify file splice
  Linux 5.4.153
  x86/Kconfig: Correct reference to MWINCHIP3D
  x86/hpet: Use another crystalball to evaluate HPET usability
  x86/platform/olpc: Correct ifdef symbol to intended CONFIG_OLPC_XO15_SCI
  RISC-V: Include clone3() on rv32
  bpf, s390: Fix potential memory leak about jit_data
  i2c: acpi: fix resource leak in reconfiguration device addition
  net: prefer socket bound to interface when not in VRF
  i40e: Fix freeing of uninitialized misc IRQ vector
  i40e: fix endless loop under rtnl
  gve: fix gve_get_stats()
  rtnetlink: fix if_nlmsg_stats_size() under estimation
  gve: Correct available tx qpl check
  drm/nouveau/debugfs: fix file release memory leak
  video: fbdev: gbefb: Only instantiate device when built for IP32
  bus: ti-sysc: Use CLKDM_NOAUTO for dra7 dcan1 for errata i893
  netlink: annotate data races around nlk->bound
  net: sfp: Fix typo in state machine debug string
  net/sched: sch_taprio: properly cancel timer from taprio_destroy()
  net: bridge: use nla_total_size_64bit() in br_get_linkxstats_size()
  ARM: imx6: disable the GIC CPU interface before calling stby-poweroff sequence
  arm64: dts: ls1028a: add missing CAN nodes
  arm64: dts: freescale: Fix SP805 clock-names
  ptp_pch: Load module automatically if ID matches
  powerpc/fsl/dts: Fix phy-connection-type for fm1mac3
  net_sched: fix NULL deref in fifo_set_limit()
  phy: mdio: fix memory leak
  bpf: Fix integer overflow in prealloc_elems_and_freelist()
  bpf, arm: Fix register clobbering in div/mod implementation
  xtensa: call irqchip_init only when CONFIG_USE_OF is selected
  xtensa: use CONFIG_USE_OF instead of CONFIG_OF
  xtensa: move XCHAL_KIO_* definitions to kmem_layout.h
  arm64: dts: qcom: pm8150: use qcom,pm8998-pon binding
  ARM: dts: imx: Fix USB host power regulator polarity on M53Menlo
  ARM: dts: imx: Add missing pinctrl-names for panel on M53Menlo
  soc: qcom: mdt_loader: Drop PT_LOAD check on hash segment
  ARM: dts: qcom: apq8064: Use 27MHz PXO clock as DSI PLL reference
  soc: qcom: socinfo: Fixed argument passed to platform_set_data()
  bpf, mips: Validate conditional branch offsets
  MIPS: BPF: Restore MIPS32 cBPF JIT
  ARM: dts: qcom: apq8064: use compatible which contains chipid
  ARM: dts: omap3430-sdp: Fix NAND device node
  xen/balloon: fix cancelled balloon action
  nfsd4: Handle the NFSv4 READDIR 'dircount' hint being zero
  nfsd: fix error handling of register_pernet_subsys() in init_nfsd()
  ovl: fix missing negative dentry check in ovl_rename()
  mmc: meson-gx: do not use memcpy_to/fromio for dram-access-quirk
  xen/privcmd: fix error handling in mmap-resource processing
  usb: typec: tcpm: handle SRC_STARTUP state if cc changes
  USB: cdc-acm: fix break reporting
  USB: cdc-acm: fix racy tty buffer accesses
  Partially revert "usb: Kconfig: using select for USB_COMMON dependency"
  ANDROID: Different fix for KABI breakage in 5.4.151 in struct sock
  Linux 5.4.152
  libata: Add ATA_HORKAGE_NO_NCQ_ON_ATI for Samsung 860 and 870 SSD.
  silence nfscache allocation warnings with kvzalloc
  perf/x86: Reset destroy callback on event init failure
  kvm: x86: Add AMD PMU MSRs to msrs_to_save_all[]
  KVM: do not shrink halt_poll_ns below grow_start
  tools/vm/page-types: remove dependency on opt_file for idle page tracking
  scsi: ses: Retry failed Send/Receive Diagnostic commands
  selftests:kvm: fix get_warnings_count() ignoring fscanf() return warn
  selftests: be sure to make khdr before other targets
  usb: dwc2: check return value after calling platform_get_resource()
  usb: testusb: Fix for showing the connection speed
  scsi: sd: Free scsi_disk device via put_device()
  ext2: fix sleeping in atomic bugs on error
  sparc64: fix pci_iounmap() when CONFIG_PCI is not set
  xen-netback: correct success/error reporting for the SKB-with-fraglist case
  net: mdio: introduce a shutdown method to mdio device drivers
  ANDROID: Fix up KABI breakage in 5.4.151 in struct sock
  Linux 5.4.151
  HID: usbhid: free raw_report buffers in usbhid_stop
  netfilter: ipset: Fix oversized kvmalloc() calls
  HID: betop: fix slab-out-of-bounds Write in betop_probe
  crypto: ccp - fix resource leaks in ccp_run_aes_gcm_cmd()
  usb: hso: remove the bailout parameter
  usb: hso: fix error handling code of hso_create_net_device
  hso: fix bailout in error case of probe
  libnvdimm/pmem: Fix crash triggered when I/O in-flight during unbind
  PCI: Fix pci_host_bridge struct device release/free handling
  net: stmmac: don't attach interface until resume finishes
  net: udp: annotate data race around udp_sk(sk)->corkflag
  HID: u2fzero: ignore incomplete packets without data
  ext4: fix potential infinite loop in ext4_dx_readdir()
  ext4: fix reserved space counter leakage
  ext4: fix loff_t overflow in ext4_max_bitmap_size()
  ipack: ipoctal: fix module reference leak
  ipack: ipoctal: fix missing allocation-failure check
  ipack: ipoctal: fix tty-registration error handling
  ipack: ipoctal: fix tty registration race
  ipack: ipoctal: fix stack information leak
  debugfs: debugfs_create_file_size(): use IS_ERR to check for error
  elf: don't use MAP_FIXED_NOREPLACE for elf interpreter mappings
  perf/x86/intel: Update event constraints for ICX
  af_unix: fix races in sk_peer_pid and sk_peer_cred accesses
  net: sched: flower: protect fl_walk() with rcu
  net: hns3: do not allow call hns3_nic_net_open repeatedly
  scsi: csiostor: Add module softdep on cxgb4
  Revert "block, bfq: honor already-setup queue merges"
  selftests, bpf: test_lwt_ip_encap: Really disable rp_filter
  e100: fix buffer overrun in e100_get_regs
  e100: fix length calculation in e100_get_regs_len
  net: ipv4: Fix rtnexthop len when RTA_FLOW is present
  hwmon: (tmp421) fix rounding for negative values
  hwmon: (tmp421) report /PVLD condition as fault
  sctp: break out if skb_header_pointer returns NULL in sctp_rcv_ootb
  mac80211-hwsim: fix late beacon hrtimer handling
  mac80211: mesh: fix potentially unaligned access
  mac80211: limit injected vht mcs/nss in ieee80211_parse_tx_radiotap
  mac80211: Fix ieee80211_amsdu_aggregate frag_tail bug
  hwmon: (mlxreg-fan) Return non-zero value when fan current state is enforced from sysfs
  ipvs: check that ip_vs_conn_tab_bits is between 8 and 20
  drm/amd/display: Pass PCI deviceid into DC
  x86/kvmclock: Move this_cpu_pvti into kvmclock.h
  mac80211: fix use-after-free in CCMP/GCMP RX
  scsi: ufs: Fix illegal offset in UPIU event trace
  hwmon: (w83791d) Fix NULL pointer dereference by removing unnecessary structure field
  hwmon: (w83792d) Fix NULL pointer dereference by removing unnecessary structure field
  hwmon: (w83793) Fix NULL pointer dereference by removing unnecessary structure field
  fs-verity: fix signed integer overflow with i_size near S64_MAX
  usb: cdns3: fix race condition before setting doorbell
  cpufreq: schedutil: Destroy mutex before kobject_put() frees the memory
  cpufreq: schedutil: Use kobject release() method to free sugov_tunables
  tty: Fix out-of-bound vmalloc access in imageblit
  Revert "crypto: public_key: fix overflow during implicit conversion"
  Linux 5.4.150
  qnx4: work around gcc false positive warning bug
  xen/balloon: fix balloon kthread freezing
  arm64: dts: marvell: armada-37xx: Extend PCIe MEM space
  thermal/drivers/int340x: Do not set a wrong tcc offset on resume
  EDAC/synopsys: Fix wrong value type assignment for edac_mode
  spi: Fix tegra20 build with CONFIG_PM=n
  net: 6pack: Fix tx timeout and slot time
  alpha: Declare virt_to_phys and virt_to_bus parameter as pointer to volatile
  arm64: Mark __stack_chk_guard as __ro_after_init
  parisc: Use absolute_pointer() to define PAGE0
  qnx4: avoid stringop-overread errors
  sparc: avoid stringop-overread errors
  net: i825xx: Use absolute_pointer for memcpy from fixed memory location
  compiler.h: Introduce absolute_pointer macro
  blk-cgroup: fix UAF by grabbing blkcg lock before destroying blkg pd
  sparc32: page align size in arch_dma_alloc
  nvme-multipath: fix ANA state updates when a namespace is not present
  xen/balloon: use a kernel thread instead a workqueue
  bpf: Add oversize check before call kvcalloc()
  ipv6: delay fib6_sernum increase in fib6_add
  m68k: Double cast io functions to unsigned long
  net: stmmac: allow CSR clock of 300MHz
  net: macb: fix use after free on rmmod
  blktrace: Fix uaf in blk_trace access after removing by sysfs
  md: fix a lock order reversal in md_alloc
  irqchip/gic-v3-its: Fix potential VPE leak on error
  irqchip/goldfish-pic: Select GENERIC_IRQ_CHIP to fix build
  scsi: lpfc: Use correct scnprintf() limit
  scsi: qla2xxx: Restore initiator in dual mode
  cifs: fix a sign extension bug
  thermal/core: Potential buffer overflow in thermal_build_list_of_policies()
  fpga: machxo2-spi: Fix missing error code in machxo2_write_complete()
  fpga: machxo2-spi: Return an error on failure
  tty: synclink_gt: rename a conflicting function name
  tty: synclink_gt, drop unneeded forward declarations
  scsi: iscsi: Adjust iface sysfs attr detection
  net/mlx4_en: Don't allow aRFS for encapsulated packets
  qed: rdma - don't wait for resources under hw error recovery flow
  gpio: uniphier: Fix void functions to remove return value
  net/smc: add missing error check in smc_clc_prfx_set()
  bnxt_en: Fix TX timeout when TX ring size is set to the smallest
  enetc: Fix illegal access when reading affinity_hint
  platform/x86/intel: punit_ipc: Drop wrong use of ACPI_PTR()
  afs: Fix incorrect triggering of sillyrename on 3rd-party invalidation
  net: hso: fix muxed tty registration
  serial: mvebu-uart: fix driver's tx_empty callback
  xhci: Set HCD flag to defer primary roothub registration
  btrfs: prevent __btrfs_dump_space_info() to underflow its free space
  erofs: fix up erofs_lookup tracepoint
  mcb: fix error handling in mcb_alloc_bus()
  USB: serial: option: add device id for Foxconn T99W265
  USB: serial: option: remove duplicate USB device ID
  USB: serial: option: add Telit LN920 compositions
  USB: serial: mos7840: remove duplicated 0xac24 device ID
  usb: core: hcd: Add support for deferring roothub registration
  Re-enable UAS for LaCie Rugged USB3-FW with fk quirk
  staging: greybus: uart: fix tty use after free
  binder: make sure fd closes complete
  USB: cdc-acm: fix minor-number release
  USB: serial: cp210x: add ID for GW Instek GDM-834x Digital Multimeter
  usb-storage: Add quirk for ScanLogic SL11R-IDE older than 2.6c
  xen/x86: fix PV trap handling on secondary processors
  cifs: fix incorrect check for null pointer in header_assemble
  usb: musb: tusb6010: uninitialized data in tusb_fifo_write_unaligned()
  usb: dwc2: gadget: Fix ISOC transfer complete handling for DDMA
  usb: dwc2: gadget: Fix ISOC flow for BDMA and Slave
  usb: gadget: r8a66597: fix a loop in set_feature()
  ocfs2: drop acl cache for directories too
  Linux 5.4.149
  drm/nouveau/nvkm: Replace -ENOSYS with -ENODEV
  rtc: rx8010: select REGMAP_I2C
  blk-throttle: fix UAF by deleteing timer in blk_throtl_exit()
  pwm: stm32-lp: Don't modify HW state in .remove() callback
  pwm: rockchip: Don't modify HW state in .remove() callback
  pwm: img: Don't modify HW state in .remove() callback
  nilfs2: fix memory leak in nilfs_sysfs_delete_snapshot_group
  nilfs2: fix memory leak in nilfs_sysfs_create_snapshot_group
  nilfs2: fix memory leak in nilfs_sysfs_delete_##name##_group
  nilfs2: fix memory leak in nilfs_sysfs_create_##name##_group
  nilfs2: fix NULL pointer in nilfs_##name##_attr_release
  nilfs2: fix memory leak in nilfs_sysfs_create_device_group
  btrfs: fix lockdep warning while mounting sprout fs
  ceph: lockdep annotations for try_nonblocking_invalidate
  ceph: request Fw caps before updating the mtime in ceph_write_iter
  dmaengine: xilinx_dma: Set DMA mask for coherent APIs
  dmaengine: ioat: depends on !UML
  dmaengine: sprd: Add missing MODULE_DEVICE_TABLE
  parisc: Move pci_dev_is_behind_card_dino to where it is used
  drivers: base: cacheinfo: Get rid of DEFINE_SMP_CALL_CACHE_FUNCTION()
  thermal/core: Fix thermal_cooling_device_register() prototype
  Kconfig.debug: drop selecting non-existing HARDLOCKUP_DETECTOR_ARCH
  net: stmmac: reset Tx desc base address before restarting Tx
  phy: avoid unnecessary link-up delay in polling mode
  pwm: lpc32xx: Don't modify HW state in .probe() after the PWM chip was registered
  profiling: fix shift-out-of-bounds bugs
  nilfs2: use refcount_dec_and_lock() to fix potential UAF
  prctl: allow to setup brk for et_dyn executables
  9p/trans_virtio: Remove sysfs file on probe failure
  thermal/drivers/exynos: Fix an error code in exynos_tmu_probe()
  dmaengine: acpi: Avoid comparison GSI with Linux vIRQ
  um: virtio_uml: fix memory leak on init failures
  staging: rtl8192u: Fix bitwise vs logical operator in TranslateRxSignalStuff819xUsb()
  sctp: add param size validation for SCTP_PARAM_SET_PRIMARY
  sctp: validate chunk size in __rcv_asconf_lookup
  ARM: 9098/1: ftrace: MODULE_PLT: Fix build problem without DYNAMIC_FTRACE
  ARM: 9079/1: ftrace: Add MODULE_PLTS support
  ARM: 9078/1: Add warn suppress parameter to arm_gen_branch_link()
  ARM: 9077/1: PLT: Move struct plt_entries definition to header
  apparmor: remove duplicate macro list_entry_is_head()
  ARM: Qualify enabling of swiotlb_init()
  s390/pci_mmio: fully validate the VMA before calling follow_pte()
  console: consume APC, DM, DCS
  KVM: remember position in kvm->vcpus array
  PCI/ACPI: Add Ampere Altra SOC MCFG quirk
  PCI: aardvark: Fix reporting CRS value
  PCI: pci-bridge-emul: Add PCIe Root Capabilities Register
  PCI: aardvark: Indicate error in 'val' when config read fails
  PCI: pci-bridge-emul: Fix big-endian support
  Linux 5.4.148
  s390/bpf: Fix 64-bit subtraction of the -0x80000000 constant
  s390/bpf: Fix optimizing out zero-extensions
  net: renesas: sh_eth: Fix freeing wrong tx descriptor
  ip_gre: validate csum_start only on pull
  qlcnic: Remove redundant unlock in qlcnic_pinit_from_rom
  fq_codel: reject silly quantum parameters
  netfilter: socket: icmp6: fix use-after-scope
  net: dsa: b53: Fix calculating number of switch ports
  perf unwind: Do not overwrite FEATURE_CHECK_LDFLAGS-libunwind-{x86,aarch64}
  ARC: export clear_user_page() for modules
  mtd: rawnand: cafe: Fix a resource leak in the error handling path of 'cafe_nand_probe()'
  PCI: Sync __pci_register_driver() stub for CONFIG_PCI=n
  KVM: arm64: Handle PSCI resets before userspace touches vCPU state
  mfd: tqmx86: Clear GPIO IRQ resource when no IRQ is set
  PCI: Fix pci_dev_str_match_path() alloc while atomic bug
  mfd: axp20x: Update AXP288 volatile ranges
  NTB: perf: Fix an error code in perf_setup_inbuf()
  NTB: Fix an error code in ntb_msit_probe()
  ethtool: Fix an error code in cxgb2.c
  PCI: ibmphp: Fix double unmap of io_mem
  block, bfq: honor already-setup queue merges
  net: usb: cdc_mbim: avoid altsetting toggling for Telit LN920
  Set fc_nlinfo in nh_create_ipv4, nh_create_ipv6
  PCI: Add ACS quirks for Cavium multi-function devices
  tracing/probes: Reject events which have the same name of existing one
  mfd: Don't use irq_create_mapping() to resolve a mapping
  fuse: fix use after free in fuse_read_interrupt()
  PCI: Add ACS quirks for NXP LX2xx0 and LX2xx2 platforms
  mfd: db8500-prcmu: Adjust map to reality
  dt-bindings: mtd: gpmc: Fix the ECC bytes vs. OOB bytes equation
  mm/memory_hotplug: use "unsigned long" for PFN in zone_for_pfn_range()
  net: hns3: fix the timing issue of VF clearing interrupt sources
  net: hns3: disable mac in flr process
  net: hns3: change affinity_mask to numa node range
  net: hns3: pad the short tunnel frame before sending to hardware
  KVM: PPC: Book3S HV: Tolerate treclaim. in fake-suspend mode changing registers
  ibmvnic: check failover_pending in login response
  dt-bindings: arm: Fix Toradex compatible typo
  qed: Handle management FW error
  tcp: fix tp->undo_retrans accounting in tcp_sacktag_one()
  net: dsa: destroy the phylink instance on any error in dsa_slave_phy_setup
  net/af_unix: fix a data-race in unix_dgram_poll
  vhost_net: fix OoB on sendmsg() failure.
  events: Reuse value read using READ_ONCE instead of re-reading it
  net/mlx5: Fix potential sleeping in atomic context
  net/mlx5: FWTrace, cancel work on alloc pd error flow
  perf machine: Initialize srcline string member in add_location struct
  tipc: increase timeout in tipc_sk_enqueue()
  r6040: Restore MDIO clock frequency after MAC reset
  net/l2tp: Fix reference count leak in l2tp_udp_recv_core
  dccp: don't duplicate ccid when cloning dccp sock
  ptp: dp83640: don't define PAGE0
  net-caif: avoid user-triggerable WARN_ON(1)
  tipc: fix an use-after-free issue in tipc_recvmsg
  x86/mm: Fix kern_addr_valid() to cope with existing but not present entries
  s390/sclp: fix Secure-IPL facility detection
  drm/etnaviv: add missing MMU context put when reaping MMU mapping
  drm/etnaviv: reference MMU context when setting up hardware state
  drm/etnaviv: fix MMU context leak on GPU reset
  drm/etnaviv: exec and MMU state is lost when resetting the GPU
  drm/etnaviv: keep MMU context across runtime suspend/resume
  drm/etnaviv: stop abusing mmu_context as FE running marker
  drm/etnaviv: put submit prev MMU context when it exists
  drm/etnaviv: return context from etnaviv_iommu_context_get
  drm/amd/amdgpu: Increase HWIP_MAX_INSTANCE to 10
  PCI: Add AMD GPU multi-function power dependencies
  PM: base: power: don't try to use non-existing RTC for storing data
  arm64/sve: Use correct size when reinitialising SVE state
  bnx2x: Fix enabling network interfaces without VFs
  xen: reset legacy rtc flag for PV domU
  btrfs: fix upper limit for max_inline for page size 64K
  drm/panfrost: Clamp lock region to Bifrost minimum
  drm/panfrost: Use u64 for size in lock_region
  drm/panfrost: Simplify lock_region calculation
  drm/amdgpu: Fix BUG_ON assert
  drm/msi/mdp4: populate priv->kms in mdp4_kms_init
  net: dsa: lantiq_gswip: fix maximum frame length
  lib/test_stackinit: Fix static initializer test
  platform/chrome: cros_ec_proto: Send command again when timeout occurs
  memcg: enable accounting for pids in nested pid namespaces
  mm,vmscan: fix divide by zero in get_scan_count
  mm/hugetlb: initialize hugetlb_usage in mm_init
  s390/pv: fix the forcing of the swiotlb
  cpufreq: powernv: Fix init_chip_info initialization in numa=off
  scsi: qla2xxx: Sync queue idx with queue_pair_map idx
  scsi: qla2xxx: Changes to support kdump kernel
  scsi: BusLogic: Fix missing pr_cont() use
  ovl: fix BUG_ON() in may_delete() when called from ovl_cleanup()
  parisc: fix crash with signals and alloca
  net: w5100: check return value after calling platform_get_resource()
  fix array-index-out-of-bounds in taprio_change
  net: fix NULL pointer reference in cipso_v4_doi_free
  ath9k: fix sleeping in atomic context
  ath9k: fix OOB read ar9300_eeprom_restore_internal
  parport: remove non-zero check on count
  net/mlx5: DR, Enable QP retransmission
  iwlwifi: mvm: fix access to BSS elements
  iwlwifi: mvm: avoid static queue number aliasing
  iwlwifi: mvm: fix a memory leak in iwl_mvm_mac_ctxt_beacon_changed
  drm/amdkfd: Account for SH/SE count when setting up cu masks.
  ASoC: rockchip: i2s: Fixup config for DAIFMT_DSP_A/B
  ASoC: rockchip: i2s: Fix regmap_ops hang
  usbip:vhci_hcd USB port can get stuck in the disabled state
  usbip: give back URBs for unsent unlink requests during cleanup
  usb: musb: musb_dsps: request_irq() after initializing musb
  Revert "USB: xhci: fix U1/U2 handling for hardware with XHCI_INTEL_HOST quirk set"
  cifs: fix wrong release in sess_alloc_buffer() failed path
  mmc: core: Return correct emmc response in case of ioctl error
  selftests/bpf: Enlarge select() timeout for test_maps
  mmc: rtsx_pci: Fix long reads when clock is prescaled
  mmc: sdhci-of-arasan: Check return value of non-void funtions
  of: Don't allow __of_attached_node_sysfs() without CONFIG_SYSFS
  ASoC: Intel: Skylake: Fix passing loadable flag for module
  ASoC: Intel: Skylake: Fix module configuration for KPB and MIXER
  btrfs: tree-log: check btrfs_lookup_data_extent return value
  m68knommu: only set CONFIG_ISA_DMA_API for ColdFire sub-arch
  drm/exynos: Always initialize mapping in exynos_drm_register_dma()
  lockd: lockd server-side shouldn't set fl_ops
  usb: chipidea: host: fix port index underflow and UBSAN complains
  gfs2: Don't call dlm after protocol is unmounted
  staging: rts5208: Fix get_ms_information() heap buffer size
  rpc: fix gss_svc_init cleanup on failure
  tcp: enable data-less, empty-cookie SYN with TFO_SERVER_COOKIE_NOT_REQD
  serial: sh-sci: fix break handling for sysrq
  opp: Don't print an error if required-opps is missing
  Bluetooth: Fix handling of LE Enhanced Connection Complete
  nvme-tcp: don't check blk_mq_tag_to_rq when receiving pdu data
  arm64: dts: ls1046a: fix eeprom entries
  arm64: tegra: Fix compatible string for Tegra132 CPUs
  ARM: tegra: tamonten: Fix UART pad setting
  mac80211: Fix monitor MTU limit so that A-MSDUs get through
  drm/display: fix possible null-pointer dereference in dcn10_set_clock()
  gpu: drm: amd: amdgpu: amdgpu_i2c: fix possible uninitialized-variable access in amdgpu_i2c_router_select_ddc_port()
  net/mlx5: Fix variable type to match 64bit
  Bluetooth: avoid circular locks in sco_sock_connect
  Bluetooth: schedule SCO timeouts with delayed_work
  selftests/bpf: Fix xdp_tx.c prog section name
  drm/msm: mdp4: drop vblank get/put from prepare/complete_commit
  net: ethernet: stmmac: Do not use unreachable() in ipq806x_gmac_probe()
  arm64: dts: qcom: sdm660: use reg value for memory node
  ARM: dts: imx53-ppd: Fix ACHC entry
  media: tegra-cec: Handle errors of clk_prepare_enable()
  media: TDA1997x: fix tda1997x_query_dv_timings() return value
  media: v4l2-dv-timings.c: fix wrong condition in two for-loops
  media: imx258: Limit the max analogue gain to 480
  media: imx258: Rectify mismatch of VTS value
  ASoC: Intel: bytcr_rt5640: Move "Platform Clock" routes to the maps for the matching in-/output
  arm64: tegra: Fix Tegra194 PCIe EP compatible string
  bonding: 3ad: fix the concurrency between __bond_release_one() and bond_3ad_state_machine_handler()
  workqueue: Fix possible memory leaks in wq_numa_init()
  Bluetooth: skip invalid hci_sync_conn_complete_evt
  ata: sata_dwc_460ex: No need to call phy_exit() befre phy_init()
  samples: bpf: Fix tracex7 error raised on the missing argument
  staging: ks7010: Fix the initialization of the 'sleep_status' structure
  serial: 8250_pci: make setup_port() parameters explicitly unsigned
  hvsi: don't panic on tty_register_driver failure
  xtensa: ISS: don't panic in rs_init
  serial: 8250: Define RX trigger levels for OxSemi 950 devices
  s390: make PCI mio support a machine flag
  s390/jump_label: print real address in a case of a jump label bug
  flow_dissector: Fix out-of-bounds warnings
  ipv4: ip_output.c: Fix out-of-bounds warning in ip_copy_addrs()
  video: fbdev: riva: Error out if 'pixclock' equals zero
  video: fbdev: kyro: Error out if 'pixclock' equals zero
  video: fbdev: asiliantfb: Error out if 'pixclock' equals zero
  bpf/tests: Do not PASS tests without actually testing the result
  bpf/tests: Fix copy-and-paste error in double word test
  drm/amd/amdgpu: Update debugfs link_settings output link_rate field in hex
  drm/amd/display: Fix timer_per_pixel unit error
  tty: serial: jsm: hold port lock when reporting modem line changes
  staging: board: Fix uninitialized spinlock when attaching genpd
  usb: gadget: composite: Allow bMaxPower=0 if self-powered
  USB: EHCI: ehci-mv: improve error handling in mv_ehci_enable()
  usb: gadget: u_ether: fix a potential null pointer dereference
  usb: host: fotg210: fix the actual_length of an iso packet
  usb: host: fotg210: fix the endpoint's transactional opportunities calculation
  igc: Check if num of q_vectors is smaller than max before array access
  drm: avoid blocking in drm_clients_info's rcu section
  Smack: Fix wrong semantics in smk_access_entry()
  netlink: Deal with ESRCH error in nlmsg_notify()
  video: fbdev: kyro: fix a DoS bug by restricting user input
  ARM: dts: qcom: apq8064: correct clock names
  iavf: fix locking of critical sections
  iavf: do not override the adapter state in the watchdog task
  iio: dac: ad5624r: Fix incorrect handling of an optional regulator.
  tipc: keep the skb in rcv queue until the whole data is read
  PCI: Use pci_update_current_state() in pci_enable_device_flags()
  crypto: mxs-dcp - Use sg_mapping_iter to copy data
  media: dib8000: rewrite the init prbs logic
  ASoC: atmel: ATMEL drivers don't need HAS_DMA
  drm/amdgpu: Fix amdgpu_ras_eeprom_init()
  userfaultfd: prevent concurrent API initialization
  kbuild: Fix 'no symbols' warning when CONFIG_TRIM_UNUSD_KSYMS=y
  MIPS: Malta: fix alignment of the devicetree buffer
  f2fs: fix to unmap pages from userspace process in punch_hole()
  f2fs: fix unexpected ENOENT comes from f2fs_map_blocks()
  f2fs: fix to account missing .skipped_gc_rwsem
  KVM: PPC: Fix clearing never mapped TCEs in realmode
  clk: at91: clk-generated: Limit the requested rate to our range
  clk: at91: clk-generated: pass the id of changeable parent at registration
  clk: at91: sam9x60: Don't use audio PLL
  fscache: Fix cookie key hashing
  platform/x86: dell-smbios-wmi: Add missing kfree in error-exit from run_smbios_call
  KVM: PPC: Book3S HV Nested: Reflect guest PMU in-use to L0 when guest SPRs are live
  HID: i2c-hid: Fix Elan touchpad regression
  scsi: target: avoid per-loop XCOPY buffer allocations
  powerpc/config: Renable MTD_PHYSMAP_OF
  scsi: qedf: Fix error codes in qedf_alloc_global_queues()
  scsi: qedi: Fix error codes in qedi_alloc_global_queues()
  scsi: smartpqi: Fix an error code in pqi_get_raid_map()
  pinctrl: single: Fix error return code in pcs_parse_bits_in_pinctrl_entry()
  scsi: fdomain: Fix error return code in fdomain_probe()
  SUNRPC: Fix potential memory corruption
  dma-debug: fix debugfs initialization order
  openrisc: don't printk() unconditionally
  f2fs: reduce the scope of setting fsck tag when de->name_len is zero
  f2fs: show f2fs instance in printk_ratelimited
  RDMA/efa: Remove double QP type assignment
  powerpc/stacktrace: Include linux/delay.h
  vfio: Use config not menuconfig for VFIO_NOIOMMU
  pinctrl: samsung: Fix pinctrl bank pin count
  docs: Fix infiniband uverbs minor number
  RDMA/iwcm: Release resources if iw_cm module initialization fails
  IB/hfi1: Adjust pkey entry in index 0
  scsi: bsg: Remove support for SCSI_IOCTL_SEND_COMMAND
  f2fs: quota: fix potential deadlock
  HID: input: do not report stylus battery state as "full"
  PCI: aardvark: Fix masking and unmasking legacy INTx interrupts
  PCI: aardvark: Increase polling delay to 1.5s while waiting for PIO response
  PCI: aardvark: Fix checking for PIO status
  PCI: xilinx-nwl: Enable the clock through CCF
  PCI: Return ~0 data on pciconfig_read() CAP_SYS_ADMIN failure
  PCI: Restrict ASMedia ASM1062 SATA Max Payload Size Supported
  PCI/portdrv: Enable Bandwidth Notification only if port supports it
  ARM: 9105/1: atags_to_fdt: don't warn about stack size
  libata: add ATA_HORKAGE_NO_NCQ_TRIM for Samsung 860 and 870 SSDs
  dmaengine: imx-sdma: remove duplicated sdma_load_context
  Revert "dmaengine: imx-sdma: refine to load context only once"
  media: rc-loopback: return number of emitters rather than error
  media: uvc: don't do DMA on stack
  VMCI: fix NULL pointer dereference when unmapping queue pair
  dm crypt: Avoid percpu_counter spinlock contention in crypt_page_alloc()
  power: supply: max17042: handle fails of reading status register
  block: bfq: fix bfq_set_next_ioprio_data()
  crypto: public_key: fix overflow during implicit conversion
  arm64: head: avoid over-mapping in map_memory
  soc: aspeed: p2a-ctrl: Fix boundary check for mmap
  soc: aspeed: lpc-ctrl: Fix boundary check for mmap
  soc: qcom: aoss: Fix the out of bound usage of cooling_devs
  pinctrl: ingenic: Fix incorrect pull up/down info
  pinctrl: stmfx: Fix hazardous u8[] to unsigned long cast
  tools/thermal/tmon: Add cross compiling support
  9p/xen: Fix end of loop tests for list_for_each_entry
  include/linux/list.h: add a macro to test if entry is pointing to the head
  xen: fix setting of max_pfn in shared_info
  powerpc/perf/hv-gpci: Fix counter value parsing
  PCI/MSI: Skip masking MSI-X on Xen PV
  blk-zoned: allow BLKREPORTZONE without CAP_SYS_ADMIN
  blk-zoned: allow zone management send operations without CAP_SYS_ADMIN
  btrfs: reset replace target device to allocation state on close
  btrfs: wake up async_delalloc_pages waiters after submit
  rtc: tps65910: Correct driver module alias

 Conflicts:
	Documentation/devicetree/bindings
	Documentation/devicetree/bindings/arm/tegra.yaml
	Documentation/devicetree/bindings/mtd/gpmc-nand.txt
	Documentation/devicetree/bindings/regulator/samsung,s5m8767.txt
	kernel/sched/cpufreq_schedutil.c

Change-Id: Id17c4366cdc6854cd23fba0f41d335b09fc6100e
Signed-off-by: Srinivasarao Pathipati <quic_spathi@quicinc.com>
2022-02-07 22:29:21 +05:30
Srinivasarao Pathipati
828abb51dd Merge android11-5.4.147+ (dc8c919) into msm-5.4
* refs/heads/tmp-dc8c919:
  Revert dwc3 changes
  ANDROID: GKI: Update FCNT KMI symbol list No new symbols added that are not already in the .xml file.
  ANDROID: GKI : Update symbols to symbol list
  BACKPORT: crypto: arch - conditionalize crypto api in arch glue for lib code
  BACKPORT: crypto: arch/lib - limit simd usage to 4k chunks
  UPSTREAM: crypto: arm/blake2s - fix for big endian
  ANDROID: gki_defconfig: enable BLAKE2b support
  BACKPORT: crypto: arm/blake2b - add NEON-accelerated BLAKE2b
  BACKPORT: crypto: blake2b - update file comment
  BACKPORT: crypto: blake2b - sync with blake2s implementation
  UPSTREAM: crypto: arm/blake2s - add ARM scalar optimized BLAKE2s
  UPSTREAM: crypto: blake2s - include <linux/bug.h> instead of <asm/bug.h>
  UPSTREAM: crypto: blake2s - adjust include guard naming
  UPSTREAM: crypto: blake2s - add comment for blake2s_state fields
  UPSTREAM: crypto: blake2s - optimize blake2s initialization
  BACKPORT: crypto: blake2s - share the "shash" API boilerplate code
  UPSTREAM: crypto: blake2s - move update and final logic to internal/blake2s.h
  UPSTREAM: crypto: blake2s - remove unneeded includes
  UPSTREAM: crypto: x86/blake2s - define shash_alg structs using macros
  UPSTREAM: crypto: blake2s - define shash_alg structs using macros
  UPSTREAM: crypto: lib/blake2s - Move selftest prototype into header file
  UPSTREAM: crypto: blake2b - Fix clang optimization for ARMv7-M
  UPSTREAM: crypto: blake2b - rename tfm context and _setkey callback
  UPSTREAM: crypto: blake2b - merge _update to api callback
  UPSTREAM: crypto: blake2b - open code set last block helper
  UPSTREAM: crypto: blake2b - delete unused structs or members
  UPSTREAM: crypto: blake2b - simplify key init
  UPSTREAM: crypto: blake2b - merge blake2 init to api callback
  UPSTREAM: crypto: blake2b - merge _final implementation to callback
  BACKPORT: crypto: testmgr - add test vectors for blake2b
  BACKPORT: crypto: blake2b - add blake2b generic implementation
  UPSTREAM: crypto: blake2s - x86_64 SIMD implementation
  UPSTREAM: crypto: blake2s - implement generic shash driver
  UPSTREAM: crypto: testmgr - add test cases for Blake2s
  UPSTREAM: crypto: blake2s - generic C library implementation and selftest
  UPSTREAM: crypto: lib - tidy up lib/crypto Kconfig and Makefile
  ANDROID: ion heap: init ion heaps in subsys_initcall
  UPSTREAM: ovl: simplify file splice
  ANDROID: ABI: update allowed list for galaxy
  ANDROID: ABI: Update allowed list for QCOM
  ANDROID: distribute Module.symvers
  UPSTREAM: usb: max-3421: Prevent corruption of freed memory
  ANDROID: ABI: Update allowed list for QCOM
  UPSTREAM: driver core: Prevent warning when removing a device link from unregistered consumer
  UPSTREAM: udp: properly flush normal packet at GRO time
  UPSTREAM: net/xfrm/compat: Copy xfrm_spdattr_type_t atributes
  UPSTREAM: f2fs: Advertise encrypted casefolding in sysfs
  UPSTREAM: loop: Fix missing discard support when using LOOP_CONFIGURE
  UPSTREAM: thermal/drivers/sprd: Add missing MODULE_DEVICE_TABLE
  UPSTREAM: nvmem: sprd: Fix an error message
  UPSTREAM: usb: musb: Fix an error message
  UPSTREAM: scsi: ufs: core: Cancel rpm_dev_flush_recheck_work during system suspend
  UPSTREAM: scsi: ufs: core: Do not put UFS power into LPM if link is broken
  UPSTREAM: selinux: add proper NULL termination to the secclass_map permissions
  UPSTREAM: of: property: fw_devlink: do not link ".*,nr-gpios"
  UPSTREAM: udp: never accept GSO_FRAGLIST packets
  UPSTREAM: udp: skip L4 aggregation for UDP tunnel packets
  UPSTREAM: xfrm/compat: Cleanup WARN()s that can be user-triggered
  UPSTREAM: pinctrl: sunxi: fix irq bank map for the Allwinner A100 pin controller
  UPSTREAM: loop: Set correct device size when using LOOP_CONFIGURE
  UPSTREAM: loop: unset GENHD_FL_NO_PART_SCAN on LOOP_CONFIGURE
  ANDROID: ion_system_heap: Add __GFP_NOWARN to mid-order allocations
  ANDROID: drivers: gpu: drm: increase the MAX_DRM_OPEN_COUNT
  UPSTREAM: af_unix: fix garbage collect vs MSG_PEEK
  Linux 5.4.147
  Revert "time: Handle negative seconds correctly in timespec64_to_ns()"
  Revert "posix-cpu-timers: Force next expiration recalc after itimer reset"
  Revert "block: nbd: add sanity check for first_minor"
  Revert "Bluetooth: Move shutdown callback before flushing tx and rx queue"
  Linux 5.4.146
  clk: kirkwood: Fix a clocking boot regression
  backlight: pwm_bl: Improve bootloader/kernel device handover
  fbmem: don't allow too huge resolutions
  IMA: remove the dependency on CRYPTO_MD5
  IMA: remove -Wmissing-prototypes warning
  fuse: flush extending writes
  fuse: truncate pagecache on atomic_o_trunc
  KVM: nVMX: Unconditionally clear nested.pi_pending on nested VM-Enter
  KVM: x86: Update vCPU's hv_clock before back to guest when tsc_offset is adjusted
  KVM: s390: index kvm->arch.idle_mask by vcpu_idx
  x86/resctrl: Fix a maybe-uninitialized build warning treated as error
  perf/x86/amd/ibs: Extend PERF_PMU_CAP_NO_EXCLUDE to IBS Op
  tty: Fix data race between tiocsti() and flush_to_ldisc()
  time: Handle negative seconds correctly in timespec64_to_ns()
  bpf: Fix pointer arithmetic mask tightening under state pruning
  bpf: verifier: Allocate idmap scratch in verifier env
  bpf: Fix leakage due to insufficient speculative store bypass mitigation
  bpf: Introduce BPF nospec instruction for mitigating Spectre v4
  ipv4: fix endianness issue in inet_rtm_getroute_build_skb()
  octeontx2-af: Fix loop in free and unmap counter
  net: qualcomm: fix QCA7000 checksum handling
  net: sched: Fix qdisc_rate_table refcount leak when get tcf_block failed
  ipv4: make exception cache less predictible
  ipv6: make exception cache less predictible
  brcmfmac: pcie: fix oops on failure to resume and reprobe
  bcma: Fix memory leak for internally-handled cores
  ath6kl: wmi: fix an error code in ath6kl_wmi_sync_point()
  ASoC: wcd9335: Disable irq on slave ports in the remove function
  ASoC: wcd9335: Fix a memory leak in the error handling path of the probe function
  ASoC: wcd9335: Fix a double irq free in the remove function
  tty: serial: fsl_lpuart: fix the wrong mapbase value
  usb: bdc: Fix an error handling path in 'bdc_probe()' when no suitable DMA config is available
  usb: ehci-orion: Handle errors of clk_prepare_enable() in probe
  i2c: mt65xx: fix IRQ check
  CIFS: Fix a potencially linear read overflow
  bpf: Fix possible out of bound write in narrow load handling
  mmc: moxart: Fix issue with uninitialized dma_slave_config
  mmc: dw_mmc: Fix issue with uninitialized dma_slave_config
  ASoC: Intel: Skylake: Fix module resource and format selection
  ASoC: Intel: Skylake: Leave data as is when invoking TLV IPCs
  rsi: fix an error code in rsi_probe()
  rsi: fix error code in rsi_load_9116_firmware()
  i2c: s3c2410: fix IRQ check
  i2c: iop3xx: fix deferred probing
  Bluetooth: add timeout sanity check to hci_inquiry
  mm/swap: consider max pages in iomap_swapfile_add_extent
  usb: gadget: mv_u3d: request_irq() after initializing UDC
  nfsd4: Fix forced-expiry locking
  lockd: Fix invalid lockowner cast after vfs_test_lock
  mac80211: Fix insufficient headroom issue for AMSDU
  usb: phy: tahvo: add IRQ check
  usb: host: ohci-tmio: add IRQ check
  Bluetooth: Move shutdown callback before flushing tx and rx queue
  usb: gadget: udc: renesas_usb3: Fix soc_device_match() abuse
  usb: phy: twl6030: add IRQ checks
  usb: phy: fsl-usb: add IRQ check
  usb: gadget: udc: at91: add IRQ check
  drm/msm/dsi: Fix some reference counted resource leaks
  Bluetooth: fix repeated calls to sco_sock_kill
  counter: 104-quad-8: Return error when invalid mode during ceiling_write
  arm64: dts: exynos: correct GIC CPU interfaces address range on Exynos7
  drm/msm/dpu: make dpu_hw_ctl_clear_all_blendstages clear necessary LMs
  PM: EM: Increase energy calculation precision
  Bluetooth: increase BTNAMSIZ to 21 chars to fix potential buffer overflow
  debugfs: Return error during {full/open}_proxy_open() on rmmod
  soc: qcom: smsm: Fix missed interrupts if state changes while masked
  PCI: PM: Enable PME if it can be signaled from D3cold
  PCI: PM: Avoid forcing PCI_D0 for wakeup reasons inconsistently
  media: venus: venc: Fix potential null pointer dereference on pointer fmt
  media: em28xx-input: fix refcount bug in em28xx_usb_disconnect
  leds: trigger: audio: Add an activate callback to ensure the initial brightness is set
  leds: lt3593: Put fwnode in any case during ->probe()
  i2c: highlander: add IRQ check
  net: cipso: fix warnings in netlbl_cipsov4_add_std
  cgroup/cpuset: Fix a partition bug with hotplug
  net/mlx5e: Prohibit inner indir TIRs in IPoIB
  ARM: dts: meson8b: ec100: Fix the pwm regulator supply properties
  ARM: dts: meson8b: mxq: Fix the pwm regulator supply properties
  ARM: dts: meson8b: odroidc1: Fix the pwm regulator supply properties
  ARM: dts: meson8: Use a higher default GPU clock frequency
  tcp: seq_file: Avoid skipping sk during tcp_seek_last_pos
  drm/amdgpu/acp: Make PM domain really work
  netns: protect netns ID lookups with RCU
  6lowpan: iphc: Fix an off-by-one check of array index
  Bluetooth: sco: prevent information leak in sco_conn_defer_accept()
  media: coda: fix frame_mem_ctrl for YUV420 and YVU420 formats
  media: go7007: remove redundant initialization
  media: dvb-usb: Fix error handling in dvb_usb_i2c_init
  media: dvb-usb: fix uninit-value in vp702x_read_mac_addr
  media: dvb-usb: fix uninit-value in dvb_usb_adapter_dvb_init
  soc: qcom: rpmhpd: Use corner in power_off
  arm64: dts: renesas: r8a77995: draak: Remove bogus adv7511w properties
  ARM: dts: aspeed-g6: Fix HVI3C function-group in pinctrl dtsi
  bpf: Fix potential memleak and UAF in the verifier.
  bpf: Fix a typo of reuseport map in bpf.h.
  media: cxd2880-spi: Fix an error handling path
  soc: rockchip: ROCKCHIP_GRF should not default to y, unconditionally
  media: TDA1997x: enable EDID support
  drm/panfrost: Fix missing clk_disable_unprepare() on error in panfrost_clk_init()
  EDAC/i10nm: Fix NVDIMM detection
  spi: spi-zynq-qspi: use wait_for_completion_timeout to make zynq_qspi_exec_mem_op not interruptible
  spi: sprd: Fix the wrong WDG_LOAD_VAL
  regulator: vctrl: Avoid lockdep warning in enable/disable ops
  regulator: vctrl: Use locked regulator_get_voltage in probe path
  certs: Trigger creation of RSA module signing key if it's not an RSA key
  crypto: qat - use proper type for vf_mask
  block: nbd: add sanity check for first_minor
  clocksource/drivers/sh_cmt: Fix wrong setting if don't request IRQ for clock source channel
  lib/mpi: use kcalloc in mpi_resize
  genirq/timings: Fix error return code in irq_timings_test_irqs()
  spi: spi-pic32: Fix issue with uninitialized dma_slave_config
  spi: spi-fsl-dspi: Fix issue with uninitialized dma_slave_config
  sched: Fix UCLAMP_FLAG_IDLE setting
  m68k: emu: Fix invalid free in nfeth_cleanup()
  s390/debug: fix debug area life cycle
  s390/kasan: fix large PMD pages address alignment check
  udf_get_extendedattr() had no boundary checks.
  fcntl: fix potential deadlock for &fasync_struct.fa_lock
  crypto: qat - do not export adf_iov_putmsg()
  crypto: qat - fix naming for init/shutdown VF to PF notifications
  crypto: qat - fix reuse of completion variable
  crypto: qat - handle both source of interrupt in VF ISR
  crypto: qat - do not ignore errors from enable_vf2pf_comms()
  libata: fix ata_host_start()
  s390/cio: add dev_busid sysfs entry for each subchannel
  power: supply: max17042_battery: fix typo in MAx17042_TOFF
  nvmet: pass back cntlid on successful completion
  nvme-rdma: don't update queue count when failing to set io queues
  nvme-tcp: don't update queue count when failing to set io queues
  bcache: add proper error unwinding in bcache_device_init
  isofs: joliet: Fix iocharset=utf8 mount option
  udf: Fix iocharset=utf8 mount option
  udf: Check LVID earlier
  hrtimer: Ensure timerfd notification for HIGHRES=n
  hrtimer: Avoid double reprogramming in __hrtimer_start_range_ns()
  posix-cpu-timers: Force next expiration recalc after itimer reset
  rcu/tree: Handle VM stoppage in stall detection
  sched/deadline: Fix missing clock update in migrate_task_rq_dl()
  crypto: omap-sham - clear dma flags only after omap_sham_update_dma_stop()
  power: supply: axp288_fuel_gauge: Report register-address on readb / writeb errors
  sched/deadline: Fix reset_on_fork reporting of DL tasks
  crypto: mxs-dcp - Check for DMA mapping errors
  regmap: fix the offset of register error log
  locking/mutex: Fix HANDOFF condition
  ANDROID: GKI: db845c: Update symbols list and ABI for lts v5.4.144
  Linux 5.4.145
  PCI: Call Max Payload Size-related fixup quirks early
  x86/reboot: Limit Dell Optiplex 990 quirk to early BIOS versions
  xhci: fix unsafe memory usage in xhci tracing
  usb: mtu3: fix the wrong HS mult value
  usb: mtu3: use @mult for HS isoc or intr
  usb: host: xhci-rcar: Don't reload firmware after the completion
  ALSA: usb-audio: Add registration quirk for JBL Quantum 800
  Revert "btrfs: compression: don't try to compress if we don't have enough pages"
  x86/events/amd/iommu: Fix invalid Perf result due to IOMMU PMC power-gating
  Revert "r8169: avoid link-up interrupt issue on RTL8106e if user enables ASPM"
  mm/page_alloc: speed up the iteration of max_order
  net: ll_temac: Remove left-over debug message
  powerpc/boot: Delete unneeded .globl _zimage_start
  ipv4/icmp: l3mdev: Perform icmp error route lookup on source device routing table (v2)
  USB: serial: mos7720: improve OOM-handling in read_mos_reg()
  igmp: Add ip_mc_list lock in ip_check_mc_rcu
  media: stkwebcam: fix memory leak in stk_camera_probe
  ARC: wireup clone3 syscall
  ALSA: pcm: fix divide error in snd_pcm_lib_ioctl
  ALSA: hda/realtek: Workaround for conflicting SSID on ASUS ROG Strix G17
  ARM: 8918/2: only build return_address() if needed
  cryptoloop: add a deprecation warning
  perf/x86/amd/power: Assign pmu.module
  perf/x86/amd/ibs: Work around erratum #1197
  perf/x86/intel/pt: Fix mask of num_address_ranges
  qede: Fix memset corruption
  net: macb: Add a NULL check on desc_ptp
  qed: Fix the VF msix vectors flow
  reset: reset-zynqmp: Fixed the argument data type
  gpu: ipu-v3: Fix i.MX IPU-v3 offset calculations for (semi)planar U/V formats
  xtensa: fix kconfig unmet dependency warning for HAVE_FUTEX_CMPXCHG
  kthread: Fix PF_KTHREAD vs to_kthread() race
  ubifs: report correct st_size for encrypted symlinks
  f2fs: report correct st_size for encrypted symlinks
  ext4: report correct st_size for encrypted symlinks
  fscrypt: add fscrypt_symlink_getattr() for computing st_size
  ext4: fix race writing to an inline_data file while its xattrs are changing
  Revert "once: Fix panic when module unload"
  Linux 5.4.144
  audit: move put_tree() to avoid trim_trees refcount underflow and UAF
  net: don't unconditionally copy_from_user a struct ifreq for socket ioctls
  Revert "parisc: Add assembly implementations for memset, strlen, strcpy, strncpy and strcat"
  Revert "floppy: reintroduce O_NDELAY fix"
  btrfs: fix NULL pointer dereference when deleting device by invalid id
  arm64: dts: qcom: msm8994-angler: Fix gpio-reserved-ranges 85-88
  KVM: x86/mmu: Treat NX as used (not reserved) for all !TDP shadow MMUs
  net: dsa: mt7530: fix VLAN traffic leaks again
  bpf: Fix cast to pointer from integer of different size warning
  bpf: Track contents of read-only maps as scalars
  vt_kdsetmode: extend console locking
  btrfs: fix race between marking inode needs to be logged and log syncing
  net/rds: dma_map_sg is entitled to merge entries
  drm/nouveau/disp: power down unused DP links during init
  drm: Copy drm_wait_vblank to user before returning
  qed: Fix null-pointer dereference in qed_rdma_create_qp()
  qed: qed ll2 race condition fixes
  vringh: Use wiov->used to check for read/write desc order
  virtio_pci: Support surprise removal of virtio pci device
  virtio: Improve vq->broken access to avoid any compiler optimization
  opp: remove WARN when no valid OPPs remain
  perf/x86/intel/uncore: Fix integer overflow on 23 bit left shift of a u32
  usb: gadget: u_audio: fix race condition on endpoint stop
  drm/i915: Fix syncmap memory leak
  net: hns3: fix get wrong pfc_en when query PFC configuration
  net: hns3: fix duplicate node in VLAN list
  net: hns3: clear hardware resource when loading driver
  rtnetlink: Return correct error on changing device netns
  net: marvell: fix MVNETA_TX_IN_PRGRS bit number
  xgene-v2: Fix a resource leak in the error handling path of 'xge_probe()'
  ip_gre: add validation for csum_start
  RDMA/efa: Free IRQ vectors on error flow
  e1000e: Fix the max snoop/no-snoop latency for 10M
  IB/hfi1: Fix possible null-pointer dereference in _extend_sdma_tx_descs()
  RDMA/bnxt_re: Add missing spin lock initialization
  scsi: core: Fix hang of freezing queue between blocking and running device
  usb: dwc3: gadget: Stop EP0 transfers during pullup disable
  usb: dwc3: gadget: Fix dwc3_calc_trbs_left()
  USB: serial: option: add new VID/PID to support Fibocom FG150
  Revert "USB: serial: ch341: fix character loss at high transfer rates"
  can: usb: esd_usb2: esd_usb2_rx_event(): fix the interchange of the CAN RX and TX error counters
  mm, oom: make the calculation of oom badness more accurate
  mmc: sdhci-msm: Update the software timeout value for sdhc
  ovl: fix uninitialized pointer read in ovl_lookup_real_one()
  once: Fix panic when module unload
  netfilter: conntrack: collect all entries in one cycle
  ARC: Fix CONFIG_STACKDEPOT
  net: qrtr: fix another OOB Read in qrtr_endpoint_post
  Revert "virtio: Protect vqs list access"
  Revert "net: igmp: fix data-race in igmp_ifc_timer_expire()"
  Revert "net: igmp: increase size of mr_ifc_count"
  Revert "PCI/MSI: Protect msi_desc::masked for multi-MSI"
  Linux 5.4.143
  netfilter: nft_exthdr: fix endianness of tcp option cast
  fs: warn about impending deprecation of mandatory locks
  mm: memcontrol: fix occasional OOMs due to proportional memory.low reclaim
  mm, memcg: avoid stale protection values when cgroup is above protection
  ASoC: intel: atom: Fix breakage for PCM buffer address setup
  PCI: Increase D3 delay for AMD Renoir/Cezanne XHCI
  btrfs: prevent rename2 from exchanging a subvol with a directory from different parents
  ipack: tpci200: fix memory leak in the tpci200_register
  ipack: tpci200: fix many double free issues in tpci200_pci_probe
  slimbus: ngd: reset dma setup during runtime pm
  slimbus: messaging: check for valid transaction id
  slimbus: messaging: start transaction ids from 1 instead of zero
  tracing / histogram: Fix NULL pointer dereference on strcmp() on NULL event name
  ALSA: hda - fix the 'Capture Switch' value change notifications
  mmc: dw_mmc: Fix hang on data CRC error
  ovl: add splice file read write helper
  iavf: Fix ping is lost after untrusted VF had tried to change MAC
  i40e: Fix ATR queue selection
  ovs: clear skb->tstamp in forwarding path
  net: mdio-mux: Handle -EPROBE_DEFER correctly
  net: mdio-mux: Don't ignore memory allocation errors
  net: qlcnic: add missed unlock in qlcnic_83xx_flash_read32
  virtio-net: use NETIF_F_GRO_HW instead of NETIF_F_LRO
  virtio-net: support XDP when not more queues
  vrf: Reset skb conntrack connection on VRF rcv
  bnxt_en: Add missing DMA memory barriers
  ptp_pch: Restore dependency on PCI
  net: 6pack: fix slab-out-of-bounds in decode_data
  bnxt: disable napi before canceling DIM
  bnxt: don't lock the tx queue from napi poll
  bpf: Clear zext_dst of dead insns
  vhost: Fix the calculation in vhost_overflow()
  virtio: Protect vqs list access
  dccp: add do-while-0 stubs for dccp_pr_debug macros
  cpufreq: armada-37xx: forbid cpufreq for 1.2 GHz variant
  iommu: Check if group is NULL before remove device
  Bluetooth: hidp: use correct wait queue when removing ctrl_wait
  drm/amd/display: Fix Dynamic bpp issue with 8K30 with Navi 1X
  net: usb: lan78xx: don't modify phy_device state concurrently
  ARM: dts: nomadik: Fix up interrupt controller node names
  scsi: core: Fix capacity set to zero after offlinining device
  scsi: core: Avoid printing an error if target_alloc() returns -ENXIO
  scsi: scsi_dh_rdac: Avoid crash during rdac_bus_attach()
  scsi: megaraid_mm: Fix end of loop tests for list_for_each_entry()
  dmaengine: of-dma: router_xlate to return -EPROBE_DEFER if controller is not yet available
  ARM: dts: am43x-epos-evm: Reduce i2c0 bus speed for tps65218
  dmaengine: usb-dmac: Fix PM reference leak in usb_dmac_probe()
  dmaengine: xilinx_dma: Fix read-after-free bug when terminating transfers
  USB: core: Avoid WARNings for 0-length descriptor requests
  media: drivers/media/usb: fix memory leak in zr364xx_probe
  media: zr364xx: fix memory leaks in probe()
  media: zr364xx: propagate errors from zr364xx_start_readpipe()
  mtd: cfi_cmdset_0002: fix crash when erasing/writing AMD cards
  ath9k: Postpone key cache entry deletion for TXQ frames reference it
  ath: Modify ath_key_delete() to not need full key entry
  ath: Export ath_hw_keysetmac()
  ath9k: Clear key cache explicitly on disabling hardware
  ath: Use safer key clearing with key cache entries
  x86/fpu: Make init_fpstate correct with optimized XSAVE
  ext4: fix EXT4_MAX_LOGICAL_BLOCK macro
  Linux 5.4.142
  KVM: nSVM: always intercept VMLOAD/VMSAVE when nested (CVE-2021-3656)
  KVM: nSVM: avoid picking up unsupported bits from L2 in int_ctl (CVE-2021-3653)
  iommu/vt-d: Fix agaw for a supported 48 bit guest address width
  vmlinux.lds.h: Handle clang's module.{c,d}tor sections
  ceph: take snap_empty_lock atomically with snaprealm refcount change
  ceph: clean up locking annotation for ceph_get_snap_realm and __lookup_snap_realm
  ceph: add some lockdep assertions around snaprealm handling
  KVM: VMX: Use current VMCS to query WAITPKG support for MSR emulation
  PCI/MSI: Protect msi_desc::masked for multi-MSI
  PCI/MSI: Use msi_mask_irq() in pci_msi_shutdown()
  PCI/MSI: Correct misleading comments
  PCI/MSI: Do not set invalid bits in MSI mask
  PCI/MSI: Enforce MSI[X] entry updates to be visible
  PCI/MSI: Enforce that MSI-X table entry is masked for update
  PCI/MSI: Mask all unused MSI-X entries
  PCI/MSI: Enable and mask MSI-X early
  genirq/timings: Prevent potential array overflow in __irq_timings_store()
  genirq/msi: Ensure deactivation on teardown
  x86/resctrl: Fix default monitoring groups reporting
  x86/ioapic: Force affinity setup before startup
  x86/msi: Force affinity setup before startup
  genirq: Provide IRQCHIP_AFFINITY_PRE_STARTUP
  x86/tools: Fix objdump version check again
  powerpc/kprobes: Fix kprobe Oops happens in booke
  nbd: Aovid double completion of a request
  vsock/virtio: avoid potential deadlock when vsock device remove
  xen/events: Fix race in set_evtchn_to_irq
  net: igmp: increase size of mr_ifc_count
  tcp_bbr: fix u32 wrap bug in round logic if bbr_init() called after 2B packets
  net: linkwatch: fix failure to restore device state across suspend/resume
  net: bridge: fix memleak in br_add_if()
  net: dsa: sja1105: fix broken backpressure in .port_fdb_dump
  net: dsa: lantiq: fix broken backpressure in .port_fdb_dump
  net: dsa: lan9303: fix broken backpressure in .port_fdb_dump
  net: igmp: fix data-race in igmp_ifc_timer_expire()
  net: Fix memory leak in ieee802154_raw_deliver
  net: dsa: microchip: Fix ksz_read64()
  drm/meson: fix colour distortion from HDR set during vendor u-boot
  net/mlx5: Fix return value from tracer initialization
  psample: Add a fwd declaration for skbuff
  iavf: Set RSS LUT and key in reset handle path
  net: sched: act_mirred: Reset ct info when mirror/redirect skb
  ppp: Fix generating ifname when empty IFLA_IFNAME is specified
  net: phy: micrel: Fix link detection on ksz87xx switch"
  platform/x86: pcengines-apuv2: Add missing terminating entries to gpio-lookup tables
  platform/x86: pcengines-apuv2: revert wiring up simswitch GPIO as LED
  net: dsa: mt7530: add the missing RxUnicast MIB counter
  ASoC: cs42l42: Fix LRCLK frame start edge
  netfilter: nf_conntrack_bridge: Fix memory leak when error
  ASoC: cs42l42: Remove duplicate control for WNF filter frequency
  ASoC: cs42l42: Fix inversion of ADC Notch Switch control
  ASoC: cs42l42: Don't allow SND_SOC_DAIFMT_LEFT_J
  ASoC: cs42l42: Correct definition of ADC Volume control
  ieee802154: hwsim: fix GPF in hwsim_new_edge_nl
  ieee802154: hwsim: fix GPF in hwsim_set_edge_lqi
  libnvdimm/region: Fix label activation vs errors
  ACPI: NFIT: Fix support for virtual SPA ranges
  ceph: reduce contention in ceph_check_delayed_caps()
  i2c: dev: zero out array used for i2c reads from userspace
  ASoC: intel: atom: Fix reference to PCM buffer address
  ASoC: xilinx: Fix reference to PCM buffer address
  iio: adc: Fix incorrect exit of for-loop
  iio: humidity: hdc100x: Add margin to the conversion time
  iio: adc: ti-ads7950: Ensure CS is deasserted after reading channels
  Linux 5.4.141
  btrfs: don't flush from btrfs_delayed_inode_reserve_metadata
  btrfs: export and rename qgroup_reserve_meta
  btrfs: qgroup: don't commit transaction when we already hold the handle
  net: xilinx_emaclite: Do not print real IOMEM pointer
  btrfs: fix lockdep splat when enabling and disabling qgroups
  btrfs: qgroup: remove ASYNC_COMMIT mechanism in favor of reserve retry-after-EDQUOT
  btrfs: transaction: Cleanup unused TRANS_STATE_BLOCKED
  btrfs: qgroup: try to flush qgroup space when we get -EDQUOT
  btrfs: qgroup: allow to unreserve range without releasing other ranges
  btrfs: make btrfs_qgroup_reserve_data take btrfs_inode
  btrfs: make qgroup_free_reserved_data take btrfs_inode
  ovl: prevent private clone if bind mount is not allowed
  ppp: Fix generating ppp unit id when ifname is not specified
  ALSA: hda: Add quirk for ASUS Flow x13
  USB:ehci:fix Kunpeng920 ehci hardware problem
  KVM: X86: MMU: Use the correct inherited permissions to get shadow page
  usb: dwc3: gadget: Avoid runtime resume if disabling pullup
  usb: dwc3: gadget: Disable gadget IRQ during pullup disable
  usb: dwc3: gadget: Clear DEP flags after stop transfers in ep disable
  usb: dwc3: gadget: Prevent EP queuing while stopping transfers
  usb: dwc3: gadget: Restart DWC3 gadget when enabling pullup
  usb: dwc3: gadget: Allow runtime suspend if UDC unbinded
  usb: dwc3: Stop active transfers before halting the controller
  tracing: Reject string operand in the histogram expression
  media: v4l2-mem2mem: always consider OUTPUT queue during poll
  tee: Correct inappropriate usage of TEE_SHM_DMA_BUF flag
  KVM: SVM: Fix off-by-one indexing when nullifying last used SEV VMCB
  Linux 5.4.140
  arm64: fix compat syscall return truncation
  net/qla3xxx: fix schedule while atomic in ql_wait_for_drvr_lock and ql_adapter_reset
  alpha: Send stop IPI to send to online CPUs
  virt_wifi: fix error on connect
  reiserfs: check directory items on read from disk
  reiserfs: add check for root_inode in reiserfs_fill_super
  libata: fix ata_pio_sector for CONFIG_HIGHMEM
  bpf, selftests: Adjust few selftest result_unpriv outcomes
  perf/x86/amd: Don't touch the AMD64_EVENTSEL_HOSTONLY bit inside the guest
  soc: ixp4xx/qmgr: fix invalid __iomem access
  spi: meson-spicc: fix memory leak in meson_spicc_remove
  soc: ixp4xx: fix printing resources
  arm64: vdso: Avoid ISB after reading from cntvct_el0
  KVM: x86/mmu: Fix per-cpu counter corruption on 32-bit builds
  KVM: Do not leak memory for duplicate debugfs directories
  KVM: x86: accept userspace interrupt only if no event is injected
  md/raid10: properly indicate failure when ending a failed write request
  pcmcia: i82092: fix a null pointer dereference bug
  timers: Move clearing of base::timer_running under base:: Lock
  serial: 8250_pci: Avoid irq sharing for MSI(-X) interrupts.
  serial: 8250_pci: Enumerate Elkhart Lake UARTs via dedicated driver
  MIPS: Malta: Do not byte-swap accesses to the CBUS UART
  serial: 8250: Mask out floating 16/32-bit bus bits
  serial: 8250_mtk: fix uart corruption issue when rx power off
  serial: tegra: Only print FIFO error message when an error occurs
  ext4: fix potential htree corruption when growing large_dir directories
  pipe: increase minimum default pipe size to 2 pages
  media: rtl28xxu: fix zero-length control request
  staging: rtl8712: get rid of flush_scheduled_work
  staging: rtl8723bs: Fix a resource leak in sd_int_dpc
  tpm_ftpm_tee: Free and unregister TEE shared memory during kexec
  optee: Fix memory leak when failing to register shm pages
  tee: add tee_shm_alloc_kernel_buf()
  optee: Clear stale cache entries during initialization
  tracing / histogram: Give calculation hist_fields a size
  scripts/tracing: fix the bug that can't parse raw_trace_func
  clk: fix leak on devm_clk_bulk_get_all() unwind
  usb: otg-fsm: Fix hrtimer list corruption
  usb: gadget: f_hid: idle uses the highest byte for duration
  usb: gadget: f_hid: fixed NULL pointer dereference
  usb: gadget: f_hid: added GET_IDLE and SET_IDLE handlers
  usb: cdns3: Fixed incorrect gadget state
  ALSA: usb-audio: Add registration quirk for JBL Quantum 600
  ALSA: hda/realtek: add mic quirk for Acer SF314-42
  firmware_loader: fix use-after-free in firmware_fallback_sysfs
  firmware_loader: use -ETIMEDOUT instead of -EAGAIN in fw_load_sysfs_fallback
  USB: serial: ftdi_sio: add device ID for Auto-M3 OP-COM v2
  USB: serial: ch341: fix character loss at high transfer rates
  USB: serial: option: add Telit FD980 composition 0x1056
  USB: usbtmc: Fix RCU stall warning
  Bluetooth: defer cleanup of resources in hci_unregister_dev()
  blk-iolatency: error out if blk_get_queue() failed in iolatency_set_limit()
  net: vxge: fix use-after-free in vxge_device_unregister
  net: fec: fix use-after-free in fec_drv_remove
  net: pegasus: fix uninit-value in get_interrupt_interval
  bnx2x: fix an error code in bnx2x_nic_load()
  mips: Fix non-POSIX regexp
  net: ipv6: fix returned variable type in ip6_skb_dst_mtu
  nfp: update ethtool reporting of pauseframe control
  sctp: move the active_key update after sh_keys is added
  gpio: tqmx86: really make IRQ optional
  net: natsemi: Fix missing pci_disable_device() in probe and remove
  net: phy: micrel: Fix detection of ksz87xx switch
  net: dsa: sja1105: invalidate dynamic FDB entries learned concurrently with statically added ones
  net: dsa: sja1105: overwrite dynamic FDB entries with static ones in .port_fdb_add
  net, gro: Set inner transport header offset in tcp/udp GRO hook
  dmaengine: imx-dma: configure the generic DMA type to make it work
  media: videobuf2-core: dequeue if start_streaming fails
  scsi: sr: Return correct event when media event code is 3
  spi: imx: mx51-ecspi: Fix low-speed CONFIGREG delay calculation
  spi: imx: mx51-ecspi: Reinstate low-speed CONFIGREG delay
  omap5-board-common: remove not physically existing vdds_1v8_main fixed-regulator
  ARM: dts: am437x-l4: fix typo in can@0 node
  clk: stm32f4: fix post divisor setup for I2S/SAI PLLs
  ALSA: usb-audio: fix incorrect clock source setting
  arm64: dts: armada-3720-turris-mox: remove mrvl,i2c-fast-mode
  ARM: dts: imx: Swap M53Menlo pinctrl_power_button/pinctrl_power_out pins
  ARM: imx: fix missing 3rd argument in macro imx_mmdc_perf_init
  ARM: dts: colibri-imx6ull: limit SDIO clock to 25MHz
  ARM: dts: imx6qdl-sr-som: Increase the PHY reset duration to 10ms
  ARM: imx: add missing clk_disable_unprepare()
  ARM: imx: add missing iounmap()
  arm64: dts: ls1028a: fix node name for the sysclk
  ALSA: seq: Fix racy deletion of subscriber
  Revert "ACPICA: Fix memory leak caused by _CID repair function"
  ANDROID: GKI: fix up android/abi_gki_aarch64.xml merge
  Linux 5.4.139
  spi: mediatek: Fix fifo transfer
  bpf, selftests: Adjust few selftest outcomes wrt unreachable code
  bpf, selftests: Add a verifier test for assigning 32bit reg states to 64bit ones
  bpf: Test_verifier, add alu32 bounds tracking tests
  bpf: Fix leakage under speculation on mispredicted branches
  bpf: Do not mark insn as seen under speculative path verification
  bpf: Inherit expanded/patched seen count from old aux data
  Revert "watchdog: iTCO_wdt: Account for rebooting on second timeout"
  firmware: arm_scmi: Add delayed response status check
  firmware: arm_scmi: Ensure drivers provide a probe function
  Revert "Bluetooth: Shutdown controller after workqueues are flushed or cancelled"
  ACPI: fix NULL pointer dereference
  nvme: fix nvme_setup_command metadata trace event
  net: Fix zero-copy head len calculation.
  qed: fix possible unpaired spin_{un}lock_bh in _qed_mcp_cmd_and_union()
  r8152: Fix potential PM refcount imbalance
  ASoC: tlv320aic31xx: fix reversed bclk/wclk master bits
  spi: stm32h7: fix full duplex irq handler handling
  regulator: rt5033: Fix n_voltages settings for BUCK and LDO
  btrfs: fix lost inode on log replay after mix of fsync, rename and inode eviction
  btrfs: fix race causing unnecessary inode logging during link and rename
  btrfs: do not commit logs and transactions during link and rename operations
  btrfs: delete duplicated words + other fixes in comments
  Linux 5.4.138
  can: j1939: j1939_session_deactivate(): clarify lifetime of session object
  i40e: Add additional info to PHY type error
  Revert "perf map: Fix dso->nsinfo refcounting"
  powerpc/pseries: Fix regression while building external modules
  PCI: mvebu: Setup BAR0 in order to fix MSI
  can: hi311x: fix a signedness bug in hi3110_cmd()
  sis900: Fix missing pci_disable_device() in probe and remove
  tulip: windbond-840: Fix missing pci_disable_device() in probe and remove
  sctp: fix return value check in __sctp_rcv_asconf_lookup
  net/mlx5e: Fix nullptr in mlx5e_hairpin_get_mdev()
  net/mlx5: Fix flow table chaining
  net: llc: fix skb_over_panic
  mlx4: Fix missing error code in mlx4_load_one()
  net: Set true network header for ECN decapsulation
  tipc: fix sleeping in tipc accept routine
  i40e: Fix log TC creation failure when max num of queues is exceeded
  i40e: Fix queue-to-TC mapping on Tx
  i40e: Fix firmware LLDP agent related warning
  i40e: Fix logic of disabling queues
  netfilter: nft_nat: allow to specify layer 4 protocol NAT only
  netfilter: conntrack: adjust stop timestamp to real expiry value
  cfg80211: Fix possible memory leak in function cfg80211_bss_update
  nfc: nfcsim: fix use after free during module unload
  NIU: fix incorrect error return, missed in previous revert
  HID: wacom: Re-enable touch by default for Cintiq 24HDT / 27QHDT
  can: esd_usb2: fix memory leak
  can: ems_usb: fix memory leak
  can: usb_8dev: fix memory leak
  can: mcba_usb_start(): add missing urb->transfer_dma initialization
  can: raw: raw_setsockopt(): fix raw_rcv panic for sock UAF
  can: j1939: j1939_xtp_rx_dat_one(): fix rxtimer value between consecutive TP.DT to 750ms
  ocfs2: issue zeroout to EOF blocks
  ocfs2: fix zero out valid data
  KVM: add missing compat KVM_CLEAR_DIRTY_LOG
  x86/kvm: fix vcpu-id indexed array sizes
  Revert "ACPI: resources: Add checks for ACPI IRQ override"
  btrfs: mark compressed range uptodate only if all bio succeed
  btrfs: fix rw device counting in __btrfs_free_extra_devids
  x86/asm: Ensure asm/proto.h can be included stand-alone
  net_sched: check error pointer in tcf_dump_walker()
  Linux 5.4.137
  ipv6: ip6_finish_output2: set sk into newly allocated nskb
  ARM: dts: versatile: Fix up interrupt controller node names
  iomap: remove the length variable in iomap_seek_hole
  iomap: remove the length variable in iomap_seek_data
  cifs: fix the out of range assignment to bit fields in parse_server_interfaces
  firmware: arm_scmi: Fix range check for the maximum number of pending messages
  firmware: arm_scmi: Fix possible scmi_linux_errmap buffer overflow
  hfs: add lock nesting notation to hfs_find_init
  hfs: fix high memory mapping in hfs_bnode_read
  hfs: add missing clean-up in hfs_fill_super
  ipv6: allocate enough headroom in ip6_finish_output2()
  sctp: move 198 addresses from unusable to private scope
  net: annotate data race around sk_ll_usec
  net/802/garp: fix memleak in garp_request_join()
  net/802/mrp: fix memleak in mrp_request_join()
  cgroup1: fix leaked context root causing sporadic NULL deref in LTP
  workqueue: fix UAF in pwq_unbound_release_workfn()
  af_unix: fix garbage collect vs MSG_PEEK
  KVM: x86: determine if an exception has an error code only when injecting it.
  tools: Allow proper CC/CXX/... override with LLVM=1 in Makefile.include
  selftest: fix build error in tools/testing/selftests/vm/userfaultfd.c
  ANDROID: Update android/abi_gki_aarch64.xml
  ANDROID: Update android/abi_gki_aarch64_goldfish
  Linux 5.4.136
  xhci: add xhci_get_virt_ep() helper
  perf inject: Close inject.output on exit
  PCI: Mark AMD Navi14 GPU ATS as broken
  btrfs: compression: don't try to compress if we don't have enough pages
  iio: accel: bma180: Fix BMA25x bandwidth register values
  iio: accel: bma180: Use explicit member assignment
  net: bcmgenet: ensure EXT_ENERGY_DET_MASK is clear
  net: dsa: mv88e6xxx: use correct .stats_set_histogram() on Topaz
  drm: Return -ENOTTY for non-drm ioctls
  nds32: fix up stack guard gap
  rbd: always kick acquire on "acquired" and "released" notifications
  rbd: don't hold lock_rwsem while running_list is being drained
  hugetlbfs: fix mount mode command line processing
  userfaultfd: do not untag user pointers
  selftest: use mmap instead of posix_memalign to allocate memory
  ixgbe: Fix packet corruption due to missing DMA sync
  media: ngene: Fix out-of-bounds bug in ngene_command_config_free_buf()
  btrfs: check for missing device in btrfs_trim_fs
  tracing: Fix bug in rb_per_cpu_empty() that might cause deadloop.
  tracing/histogram: Rename "cpu" to "common_cpu"
  firmware/efi: Tell memblock about EFI iomem reservations
  usb: dwc2: gadget: Fix sending zero length packet in DDMA mode.
  USB: serial: cp210x: add ID for CEL EM3588 USB ZigBee stick
  USB: serial: cp210x: fix comments for GE CS1000
  USB: serial: option: add support for u-blox LARA-R6 family
  usb: renesas_usbhs: Fix superfluous irqs happen after usb_pkt_pop()
  usb: max-3421: Prevent corruption of freed memory
  USB: usb-storage: Add LaCie Rugged USB3-FW to IGNORE_UAS
  usb: hub: Fix link power management max exit latency (MEL) calculations
  usb: hub: Disable USB 3 device initiated lpm if exit latency is too high
  KVM: PPC: Book3S HV Nested: Sanitise H_ENTER_NESTED TM state
  KVM: PPC: Book3S: Fix H_RTAS rets buffer overflow
  xhci: Fix lost USB 2 remote wake
  ALSA: hdmi: Expose all pins on MSI MS-7C94 board
  ALSA: sb: Fix potential ABBA deadlock in CSP driver
  ALSA: usb-audio: Add registration quirk for JBL Quantum headsets
  ALSA: usb-audio: Add missing proc text entry for BESPOKEN type
  s390/boot: fix use of expolines in the DMA code
  s390/ftrace: fix ftrace_update_ftrace_func implementation
  Revert "MIPS: add PMD table accounting into MIPS'pmd_alloc_one"
  proc: Avoid mixing integer types in mem_rw()
  drm/panel: raspberrypi-touchscreen: Prevent double-free
  net: sched: cls_api: Fix the the wrong parameter
  sctp: update active_key for asoc when old key is being replaced
  nvme: set the PRACT bit when using Write Zeroes with T10 PI
  r8169: Avoid duplicate sysfs entry creation error
  afs: Fix tracepoint string placement with built-in AFS
  Revert "USB: quirks: ignore remote wake-up on Fibocom L850-GL LTE modem"
  nvme-pci: don't WARN_ON in nvme_reset_work if ctrl.state is not RESETTING
  ipv6: fix another slab-out-of-bounds in fib6_nh_flush_exceptions
  net/sched: act_skbmod: Skip non-Ethernet packets
  net: hns3: fix rx VLAN offload state inconsistent issue
  net/tcp_fastopen: fix data races around tfo_active_disable_stamp
  net: hisilicon: rename CACHE_LINE_MASK to avoid redefinition
  bnxt_en: Check abort error state in bnxt_half_open_nic()
  bnxt_en: Add missing check for BNXT_STATE_ABORT_ERR in bnxt_fw_rset_task()
  bnxt_en: Refresh RoCE capabilities in bnxt_ulp_probe()
  bnxt_en: Improve bnxt_ulp_stop()/bnxt_ulp_start() call sequence.
  spi: cadence: Correct initialisation of runtime PM again
  scsi: target: Fix protect handling in WRITE SAME(32)
  scsi: iscsi: Fix iface sysfs attr detection
  netrom: Decrease sock refcount when sock timers expire
  net: sched: fix memory leak in tcindex_partial_destroy_work
  KVM: PPC: Fix kvm_arch_vcpu_ioctl vcpu_load leak
  KVM: PPC: Book3S: Fix CONFIG_TRANSACTIONAL_MEM=n crash
  net: decnet: Fix sleeping inside in af_decnet
  efi/tpm: Differentiate missing and invalid final event log table.
  net: fix uninit-value in caif_seqpkt_sendmsg
  bpftool: Check malloc return value in mount_bpffs_for_pin
  bpf, sockmap, tcp: sk_prot needs inuse_idx set for proc stats
  s390/bpf: Perform r1 range checking before accessing jit->seen_reg[r1]
  liquidio: Fix unintentional sign extension issue on left shift of u16
  ASoC: rt5631: Fix regcache sync errors on resume
  spi: mediatek: fix fifo rx mode
  regulator: hi6421: Fix getting wrong drvdata
  regulator: hi6421: Use correct variable type for regmap api val argument
  spi: stm32: fixes pm_runtime calls in probe/remove
  spi: stm32: Use dma_request_chan() instead dma_request_slave_channel()
  spi: imx: add a check for speed_hz before calculating the clock
  perf data: Close all files in close_dir()
  perf probe-file: Delete namelist in del_events() on the error path
  perf lzma: Close lzma stream on exit
  perf script: Fix memory 'threads' and 'cpus' leaks on exit
  perf dso: Fix memory leak in dso__new_map()
  perf test event_update: Fix memory leak of evlist
  perf test session_topology: Delete session->evlist
  perf env: Fix sibling_dies memory leak
  perf probe: Fix dso->nsinfo refcounting
  perf map: Fix dso->nsinfo refcounting
  nvme-pci: do not call nvme_dev_remove_admin from nvme_remove
  cxgb4: fix IRQ free race during driver unload
  pwm: sprd: Ensure configuring period and duty_cycle isn't wrongly skipped
  selftests: icmp_redirect: IPv6 PMTU info should be cleared after redirect
  selftests: icmp_redirect: remove from checking for IPv6 route get
  ipv6: fix 'disable_policy' for fwd packets
  gve: Fix an error handling path in 'gve_probe()'
  igb: Fix position of assignment to *ring
  igb: Check if num of q_vectors is smaller than max before array access
  iavf: Fix an error handling path in 'iavf_probe()'
  e1000e: Fix an error handling path in 'e1000_probe()'
  fm10k: Fix an error handling path in 'fm10k_probe()'
  igb: Fix an error handling path in 'igb_probe()'
  igc: Fix an error handling path in 'igc_probe()'
  igc: Prefer to use the pci_release_mem_regions method
  ixgbe: Fix an error handling path in 'ixgbe_probe()'
  igc: change default return of igc_read_phy_reg()
  igb: Fix use-after-free error during reset
  igc: Fix use-after-free error during reset
  Linux 5.4.135
  udp: annotate data races around unix_sk(sk)->gso_size
  perf test bpf: Free obj_buf
  bpftool: Properly close va_list 'ap' by va_end() on error
  ipv6: tcp: drop silly ICMPv6 packet too big messages
  tcp: annotate data races around tp->mtu_info
  dma-buf/sync_file: Don't leak fences on merge failure
  net: fddi: fix UAF in fza_probe
  net: validate lwtstate->data before returning from skb_tunnel_info()
  net: send SYNACK packet with accepted fwmark
  net: ti: fix UAF in tlan_remove_one
  net: qcom/emac: fix UAF in emac_remove
  net: moxa: fix UAF in moxart_mac_probe
  net: ip_tunnel: fix mtu calculation for ETHER tunnel devices
  net: bcmgenet: Ensure all TX/RX queues DMAs are disabled
  net: bridge: sync fdb to new unicast-filtering ports
  net/sched: act_ct: fix err check for nf_conntrack_confirm
  netfilter: ctnetlink: suspicious RCU usage in ctnetlink_dump_helpinfo
  net: ipv6: fix return value of ip6_skb_dst_mtu
  net: dsa: mv88e6xxx: enable .rmu_disable() on Topaz
  net: dsa: mv88e6xxx: enable .port_set_policy() on Topaz
  dm writecache: return the exact table values that were set
  mm: slab: fix kmem_cache_create failed when sysfs node not destroyed
  usb: cdns3: Enable TDL_CHK only for OUT ep
  f2fs: Show casefolding support only when supported
  arm64: dts: marvell: armada-37xx: move firmware node to generic dtsi file
  firmware: turris-mox-rwtm: add marvell,armada-3700-rwtm-firmware compatible string
  arm64: dts: armada-3720-turris-mox: add firmware node
  cifs: prevent NULL deref in cifs_compose_mount_options()
  s390: introduce proper type handling call_on_stack() macro
  sched/fair: Fix CFS bandwidth hrtimer expiry type
  scsi: qedf: Add check to synchronize abort and flush
  scsi: libfc: Fix array index out of bound exception
  scsi: libsas: Add LUN number check in .slave_alloc callback
  scsi: aic7xxx: Fix unintentional sign extension issue on left shift of u8
  rtc: max77686: Do not enforce (incorrect) interrupt trigger type
  kbuild: mkcompile_h: consider timestamp if KBUILD_BUILD_TIMESTAMP is set
  thermal/core: Correct function name thermal_zone_device_unregister()
  arm64: dts: imx8mq: assign PCIe clocks
  arm64: dts: ls208xa: remove bus-num from dspi node
  firmware: tegra: bpmp: Fix Tegra234-only builds
  soc/tegra: fuse: Fix Tegra234-only builds
  ARM: dts: stm32: move stmmac axi config in ethernet node on stm32mp15
  ARM: dts: stm32: fix i2c node name on stm32f746 to prevent warnings
  ARM: dts: rockchip: fix supply properties in io-domains nodes
  arm64: dts: juno: Update SCPI nodes as per the YAML schema
  ARM: dts: stm32: fix timer nodes on STM32 MCU to prevent warnings
  ARM: dts: stm32: fix RCC node name on stm32f429 MCU
  ARM: dts: stm32: fix gpio-keys node on STM32 MCU boards
  ARM: dts: am437x-gp-evm: fix ti,no-reset-on-init flag for gpios
  ARM: dts: am57xx-cl-som-am57x: fix ti,no-reset-on-init flag for gpios
  kbuild: sink stdout from cmd for silent build
  rtc: mxc_v2: add missing MODULE_DEVICE_TABLE
  ARM: imx: pm-imx5: Fix references to imx5_cpu_suspend_info
  ARM: dts: imx6: phyFLEX: Fix UART hardware flow control
  ARM: dts: Hurricane 2: Fix NAND nodes names
  ARM: dts: BCM63xx: Fix NAND nodes names
  ARM: NSP: dts: fix NAND nodes names
  ARM: Cygnus: dts: fix NAND nodes names
  ARM: brcmstb: dts: fix NAND nodes names
  reset: ti-syscon: fix to_ti_syscon_reset_data macro
  arm64: dts: rockchip: Fix power-controller node names for rk3328
  arm64: dts: rockchip: Fix power-controller node names for px30
  ARM: dts: rockchip: Fix power-controller node names for rk3288
  ARM: dts: rockchip: Fix power-controller node names for rk3188
  ARM: dts: rockchip: Fix power-controller node names for rk3066a
  ARM: dts: rockchip: Fix IOMMU nodes properties on rk322x
  ARM: dts: rockchip: Fix the timer clocks order
  arm64: dts: rockchip: fix pinctrl sleep nodename for rk3399.dtsi
  ARM: dts: rockchip: fix pinctrl sleep nodename for rk3036-kylin and rk3288
  ARM: dts: gemini: add device_type on pci
  ARM: dts: gemini: rename mdio to the right name

 Conflicts:
	drivers/mmc/host/sdhci-msm.c
	drivers/scsi/ufs/ufshcd.c
	drivers/staging/android/ion/heaps/ion_cma_heap.c
	drivers/usb/dwc3/gadget.c
	include/linux/oom.h
	kernel/time/hrtimer.c
	mm/oom_kill.c
	net/qrtr/qrtr.c

Change-Id: I1c29c9ef4233acd05550475b29b8f7d30b6c452d
Signed-off-by: Srinivasarao Pathipati <quic_spathi@quicinc.com>
2021-11-05 17:27:33 +05:30
Rik van Riel
d0ddb80bbf mm,vmscan: fix divide by zero in get_scan_count
commit 32d4f4b782bb8f0ceb78c6b5dc46eb577ae25bf7 upstream.

Commit f56ce412a59d ("mm: memcontrol: fix occasional OOMs due to
proportional memory.low reclaim") introduced a divide by zero corner
case when oomd is being used in combination with cgroup memory.low
protection.

When oomd decides to kill a cgroup, it will force the cgroup memory to
be reclaimed after killing the tasks, by writing to the memory.max file
for that cgroup, forcing the remaining page cache and reclaimable slab
to be reclaimed down to zero.

Previously, on cgroups with some memory.low protection that would result
in the memory being reclaimed down to the memory.low limit, or likely
not at all, having the page cache reclaimed asynchronously later.

With f56ce412a59d the oomd write to memory.max tries to reclaim all the
way down to zero, which may race with another reclaimer, to the point of
ending up with the divide by zero below.

This patch implements the obvious fix.

Link: https://lkml.kernel.org/r/20210826220149.058089c6@imladris.surriel.com
Fixes: f56ce412a59d ("mm: memcontrol: fix occasional OOMs due to proportional memory.low reclaim")
Signed-off-by: Rik van Riel <riel@surriel.com>
Acked-by: Roman Gushchin <guro@fb.com>
Acked-by: Michal Hocko <mhocko@suse.com>
Acked-by: Johannes Weiner <hannes@cmpxchg.org>
Acked-by: Chris Down <chris@chrisdown.name>
Cc: <stable@vger.kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-09-22 12:26:37 +02:00
Johannes Weiner
41c7f46c89 mm: memcontrol: fix occasional OOMs due to proportional memory.low reclaim
[ Upstream commit f56ce412a59d7d938b81de8878faef128812482c ]

We've noticed occasional OOM killing when memory.low settings are in
effect for cgroups.  This is unexpected and undesirable as memory.low is
supposed to express non-OOMing memory priorities between cgroups.

The reason for this is proportional memory.low reclaim.  When cgroups
are below their memory.low threshold, reclaim passes them over in the
first round, and then retries if it couldn't find pages anywhere else.
But when cgroups are slightly above their memory.low setting, page scan
force is scaled down and diminished in proportion to the overage, to the
point where it can cause reclaim to fail as well - only in that case we
currently don't retry, and instead trigger OOM.

To fix this, hook proportional reclaim into the same retry logic we have
in place for when cgroups are skipped entirely.  This way if reclaim
fails and some cgroups were scanned with diminished pressure, we'll try
another full-force cycle before giving up and OOMing.

[akpm@linux-foundation.org: coding-style fixes]

Link: https://lkml.kernel.org/r/20210817180506.220056-1-hannes@cmpxchg.org
Fixes: 9783aa9917 ("mm, memcg: proportional memory.{low,min} reclaim")
Signed-off-by: Johannes Weiner <hannes@cmpxchg.org>
Reported-by: Leon Yang <lnyng@fb.com>
Reviewed-by: Rik van Riel <riel@surriel.com>
Reviewed-by: Shakeel Butt <shakeelb@google.com>
Acked-by: Roman Gushchin <guro@fb.com>
Acked-by: Chris Down <chris@chrisdown.name>
Acked-by: Michal Hocko <mhocko@suse.com>
Cc: <stable@vger.kernel.org>		[5.4+]
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2021-08-26 08:36:22 -04:00
Yafang Shao
1a3aa81444 mm, memcg: avoid stale protection values when cgroup is above protection
[ Upstream commit 22f7496f0b901249f23c5251eb8a10aae126b909 ]

Patch series "mm, memcg: memory.{low,min} reclaim fix & cleanup", v4.

This series contains a fix for a edge case in my earlier protection
calculation patches, and a patch to make the area overall a little more
robust to hopefully help avoid this in future.

This patch (of 2):

A cgroup can have both memory protection and a memory limit to isolate it
from its siblings in both directions - for example, to prevent it from
being shrunk below 2G under high pressure from outside, but also from
growing beyond 4G under low pressure.

Commit 9783aa9917 ("mm, memcg: proportional memory.{low,min} reclaim")
implemented proportional scan pressure so that multiple siblings in excess
of their protection settings don't get reclaimed equally but instead in
accordance to their unprotected portion.

During limit reclaim, this proportionality shouldn't apply of course:
there is no competition, all pressure is from within the cgroup and should
be applied as such.  Reclaim should operate at full efficiency.

However, mem_cgroup_protected() never expected anybody to look at the
effective protection values when it indicated that the cgroup is above its
protection.  As a result, a query during limit reclaim may return stale
protection values that were calculated by a previous reclaim cycle in
which the cgroup did have siblings.

When this happens, reclaim is unnecessarily hesitant and potentially slow
to meet the desired limit.  In theory this could lead to premature OOM
kills, although it's not obvious this has occurred in practice.

Workaround the problem by special casing reclaim roots in
mem_cgroup_protection.  These memcgs are never participating in the
reclaim protection because the reclaim is internal.

We have to ignore effective protection values for reclaim roots because
mem_cgroup_protected might be called from racing reclaim contexts with
different roots.  Calculation is relying on root -> leaf tree traversal
therefore top-down reclaim protection invariants should hold.  The only
exception is the reclaim root which should have effective protection set
to 0 but that would be problematic for the following setup:

 Let's have global and A's reclaim in parallel:
  |
  A (low=2G, usage = 3G, max = 3G, children_low_usage = 1.5G)
  |\
  | C (low = 1G, usage = 2.5G)
  B (low = 1G, usage = 0.5G)

 for A reclaim we have
 B.elow = B.low
 C.elow = C.low

 For the global reclaim
 A.elow = A.low
 B.elow = min(B.usage, B.low) because children_low_usage <= A.elow
 C.elow = min(C.usage, C.low)

 With the effective values resetting we have A reclaim
 A.elow = 0
 B.elow = B.low
 C.elow = C.low

 and global reclaim could see the above and then
 B.elow = C.elow = 0 because children_low_usage > A.elow

Which means that protected memcgs would get reclaimed.

In future we would like to make mem_cgroup_protected more robust against
racing reclaim contexts but that is likely more complex solution than this
simple workaround.

[hannes@cmpxchg.org - large part of the changelog]
[mhocko@suse.com - workaround explanation]
[chris@chrisdown.name - retitle]

Fixes: 9783aa9917 ("mm, memcg: proportional memory.{low,min} reclaim")
Signed-off-by: Yafang Shao <laoar.shao@gmail.com>
Signed-off-by: Chris Down <chris@chrisdown.name>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Acked-by: Michal Hocko <mhocko@suse.com>
Acked-by: Johannes Weiner <hannes@cmpxchg.org>
Acked-by: Chris Down <chris@chrisdown.name>
Acked-by: Roman Gushchin <guro@fb.com>
Link: http://lkml.kernel.org/r/cover.1594638158.git.chris@chrisdown.name
Link: http://lkml.kernel.org/r/044fb8ecffd001c7905d27c0c2ad998069fdc396.1594638158.git.chris@chrisdown.name
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2021-08-26 08:36:22 -04:00
Srinivasarao P
b403cd66bd Merge android11-5.4.86+ (75c93eb) into msm-5.4
* refs/heads/tmp-75c93eb:
  Revert one chunk from 37432a83fa commit
  Revert "rpmsg: glink: Use complete_all for open states"
  ANDROID: Incremental fs: Fix selinux issues
  ANDROID: Incremental fs: Set credentials before reading/writing
  ANDROID: Incremental fs: Fix memory leak on closing file
  ANDROID: GKI: update Sony KMI symbol list
  ANDROID: ABI updates for db845c (enabling wifi)
  ANDROID: db845c_gki.fragment: Enable wifi on db845c w/ android-5.4
  UPSTREAM: arm64: dts: qcom: sdm845: Add APSS watchdog node
  UPSTREAM: arm64: dts: qcom: db845c: Move remoteproc firmware to sdm845
  UPSTREAM: ath10k: qmi: Sleep for a while before assigning MSA memory
  UPSTREAM: soc: qcom: qmi: Return EPROBE_DEFER if no address family
  ANDROID: ABI: Update allowed list for QCOM
  ANDROID: GKI: update Sony symbol list for texfat
  ANDROID: GKI: update KMI for db845c with idr_alloc_u32 added
  ANDROID: ABI: Update allowed list for QCOM
  ANDROID: ABI: update allowed list for QCOM
  Revert "media: v4l2-fwnode: Return -EINVAL for invalid bus-type"
  Revert "seq_buf: Avoid type mismatch for seq_buf_init"
  Linux 5.4.86
  x86/CPU/AMD: Save AMD NodeId as cpu_die_id
  Revert: "ring-buffer: Remove HAVE_64BIT_ALIGNED_ACCESS"
  rtc: ep93xx: Fix NULL pointer dereference in ep93xx_rtc_read_time
  regulator: axp20x: Fix DLDO2 voltage control register mask for AXP22x
  PCI: Fix pci_slot_release() NULL pointer dereference
  platform/x86: intel-vbtn: Allow switch events on Acer Switch Alpha 12
  libnvdimm/namespace: Fix reaping of invalidated block-window-namespace labels
  xenbus/xenbus_backend: Disallow pending watch messages
  xen/xenbus: Count pending messages for each watch
  xen/xenbus/xen_bus_type: Support will_handle watch callback
  xen/xenbus: Add 'will_handle' callback support in xenbus_watch_path()
  xen/xenbus: Allow watches discard events before queueing
  xen-blkback: set ring->xenblkd to NULL after kthread_stop()
  dma-buf/dma-resv: Respect num_fences when initializing the shared fence list.
  device-dax/core: Fix memory leak when rmmod dax.ko
  clk: tegra: Do not return 0 on failure
  clk: mvebu: a3700: fix the XTAL MODE pin to MPP1_9
  clk: ingenic: Fix divider calculation with div tables
  pinctrl: sunxi: Always call chained_irq_{enter, exit} in sunxi_pinctrl_irq_handler
  md/cluster: fix deadlock when node is doing resync job
  md/cluster: block reshape with remote resync job
  iio:adc:ti-ads124s08: Fix alignment and data leak issues.
  iio:adc:ti-ads124s08: Fix buffer being too long.
  iio:imu:bmi160: Fix too large a buffer.
  iio:pressure:mpl3115: Force alignment of buffer
  iio:magnetometer:mag3110: Fix alignment and data leak issues.
  iio:light:st_uvis25: Fix timestamp alignment and prevent data leak.
  iio:light:rpr0521: Fix timestamp alignment and prevent data leak.
  iio: adc: rockchip_saradc: fix missing clk_disable_unprepare() on error in rockchip_saradc_resume
  iio: buffer: Fix demux update
  scsi: lpfc: Re-fix use after free in lpfc_rq_buf_free()
  scsi: lpfc: Fix invalid sleeping context in lpfc_sli4_nvmet_alloc()
  scsi: qla2xxx: Fix crash during driver load on big endian machines
  mtd: rawnand: meson: fix meson_nfc_dma_buffer_release() arguments
  mtd: rawnand: qcom: Fix DMA sync on FLASH_STATUS register read
  mtd: parser: cmdline: Fix parsing of part-names with colons
  mtd: spinand: Fix OOB read
  soc: qcom: smp2p: Safely acquire spinlock without IRQs
  spi: atmel-quadspi: Fix AHB memory accesses
  spi: atmel-quadspi: Disable clock in probe error path
  spi: mt7621: Don't leak SPI master in probe error path
  spi: mt7621: Disable clock in probe error path
  spi: synquacer: Disable clock in probe error path
  spi: st-ssc4: Fix unbalanced pm_runtime_disable() in probe error path
  spi: sc18is602: Don't leak SPI master in probe error path
  spi: rb4xx: Don't leak SPI master in probe error path
  spi: pic32: Don't leak DMA channels in probe error path
  spi: mxic: Don't leak SPI master in probe error path
  spi: gpio: Don't leak SPI master in probe error path
  spi: fsl: fix use of spisel_boot signal on MPC8309
  spi: davinci: Fix use-after-free on unbind
  spi: atmel-quadspi: Fix use-after-free on unbind
  spi: spi-sh: Fix use-after-free on unbind
  spi: pxa2xx: Fix use-after-free on unbind
  drm/i915: Fix mismatch between misplaced vma check and vma insert
  drm/dp_aux_dev: check aux_dev before use in drm_dp_aux_dev_get_by_minor()
  drm/amd/display: Fix memory leaks in S3 resume
  platform/x86: mlx-platform: remove an unused variable
  jfs: Fix array index bounds check in dbAdjTree
  jffs2: Fix ignoring mounting options problem during remounting
  jffs2: Fix GC exit abnormally
  ubifs: wbuf: Don't leak kernel memory to flash
  SMB3: avoid confusing warning message on mount to Azure
  ceph: fix race in concurrent __ceph_remove_cap invocations
  um: Remove use of asprinf in umid.c
  ima: Don't modify file descriptor mode on the fly
  powerpc/powernv/memtrace: Fix crashing the kernel when enabling concurrently
  powerpc/powernv/memtrace: Don't leak kernel memory to user space
  powerpc/powernv/npu: Do not attempt NPU2 setup on POWER8NVL NPU
  powerpc/mm: Fix verification of MMU_FTR_TYPE_44x
  powerpc/8xx: Fix early debug when SMC1 is relocated
  powerpc/xmon: Change printk() to pr_cont()
  powerpc/feature: Add CPU_FTR_NOEXECUTE to G2_LE
  powerpc/rtas: Fix typo of ibm,open-errinjct in RTAS filter
  powerpc: Fix incorrect stw{, ux, u, x} instructions in __set_pte_at
  xprtrdma: Fix XDRBUF_SPARSE_PAGES support
  ARM: dts: at91: sama5d2: fix CAN message ram offset and size
  ARM: dts: pandaboard: fix pinmux for gpio user button of Pandaboard ES
  KVM: arm64: Introduce handling of AArch32 TTBCR2 traps
  ext4: fix deadlock with fs freezing and EA inodes
  ext4: fix a memory leak of ext4_free_data
  btrfs: trim: fix underflow in trim length to prevent access beyond device boundary
  btrfs: do not shorten unpin len for caching block groups
  USB: serial: keyspan_pda: fix write unthrottling
  USB: serial: keyspan_pda: fix tx-unthrottle use-after-free
  USB: serial: keyspan_pda: fix write-wakeup use-after-free
  USB: serial: keyspan_pda: fix stalled writes
  USB: serial: keyspan_pda: fix write deadlock
  USB: serial: keyspan_pda: fix dropped unthrottle interrupts
  USB: serial: digi_acceleport: fix write-wakeup deadlocks
  USB: serial: mos7720: fix parallel-port state restore
  cpuset: fix race between hotplug work and later CPU offline
  EDAC/amd64: Fix PCI component registration
  EDAC/i10nm: Use readl() to access MMIO registers
  crypto: arm/aes-ce - work around Cortex-A57/A72 silion errata
  crypto: ecdh - avoid unaligned accesses in ecdh_set_secret()
  powerpc/perf: Exclude kernel samples while counting events in user space.
  perf/x86/intel: Fix rtm_abort_event encoding on Ice Lake
  perf/x86/intel: Add event constraint for CYCLE_ACTIVITY.STALLS_MEM_ANY
  staging: comedi: mf6x4: Fix AI end-of-conversion detection
  ASoC: cx2072x: Fix doubly definitions of Playback and Capture streams
  binder: add flag to clear buffer on txn complete
  s390/dasd: fix list corruption of lcu list
  s390/dasd: fix list corruption of pavgroup group list
  s390/dasd: prevent inconsistent LCU device data
  s390/dasd: fix hanging device offline processing
  s390/kexec_file: fix diag308 subcode when loading crash kernel
  s390/smp: perform initial CPU reset also for SMT siblings
  ALSA: core: memalloc: add page alignment for iram
  ALSA: usb-audio: Disable sample read check if firmware doesn't give back
  ALSA: usb-audio: Add VID to support native DSD reproduction on FiiO devices
  ALSA: hda/realtek: Apply jack fixup for Quanta NL3
  ALSA: hda/realtek: Add quirk for MSI-GP73
  ALSA/hda: apply jack fixup for the Acer Veriton N4640G/N6640G/N2510G
  ALSA: pcm: oss: Fix a few more UBSAN fixes
  ALSA: hda/realtek - Add supported for more Lenovo ALC285 Headset Button
  ALSA: hda/realtek - Enable headset mic of ASUS Q524UQK with ALC255
  ALSA: hda/realtek - Enable headset mic of ASUS X430UN with ALC256
  ALSA: hda/realtek: make bass spk volume adjustable on a yoga laptop
  ALSA: hda/ca0132 - Fix AE-5 rear headphone pincfg.
  ALSA: hda: Fix regressions on clear and reconfig sysfs
  ACPI: PNP: compare the string length in the matching_id()
  Revert "ACPI / resources: Use AE_CTRL_TERMINATE to terminate resources walks"
  PM: ACPI: PCI: Drop acpi_pm_set_bridge_wakeup()
  ALSA: hda/ca0132 - Change Input Source enum strings.
  Input: cyapa_gen6 - fix out-of-bounds stack access
  media: ipu3-cio2: Make the field on subdev format V4L2_FIELD_NONE
  media: ipu3-cio2: Validate mbus format in setting subdev format
  media: ipu3-cio2: Serialise access to pad format
  media: ipu3-cio2: Return actual subdev format
  media: ipu3-cio2: Remove traces of returned buffers
  media: netup_unidvb: Don't leak SPI master in probe error path
  media: sunxi-cir: ensure IR is handled when it is continuous
  media: gspca: Fix memory leak in probe
  vfio/pci/nvlink2: Do not attempt NPU2 setup on POWER8NVL NPU
  Input: goodix - add upside-down quirk for Teclast X98 Pro tablet
  initramfs: fix clang build failure
  Input: cros_ec_keyb - send 'scancodes' in addition to key events
  drm/amdkfd: Fix leak in dmabuf import
  drm/amd/display: Prevent bandwidth overflow
  lwt: Disable BH too in run_lwt_bpf()
  fix namespaced fscaps when !CONFIG_SECURITY
  cfg80211: initialize rekey_data
  ARM: sunxi: Add machine match for the Allwinner V3 SoC
  perf probe: Fix memory leak when synthesizing SDT probes
  kconfig: fix return value of do_error_if()
  clk: sunxi-ng: Make sure divider tables have sentinel
  clk: s2mps11: Fix a resource leak in error handling paths in the probe function
  clk: at91: sam9x60: remove atmel,osc-bypass support
  virtio_ring: Fix two use after free bugs
  virtio_net: Fix error code in probe()
  virtio_ring: Cut and paste bugs in vring_create_virtqueue_packed()
  qlcnic: Fix error code in probe
  perf record: Fix memory leak when using '--user-regs=?' to list registers
  pwm: lp3943: Dynamically allocate PWM chip base
  pwm: zx: Add missing cleanup in error path
  clk: ti: Fix memleak in ti_fapll_synth_setup
  watchdog: coh901327: add COMMON_CLK dependency
  watchdog: qcom: Avoid context switch in restart handler
  libnvdimm/label: Return -ENXIO for no slot in __blk_label_update
  net: korina: fix return value
  net: allwinner: Fix some resources leak in the error handling path of the probe and in the remove function
  net: bcmgenet: Fix a resource leak in an error handling path in the probe functin
  lan743x: fix rx_napi_poll/interrupt ping-pong
  checkpatch: fix unescaped left brace
  mm: don't wake kswapd prematurely when watermark boosting is disabled
  sparc: fix handling of page table constructor failure
  powerpc/ps3: use dma_mapping_error()
  nfc: s3fwrn5: Release the nfc firmware
  RDMA/cma: Don't overwrite sgid_attr after device is released
  sunrpc: fix xs_read_xdr_buf for partial pages receive
  um: chan_xterm: Fix fd leak
  um: tty: Fix handling of close in tty lines
  um: Monitor error events in IRQ controller
  ubifs: Fix error return code in ubifs_init_authentication()
  watchdog: Fix potential dereferencing of null pointer
  watchdog: sprd: check busy bit before new loading rather than after that
  watchdog: sprd: remove watchdog disable from resume fail path
  watchdog: sirfsoc: Add missing dependency on HAS_IOMEM
  watchdog: armada_37xx: Add missing dependency on HAS_IOMEM
  irqchip/alpine-msi: Fix freeing of interrupts on allocation error path
  ASoC: wm_adsp: remove "ctl" from list on error in wm_adsp_create_control()
  mac80211: don't set set TDLS STA bandwidth wider than possible
  crypto: atmel-i2c - select CONFIG_BITREVERSE
  extcon: max77693: Fix modalias string
  mtd: rawnand: gpmi: Fix the random DMA timeout issue
  mtd: rawnand: meson: Fix a resource leak in init
  mtd: rawnand: gpmi: fix reference count leak in gpmi ops
  clk: tegra: Fix duplicated SE clock entry
  remoteproc: qcom: Fix potential NULL dereference in adsp_init_mmio()
  remoteproc: qcom: fix reference leak in adsp_start
  remoteproc: q6v5-mss: fix error handling in q6v5_pds_enable
  RDMA/core: Do not indicate device ready when device enablement fails
  can: m_can: m_can_config_endisable(): remove double clearing of clock stop request bit
  erofs: avoid using generic_block_bmap
  iwlwifi: mvm: hook up missing RX handlers
  s390/cio: fix use-after-free in ccw_device_destroy_console
  bus: fsl-mc: fix error return code in fsl_mc_object_allocate()
  platform/chrome: cros_ec_spi: Don't overwrite spi::mode
  x86/kprobes: Restore BTF if the single-stepping is cancelled
  nfs_common: need lock during iterate through the list
  nfsd: Fix message level for normal termination
  speakup: fix uninitialized flush_lock
  usb: oxu210hp-hcd: Fix memory leak in oxu_create
  usb: ehci-omap: Fix PM disable depth umbalance in ehci_hcd_omap_probe
  powerpc/mm: sanity_check_fault() should work for all, not only BOOK3S
  ASoC: amd: change clk_get() to devm_clk_get() and add missed checks
  drm/mediatek: avoid dereferencing a null hdmi_phy on an error message
  powerpc/pseries/hibernation: remove redundant cacheinfo update
  powerpc/pseries/hibernation: drop pseries_suspend_begin() from suspend ops
  platform/x86: mlx-platform: Fix item counter assignment for MSN2700, MSN24xx systems
  scsi: fnic: Fix error return code in fnic_probe()
  seq_buf: Avoid type mismatch for seq_buf_init
  scsi: pm80xx: Fix error return in pm8001_pci_probe()
  scsi: qedi: Fix missing destroy_workqueue() on error in __qedi_probe
  arm64: dts: meson: g12a: x96-max: fix PHY deassert timing requirements
  ARM: dts: meson: fix PHY deassert timing requirements
  arm64: dts: meson: fix PHY deassert timing requirements
  Bluetooth: btmtksdio: Add the missed release_firmware() in mtk_setup_firmware()
  Bluetooth: btusb: Add the missed release_firmware() in btusb_mtk_setup_firmware()
  cpufreq: scpi: Add missing MODULE_ALIAS
  cpufreq: loongson1: Add missing MODULE_ALIAS
  cpufreq: sun50i: Add missing MODULE_DEVICE_TABLE
  cpufreq: st: Add missing MODULE_DEVICE_TABLE
  cpufreq: qcom: Add missing MODULE_DEVICE_TABLE
  cpufreq: mediatek: Add missing MODULE_DEVICE_TABLE
  cpufreq: highbank: Add missing MODULE_DEVICE_TABLE
  cpufreq: ap806: Add missing MODULE_DEVICE_TABLE
  clocksource/drivers/arm_arch_timer: Correct fault programming of CNTKCTL_EL1.EVNTI
  clocksource/drivers/arm_arch_timer: Use stable count reader in erratum sne
  phy: renesas: rcar-gen3-usb2: disable runtime pm in case of failure
  dm ioctl: fix error return code in target_message
  ASoC: jz4740-i2s: add missed checks for clk_get()
  net/mlx5: Properly convey driver version to firmware
  MIPS: Don't round up kernel sections size for memblock_add()
  memstick: r592: Fix error return in r592_probe()
  arm64: dts: rockchip: Fix UART pull-ups on rk3328
  pinctrl: falcon: add missing put_device() call in pinctrl_falcon_probe()
  bpf: Fix bpf_put_raw_tracepoint()'s use of __module_address()
  ARM: dts: at91: sama5d2: map securam as device
  iio: hrtimer-trigger: Mark hrtimer to expire in hard interrupt context
  clocksource/drivers/cadence_ttc: Fix memory leak in ttc_setup_clockevent()
  clocksource/drivers/orion: Add missing clk_disable_unprepare() on error path
  powerpc/64: Fix an EMIT_BUG_ENTRY in head_64.S
  powerpc/perf: Fix crash with is_sier_available when pmu is not set
  media: saa7146: fix array overflow in vidioc_s_audio()
  hwmon: (ina3221) Fix PM usage counter unbalance in ina3221_write_enable
  vfio-pci: Use io_remap_pfn_range() for PCI IO memory
  selftests/seccomp: Update kernel config
  NFS: switch nfsiod to be an UNBOUND workqueue.
  lockd: don't use interval-based rebinding over TCP
  net: sunrpc: Fix 'snprintf' return value check in 'do_xprt_debugfs'
  NFSv4: Fix the alignment of page data in the getdeviceinfo reply
  SUNRPC: xprt_load_transport() needs to support the netid "rdma6"
  NFSv4.2: condition READDIR's mask for security label based on LSM state
  SUNRPC: rpc_wake_up() should wake up tasks in the correct order
  ath10k: Release some resources in an error handling path
  ath10k: Fix an error handling path
  ath10k: Fix the parsing error in service available event
  platform/x86: dell-smbios-base: Fix error return code in dell_smbios_init
  ARM: dts: at91: at91sam9rl: fix ADC triggers
  soc: amlogic: canvas: add missing put_device() call in meson_canvas_get()
  arm64: dts: meson-sm1: fix typo in opp table
  arm64: dts: meson: fix spi-max-frequency on Khadas VIM2
  PCI: iproc: Fix out-of-bound array accesses
  PCI: Fix overflow in command-line resource alignment requests
  PCI: Bounds-check command-line resource alignment requests
  arm64: dts: qcom: c630: Polish i2c-hid devices
  arm64: dts: ls1028a: fix ENETC PTP clock input
  genirq/irqdomain: Don't try to free an interrupt that has no mapping
  power: supply: bq24190_charger: fix reference leak
  power: supply: axp288_charger: Fix HP Pavilion x2 10 DMI matching
  arm64: dts: rockchip: Set dr_mode to "host" for OTG on rk3328-roc-cc
  arm64: dts: armada-3720-turris-mox: update ethernet-phy handle name
  ARM: dts: Remove non-existent i2c1 from 98dx3236
  HSI: omap_ssi: Don't jump to free ID in ssi_add_controller()
  slimbus: qcom-ngd-ctrl: Avoid sending power requests without QMI
  media: max2175: fix max2175_set_csm_mode() error code
  mips: cdmm: fix use-after-free in mips_cdmm_bus_discover
  media: imx214: Fix stop streaming
  samples: bpf: Fix lwt_len_hist reusing previous BPF map
  platform/x86: mlx-platform: Remove PSU EEPROM from MSN274x platform configuration
  platform/x86: mlx-platform: Remove PSU EEPROM from default platform configuration
  media: siano: fix memory leak of debugfs members in smsdvb_hotplug
  arm64: tegra: Fix DT binding for IO High Voltage entry
  dmaengine: mv_xor_v2: Fix error return code in mv_xor_v2_probe()
  cw1200: fix missing destroy_workqueue() on error in cw1200_init_common
  rsi: fix error return code in rsi_reset_card()
  qtnfmac: fix error return code in qtnf_pcie_probe()
  orinoco: Move context allocation after processing the skb
  mmc: pxamci: Fix error return code in pxamci_probe
  ARM: dts: at91: sama5d3_xplained: add pincontrol for USB Host
  ARM: dts: at91: sama5d4_xplained: add pincontrol for USB Host
  memstick: fix a double-free bug in memstick_check
  RDMA/cxgb4: Validate the number of CQEs
  clk: meson: Kconfig: fix dependency for G12A
  Input: omap4-keypad - fix runtime PM error handling
  drivers: soc: ti: knav_qmss_queue: Fix error return code in knav_queue_probe
  soc: ti: Fix reference imbalance in knav_dma_probe
  soc: ti: knav_qmss: fix reference leak in knav_queue_probe
  spi: fix resource leak for drivers without .remove callback
  crypto: omap-aes - Fix PM disable depth imbalance in omap_aes_probe
  crypto: crypto4xx - Replace bitwise OR with logical OR in crypto4xx_build_pd
  EDAC/mce_amd: Use struct cpuinfo_x86.cpu_die_id for AMD NodeId
  powerpc/feature: Fix CPU_FTRS_ALWAYS by removing CPU_FTRS_GENERIC_32
  powerpc: Avoid broken GCC __attribute__((optimize))
  selftests/bpf: Fix broken riscv build
  spi: mxs: fix reference leak in mxs_spi_probe
  usb/max3421: fix return error code in max3421_probe()
  Input: ads7846 - fix unaligned access on 7845
  Input: ads7846 - fix integer overflow on Rt calculation
  Input: ads7846 - fix race that causes missing releases
  drm/omap: dmm_tiler: fix return error code in omap_dmm_probe()
  video: fbdev: atmel_lcdfb: fix return error code in atmel_lcdfb_of_init()
  media: solo6x10: fix missing snd_card_free in error handling case
  scsi: core: Fix VPD LUN ID designator priorities
  ASoC: meson: fix COMPILE_TEST error
  media: v4l2-fwnode: Return -EINVAL for invalid bus-type
  media: mtk-vcodec: add missing put_device() call in mtk_vcodec_init_enc_pm()
  media: mtk-vcodec: add missing put_device() call in mtk_vcodec_release_dec_pm()
  media: mtk-vcodec: add missing put_device() call in mtk_vcodec_init_dec_pm()
  media: tm6000: Fix sizeof() mismatches
  staging: gasket: interrupt: fix the missed eventfd_ctx_put() in gasket_interrupt.c
  staging: greybus: codecs: Fix reference counter leak in error handling
  crypto: qat - fix status check in qat_hal_put_rel_rd_xfer()
  MIPS: BCM47XX: fix kconfig dependency bug for BCM47XX_BCMA
  RDMa/mthca: Work around -Wenum-conversion warning
  ASoC: arizona: Fix a wrong free in wm8997_probe
  spi: sprd: fix reference leak in sprd_spi_remove
  ASoC: wm8998: Fix PM disable depth imbalance on error
  selftest/bpf: Add missed ip6ip6 test back
  mwifiex: fix mwifiex_shutdown_sw() causing sw reset failure
  spi: bcm63xx-hsspi: fix missing clk_disable_unprepare() on error in bcm63xx_hsspi_resume
  spi: tegra114: fix reference leak in tegra spi ops
  spi: tegra20-sflash: fix reference leak in tegra_sflash_resume
  spi: tegra20-slink: fix reference leak in slink ops of tegra20
  spi: mt7621: fix missing clk_disable_unprepare() on error in mt7621_spi_probe
  spi: spi-ti-qspi: fix reference leak in ti_qspi_setup
  Bluetooth: hci_h5: fix memory leak in h5_close
  Bluetooth: Fix null pointer dereference in hci_event_packet()
  arm64: dts: exynos: Correct psci compatible used on Exynos7
  arm64: dts: exynos: Include common syscon restart/poweroff for Exynos7
  brcmfmac: Fix memory leak for unpaired brcmf_{alloc/free}
  spi: stm32: fix reference leak in stm32_spi_resume
  selinux: fix inode_doinit_with_dentry() LABEL_INVALID error handling
  ASoC: pcm: DRAIN support reactivation
  spi: spi-mem: fix reference leak in spi_mem_access_start
  drm/msm/dsi_pll_10nm: restore VCO rate during restore_state
  f2fs: call f2fs_get_meta_page_retry for nat page
  spi: img-spfi: fix reference leak in img_spfi_resume
  powerpc/64: Set up a kernel stack for secondaries before cpu_restore()
  drm/amdgpu: fix build_coefficients() argument
  ARM: dts: aspeed: tiogapass: Remove vuart
  ASoC: sun4i-i2s: Fix lrck_period computation for I2S justified mode
  crypto: inside-secure - Fix sizeof() mismatch
  crypto: talitos - Fix return type of current_desc_hdr()
  crypto: talitos - Endianess in current_desc_hdr()
  drm/amdgpu: fix incorrect enum type
  sched: Reenable interrupts in do_sched_yield()
  sched/deadline: Fix sched_dl_global_validate()
  x86/apic: Fix x2apic enablement without interrupt remapping
  ARM: p2v: fix handling of LPAE translation in BE mode
  x86/mm/ident_map: Check for errors from ident_pud_init()
  RDMA/rxe: Compute PSN windows correctly
  ARM: dts: aspeed: s2600wf: Fix VGA memory region location
  selinux: fix error initialization in inode_doinit_with_dentry()
  rtc: pcf2127: fix pcf2127_nvmem_read/write() returns
  RDMA/bnxt_re: Set queue pair state when being queried
  Revert "i2c: i2c-qcom-geni: Fix DMA transfer race"
  soc: qcom: geni: More properly switch to DMA mode
  soc: mediatek: Check if power domains can be powered on at boot time
  soc: renesas: rmobile-sysc: Fix some leaks in rmobile_init_pm_domains()
  arm64: dts: renesas: cat875: Remove rxc-skew-ps from ethernet-phy node
  arm64: dts: renesas: hihope-rzg2-ex: Drop rxc-skew-ps from ethernet-phy node
  drm/tve200: Fix handling of platform_get_irq() error
  drm/mcde: Fix handling of platform_get_irq() error
  drm/aspeed: Fix Kconfig warning & subsequent build errors
  drm/gma500: fix double free of gma_connector
  md: fix a warning caused by a race between concurrent md_ioctl()s
  crypto: af_alg - avoid undefined behavior accessing salg_name
  media: msi2500: assign SPI bus number dynamically
  quota: Sanity-check quota file headers on load
  Bluetooth: Fix slab-out-of-bounds read in hci_le_direct_adv_report_evt()
  serial_core: Check for port state when tty is in error state
  HID: i2c-hid: add Vero K147 to descriptor override
  scsi: megaraid_sas: Check user-provided offsets
  coresight: etb10: Fix possible NULL ptr dereference in etb_enable_perf()
  coresight: tmc-etr: Fix barrier packet insertion for perf buffer
  coresight: tmc-etr: Check if page is valid before dma_map_page()
  coresight: tmc-etf: Fix NULL ptr dereference in tmc_enable_etf_sink_perf()
  ARM: dts: exynos: fix USB 3.0 pins supply being turned off on Odroid XU
  ARM: dts: exynos: fix USB 3.0 VBUS control and over-current pins on Exynos5410
  ARM: dts: exynos: fix roles of USB 3.0 ports on Odroid XU
  usb: chipidea: ci_hdrc_imx: Pass DISABLE_DEVICE_STREAMING flag to imx6ul
  USB: gadget: f_rndis: fix bitrate for SuperSpeed and above
  usb: gadget: f_fs: Re-use SS descriptors for SuperSpeedPlus
  USB: gadget: f_midi: setup SuperSpeed Plus descriptors
  USB: gadget: f_acm: add support for SuperSpeed Plus
  USB: serial: option: add interface-number sanity check to flag handling
  usb: mtu3: fix memory corruption in mtu3_debugfs_regset()
  soc/tegra: fuse: Fix index bug in get_process_id
  kbuild: avoid split lines in .mod files
  perf/x86/intel: Check PEBS status correctly
  drm/amd/display: Init clock value by current vbios CLKs
  iwlwifi: pcie: add one missing entry for AX210
  dm table: Remove BUG_ON(in_interrupt())
  scsi: mpt3sas: Increase IOCInit request timeout to 30s
  vxlan: Copy needed_tailroom from lowerdev
  vxlan: Add needed_headroom for lower device
  arm64: syscall: exit userspace before unmasking exceptions
  habanalabs: put devices before driver removal
  drm/tegra: sor: Disable clocks on error in tegra_sor_init()
  kernel/cpu: add arch override for clear_tasks_mm_cpumask() mm handling
  drm/tegra: replace idr_init() by idr_init_base()
  net: mvpp2: add mvpp2_phylink_to_port() helper
  selftests: fix poll error in udpgro.sh
  ixgbe: avoid premature Rx buffer reuse
  i40e: avoid premature Rx buffer reuse
  i40e: optimise prefetch page refcount
  i40e: Refactor rx_bi accesses
  RDMA/cm: Fix an attempt to use non-valid pointer when cleaning timewait
  selftests/bpf/test_offload.py: Reset ethtool features after failed setting
  netfilter: nft_ct: Remove confirmation check for NFT_CT_ID
  gpio: eic-sprd: break loop when getting NULL device resource
  Revert "gpio: eic-sprd: Use devm_platform_ioremap_resource()"
  afs: Fix memory leak when mounting with multiple source parameters
  netfilter: nft_dynset: fix timeouts later than 23 days
  netfilter: nft_compat: make sure xtables destructors have run
  netfilter: x_tables: Switch synchronization to RCU
  pinctrl: aspeed: Fix GPIO requests on pass-through banks
  blk-mq: In blk_mq_dispatch_rq_list() "no budget" is a reason to kick
  block: factor out requeue handling from dispatch code
  block: Simplify REQ_OP_ZONE_RESET_ALL handling
  clk: renesas: r9a06g032: Drop __packed for portability
  can: softing: softing_netdev_open(): fix error handling
  xsk: Replace datagram_poll by sock_poll_wait
  xsk: Fix xsk_poll()'s return type
  scsi: bnx2i: Requires MMU
  gpio: mvebu: fix potential user-after-free on probe
  gpio: zynq: fix reference leak in zynq_gpio functions
  PM: runtime: Add pm_runtime_resume_and_get to deal with usage counter
  ARM: dts: imx6qdl-kontron-samx6i: fix I2C_PM scl pin
  ARM: dts: imx6qdl-wandboard-revd1: Remove PAD_GPIO_6 from enetgrp
  ARM: dts: sun7i: pcduino3-nano: enable RGMII RX/TX delay on PHY
  ARM: dts: sun8i: v3s: fix GIC node memory range
  pinctrl: baytrail: Avoid clearing debounce value when turning it off
  pinctrl: merrifield: Set default bias in case no particular value given
  ARM: dts: sun8i: v40: bananapi-m2-berry: Fix ethernet node
  ARM: dts: sun8i: r40: bananapi-m2-berry: Fix dcdc1 regulator
  ARM: dts: sun7i: bananapi: Enable RGMII RX/TX delay on Ethernet PHY
  Linux 5.4.85
  x86/resctrl: Fix incorrect local bandwidth when mba_sc is enabled
  x86/resctrl: Remove unused struct mbm_state::chunks_bw
  membarrier: Explicitly sync remote cores when SYNC_CORE is requested
  Revert "selftests/ftrace: check for do_sys_openat2 in user-memory test"
  KVM: mmu: Fix SPTE encoding of MMIO generation upper half
  serial: 8250_omap: Avoid FIFO corruption caused by MDR1 access
  ALSA: pcm: oss: Fix potential out-of-bounds shift
  USB: sisusbvga: Make console support depend on BROKEN
  USB: UAS: introduce a quirk to set no_write_same
  xhci-pci: Allow host runtime PM as default for Intel Alpine Ridge LP
  xhci: Give USB2 ports time to enter U3 in bus suspend
  ALSA: usb-audio: Fix control 'access overflow' errors from chmap
  ALSA: usb-audio: Fix potential out-of-bounds shift
  USB: add RESET_RESUME quirk for Snapscan 1212
  USB: dummy-hcd: Fix uninitialized array use in init()
  ktest.pl: If size of log is too big to email, email error message
  net: stmmac: delete the eee_ctrl_timer after napi disabled
  net: stmmac: dwmac-meson8b: fix mask definition of the m250_sel mux
  net: ll_temac: Fix potential NULL dereference in temac_probe()
  net/mlx4_en: Handle TX error CQE
  lan743x: fix for potential NULL pointer dereference with bare card
  net/mlx4_en: Avoid scheduling restart task if it is already running
  tcp: fix cwnd-limited bug for TSO deferral where we send nothing
  tcp: select sane initial rcvq_space.space for big MSS
  net: stmmac: free tx skb buffer in stmmac_resume()
  bridge: Fix a deadlock when enabling multicast snooping
  enetc: Fix reporting of h/w packet counters
  udp: fix the proto value passed to ip_protocol_deliver_rcu for the segments
  net: hns3: remove a misused pragma packed
  vrf: packets with lladdr src needs dst at input with orig_iif when needs strict
  net: bridge: vlan: fix error return code in __vlan_add()
  mac80211: mesh: fix mesh_pathtbl_init() error path
  ipv4: fix error return code in rtm_to_fib_config()
  ptrace: Prevent kernel-infoleak in ptrace_get_syscall_info()
  Linux 5.4.84
  compiler.h: fix barrier_data() on clang
  mm/zsmalloc.c: drop ZSMALLOC_PGTABLE_MAPPING
  x86/apic/vector: Fix ordering in vector assignment
  x86/membarrier: Get rid of a dubious optimization
  x86/mm/mem_encrypt: Fix definition of PMD_FLAGS_DEC_WP
  scsi: be2iscsi: Revert "Fix a theoretical leak in beiscsi_create_eqs()"
  proc: use untagged_addr() for pagemap_read addresses
  kbuild: avoid static_assert for genksyms
  drm/i915/display/dp: Compute the correct slice count for VDSC on DP
  mmc: block: Fixup condition for CMD13 polling for RPMB requests
  pinctrl: amd: remove debounce filter setting in IRQ type setting
  Input: i8042 - add Acer laptops to the i8042 reset list
  Input: cm109 - do not stomp on control URB
  ktest.pl: Fix incorrect reboot for grub2bls
  can: m_can: m_can_dev_setup(): add support for bosch mcan version 3.3.0
  platform/x86: touchscreen_dmi: Add info for the Irbis TW118 tablet
  platform/x86: intel-vbtn: Support for tablet mode on HP Pavilion 13 x360 PC
  platform/x86: acer-wmi: add automatic keyboard background light toggle key as KEY_LIGHTS_TOGGLE
  platform/x86: thinkpad_acpi: Add BAT1 is primary battery quirk for Thinkpad Yoga 11e 4th gen
  platform/x86: thinkpad_acpi: Do not report SW_TABLET_MODE on Yoga 11e
  arm64: tegra: Disable the ACONNECT for Jetson TX2
  soc: fsl: dpio: Get the cpumask through cpumask_of(cpu)
  spi: spi-nxp-fspi: fix fspi panic by unexpected interrupts
  irqchip/gic-v3-its: Unconditionally save/restore the ITS state on suspend
  ibmvnic: skip tx timeout reset while in resetting
  interconnect: qcom: qcs404: Remove GPU and display RPM IDs
  scsi: ufs: Make sure clk scaling happens only when HBA is runtime ACTIVE
  ARC: stack unwinding: don't assume non-current task is sleeping
  arm64: dts: broadcom: clear the warnings caused by empty dma-ranges
  powerpc: Drop -me200 addition to build flags
  iwlwifi: mvm: fix kernel panic in case of assert during CSA
  iwlwifi: pcie: set LTR to avoid completion timeout
  arm64: dts: rockchip: Assign a fixed index to mmc devices on rk3399 boards.
  iwlwifi: pcie: limit memory read spin time
  x86/lib: Change .weak to SYM_FUNC_START_WEAK for arch/x86/lib/mem*_64.S
  Kbuild: do not emit debug info for assembly with LLVM_IAS=1
  ANDROID: GKI: bring back irq_create_mapping()
  Linux 5.4.83
  Revert "geneve: pull IP header before ECN decapsulation"
  x86/insn-eval: Use new for_each_insn_prefix() macro to loop over prefixes bytes
  netfilter: nftables_offload: set address type in control dissector
  netfilter: nf_tables: avoid false-postive lockdep splat
  Input: i8042 - fix error return code in i8042_setup_aux()
  dm writecache: remove BUG() and fail gracefully instead
  i2c: qup: Fix error return code in qup_i2c_bam_schedule_desc()
  rtw88: debug: Fix uninitialized memory in debugfs code
  ASoC: wm_adsp: fix error return code in wm_adsp_load()
  tipc: fix a deadlock when flushing scheduled work
  netfilter: ipset: prevent uninit-value in hash_ip6_add
  gfs2: check for empty rgrp tree in gfs2_ri_update
  can: af_can: can_rx_unregister(): remove WARN() statement from list operation sanity check
  lib/syscall: fix syscall registers retrieval on 32-bit platforms
  tracing: Fix userstacktrace option for instances
  iommu/amd: Set DTE[IntTabLen] to represent 512 IRTEs
  spi: bcm2835: Release the DMA channel if probe fails after dma_init
  i2c: imx: Check for I2SR_IAL after every byte
  i2c: imx: Fix reset of I2SR_IAL flag
  speakup: Reject setting the speakup line discipline outside of speakup
  mm/swapfile: do not sleep with a spin lock held
  mm: list_lru: set shrinker map bit when child nr_items is not zero
  coredump: fix core_pattern parse error
  x86/uprobes: Do not use prefixes.nbytes when looping over prefixes.bytes
  dm: remove invalid sparse __acquires and __releases annotations
  dm: fix bug with RCU locking in dm_blk_report_zones
  powerpc/pseries: Pass MSI affinity to irq_create_mapping()
  genirq/irqdomain: Add an irq_create_mapping_affinity() function
  powerpc/64s/powernv: Fix memory corruption when saving SLB entries on MCE
  dm writecache: fix the maximum number of arguments
  scsi: mpt3sas: Fix ioctl timeout
  drm/i915/gt: Program mocs:63 for cache eviction on gen9
  thunderbolt: Fix use-after-free in remove_unplugged_switch()
  i2c: imx: Don't generate STOP condition if arbitration has been lost
  cifs: fix potential use-after-free in cifs_echo_request()
  cifs: allow syscalls to be restarted in __smb_send_rqst()
  ftrace: Fix updating FTRACE_FL_TRAMP
  ALSA: hda/generic: Add option to enforce preferred_dacs pairs
  ALSA: hda/realtek - Add new codec supported for ALC897
  ALSA: hda/realtek: Enable headset of ASUS UX482EG & B9400CEA with ALC294
  ALSA: hda/realtek: Add mute LED quirk to yet another HP x360 model
  ALSA: hda/realtek: Fix bass speaker DAC assignment on Asus Zephyrus G14
  tty: Fix ->session locking
  tty: Fix ->pgrp locking in tiocspgrp()
  USB: serial: option: fix Quectel BG96 matching
  USB: serial: option: add support for Thales Cinterion EXS82
  USB: serial: option: add Fibocom NL668 variants
  USB: serial: ch341: sort device-id entries
  USB: serial: ch341: add new Product ID for CH341A
  USB: serial: kl5kusb105: fix memleak on open
  usb: gadget: f_fs: Use local copy of descriptors for userspace copy
  Partially revert bpf: Zero-fill re-used per-cpu map element
  pinctrl: baytrail: Fix pin being driven low for a while on gpiod_get(..., GPIOD_OUT_HIGH)
  pinctrl: baytrail: Replace WARN with dev_info_once when setting direct-irq pin to output
  Linux 5.4.82
  RDMA/i40iw: Address an mmap handler exploit in i40iw
  tracing: Remove WARN_ON in start_thread()
  Input: i8042 - add ByteSpeed touchpad to noloop table
  Input: xpad - support Ardwiino Controllers
  ALSA: usb-audio: US16x08: fix value count for level meters
  net/mlx5: Fix wrong address reclaim when command interface is down
  net/mlx5: DR, Proper handling of unsupported Connect-X6DX SW steering
  net/sched: act_mpls: ensure LSE is pullable before reading it
  net: openvswitch: ensure LSE is pullable before reading it
  net: skbuff: ensure LSE is pullable before decrementing the MPLS ttl
  net: mvpp2: Fix error return code in mvpp2_open()
  chelsio/chtls: fix a double free in chtls_setkey()
  vxlan: fix error return code in __vxlan_dev_create()
  net: pasemi: fix error return code in pasemi_mac_open()
  cxgb3: fix error return code in t3_sge_alloc_qset()
  net/x25: prevent a couple of overflows
  net: ip6_gre: set dev->hard_header_len when using header_ops
  geneve: pull IP header before ECN decapsulation
  inet_ecn: Fix endianness of checksum update when setting ECT(1)
  ibmvnic: Fix TX completion error handling
  ibmvnic: Ensure that SCRQ entry reads are correctly ordered
  chelsio/chtls: fix panic during unload reload chtls
  dt-bindings: net: correct interrupt flags in examples
  ipv4: Fix tos mask in inet_rtm_getroute()
  netfilter: bridge: reset skb->pkt_type after NF_INET_POST_ROUTING traversal
  sched/fair: Fix unthrottle_cfs_rq() for leaf_cfs_rq list
  ima: extend boot_aggregate with kernel measurements
  staging/octeon: fix up merge error
  bonding: wait for sysfs kobject destruction before freeing struct slave
  usbnet: ipheth: fix connectivity with iOS 14
  tun: honor IOCB_NOWAIT flag
  tcp: Set INET_ECN_xmit configuration in tcp_reinit_congestion_control
  sock: set sk_err to ee_errno on dequeue from errq
  rose: Fix Null pointer dereference in rose_send_frame()
  net/tls: Protect from calling tls_dev_del for TLS RX twice
  net/tls: missing received data after fast remote close
  net/af_iucv: set correct sk_protocol for child sockets
  ipv6: addrlabel: fix possible memory leak in ip6addrlbl_net_init
  devlink: Hold rtnl lock while reading netdev attributes
  Linux 5.4.81
  ASoC: Intel: Skylake: Automatic DMIC format configuration according to information from NHLT
  ASoC: Intel: Multiple I/O PCM format support for pipe
  ASoC: Intel: Skylake: Await purge request ack on CNL
  ASoC: Intel: Allow for ROM init retry on CNL platforms
  ASoC: Intel: Skylake: Shield against no-NHLT configurations
  ASoC: Intel: Skylake: Enable codec wakeup during chip init
  ASoC: Intel: Skylake: Select hda configuration permissively
  ASoC: Intel: Skylake: Remove superfluous chip initialization
  USB: core: Fix regression in Hercules audio card
  x86/resctrl: Add necessary kernfs_put() calls to prevent refcount leak
  x86/resctrl: Remove superfluous kernfs_get() calls to prevent refcount leak
  x86/speculation: Fix prctl() when spectre_v2_user={seccomp,prctl},ibpb
  x86/mce: Do not overwrite no_way_out if mce_end() fails
  irqchip/exiu: Fix the index of fwspec for IRQ type
  usb: gadget: Fix memleak in gadgetfs_fill_super
  USB: quirks: Add USB_QUIRK_DISCONNECT_SUSPEND quirk for Lenovo A630Z TIO built-in usb-audio card
  usb: gadget: f_midi: Fix memleak in f_midi_alloc
  USB: core: Change %pK for __user pointers to %px
  spi: bcm2835aux: Restore err assignment in bcm2835aux_spi_probe
  perf probe: Fix to die_entrypc() returns error correctly
  perf stat: Use proper cpu for shadow stats
  can: m_can: fix nominal bitiming tseg2 min for version >= 3.1
  can: m_can: m_can_open(): remove IRQF_TRIGGER_FALLING from request_threaded_irq()'s flags
  RDMA/hns: Bugfix for memory window mtpt configuration
  RDMA/hns: Fix retry_cnt and rnr_cnt when querying QP
  platform/x86: toshiba_acpi: Fix the wrong variable assignment
  platform/x86: thinkpad_acpi: Send tablet mode switch at wakeup time
  can: gs_usb: fix endianess problem with candleLight firmware
  efi: EFI_EARLYCON should depend on EFI
  efivarfs: revert "fix memory leak in efivarfs_create()"
  arm64: tegra: Wrong AON HSP reg property size
  optee: add writeback to valid memory type
  ibmvnic: fix NULL pointer dereference in ibmvic_reset_crq
  ibmvnic: fix NULL pointer dereference in reset_sub_crq_queues
  net: ena: set initial DMA width to avoid intel iommu issue
  nfc: s3fwrn5: use signed integer for parsing GPIO numbers
  i40e: Fix removing driver while bare-metal VFs pass traffic
  IB/mthca: fix return value of error branch in mthca_init_cq()
  powerpc/64s: Fix allnoconfig build since uaccess flush
  ibmvnic: notify peers when failover and migration happen
  ibmvnic: fix call_netdevice_notifiers in do_reset
  s390/qeth: fix tear down of async TX buffers
  s390/qeth: fix af_iucv notification race
  s390/qeth: make af_iucv TX notification call more robust
  cxgb4: fix the panic caused by non smac rewrite
  bnxt_en: Release PCI regions when DMA mask setup fails during probe.
  video: hyperv_fb: Fix the cache type when mapping the VRAM
  bnxt_en: fix error return code in bnxt_init_board()
  bnxt_en: fix error return code in bnxt_init_one()
  scsi: ufs: Fix race between shutdown and runtime resume flow
  ARM: dts: dra76x: m_can: fix order of clocks
  arch: pgtable: define MAX_POSSIBLE_PHYSMEM_BITS where needed
  batman-adv: set .owner to THIS_MODULE
  iwlwifi: mvm: write queue_sync_state only for sync
  phy: tegra: xusb: Fix dangling pointer on probe failure
  ARM: OMAP2+: Manage MPU state properly for omap_enter_idle_coupled()
  bus: ti-sysc: Fix bogus resetdone warning on enable for cpsw
  net: dsa: mv88e6xxx: Wait for EEPROM done after HW reset
  xtensa: uaccess: Add missing __user to strncpy_from_user() prototype
  perf/x86: fix sysfs type mismatches
  scsi: target: iscsi: Fix cmd abort fabric stop race
  scsi: libiscsi: Fix NOP race condition
  dmaengine: pl330: _prep_dma_memcpy: Fix wrong burst size
  vhost scsi: fix cmd completion race
  nvme: free sq/cq dbbuf pointers when dbbuf set fails
  proc: don't allow async path resolution of /proc/self components
  HID: Add Logitech Dinovo Edge battery quirk
  HID: logitech-hidpp: Add HIDPP_CONSUMER_VENDOR_KEYS quirk for the Dinovo Edge
  x86/xen: don't unbind uninitialized lock_kicker_irq
  dmaengine: xilinx_dma: use readl_poll_timeout_atomic variant
  HID: add HID_QUIRK_INCREMENT_USAGE_ON_DUPLICATE for Gamevice devices
  staging: ralink-gdma: fix kconfig dependency bug for DMA_RALINK
  HID: hid-sensor-hub: Fix issue with devices with no report ID
  Input: i8042 - allow insmod to succeed on devices without an i8042 controller
  HID: add support for Sega Saturn
  HID: cypress: Support Varmilo Keyboards' media hotkeys
  HID: ite: Replace ABS_MISC 120/121 events with touchpad on/off keypresses
  HID: uclogic: Add ID for Trust Flex Design Tablet
  arm64: pgtable: Ensure dirty bit is preserved across pte_wrprotect()
  arm64: pgtable: Fix pte_accessible()
  trace: fix potenial dangerous pointer
  KVM: x86: Fix split-irqchip vs interrupt injection window request
  KVM: x86: handle !lapic_in_kernel case in kvm_cpu_*_extint
  KVM: arm64: vgic-v3: Drop the reporting of GICR_TYPER.Last for userspace
  KVM: PPC: Book3S HV: XIVE: Fix possible oops when accessing ESB page
  cifs: fix a memleak with modefromsid
  smb3: Handle error case during offload read path
  smb3: Avoid Mid pending list corruption
  smb3: Call cifs reconnect from demultiplex thread
  wireless: Use linux/stddef.h instead of stddef.h
  btrfs: fix lockdep splat when reading qgroup config on mount
  btrfs: don't access possibly stale fs_info data for printing duplicate device
  btrfs: tree-checker: add missing returns after data_ref alignment checks
  btrfs: tree-checker: add missing return after error in root_item
  netfilter: clear skb->next in NF_HOOK_LIST()
  ipv4: use IS_ENABLED instead of ifdef
  spi: bcm2835: Fix use-after-free on unbind
  spi: bcm-qspi: Fix use-after-free on unbind
  Revert "Exempt multicast addresses from five-second neighbor lifetime"
  Linux 5.4.80
  sched/fair: Fix overutilized update in enqueue_task_fair()
  mm, page_alloc: skip ->waternark_boost for atomic order-0 allocations
  mm/userfaultfd: do not access vma->vm_mm after calling handle_userfault()
  mm: memcg/slab: fix root memcg vmstats
  x86/microcode/intel: Check patch signature before saving microcode for early loading
  seccomp: Set PF_SUPERPRIV when checking capability
  ptrace: Set PF_SUPERPRIV when checking capability
  mmc: sdhci-pci: Prefer SDR25 timing for High Speed mode for BYT-based Intel controllers
  drm/i915: Handle max_bpc==16
  drm/amd/display: Add missing pflip irq for dcn2.0
  Drivers: hv: vmbus: Allow cleanup of VMBUS_CONNECT_CPU if disconnected
  s390/dasd: fix null pointer dereference for ERP requests
  s390/cpum_sf.c: fix file permission for cpum_sfb_size
  mac80211: free sta in sta_info_insert_finish() on errors
  mac80211: minstrel: fix tx status processing corner case
  mac80211: minstrel: remove deferred sampling code
  xtensa: disable preemption around cache alias management calls
  xtensa: fix TLBTEMP area placement
  regulator: workaround self-referent regulators
  regulator: avoid resolve_supply() infinite recursion
  regulator: fix memory leak with repeated set_machine_constraints()
  regulator: pfuze100: limit pfuze-support-disable-sw to pfuze{100,200}
  spi: bcm2835aux: Fix use-after-free on unbind
  spi: npcm-fiu: Don't leak SPI master in probe error path
  spi: Introduce device-managed SPI controller allocation
  spi: lpspi: Fix use-after-free on unbind
  iio: adc: mediatek: fix unset field
  iio: accel: kxcjk1013: Add support for KIOX010A ACPI DSM for setting tablet-mode
  iio: accel: kxcjk1013: Replace is_smo8500_device with an acpi_type enum
  ext4: fix bogus warning in ext4_update_dx_flag()
  iio: light: fix kconfig dependency bug for VCNL4035
  staging: rtl8723bs: Add 024c:0627 to the list of SDIO device-ids
  efivarfs: fix memory leak in efivarfs_create()
  HID: logitech-dj: Fix an error in mse_bluetooth_descriptor
  tty: serial: imx: keep console clocks always on
  tty: serial: imx: fix potential deadlock
  ALSA: hda/realtek: Add some Clove SSID in the ALC293(ALC1220)
  ALSA: hda/realtek - Add supported for Lenovo ThinkPad Headset Button
  ALSA: mixart: Fix mutex deadlock
  ALSA: ctl: fix error path at adding user-defined element set
  ALSA: usb-audio: Add delay quirk for all Logitech USB devices
  ALSA: firewire: Clean up a locking issue in copy_resp_to_buf()
  speakup: Do not let the line discipline be used several times
  HID: logitech-dj: Fix Dinovo Mini when paired with a MX5x00 receiver
  HID: logitech-dj: Handle quad/bluetooth keyboards with a builtin trackpad
  HID: logitech-hidpp: Add PID for MX Anywhere 2
  libfs: fix error cast of negative value in simple_attr_write()
  efi/x86: Free efi_pgd with free_pages()
  bpf, sockmap: Avoid returning unneeded EAGAIN when redirecting to self
  bpf, sockmap: Use truesize with sk_rmem_schedule()
  bpf, sockmap: On receive programs try to fast track SK_PASS ingress
  bpf, sockmap: Skb verdict SK_PASS to self already checked rmem limits
  xfs: revert "xfs: fix rmap key and record comparison functions"
  fail_function: Remove a redundant mutex unlock
  regulator: ti-abb: Fix array out of bound read access on the first transition
  xfs: return corresponding errcode if xfs_initialize_perag() fail
  xfs: strengthen rmap record flags checking
  xfs: fix the minrecs logic when dealing with inode root child blocks
  can: m_can: process interrupt only when not runtime suspended
  can: flexcan: flexcan_chip_start(): fix erroneous flexcan_transceiver_enable() during bus-off recovery
  iommu/vt-d: Avoid panic if iommu init fails in tboot system
  iommu/vt-d: Move intel_iommu_gfx_mapped to Intel IOMMU header
  can: kvaser_usb: kvaser_usb_hydra: Fix KCAN bittiming limits
  can: kvaser_pciefd: Fix KCAN bittiming limits
  bpf, sockmap: Ensure SO_RCVBUF memory is observed on ingress redirect
  bpf, sockmap: Fix partial copy_page_to_iter so progress can still be made
  net/mlx5: E-Switch, Fail mlx5_esw_modify_vport_rate if qos disabled
  drm/sun4i: dw-hdmi: fix error return code in sun8i_dw_hdmi_bind()
  MIPS: Alchemy: Fix memleak in alchemy_clk_setup_cpu
  selftests/bpf: Fix error return code in run_getsockopt_test()
  ASoC: qcom: lpass-platform: Fix memory leak
  can: m_can: m_can_stop(): set device to software init mode before closing
  can: m_can: m_can_class_free_dev(): introduce new function
  can: m_can: m_can_handle_state_change(): fix state change
  can: tcan4x5x: tcan4x5x_can_remove(): fix order of deregistration
  can: tcan4x5x: tcan4x5x_can_probe(): add missing error checking for devm_regmap_init()
  can: tcan4x5x: replace depends on REGMAP_SPI with depends on SPI
  can: flexcan: fix failure handling of pm_runtime_get_sync()
  can: peak_usb: fix potential integer overflow on shift of a int
  can: mcba_usb: mcba_usb_start_xmit(): first fill skb, then pass to can_put_echo_skb()
  can: ti_hecc: Fix memleak in ti_hecc_probe
  can: dev: can_restart(): post buffer from the right context
  can: af_can: prevent potential access of uninitialized member in canfd_rcv()
  can: af_can: prevent potential access of uninitialized member in can_rcv()
  ip_tunnels: Set tunnel option flag when tunnel metadata is present
  tools, bpftool: Add missing close before bpftool net attach exit
  perf lock: Don't free "lock_seq_stat" if read_count isn't zero
  RMDA/sw: Don't allow drivers using dma_virt_ops on highmem configs
  RDMA/pvrdma: Fix missing kfree() in pvrdma_register_device()
  rfkill: Fix use-after-free in rfkill_resume()
  Input: resistive-adc-touch - fix kconfig dependency on IIO_BUFFER
  ARM: dts: imx50-evk: Fix the chip select 1 IOMUX
  arm64: dts: imx8mm: fix voltage for 1.6GHz CPU operating point
  swiotlb: using SIZE_MAX needs limits.h included
  arm: dts: imx6qdl-udoo: fix rgmii phy-mode for ksz9031 phy
  arm64: dts imx8mn: Remove non-existent USB OTG2
  arm64: dts: allwinner: h5: OrangePi Prime: Fix ethernet node
  MIPS: export has_transparent_hugepage() for modules
  Input: adxl34x - clean up a data type in adxl34x_probe()
  arm64: dts: allwinner: a64: bananapi-m64: Enable RGMII RX/TX delay on PHY
  ARM: dts: sunxi: bananapi-m2-plus: Enable RGMII RX/TX delay on Ethernet PHY
  ARM: dts: sun9i: Enable both RGMII RX/TX delay on Ethernet PHY
  ARM: dts: sun8i: a83t: Enable both RGMII RX/TX delay on Ethernet PHY
  ARM: dts: sun8i: h3: orangepi-plus2e: Enable RGMII RX/TX delay on Ethernet PHY
  ARM: dts: sun7i: bananapi-m1-plus: Enable RGMII RX/TX delay on Ethernet PHY
  ARM: dts: sun7i: cubietruck: Enable RGMII RX/TX delay on Ethernet PHY
  ARM: dts: sun6i: a31-hummingbird: Enable RGMII RX/TX delay on Ethernet PHY
  Revert "arm: sun8i: orangepi-pc-plus: Set EMAC activity LEDs to active high"
  ARM: dts: sun8i: r40: bananapi-m2-ultra: Fix ethernet node
  arm64: dts: allwinner: h5: OrangePi PC2: Fix ethernet node
  arm64: dts: allwinner: a64: Pine64 Plus: Fix ethernet node
  arm64: dts: allwinner: a64: OrangePi Win: Fix ethernet node
  arm64: dts: allwinner: Pine H64: Enable both RGMII RX/TX delay
  arm64: dts: allwinner: beelink-gs1: Enable both RGMII RX/TX delay
  hwmon: (pwm-fan) Fix RPM calculation
  gfs2: fix possible reference leak in gfs2_check_blk_type
  vfs: remove lockdep bogosity in __sb_start_write
  arm64: smp: Tell RCU about CPUs that fail to come online
  arm64: psci: Avoid printing in cpu_psci_cpu_die()
  arm64: errata: Fix handling of 1418040 with late CPU onlining
  ACPI: button: Add DMI quirk for Medion Akoya E2228T
  selftests: kvm: Fix the segment descriptor layout to match the actual layout
  scsi: ufs: Fix unbalanced scsi_block_reqs_cnt caused by ufshcd_hold()
  pinctrl: rockchip: enable gpio pclk for rockchip_gpio_to_irq
  net: ftgmac100: Fix crash when removing driver
  net/ncsi: Fix netlink registration
  net: usb: qmi_wwan: Set DTR quirk for MR400
  net/mlx5: Disable QoS when min_rates on all VFs are zero
  net/mlx5: Add handling of port type in rule deletion
  tcp: only postpone PROBE_RTT if RTT is < current min_rtt estimate
  sctp: change to hold/put transport for proto_unreach_timer
  qlcnic: fix error return code in qlcnic_83xx_restart_hw()
  qed: fix error return code in qed_iwarp_ll2_start()
  page_frag: Recover from memory pressure
  net: x25: Increase refcnt of "struct x25_neigh" in x25_rx_call_request
  net/tls: fix corrupted data in recvmsg
  net/smc: fix direct access to ib_gid_addr->ndev in smc_ib_determine_gid()
  net: qualcomm: rmnet: Fix incorrect receive packet handling during cleanup
  net/mlx4_core: Fix init_hca fields offset
  net: lantiq: Wait for the GPHY firmware to be ready
  netlabel: fix an uninitialized warning in netlbl_unlabel_staticlist()
  netlabel: fix our progress tracking in netlbl_unlabel_staticlist()
  net: Have netpoll bring-up DSA management interface
  net: ethernet: ti: cpsw: fix error return code in cpsw_probe()
  net: dsa: mv88e6xxx: Avoid VTU corruption on 6097
  net: bridge: add missing counters to ndo_get_stats64 callback
  net: b44: fix error return code in b44_init_one()
  mlxsw: core: Use variable timeout for EMAD retries
  lan743x: prevent entire kernel HANG on open, for some platforms
  lan743x: fix issue causing intermittent kernel log warnings
  ipv6: Fix error path to cancel the meseage
  inet_diag: Fix error path to cancel the meseage in inet_req_diag_fill()
  Exempt multicast addresses from five-second neighbor lifetime
  devlink: Add missing genlmsg_cancel() in devlink_nl_sb_port_pool_fill()
  bnxt_en: read EEPROM A2h address using page 0
  atm: nicstar: Unmap DMA on send error
  ah6: fix error return code in ah6_input()
  Linux 5.4.79
  ACPI: GED: fix -Wformat
  KVM: x86: clflushopt should be treated as a no-op by emulation
  can: proc: can_remove_proc(): silence remove_proc_entry warning
  mac80211: always wind down STA state
  Input: sunkbd - avoid use-after-free in teardown paths
  net: lantiq: Add locking for TX DMA channel
  powerpc/8xx: Always fault when _PAGE_ACCESSED is not set
  net/mlx5: Add retry mechanism to the command entry index allocation
  net/mlx5: Fix a race when moving command interface to events mode
  net/mlx5: poll cmd EQ in case of command timeout
  net/mlx5: Use async EQ setup cleanup helpers for multiple EQs
  MIPS: PCI: Fix MIPS build
  selftests/powerpc: entry flush test
  powerpc: Only include kup-radix.h for 64-bit Book3S
  powerpc/64s: flush L1D after user accesses
  powerpc/64s: flush L1D on kernel entry
  selftests/powerpc: rfi_flush: disable entry flush if present
  Linux 5.4.78
  Convert trailing spaces and periods in path components
  net: sch_generic: fix the missing new qdisc assignment bug
  perf/core: Fix race in the perf_mmap_close() function
  perf scripting python: Avoid declaring function pointers with a visibility attribute
  x86/speculation: Allow IBPB to be conditionally enabled on CPUs with always-on STIBP
  powerpc/603: Always fault when _PAGE_ACCESSED is not set
  drm/i915: Correctly set SFC capability for video engines
  r8169: fix potential skb double free in an error path
  tipc: fix memory leak in tipc_topsrv_start()
  net/x25: Fix null-ptr-deref in x25_connect
  net: Update window_clamp if SOCK_RCVBUF is set
  net: udp: fix UDP header access on Fast/frag0 UDP GRO
  net/af_iucv: fix null pointer dereference on shutdown
  IPv6: Set SIT tunnel hard_header_len to zero
  swiotlb: fix "x86: Don't panic if can not alloc buffer for swiotlb"
  pinctrl: amd: fix incorrect way to disable debounce filter
  pinctrl: amd: use higher precision for 512 RtcClk
  drm/gma500: Fix out-of-bounds access to struct drm_device.vblank[]
  don't dump the threads that had been already exiting when zapped.
  mmc: renesas_sdhi_core: Add missing tmio_mmc_host_free() at remove
  mmc: sdhci-of-esdhc: Handle pulse width detection erratum for more SoCs
  gpio: pcie-idio-24: Enable PEX8311 interrupts
  gpio: pcie-idio-24: Fix IRQ Enable Register value
  gpio: pcie-idio-24: Fix irq mask when masking
  selinux: Fix error return code in sel_ib_pkey_sid_slow()
  btrfs: fix potential overflow in cluster_pages_for_defrag on 32bit arch
  ocfs2: initialize ip_next_orphan
  reboot: fix overflow parsing reboot cpu number
  Revert "kernel/reboot.c: convert simple_strtoul to kstrtoint"
  mm/slub: fix panic in slab_alloc_node()
  jbd2: fix up sparse warnings in checkpoint code
  futex: Don't enable IRQs unconditionally in put_pi_state()
  mei: protect mei_cl_mtu from null dereference
  virtio: virtio_console: fix DMA memory allocation for rproc serial
  xhci: hisilicon: fix refercence leak in xhci_histb_probe
  usb: cdc-acm: Add DISABLE_ECHO for Renesas USB Download mode
  uio: Fix use-after-free in uio_unregister_device()
  thunderbolt: Add the missed ida_simple_remove() in ring_request_msix()
  thunderbolt: Fix memory leak if ida_simple_get() fails in enumerate_services()
  KVM: arm64: Don't hide ID registers from userspace
  btrfs: dev-replace: fail mount if we don't have replace item with target device
  btrfs: fix min reserved size calculation in merge_reloc_root
  btrfs: ref-verify: fix memory leak in btrfs_ref_tree_mod
  ext4: unlock xattr_sem properly in ext4_inline_data_truncate()
  ext4: correctly report "not supported" for {usr,grp}jquota when !CONFIG_QUOTA
  erofs: derive atime instead of leaving it empty
  perf: Fix get_recursion_context()
  vrf: Fix fast path output packet handling with async Netfilter rules
  cosa: Add missing kfree in error path of cosa_write
  of/address: Fix of_node memory leak in of_dma_is_coherent
  xfs: fix a missing unlock on error in xfs_fs_map_blocks
  lan743x: fix "BUG: invalid wait context" when setting rx mode
  xfs: fix brainos in the refcount scrubber's rmap fragment processor
  xfs: fix rmap key and record comparison functions
  xfs: set the unwritten bit in rmap lookup flags in xchk_bmap_get_rmapextents
  xfs: fix flags argument to rmap lookup when converting shared file rmaps
  igc: Fix returning wrong statistics
  nbd: fix a block_device refcount leak in nbd_release
  bpf: Zero-fill re-used per-cpu map element
  SUNRPC: Fix general protection fault in trace_rpc_xdr_overflow()
  net/mlx5: Fix deletion of duplicate rules
  pinctrl: aspeed: Fix GPI only function problem.
  bpf: Don't rely on GCC __attribute__((optimize)) to disable GCSE
  ARM: 9019/1: kprobes: Avoid fortify_panic() when copying optprobe template
  pinctrl: intel: Set default bias in case no particular value given
  mfd: sprd: Add wakeup capability for PMIC IRQ
  tick/common: Touch watchdog in tick_unfreeze() on all CPUs
  spi: bcm2835: remove use of uninitialized gpio flags variable
  tpm_tis: Disable interrupts on ThinkPad T490s
  i2c: sh_mobile: implement atomic transfers
  riscv: Set text_offset correctly for M-Mode
  selftests: proc: fix warning: _GNU_SOURCE redefined
  amd/amdgpu: Disable VCN DPG mode for Picasso
  i2c: mediatek: move dma reset before i2c reset
  vfio/pci: Bypass IGD init in case of -ENODEV
  vfio: platform: fix reference leak in vfio_platform_open
  s390/smp: move rcu_cpu_starting() earlier
  iommu/amd: Increase interrupt remapping table limit to 512 entries
  nvme-tcp: avoid repeated request completion
  nvme-rdma: avoid repeated request completion
  nvme-tcp: avoid race between time out and tear down
  nvme-rdma: avoid race between time out and tear down
  nvme: introduce nvme_sync_io_queues
  scsi: mpt3sas: Fix timeouts observed while reenabling IRQ
  scsi: scsi_dh_alua: Avoid crash during alua_bus_detach()
  tracing: Fix the checking of stackidx in __ftrace_trace_stack
  cfg80211: regulatory: Fix inconsistent format argument
  cfg80211: initialize wdev data earlier
  mac80211: fix use of skb payload instead of header
  drm/amd/pm: do not use ixFEATURE_STATUS for checking smc running
  drm/amd/pm: perform SMC reset on suspend/hibernation
  drm/amdgpu: perform srbm soft reset always on SDMA resume
  scsi: hpsa: Fix memory leak in hpsa_init_one()
  gfs2: check for live vs. read-only file system in gfs2_fitrim
  gfs2: Add missing truncate_inode_pages_final for sd_aspace
  gfs2: Free rd_bits later in gfs2_clear_rgrpd to fix use-after-free
  ALSA: hda: Reinstate runtime_allow() for all hda controllers
  ALSA: hda: Separate runtime and system suspend
  selftests: pidfd: fix compilation errors due to wait.h
  selftests/ftrace: check for do_sys_openat2 in user-memory test
  usb: gadget: goku_udc: fix potential crashes in probe
  opp: Reduce the size of critical section in _opp_table_kref_release()
  usb: dwc3: pci: add support for the Intel Alder Lake-S
  ASoC: cs42l51: manage mclk shutdown delay
  ASoC: qcom: sdm845: set driver name correctly
  ath9k_htc: Use appropriate rs_datalen type
  KVM: x86: don't expose MSR_IA32_UMWAIT_CONTROL unconditionally
  KVM: arm64: ARM_SMCCC_ARCH_WORKAROUND_1 doesn't return SMCCC_RET_NOT_REQUIRED
  random32: make prandom_u32() output unpredictable
  tpm: efi: Don't create binary_bios_measurements file for an empty log
  xfs: fix scrub flagging rtinherit even if there is no rt device
  xfs: flush new eof page on truncate to avoid post-eof corruption
  can: flexcan: flexcan_remove(): disable wakeup completely
  can: flexcan: remove FLEXCAN_QUIRK_DISABLE_MECR quirk for LS1021A
  can: peak_canfd: pucan_handle_can_rx(): fix echo management when loopback is on
  can: peak_usb: peak_usb_get_ts_time(): fix timestamp wrapping
  can: peak_usb: add range checking in decode operations
  can: xilinx_can: handle failure cases of pm_runtime_get_sync
  can: ti_hecc: ti_hecc_probe(): add missed clk_disable_unprepare() in error path
  can: j1939: j1939_sk_bind(): return failure if netdev is down
  can: j1939: swap addr and pgn in the send example
  can: can_create_echo_skb(): fix echo skb generation: always use skb_clone()
  can: dev: __can_get_echo_skb(): fix real payload length return value for RTR frames
  can: dev: can_get_echo_skb(): prevent call to kfree_skb() in hard IRQ context
  can: rx-offload: don't call kfree_skb() from IRQ context
  afs: Fix warning due to unadvanced marshalling pointer
  iommu/vt-d: Fix a bug for PDP check in prq_event_thread
  ALSA: hda: prevent undefined shift in snd_hdac_ext_bus_get_link()
  perf tools: Add missing swap for ino_generation
  perf trace: Fix segfault when trying to trace events by cgroup
  powerpc/eeh_cache: Fix a possible debugfs deadlock
  netfilter: ipset: Update byte and packet counters regardless of whether they match
  netfilter: nf_tables: missing validation from the abort path
  netfilter: use actual socket sk rather than skb sk when routing harder
  xfs: set xefi_discard when creating a deferred agfl free log intent item
  ASoC: codecs: wcd9335: Set digital gain range correctly
  net: xfrm: fix a race condition during allocing spi
  hv_balloon: disable warning when floor reached
  genirq: Let GENERIC_IRQ_IPI select IRQ_DOMAIN_HIERARCHY
  ASoC: Intel: kbl_rt5663_max98927: Fix kabylake_ssp_fixup function
  btrfs: reschedule when cloning lots of extents
  btrfs: sysfs: init devices outside of the chunk_mutex
  btrfs: tracepoints: output proper root owner for trace_find_free_extent()
  usb: dwc3: gadget: Reclaim extra TRBs after request completion
  usb: dwc3: gadget: Continue to process pending requests
  PCI: qcom: Make sure PCIe is reset before init for rev 2.1.0
  KVM: arm64: Force PTE mapping on fault resulting in a device mapping
  nbd: don't update block size after device is started
  time: Prevent undefined behaviour in timespec64_to_ns()
  drm/i915/gem: Flush coherency domains on first set-domain-ioctl
  Linux 5.4.77
  powercap: restrict energy meter to root access
  Linux 5.4.76
  arm64: dts: marvell: espressobin: Add ethernet switch aliases
  perf/core: Fix a memory leak in perf_event_parse_addr_filter()
  xfs: flush for older, xfs specific ioctls
  PM: runtime: Resume the device earlier in __device_release_driver()
  PM: runtime: Drop pm_runtime_clean_up_links()
  PM: runtime: Drop runtime PM references to supplier on link removal
  ARC: stack unwinding: avoid indefinite looping
  drm/panfrost: Fix a deadlock between the shrinker and madvise path
  usb: mtu3: fix panic in mtu3_gadget_stop()
  USB: Add NO_LPM quirk for Kingston flash drive
  usb: dwc3: ep0: Fix delay status handling
  tty: serial: fsl_lpuart: LS1021A has a FIFO size of 16 words, like LS1028A
  tty: serial: fsl_lpuart: add LS1028A support
  USB: serial: option: add Telit FN980 composition 0x1055
  USB: serial: option: add LE910Cx compositions 0x1203, 0x1230, 0x1231
  USB: serial: option: add Quectel EC200T module support
  USB: serial: cyberjack: fix write-URB completion race
  serial: txx9: add missing platform_driver_unregister() on error in serial_txx9_init
  serial: 8250_mtk: Fix uart_get_baud_rate warning
  s390/pkey: fix paes selftest failure with paes and pkey static build
  fork: fix copy_process(CLONE_PARENT) race with the exiting ->real_parent
  vt: Disable KD_FONT_OP_COPY
  Revert "coresight: Make sysfs functional on topologies with per core sink"
  arm64/smp: Move rcu_cpu_starting() earlier
  drm/nouveau/gem: fix "refcount_t: underflow; use-after-free"
  drm/nouveau/nouveau: fix the start/end range for migration
  usb: cdns3: gadget: suspicious implicit sign extension
  ACPI: NFIT: Fix comparison to '-ENXIO'
  drm/vc4: drv: Add error handding for bind
  nvmet: fix a NULL pointer dereference when tracing the flush command
  nvme-rdma: handle unexpected nvme completion data length
  vsock: use ns_capable_noaudit() on socket create
  scsi: ibmvscsi: Fix potential race after loss of transport
  drm/amdgpu: add DID for navi10 blockchain SKU
  scsi: core: Don't start concurrent async scan on same host
  blk-cgroup: Pre-allocate tree node on blkg_conf_prep
  blk-cgroup: Fix memleak on error path
  drm/sun4i: frontend: Fix the scaler phase on A33
  drm/sun4i: frontend: Reuse the ch0 phase for RGB formats
  drm/sun4i: frontend: Rework a bit the phase data
  of: Fix reserved-memory overlap detection
  x86/kexec: Use up-to-dated screen_info copy to fill boot params
  arm64: dts: meson: add missing g12 rng clock
  ARM: dts: sun4i-a10: fix cpu_alert temperature
  futex: Handle transient "ownerless" rtmutex state correctly
  tracing: Fix out of bounds write in get_trace_buf
  spi: bcm2835: fix gpio cs level inversion
  regulator: defer probe when trying to get voltage from unresolved supply
  ftrace: Handle tracing when switching between context
  ftrace: Fix recursion check for NMI test
  mtd: spi-nor: Don't copy self-pointing struct around
  ring-buffer: Fix recursion protection transitions between interrupt context
  gfs2: Wake up when sd_glock_disposal becomes zero
  mm: always have io_remap_pfn_range() set pgprot_decrypted()
  kthread_worker: prevent queuing delayed work from timer_fn when it is being canceled
  lib/crc32test: remove extra local_irq_disable/enable
  mm: mempolicy: fix potential pte_unmap_unlock pte error
  ALSA: usb-audio: Add implicit feedback quirk for MODX
  ALSA: usb-audio: Add implicit feedback quirk for Qu-16
  ALSA: usb-audio: add usb vendor id as DSD-capable for Khadas devices
  ALSA: usb-audio: Add implicit feedback quirk for Zoom UAC-2
  ALSA: hda/realtek - Enable headphone for ASUS TM420
  ALSA: hda/realtek - Fixed HP headset Mic can't be detected
  Fonts: Replace discarded const qualifier
  sfp: Fix error handing in sfp_probe()
  sctp: Fix COMM_LOST/CANT_STR_ASSOC err reporting on big-endian platforms
  powerpc/vnic: Extend "failover pending" window
  net: usb: qmi_wwan: add Telit LE910Cx 0x1230 composition
  ip_tunnel: fix over-mtu packet send fail without TUNNEL_DONT_FRAGMENT flags
  ionic: check port ptr before use
  gianfar: Account for Tx PTP timestamp in the skb headroom
  gianfar: Replace skb_realloc_headroom with skb_cow_head for PTP
  chelsio/chtls: fix always leaking ctrl_skb
  chelsio/chtls: fix memory leaks caused by a race
  cadence: force nonlinear buffers to be cloned
  ptrace: fix task_join_group_stop() for the case when current is traced
  tipc: fix use-after-free in tipc_bcast_get_mode
  arm64: Change .weak to SYM_FUNC_START_WEAK_PI for arch/arm64/lib/mem*.S
  arm64: lib: Use modern annotations for assembly functions
  arm64: asm: Add new-style position independent function annotations
  linkage: Introduce new macros for assembler symbols
  ASoC: Intel: Skylake: Add alternative topology binary name
  drm/i915: Drop runtime-pm assert from vgpu io accessors
  drm/i915/gt: Delay execlist processing for tgl
  drm/i915: Break up error capture compression loops with cond_resched()
  Linux 5.4.75
  staging: octeon: Drop on uncorrectable alignment or FCS error
  staging: octeon: repair "fixed-link" support
  staging: comedi: cb_pcidas: Allow 2-channel commands for AO subdevice
  staging: fieldbus: anybuss: jump to correct label in an error path
  KVM: arm64: Fix AArch32 handling of DBGD{CCINT,SCRext} and DBGVCR
  device property: Don't clear secondary pointer for shared primary firmware node
  device property: Keep secondary firmware node secondary by type
  ARM: s3c24xx: fix missing system reset
  ARM: samsung: fix PM debug build with DEBUG_LL but !MMU
  arm: dts: mt7623: add missing pause for switchport
  hil/parisc: Disable HIL driver when it gets stuck
  cachefiles: Handle readpage error correctly
  arm64: berlin: Select DW_APB_TIMER_OF
  tty: make FONTX ioctl use the tty pointer they were actually passed
  drm/amd/pm: increase mclk switch threshold to 200 us
  mmc: sdhci: Use Auto CMD Auto Select only when v4_mode is true
  mmc: sdhci-of-esdhc: set timeout to max before tuning
  drm/ttm: fix eviction valuable range check.
  ext4: fix invalid inode checksum
  ext4: fix error handling code in add_new_gdb
  ext4: fix leaking sysfs kobject after failed mount
  vringh: fix __vringh_iov() when riov and wiov are different
  ring-buffer: Return 0 on success from ring_buffer_resize()
  9P: Cast to loff_t before multiplying
  libceph: clear con->out_msg on Policy::stateful_server faults
  ceph: promote to unsigned long long before shifting
  drm/amd/display: Fix kernel panic by dal_gpio_open() error
  drm/amd/display: Don't invoke kgdb_breakpoint() unconditionally
  drm/amdgpu: increase the reserved VM size to 2MB
  drm/amd/display: Avoid MST manager resource leak.
  drm/amdkfd: Use same SQ prefetch setting as amdgpu
  drm/amdgpu: correct the gpu reset handling for job != NULL case
  drm/amd/display: Increase timeout for DP Disable
  drm/amdgpu: don't map BO in reserved region
  i2c: imx: Fix external abort on interrupt in exit paths
  rtc: rx8010: don't modify the global rtc ops
  ia64: fix build error with !COREDUMP
  ubi: check kthread_should_stop() after the setting of task state
  ARC: perf: redo the pct irq missing in device-tree handling
  perf python scripting: Fix printable strings in python3 scripts
  ubifs: mount_ubifs: Release authentication resource in error handling path
  ubifs: Don't parse authentication mount options in remount process
  ubifs: Fix a memleak after dumping authentication mount options
  ubifs: journal: Make sure to not dirty twice for auth nodes
  ubifs: xattr: Fix some potential memory leaks while iterating entries
  ubifs: dent: Fix some potential memory leaks while iterating entries
  NFSD: Add missing NFSv2 .pc_func methods
  NFSv4.2: support EXCHGID4_FLAG_SUPP_FENCE_OPS 4.2 EXCHANGE_ID flag
  NFSv4: Wait for stateid updates after CLOSE/OPEN_DOWNGRADE
  powerpc: Fix undetected data corruption with P9N DD2.1 VSX CI load emulation
  powerpc/powermac: Fix low_sleep_handler with KUAP and KUEP
  powerpc/powernv/elog: Fix race while processing OPAL error log event.
  powerpc/memhotplug: Make lmb size 64bit
  powerpc: Warn about use of smt_snooze_delay
  powerpc/rtas: Restrict RTAS requests from userspace
  s390/stp: add locking to sysfs functions
  MIPS: DEC: Restore bootmem reservation for firmware working memory area
  powerpc/drmem: Make lmb_size 64 bit
  iio:gyro:itg3200: Fix timestamp alignment and prevent data leak.
  iio:adc:ti-adc12138 Fix alignment issue with timestamp
  iio:adc:ti-adc0832 Fix alignment issue with timestamp
  iio: adc: gyroadc: fix leak of device node iterator
  iio:light:si1145: Fix timestamp alignment and prevent data leak.
  dmaengine: dma-jz4780: Fix race in jz4780_dma_tx_status
  udf: Fix memory leak when mounting
  HID: wacom: Avoid entering wacom_wac_pen_report for pad / battery
  vt: keyboard, extend func_buf_lock to readers
  vt: keyboard, simplify vt_kdgkbsent
  drm/i915: Force VT'd workarounds when running as a guest OS
  usb: host: fsl-mph-dr-of: check return of dma_set_mask()
  usb: typec: tcpm: reset hard_reset_count for any disconnect
  usb: cdc-acm: fix cooldown mechanism
  usb: dwc3: gadget: END_TRANSFER before CLEAR_STALL command
  usb: dwc3: gadget: Resume pending requests after CLEAR_STALL
  usb: dwc3: core: don't trigger runtime pm when remove driver
  usb: dwc3: core: add phy cleanup for probe error handling
  usb: dwc3: gadget: Check MPS of the request length
  usb: dwc3: ep0: Fix ZLP for OUT ep0 requests
  usb: dwc3: pci: Allow Elkhart Lake to utilize DSM method for PM functionality
  usb: xhci: Workaround for S3 issue on AMD SNPS 3.0 xHC
  btrfs: fix readahead hang and use-after-free after removing a device
  btrfs: fix use-after-free on readahead extent after failure to create it
  btrfs: tree-checker: validate number of chunk stripes and parity
  btrfs: cleanup cow block on error
  btrfs: tree-checker: fix false alert caused by legacy btrfs root item
  btrfs: use kvzalloc() to allocate clone_roots in btrfs_ioctl_send()
  btrfs: send, recompute reference path after orphanization of a directory
  btrfs: send, orphanize first all conflicting inodes when processing references
  btrfs: reschedule if necessary when logging directory items
  btrfs: improve device scanning messages
  btrfs: qgroup: fix wrong qgroup metadata reserve for delayed inode
  PM: runtime: Remove link state checks in rpm_get/put_supplier()
  scsi: qla2xxx: Fix crash on session cleanup with unload
  scsi: mptfusion: Fix null pointer dereferences in mptscsih_remove()
  w1: mxc_w1: Fix timeout resolution problem leading to bus error
  acpi-cpufreq: Honor _PSD table setting on new AMD CPUs
  ACPI: EC: PM: Drop ec_no_wakeup check from acpi_ec_dispatch_gpe()
  ACPI: EC: PM: Flush EC work unconditionally after wakeup
  PCI/ACPI: Whitelist hotplug ports for D3 if power managed by ACPI
  ACPI: debug: don't allow debugging when ACPI is disabled
  ACPI: video: use ACPI backlight for HP 635 Notebook
  ACPI / extlog: Check for RDMSR failure
  ACPI: button: fix handling lid state changes when input device closed
  NFS: fix nfs_path in case of a rename retry
  fs: Don't invalidate page buffers in block_write_full_page()
  media: uvcvideo: Fix uvc_ctrl_fixup_xu_info() not having any effect
  leds: bcm6328, bcm6358: use devres LED registering function
  extcon: ptn5150: Fix usage of atomic GPIO with sleeping GPIO chips
  spi: sprd: Release DMA channel also on probe deferral
  perf/x86/amd/ibs: Fix raw sample data accumulation
  perf/x86/amd/ibs: Don't include randomized bits in get_ibs_op_count()
  perf/x86/intel: Fix Ice Lake event constraint table
  selftests/x86/fsgsbase: Test PTRACE_PEEKUSER for GSBASE with invalid LDT GS
  seccomp: Make duplicate listener detection non-racy
  mmc: sdhci-acpi: AMDI0040: Set SDHCI_QUIRK2_PRESET_VALUE_BROKEN
  mmc: sdhci: Add LTR support for some Intel BYT based controllers
  md/raid5: fix oops during stripe resizing
  nvme-rdma: fix crash when connect rejected
  sgl_alloc_order: fix memory leak
  nbd: make the config put is called before the notifying the waiter
  ARM: dts: s5pv210: remove dedicated 'audio-subsystem' node
  ARM: dts: s5pv210: move PMU node out of clock controller
  ARM: dts: s5pv210: move fixed clocks under root node
  ARM: dts: s5pv210: remove DMA controller bus node name to fix dtschema warnings
  memory: emif: Remove bogus debugfs error handling
  ARM: dts: omap4: Fix sgx clock rate for 4430
  arm64: dts: renesas: ulcb: add full-pwr-cycle-in-suspend into eMMC nodes
  cifs: handle -EINTR in cifs_setattr
  gfs2: add validation checks for size of superblock
  gfs2: use-after-free in sysfs deregistration
  KVM: PPC: Book3S HV: Do not allocate HPT for a nested guest
  ext4: Detect already used quota file early
  drivers: watchdog: rdc321x_wdt: Fix race condition bugs
  net: 9p: initialize sun_server.sun_path to have addr's value only when addr is valid
  clk: ti: clockdomain: fix static checker warning
  rpmsg: glink: Use complete_all for open states
  bnxt_en: Log unknown link speed appropriately.
  md/bitmap: md_bitmap_get_counter returns wrong blocks
  btrfs: fix replace of seed device
  ARC: [dts] fix the errors detected by dtbs_check
  drm/amd/display: HDMI remote sink need mode validation for Linux
  power: supply: test_power: add missing newlines when printing parameters by sysfs
  ACPI: HMAT: Fix handling of changes from ACPI 6.2 to ACPI 6.3
  bus/fsl_mc: Do not rely on caller to provide non NULL mc_io
  drivers/net/wan/hdlc_fr: Correctly handle special skb->protocol values
  brcmfmac: Fix warning message after dongle setup failed
  ACPI: Add out of bounds and numa_off protections to pxm_to_node()
  xfs: don't free rt blocks when we're doing a REMAP bunmapi call
  can: flexcan: disable clocks during stop mode
  arm64/mm: return cpu_all_mask when node is NUMA_NO_NODE
  SUNRPC: Mitigate cond_resched() in xprt_transmit()
  usb: xhci: omit duplicate actions when suspending a runtime suspended host.
  coresight: Make sysfs functional on topologies with per core sink
  uio: free uio id after uio file node is freed
  USB: adutux: fix debugging
  cpufreq: sti-cpufreq: add stih418 support
  riscv: Define AT_VECTOR_SIZE_ARCH for ARCH_DLINFO
  samples/bpf: Fix possible deadlock in xdpsock
  selftests/bpf: Define string const as global for test_sysctl_prog.c
  media: uvcvideo: Fix dereference of out-of-bound list iterator
  bpf: Permit map_ptr arithmetic with opcode add and offset 0
  kgdb: Make "kgdbcon" work properly with "kgdb_earlycon"
  ia64: kprobes: Use generic kretprobe trampoline handler
  printk: reduce LOG_BUF_SHIFT range for H8300
  arm64: topology: Stop using MPIDR for topology information
  drm/bridge/synopsys: dsi: add support for non-continuous HS clock
  mmc: via-sdmmc: Fix data race bug
  media: imx274: fix frame interval handling
  media: tw5864: check status of tw5864_frameinterval_get
  usb: typec: tcpm: During PR_SWAP, source caps should be sent only after tSwapSourceStart
  media: platform: Improve queue set up flow for bug fixing
  media: videodev2.h: RGB BT2020 and HSV are always full range
  selftests/x86/fsgsbase: Reap a forgotten child
  drm/brige/megachips: Add checking if ge_b850v3_lvds_init() is working correctly
  ath10k: fix VHT NSS calculation when STBC is enabled
  ath10k: start recovery process when payload length exceeds max htc length for sdio
  video: fbdev: pvr2fb: initialize variables
  xfs: fix realtime bitmap/summary file truncation when growing rt volume
  power: supply: bq27xxx: report "not charging" on all types
  NFS4: Fix oops when copy_file_range is attempted with NFS4.0 source
  ARM: 8997/2: hw_breakpoint: Handle inexact watchpoint addresses
  f2fs: handle errors of f2fs_get_meta_page_nofail
  um: change sigio_spinlock to a mutex
  s390/startup: avoid save_area_sync overflow
  f2fs: fix to check segment boundary during SIT page readahead
  f2fs: fix uninit-value in f2fs_lookup
  f2fs: add trace exit in exception path
  sparc64: remove mm_cpumask clearing to fix kthread_use_mm race
  powerpc: select ARCH_WANT_IRQS_OFF_ACTIVATE_MM
  mm: fix exec activate_mm vs TLB shootdown and lazy tlb switching race
  powerpc/powernv/smp: Fix spurious DBG() warning
  futex: Fix incorrect should_fail_futex() handling
  ata: sata_nv: Fix retrieving of active qcs
  RDMA/qedr: Fix memory leak in iWARP CM
  mlxsw: core: Fix use-after-free in mlxsw_emad_trans_finish()
  x86/unwind/orc: Fix inactive tasks with stack pointer in %sp on GCC 10 compiled kernels
  firmware: arm_scmi: Add missing Rx size re-initialisation
  firmware: arm_scmi: Fix ARCH_COLD_RESET
  xen/events: block rogue events for some time
  xen/events: defer eoi in case of excessive number of events
  xen/events: use a common cpu hotplug hook for event channels
  xen/events: switch user event channels to lateeoi model
  xen/pciback: use lateeoi irq binding
  xen/pvcallsback: use lateeoi irq binding
  xen/scsiback: use lateeoi irq binding
  xen/netback: use lateeoi irq binding
  xen/blkback: use lateeoi irq binding
  xen/events: add a new "late EOI" evtchn framework
  xen/events: fix race in evtchn_fifo_unmask()
  xen/events: add a proper barrier to 2-level uevent unmasking
  xen/events: avoid removing an event channel while handling it
  ANDROID: GKI: fix up include/linux/pm.h to handle some abi changes
  Linux 5.4.74
  phy: marvell: comphy: Convert internal SMCC firmware return codes to errno
  misc: rtsx: do not setting OC_POWER_DOWN reg in rtsx_pci_init_ocp()
  openrisc: Fix issue with get_user for 64-bit values
  crypto: x86/crc32c - fix building with clang ias
  xen/gntdev.c: Mark pages as dirty
  ata: sata_rcar: Fix DMA boundary mask
  PM: runtime: Fix timer_expires data type on 32-bit arches
  serial: pl011: Fix lockdep splat when handling magic-sysrq interrupt
  serial: qcom_geni_serial: To correct QUP Version detection logic
  mtd: lpddr: Fix bad logic in print_drs_error
  RDMA/addr: Fix race with netevent_callback()/rdma_addr_cancel()
  cxl: Rework error message for incompatible slots
  p54: avoid accessing the data mapped to streaming DMA
  evm: Check size of security.evm before using it
  bpf: Fix comment for helper bpf_current_task_under_cgroup()
  fuse: fix page dereference after free
  ata: ahci: mvebu: Make SATA PHY optional for Armada 3720
  x86/xen: disable Firmware First mode for correctable memory errors
  arch/x86/amd/ibs: Fix re-arming IBS Fetch
  erofs: avoid duplicated permission check for "trusted." xattrs
  bnxt_en: Invoke cancel_delayed_work_sync() for PFs also.
  bnxt_en: Fix regression in workqueue cleanup logic in bnxt_remove_one().
  bnxt_en: Re-write PCI BARs after PCI fatal error.
  net: hns3: Clear the CMDQ registers before unmapping BAR region
  tipc: fix memory leak caused by tipc_buf_append()
  tcp: Prevent low rmem stalls with SO_RCVLOWAT.
  ravb: Fix bit fields checking in ravb_hwtstamp_get()
  r8169: fix issue with forced threading in combination with shared interrupts
  net/sched: act_mpls: Add softdep on mpls_gso.ko
  netem: fix zero division in tabledist
  mlxsw: core: Fix memory leak on module removal
  ibmvnic: fix ibmvnic_set_mac
  gtp: fix an use-before-init in gtp_newlink()
  cxgb4: set up filter action after rewrites
  chelsio/chtls: fix tls record info to user
  chelsio/chtls: fix memory leaks in CPL handlers
  chelsio/chtls: fix deadlock issue
  bnxt_en: Send HWRM_FUNC_RESET fw command unconditionally.
  bnxt_en: Check abort error state in bnxt_open_nic().
  efivarfs: Replace invalid slashes with exclamation marks in dentries.
  x86/PCI: Fix intel_mid_pci.c build error when ACPI is not enabled
  arm64: link with -z norelro regardless of CONFIG_RELOCATABLE
  arm64: Run ARCH_WORKAROUND_2 enabling code on all CPUs
  arm64: Run ARCH_WORKAROUND_1 enabling code on all CPUs
  scripts/setlocalversion: make git describe output more reliable
  objtool: Support Clang non-section symbols in ORC generation
  socket: don't clear SOCK_TSTAMP_NEW when SO_TIMESTAMPNS is disabled
  netfilter: nftables_offload: KASAN slab-out-of-bounds Read in nft_flow_rule_create
  Revert "PCI/IOV: Mark VFs as not implementing PCI_COMMAND_MEMORY"
  Revert "vfio/pci: Decouple PCI_COMMAND_MEMORY bit checks from is_virtfn"
  Linux 5.4.73
  usb: gadget: f_ncm: allow using NCM in SuperSpeed Plus gadgets.
  eeprom: at25: set minimum read/write access stride to 1
  usb: cdns3: gadget: free interrupt after gadget has deleted
  USB: cdc-wdm: Make wdm_flush() interruptible and add wdm_fsync().
  usb: cdc-acm: add quirk to blacklist ETAS ES58X devices
  tty: serial: fsl_lpuart: fix lpuart32_poll_get_char
  tty: serial: lpuart: fix lpuart32_write usage
  s390/qeth: don't let HW override the configured port role
  net: korina: cast KSEG0 address to pointer in kfree
  ath10k: check idx validity in __ath10k_htt_rx_ring_fill_n()
  dmaengine: dw: Activate FIFO-mode for memory peripherals only
  dmaengine: dw: Add DMA-channels mask cell support
  scsi: ufs: ufs-qcom: Fix race conditions caused by ufs_qcom_testbus_config()
  usb: core: Solve race condition in anchor cleanup functions
  brcm80211: fix possible memleak in brcmf_proto_msgbuf_attach
  scsi: smartpqi: Avoid crashing kernel for controller issues
  ALSA: hda/ca0132 - Add new quirk ID for SoundBlaster AE-7.
  ALSA: hda/ca0132 - Add AE-7 microphone selection commands.
  mwifiex: don't call del_timer_sync() on uninitialized timer
  reiserfs: Fix memory leak in reiserfs_parse_options()
  ipvs: Fix uninit-value in do_ip_vs_set_ctl()
  Bluetooth: btusb: Fix memleak in btusb_mtk_submit_wmt_recv_urb
  tty: ipwireless: fix error handling
  fbmem: add margin check to fb_check_caps()
  scsi: qedi: Fix list_del corruption while removing active I/O
  scsi: qedi: Protect active command list to avoid list corruption
  scsi: qedf: Return SUCCESS if stale rport is encountered
  HID: ite: Add USB id match for Acer One S1003 keyboard dock
  Fix use after free in get_capset_info callback.
  rtl8xxxu: prevent potential memory leak
  brcmsmac: fix memory leak in wlc_phy_attach_lcnphy
  selftests/bpf: Fix test_sysctl_loop{1, 2} failure due to clang change
  scsi: qla2xxx: Warn if done() or free() are called on an already freed srb
  scsi: ibmvfc: Fix error return in ibmvfc_probe()
  iomap: fix WARN_ON_ONCE() from unprivileged users
  drm/msm/a6xx: fix a potential overflow issue
  Bluetooth: Only mark socket zapped after unlocking
  usb: ohci: Default to per-port over-current protection
  xfs: make sure the rt allocator doesn't run off the end
  opp: Prevent memory leak in dev_pm_opp_attach_genpd()
  reiserfs: only call unlock_new_inode() if I_NEW
  misc: rtsx: Fix memory leak in rtsx_pci_probe
  bpf: Limit caller's stack depth 256 for subprogs with tailcalls
  drm/panfrost: add amlogic reset quirk callback
  ath9k: hif_usb: fix race condition between usb_get_urb() and usb_kill_anchored_urbs()
  can: flexcan: flexcan_chip_stop(): add error handling and propagate error value
  usb: dwc3: simple: add support for Hikey 970
  USB: cdc-acm: handle broken union descriptors
  rtw88: increse the size of rx buffer size
  udf: Avoid accessing uninitialized data on failed inode read
  udf: Limit sparing table size
  usb: gadget: function: printer: fix use-after-free in __lock_acquire
  usb: dwc3: Add splitdisable quirk for Hisilicon Kirin Soc
  misc: vop: add round_up(x,4) for vring_size to avoid kernel panic
  mic: vop: copy data to kernel space then write to io memory
  scsi: target: core: Add CONTROL field for trace events
  scsi: mvumi: Fix error return in mvumi_io_attach()
  PM: hibernate: remove the bogus call to get_gendisk() in software_resume()
  mac80211: handle lack of sband->bitrates in rates
  ip_gre: set dev->hard_header_len and dev->needed_headroom properly
  ntfs: add check for mft record size in superblock
  media: venus: core: Fix runtime PM imbalance in venus_probe
  fs: dlm: fix configfs memory leak
  media: venus: fixes for list corruption
  media: saa7134: avoid a shift overflow
  mmc: sdio: Check for CISTPL_VERS_1 buffer size
  media: uvcvideo: Ensure all probed info is returned to v4l2
  x86/mce: Make mce_rdmsrl() panic on an inaccessible MSR
  media: media/pci: prevent memory leak in bttv_probe
  media: bdisp: Fix runtime PM imbalance on error
  media: platform: sti: hva: Fix runtime PM imbalance on error
  media: platform: s3c-camif: Fix runtime PM imbalance on error
  media: vsp1: Fix runtime PM imbalance on error
  media: exynos4-is: Fix a reference count leak
  media: exynos4-is: Fix a reference count leak due to pm_runtime_get_sync
  media: exynos4-is: Fix several reference count leaks due to pm_runtime_get_sync
  media: sti: Fix reference count leaks
  media: st-delta: Fix reference count leak in delta_run_work
  media: ati_remote: sanity check for both endpoints
  media: firewire: fix memory leak
  x86/mce: Add Skylake quirk for patrol scrub reported errors
  x86/asm: Replace __force_order with a memory clobber
  crypto: ccp - fix error handling
  block: ratelimit handle_bad_sector() message
  md/bitmap: fix memory leak of temporary bitmap
  i2c: core: Restore acpi_walk_dep_device_list() getting called after registering the ACPI i2c devs
  perf: correct SNOOPX field offset
  sched/features: Fix !CONFIG_JUMP_LABEL case
  NTB: hw: amd: fix an issue about leak system resources
  nvmet: fix uninitialized work for zero kato
  powerpc/pseries: Avoid using addr_to_pfn in real mode
  powerpc/powernv/dump: Fix race while processing OPAL dump
  lightnvm: fix out-of-bounds write to array devices->info[]
  ARM: dts: meson8: remove two invalid interrupt lines from the GPU node
  arm64: dts: zynqmp: Remove additional compatible string for i2c IPs
  ARM: OMAP2+: Restore MPU power domain if cpu_cluster_pm_enter() fails
  soc: fsl: qbman: Fix return value on success
  ARM: dts: owl-s500: Fix incorrect PPI interrupt specifiers
  arm64: dts: actions: limit address range for pinctrl node
  arm64: dts: renesas: r8a774c0: Fix MSIOF1 DMA channels
  arm64: dts: renesas: r8a77990: Fix MSIOF1 DMA channels
  arm64: dts: qcom: msm8916: Fix MDP/DSI interrupts
  arm64: dts: qcom: pm8916: Remove invalid reg size from wcd_codec
  arm64: dts: qcom: msm8916: Remove one more thermal trip point unit name
  arm64: dts: imx8mq: Add missing interrupts to GPC
  memory: fsl-corenet-cf: Fix handling of platform_get_irq() error
  memory: omap-gpmc: Fix build error without CONFIG_OF
  memory: omap-gpmc: Fix a couple off by ones
  arm64: dts: allwinner: h5: remove Mali GPU PMU module
  ARM: dts: sun8i: r40: bananapi-m2-ultra: Fix dcdc1 regulator
  ARM: s3c24xx: fix mmc gpio lookup tables
  ARM: at91: pm: of_node_put() after its usage
  ARM: dts: imx6sl: fix rng node
  arm64: dts: meson: vim3: correct led polarity
  netfilter: nf_fwd_netdev: clear timestamp in forwarding path
  netfilter: ebtables: Fixes dropping of small packets in bridge nat
  netfilter: conntrack: connection timeout after re-register
  scsi: bfa: Fix error return in bfad_pci_init()
  KVM: x86: emulating RDPID failure shall return #UD rather than #GP
  Input: sun4i-ps2 - fix handling of platform_get_irq() error
  Input: twl4030_keypad - fix handling of platform_get_irq() error
  Input: omap4-keypad - fix handling of platform_get_irq() error
  Input: ep93xx_keypad - fix handling of platform_get_irq() error
  Input: stmfts - fix a & vs && typo
  Input: imx6ul_tsc - clean up some errors in imx6ul_tsc_resume()
  SUNRPC: fix copying of multiple pages in gss_read_proxy_verf()
  clk: imx8mq: Fix usdhc parents order
  vfio iommu type1: Fix memory leak in vfio_iommu_type1_pin_pages
  vfio/pci: Clear token on bypass registration failure
  ext4: limit entries returned when counting fsmap records
  svcrdma: fix bounce buffers for unaligned offsets and multiple pages
  watchdog: sp5100: Fix definition of EFCH_PM_DECODEEN3
  watchdog: Use put_device on error
  watchdog: Fix memleak in watchdog_cdev_register
  clk: bcm2835: add missing release if devm_clk_hw_register fails
  clk: at91: clk-main: update key before writing AT91_CKGR_MOR
  module: statically initialize init section freeing data
  clk: mediatek: add UART0 clock support
  clk: rockchip: Initialize hw to error to avoid undefined behavior
  pwm: img: Fix null pointer access in probe
  clk: keystone: sci-clk: fix parsing assigned-clock data during probe
  clk: qcom: gcc-sdm660: Fix wrong parent_map
  vfio/pci: Decouple PCI_COMMAND_MEMORY bit checks from is_virtfn
  PCI/IOV: Mark VFs as not implementing PCI_COMMAND_MEMORY
  rpmsg: smd: Fix a kobj leak in in qcom_smd_parse_edge()
  PCI: iproc: Set affinity mask on MSI interrupts
  PCI: aardvark: Check for errors from pci_bridge_emul_init() call
  clk: meson: g12a: mark fclk_div2 as critical
  i2c: rcar: Auto select RESET_CONTROLLER
  mailbox: avoid timer start from callback
  rapidio: fix the missed put_device() for rio_mport_add_riodev
  rapidio: fix error handling path
  ramfs: fix nommu mmap with gaps in the page cache
  lib/crc32.c: fix trivial typo in preprocessor condition
  mm/page_owner: change split_page_owner to take a count
  RDMA/rxe: Handle skb_clone() failure in rxe_recv.c
  f2fs: wait for sysfs kobject removal before freeing f2fs_sb_info
  selftests/powerpc: Fix eeh-basic.sh exit codes
  maiblox: mediatek: Fix handling of platform_get_irq() error
  RDMA/rxe: Fix skb lifetime in rxe_rcv_mcast_pkt()
  IB/rdmavt: Fix sizeof mismatch
  cpufreq: powernv: Fix frame-size-overflow in powernv_cpufreq_reboot_notifier
  i3c: master: Fix error return in cdns_i3c_master_probe()
  powerpc/perf/hv-gpci: Fix starting index value
  powerpc/perf: Exclude pmc5/6 from the irrelevant PMU group constraints
  RDMA/ipoib: Set rtnl_link_ops for ipoib interfaces
  overflow: Include header file with SIZE_MAX declaration
  kdb: Fix pager search for multi-line strings
  mtd: spinand: gigadevice: Add QE Bit
  mtd: spinand: gigadevice: Only one dummy byte in QUADIO
  mtd: rawnand: vf610: disable clk on error handling path in probe
  RDMA/hns: Fix missing sq_sig_type when querying QP
  RDMA/hns: Fix the wrong value of rnr_retry when querying qp
  perf stat: Skip duration_time in setup_system_wide
  i40iw: Add support to make destroy QP synchronous
  RDMA/mlx5: Disable IB_DEVICE_MEM_MGT_EXTENSIONS if IB_WR_REG_MR can't work
  RDMA/hns: Set the unsupported wr opcode
  perf intel-pt: Fix "context_switch event has no tid" error
  RDMA/cma: Consolidate the destruction of a cma_multicast in one place
  RDMA/cma: Remove dead code for kernel rdmacm multicast
  powerpc/64s/radix: Fix mm_cpumask trimming race vs kthread_use_mm
  powerpc/tau: Disable TAU between measurements
  powerpc/tau: Check processor type before enabling TAU interrupt
  powerpc/tau: Remove duplicated set_thresholds() call
  powerpc/tau: Convert from timer to workqueue
  powerpc/tau: Use appropriate temperature sample interval
  powerpc/book3s64/hash/4k: Support large linear mapping range with 4K
  RDMA/qedr: Fix inline size returned for iWARP
  RDMA/qedr: Fix return code if accept is called on a destroyed qp
  RDMA/qedr: Fix use of uninitialized field
  RDMA/qedr: Fix qp structure memory leak
  RDMA/umem: Prevent small pages from being returned by ib_umem_find_best_pgsz()
  RDMA/umem: Fix ib_umem_find_best_pgsz() for mappings that cross a page boundary
  xfs: fix high key handling in the rt allocator's query_range function
  xfs: fix deadlock and streamline xfs_getfsmap performance
  xfs: limit entries returned when counting fsmap records
  ida: Free allocated bitmap in error path
  arc: plat-hsdk: fix kconfig dependency warning when !RESET_CONTROLLER
  ARM: 9007/1: l2c: fix prefetch bits init in L2X0_AUX_CTRL using DT values
  mtd: mtdoops: Don't write panic data twice
  RDMA/mlx5: Fix potential race between destroy and CQE poll
  pseries/drmem: don't cache node id in drmem_lmb struct
  powerpc/pseries: explicitly reschedule during drmem_lmb list traversal
  RDMA/umem: Fix signature of stub ib_umem_find_best_pgsz()
  RDMA/hns: Add a check for current state before modifying QP
  mtd: lpddr: fix excessive stack usage with clang
  RDMA/ucma: Add missing locking around rdma_leave_multicast()
  RDMA/ucma: Fix locking for ctx->events_reported
  powerpc/icp-hv: Fix missing of_node_put() in success path
  powerpc/pseries: Fix missing of_node_put() in rng_init()
  IB/mlx4: Adjust delayed work when a dup is observed
  IB/mlx4: Fix starvation in paravirt mux/demux
  i3c: master add i3c_master_attach_boardinfo to preserve boardinfo
  selftests/ftrace: Change synthetic event name for inter-event-combined test
  fs: fix NULL dereference due to data race in prepend_path()
  mm, oom_adj: don't loop through tasks in __set_oom_adj when not necessary
  mm/memcg: fix device private memcg accounting
  mm/swapfile.c: fix potential memory leak in sys_swapon
  netfilter: nf_log: missing vlan offload tag and proto
  net: korina: fix kfree of rx/tx descriptor array
  ipvs: clear skb->tstamp in forwarding path
  mwifiex: fix double free
  platform/x86: mlx-platform: Remove PSU EEPROM configuration
  ipmi_si: Fix wrong return value in try_smi_init()
  scsi: be2iscsi: Fix a theoretical leak in beiscsi_create_eqs()
  scsi: target: tcmu: Fix warning: 'page' may be used uninitialized
  usb: dwc2: Fix INTR OUT transfers in DDMA mode.
  nl80211: fix non-split wiphy information
  usb: gadget: u_ether: enable qmult on SuperSpeed Plus as well
  usb: gadget: f_ncm: fix ncm_bitrate for SuperSpeed and above.
  iwlwifi: mvm: split a print to avoid a WARNING in ROC
  mfd: sm501: Fix leaks in probe()
  net: enic: Cure the enic api locking trainwreck
  iio: adc: stm32-adc: fix runtime autosuspend delay when slow polling
  qtnfmac: fix resource leaks on unsupported iftype error return path
  ibmvnic: set up 200GBPS speed
  coresight: etm: perf: Fix warning caused by etm_setup_aux failure
  nl80211: fix OBSS PD min and max offset validation
  nvmem: core: fix possibly memleak when use nvmem_cell_info_to_nvmem_cell()
  HID: hid-input: fix stylus battery reporting
  ASoC: fsl_sai: Instantiate snd_soc_dai_driver
  slimbus: qcom-ngd-ctrl: disable ngd in qmi server down callback
  slimbus: core: do not enter to clock pause mode in core
  slimbus: core: check get_addr before removing laddr ida
  quota: clear padding in v2r1_mem2diskdqb()
  usb: dwc2: Fix parameter type in function pointer prototype
  ALSA: seq: oss: Avoid mutex lock for a long-time ioctl
  misc: mic: scif: Fix error handling path
  dmaengine: dmatest: Check list for emptiness before access its last entry
  ath6kl: wmi: prevent a shift wrapping bug in ath6kl_wmi_delete_pstream_cmd()
  spi: omap2-mcspi: Improve performance waiting for CHSTAT
  net: dsa: rtl8366rb: Support all 4096 VLANs
  ASoC: tlv320aic32x4: Fix bdiv clock rate derivation
  net: wilc1000: clean up resource in error path of init mon interface
  net: dsa: rtl8366: Skip PVID setting if not requested
  net: dsa: rtl8366: Refactor VLAN/PVID init
  net: dsa: rtl8366: Check validity of passed VLANs
  xhci: don't create endpoint debugfs entry before ring buffer is set.
  coresight: etm4x: Handle unreachable sink in perf mode
  drm: mxsfb: check framebuffer pitch
  cpufreq: armada-37xx: Add missing MODULE_DEVICE_TABLE
  net: stmmac: use netif_tx_start|stop_all_queues() function
  scsi: mpt3sas: Fix sync irqs
  net/mlx5: Don't call timecounter cyc2time directly from 1PPS flow
  pinctrl: mcp23s08: Fix mcp23x17 precious range
  pinctrl: mcp23s08: Fix mcp23x17_regmap initialiser
  iomap: Clear page error before beginning a write
  drm/panfrost: Ensure GPU quirks are always initialised
  drm/msm: Avoid div-by-zero in dpu_crtc_atomic_check()
  HID: roccat: add bounds checking in kone_sysfs_write_settings()
  ASoC: fsl: imx-es8328: add missing put_device() call in imx_es8328_probe()
  video: fbdev: radeon: Fix memleak in radeonfb_pci_register
  video: fbdev: sis: fix null ptr dereference
  video: fbdev: vga16fb: fix setting of pixclock because a pass-by-value error
  drivers/virt/fsl_hypervisor: Fix error handling path
  pwm: lpss: Add range limit check for the base_unit register value
  pwm: lpss: Fix off by one error in base_unit math in pwm_lpss_prepare()
  pty: do tty_flip_buffer_push without port->lock in pty_write
  tty: hvcs: Don't NULL tty->driver_data until hvcs_cleanup()
  tty: serial: earlycon dependency
  binder: Remove bogus warning on failed same-process transaction
  drm/crc-debugfs: Fix memleak in crc_control_write
  drm: panel: Fix bpc for OrtusTech COM43H4M85ULC panel
  mm/error_inject: Fix allow_error_inject function signatures.
  VMCI: check return value of get_user_pages_fast() for errors
  staging: emxx_udc: Fix passing of NULL to dma_alloc_coherent()
  backlight: sky81452-backlight: Fix refcount imbalance on error
  scsi: csiostor: Fix wrong return value in csio_hw_prep_fw()
  scsi: qla2xxx: Fix wrong return value in qla_nvme_register_hba()
  scsi: qla2xxx: Fix wrong return value in qlt_chk_unresolv_exchg()
  scsi: qla4xxx: Fix an error handling path in 'qla4xxx_get_host_stats()'
  drm/gma500: fix error check
  staging: rtl8192u: Do not use GFP_KERNEL in atomic context
  mwifiex: Do not use GFP_KERNEL in atomic context
  brcmfmac: check ndev pointer
  ASoC: qcom: lpass-cpu: fix concurrency issue
  ASoC: qcom: lpass-platform: fix memory leak
  wcn36xx: Fix reported 802.11n rx_highest rate wcn3660/wcn3680
  ath10k: Fix the size used in a 'dma_free_coherent()' call in an error handling path
  ath9k: Fix potential out of bounds in ath9k_htc_txcompletion_cb()
  ath6kl: prevent potential array overflow in ath6kl_add_new_sta()
  drm: panel: Fix bus format for OrtusTech COM43H4M85ULC panel
  drm/amd/display: Fix wrong return value in dm_update_plane_state()
  Bluetooth: hci_uart: Cancel init work before unregistering
  drm/vkms: fix xrgb on compute crc
  ath10k: provide survey info as accumulated data
  blk-mq: move cancel of hctx->run_work to the front of blk_exit_queue
  spi: spi-s3c64xx: Check return values
  spi: spi-s3c64xx: swap s3c64xx_spi_set_cs() and s3c64xx_enable_datapath()
  pinctrl: bcm: fix kconfig dependency warning when !GPIOLIB
  regulator: resolve supply after creating regulator
  media: ti-vpe: Fix a missing check and reference count leak
  media: stm32-dcmi: Fix a reference count leak
  media: s5p-mfc: Fix a reference count leak
  media: camss: Fix a reference count leak.
  media: platform: fcp: Fix a reference count leak.
  media: rockchip/rga: Fix a reference count leak.
  media: rcar-vin: Fix a reference count leak.
  media: tc358743: cleanup tc358743_cec_isr
  media: tc358743: initialize variable
  media: mx2_emmaprp: Fix memleak in emmaprp_probe
  cypto: mediatek - fix leaks in mtk_desc_ring_alloc
  hwmon: (pmbus/max34440) Fix status register reads for MAX344{51,60,61}
  crypto: omap-sham - fix digcnt register handling with export/import
  media: rcar-csi2: Allocate v4l2_async_subdev dynamically
  media: rcar_drif: Allocate v4l2_async_subdev dynamically
  media: rcar_drif: Fix fwnode reference leak when parsing DT
  media: i2c: ov5640: Enable data pins on poweron for DVP mode
  media: i2c: ov5640: Separate out mipi configuration from s_power
  media: i2c: ov5640: Remain in power down for DVP mode unless streaming
  media: omap3isp: Fix memleak in isp_probe
  media: staging/intel-ipu3: css: Correctly reset some memory
  media: uvcvideo: Silence shift-out-of-bounds warning
  media: uvcvideo: Set media controller entity functions
  media: m5mols: Check function pointer in m5mols_sensor_power
  media: ov5640: Correct Bit Div register in clock tree diagram
  media: Revert "media: exynos4-is: Add missed check for pinctrl_lookup_state()"
  media: tuner-simple: fix regression in simple_set_radio_freq
  crypto: picoxcell - Fix potential race condition bug
  crypto: ixp4xx - Fix the size used in a 'dma_free_coherent()' call
  crypto: mediatek - Fix wrong return value in mtk_desc_ring_alloc()
  crypto: algif_skcipher - EBUSY on aio should be an error
  x86/events/amd/iommu: Fix sizeof mismatch
  x86/nmi: Fix nmi_handle() duration miscalculation
  perf/x86/intel/uncore: Reduce the number of CBOX counters
  perf/x86/intel/uncore: Update Ice Lake uncore units
  sched/fair: Fix wrong cpu selecting from isolated domain
  drivers/perf: thunderx2_pmu: Fix memory resource error handling
  drivers/perf: xgene_pmu: Fix uninitialized resource struct
  x86/fpu: Allow multiple bits in clearcpuid= parameter
  perf/x86/intel/ds: Fix x86_pmu_stop warning for large PEBS
  EDAC/ti: Fix handling of platform_get_irq() error
  EDAC/aspeed: Fix handling of platform_get_irq() error
  EDAC/i5100: Fix error handling order in i5100_init_one()
  crypto: caam/qi - add fallback for XTS with more than 8B IV
  crypto: algif_aead - Do not set MAY_BACKLOG on the async path
  ima: Don't ignore errors from crypto_shash_update()
  KVM: SVM: Initialize prev_ga_tag before use
  KVM: x86/mmu: Commit zap of remaining invalid pages when recovering lpages
  KVM: nVMX: Reload vmcs01 if getting vmcs12's pages fails
  KVM: nVMX: Reset the segment cache when stuffing guest segs
  SMB3: Resolve data corruption of TCP server info fields
  cifs: Return the error from crypt_message when enc/dec key not found.
  cifs: remove bogus debug code
  ALSA: hda/realtek: Enable audio jacks of ASUS D700SA with ALC887
  ALSA: hda/realtek - Add mute Led support for HP Elitebook 845 G7
  ALSA: hda/realtek - set mic to auto detect on a HP AIO machine
  ALSA: hda/realtek - The front Mic on a HP machine doesn't work
  icmp: randomize the global rate limiter
  tcp: fix to update snd_wl1 in bulk receiver fast path
  selftests: rtnetlink: load fou module for kci_test_encap_fou() test
  selftests: forwarding: Add missing 'rp_filter' configuration
  r8169: fix operation under forced interrupt threading
  nfc: Ensure presence of NFC_ATTR_FIRMWARE_NAME attribute in nfc_genl_fw_download()
  nexthop: Fix performance regression in nexthop deletion
  net/sched: act_tunnel_key: fix OOB write in case of IPv6 ERSPAN tunnels
  net: Properly typecast int values to set sk_max_pacing_rate
  net: hdlc_raw_eth: Clear the IFF_TX_SKB_SHARING flag after calling ether_setup
  net: hdlc: In hdlc_rcv, check to make sure dev is an HDLC device
  net: ftgmac100: Fix Aspeed ast2600 TX hang issue
  ibmvnic: save changed mac address to adapter->mac_addr
  chelsio/chtls: correct function return and return type
  chelsio/chtls: correct netdevice for vlan interface
  chelsio/chtls: fix socket lock
  nvme-pci: disable the write zeros command for Intel 600P/P3100
  ALSA: hda/hdmi: fix incorrect locking in hdmi_pcm_close
  ALSA: hda: fix jack detection with Realtek codecs when in D3
  ALSA: bebob: potential info leak in hwdep_read()
  binder: fix UAF when releasing todo list
  cxgb4: handle 4-tuple PEDIT to NAT mode translation
  r8169: fix data corruption issue on RTL8402
  net_sched: remove a redundant goto chain check
  net/ipv4: always honour route mtu during forwarding
  net: j1939: j1939_session_fresh_new(): fix missing initialization of skbcnt
  can: j1935: j1939_tp_tx_dat_new(): fix missing initialization of skbcnt
  can: m_can_platform: don't call m_can_class_suspend in runtime suspend
  socket: fix option SO_TIMESTAMPING_NEW
  tipc: fix the skb_unshare() in tipc_buf_append()
  net: usb: qmi_wwan: add Cellient MPL200 card
  net/tls: sendfile fails with ktls offload
  net/smc: fix valid DMBE buffer sizes
  net: fix pos incrementment in ipv6_route_seq_next
  net: fec: Fix PHY init after phy_reset_after_clk_enable()
  net: fec: Fix phy_device lookup for phy_reset_after_clk_enable()
  mlx4: handle non-napi callers to napi_poll
  ipv4: Restore flowi4_oif update before call to xfrm_lookup_route
  ibmveth: Identify ingress large send packets.
  ibmveth: Switch order of ibmveth_helper calls.
  Linux 5.4.72
  crypto: qat - check cipher length for aead AES-CBC-HMAC-SHA
  crypto: bcm - Verify GCM/CCM key length in setkey
  xen/events: don't use chip_data for legacy IRQs
  reiserfs: Fix oops during mount
  reiserfs: Initialize inode keys properly
  USB: serial: ftdi_sio: add support for FreeCalypso JTAG+UART adapters
  USB: serial: pl2303: add device-id for HP GC device
  staging: comedi: check validity of wMaxPacketSize of usb endpoints found
  USB: serial: option: Add Telit FT980-KS composition
  USB: serial: option: add Cellient MPL200 card
  media: usbtv: Fix refcounting mixup
  Bluetooth: Disconnect if E0 is used for Level 4
  Bluetooth: Fix update of connection state in `hci_encrypt_cfm`
  Bluetooth: Consolidate encryption handling in hci_encrypt_cfm
  Bluetooth: MGMT: Fix not checking if BT_HS is enabled
  Bluetooth: L2CAP: Fix calling sk_filter on non-socket based channel
  Bluetooth: A2MP: Fix not initializing all members
  ACPI: Always build evged in
  ARM: 8939/1: kbuild: use correct nm executable
  btrfs: take overcommit into account in inc_block_group_ro
  btrfs: don't pass system_chunk into can_overcommit
  perf cs-etm: Move definition of 'traceid_list' global variable from header file
  Linux 5.4.71
  net_sched: commit action insertions together
  net_sched: defer tcf_idr_insert() in tcf_action_init_1()
  net: usb: rtl8150: set random MAC address when set_ethernet_addr() fails
  Input: ati_remote2 - add missing newlines when printing module parameters
  net/mlx5e: Fix driver's declaration to support GRE offload
  net/tls: race causes kernel panic
  net/core: check length before updating Ethertype in skb_mpls_{push,pop}
  tcp: fix receive window update in tcp_add_backlog()
  mm: khugepaged: recalculate min_free_kbytes after memory hotplug as expected by khugepaged
  mmc: core: don't set limits.discard_granularity as 0
  perf: Fix task_function_call() error handling
  rxrpc: Fix server keyring leak
  rxrpc: The server keyring isn't network-namespaced
  rxrpc: Fix some missing _bh annotations on locking conn->state_lock
  rxrpc: Downgrade the BUG() for unsupported token type in rxrpc_read()
  rxrpc: Fix rxkad token xdr encoding
  net/mlx5e: Fix VLAN create flow
  net/mlx5e: Fix VLAN cleanup flow
  net/mlx5e: Add resiliency in Striding RQ mode for packets larger than MTU
  net/mlx5: Fix request_irqs error flow
  net/mlx5: Avoid possible free of command entry while timeout comp handler
  virtio-net: don't disable guest csum when disable LRO
  net: usb: ax88179_178a: fix missing stop entry in driver_info
  r8169: fix RTL8168f/RTL8411 EPHY config
  mlxsw: spectrum_acl: Fix mlxsw_sp_acl_tcam_group_add()'s error path
  mdio: fix mdio-thunder.c dependency & build error
  bonding: set dev->needed_headroom in bond_setup_by_slave()
  net: ethernet: cavium: octeon_mgmt: use phy_start and phy_stop
  iavf: Fix incorrect adapter get in iavf_resume
  iavf: use generic power management
  xfrm: Use correct address family in xfrm_state_find
  platform/x86: fix kconfig dependency warning for FUJITSU_LAPTOP
  net: stmmac: removed enabling eee in EEE set callback
  xfrm: clone whole liftime_cur structure in xfrm_do_migrate
  xfrm: clone XFRMA_SEC_CTX in xfrm_do_migrate
  xfrm: clone XFRMA_REPLAY_ESN_VAL in xfrm_do_migrate
  xfrm: clone XFRMA_SET_MARK in xfrm_do_migrate
  iommu/vt-d: Fix lockdep splat in iommu_flush_dev_iotlb()
  drm/amdgpu: prevent double kfree ttm->sg
  openvswitch: handle DNAT tuple collision
  net: team: fix memory leak in __team_options_register
  team: set dev->needed_headroom in team_setup_by_port()
  sctp: fix sctp_auth_init_hmacs() error path
  i2c: owl: Clear NACK and BUS error bits
  i2c: meson: fixup rate calculation with filter delay
  i2c: meson: fix clock setting overwrite
  cifs: Fix incomplete memory allocation on setxattr path
  xfrmi: drop ignore_df check before updating pmtu
  nvme-tcp: check page by sendpage_ok() before calling kernel_sendpage()
  tcp: use sendpage_ok() to detect misused .sendpage
  net: introduce helper sendpage_ok() in include/linux/net.h
  mm/khugepaged: fix filemap page_to_pgoff(page) != offset
  macsec: avoid use-after-free in macsec_handle_frame()
  nvme-core: put ctrl ref when module ref get fail
  btrfs: allow btrfs_truncate_block() to fallback to nocow for data space reservation
  btrfs: fix RWF_NOWAIT write not failling when we need to cow
  btrfs: Ensure we trim ranges across block group boundary
  btrfs: volumes: Use more straightforward way to calculate map length
  Btrfs: send, fix emission of invalid clone operations within the same file
  Btrfs: send, allow clone operations within the same file
  arm64: dts: stratix10: add status to qspi dts node
  i2c: i801: Exclude device from suspend direct complete optimization
  perf top: Fix stdio interface input handling with glibc 2.28+
  perf test session topology: Fix data path
  driver core: Fix probe_count imbalance in really_probe()
  platform/x86: thinkpad_acpi: re-initialize ACPI buffer size when reuse
  platform/x86: intel-vbtn: Switch to an allow-list for SW_TABLET_MODE reporting
  bpf: Prevent .BTF section elimination
  bpf: Fix sysfs export of empty BTF section
  platform/x86: thinkpad_acpi: initialize tp_nvram_state variable
  platform/x86: intel-vbtn: Fix SW_TABLET_MODE always reporting 1 on the HP Pavilion 11 x360
  Platform: OLPC: Fix memleak in olpc_ec_probe
  usermodehelper: reset umask to default before executing user process
  vhost: Use vhost_get_used_size() in vhost_vring_set_addr()
  vhost: Don't call access_ok() when using IOTLB
  drm/nouveau/mem: guard against NULL pointer access in mem_del
  net: wireless: nl80211: fix out-of-bounds access in nl80211_del_key()
  io_uring: Fix double list add in io_queue_async_work()
  io_uring: Fix remove irrelevant req from the task_list
  io_uring: Fix missing smp_mb() in io_cancel_async_work()
  io_uring: Fix resource leaking when kill the process
  Revert "ravb: Fixed to be able to unload modules"
  fbcon: Fix global-out-of-bounds read in fbcon_get_font()
  Fonts: Support FONT_EXTRA_WORDS macros for built-in fonts
  fbdev, newport_con: Move FONT_EXTRA_WORDS macros into linux/font.h
  Linux 5.4.70
  netfilter: ctnetlink: add a range check for l3/l4 protonum
  ep_create_wakeup_source(): dentry name can change under you...
  epoll: EPOLL_CTL_ADD: close the race in decision to take fast path
  epoll: replace ->visited/visited_list with generation count
  epoll: do not insert into poll queues until all sanity checks are done
  nvme: consolidate chunk_sectors settings
  nvme: Introduce nvme_lba_to_sect()
  nvme: Cleanup and rename nvme_block_nr()
  mm: don't rely on system state to detect hot-plug operations
  mm: replace memmap_context by meminit_context
  block/diskstats: more accurate approximation of io_ticks for slow disks
  random32: Restore __latent_entropy attribute on net_rand_state
  scripts/dtc: only append to HOST_EXTRACFLAGS instead of overwriting
  Input: trackpoint - enable Synaptics trackpoints
  i2c: cpm: Fix i2c_ram structure
  gpio: aspeed: fix ast2600 bank properties
  gpio/aspeed-sgpio: don't enable all interrupts by default
  gpio/aspeed-sgpio: enable access to all 80 input & output sgpios
  iommu/exynos: add missing put_device() call in exynos_iommu_of_xlate()
  clk: samsung: exynos4: mark 'chipid' clock as CLK_IGNORE_UNUSED
  clk: tegra: Always program PLL_E when enabled
  nfs: Fix security label length not being reset
  pinctrl: mvebu: Fix i2c sda definition for 98DX3236
  phy: ti: am654: Fix a leak in serdes_am654_probe()
  gpio: sprd: Clear interrupt when setting the type as edge
  nvme-fc: fail new connections to a deleted host or remote port
  nvme-pci: fix NULL req in completion handler
  spi: fsl-espi: Only process interrupts for expected events
  tools/io_uring: fix compile breakage
  tracing: Make the space reserved for the pid wider
  mac80211: do not allow bigger VHT MPDUs than the hardware supports
  mac80211: Fix radiotap header channel flag for 6GHz band
  drivers/net/wan/hdlc: Set skb->protocol before transmitting
  drivers/net/wan/lapbether: Make skb->protocol consistent with the header
  fuse: fix the ->direct_IO() treatment of iov_iter
  nvme-core: get/put ctrl and transport module in nvme_dev_open/release()
  rndis_host: increase sleep time in the query-response loop
  net: dec: de2104x: Increase receive ring size for Tulip
  drm/sun4i: mixer: Extend regmap max_register
  drivers/net/wan/hdlc_fr: Add needed_headroom for PVC devices
  libbpf: Remove arch-specific include path in Makefile
  clocksource/drivers/timer-gx6605s: Fixup counter reload
  drm/amdgpu: restore proper ref count in amdgpu_display_crtc_set_config
  memstick: Skip allocating card when removing host
  ftrace: Move RCU is watching check after recursion check
  iio: adc: qcom-spmi-adc5: fix driver name
  Input: i8042 - add nopnp quirk for Acer Aspire 5 A515
  xfs: trim IO to found COW extent limit
  net: virtio_vsock: Enhance connection semantics
  vsock/virtio: add transport parameter to the virtio_transport_reset_no_sock()
  clk: socfpga: stratix10: fix the divider for the emac_ptp_free_clk
  gpio: tc35894: fix up tc35894 interrupt configuration
  gpio: mockup: fix resource leak in error path
  gpio: siox: explicitly support only threaded irqs
  USB: gadget: f_ncm: Fix NDP16 datagram validation
  mmc: sdhci: Workaround broken command queuing on Intel GLK based IRBIS models
  btrfs: fix filesystem corruption after a device replace
  Revert "opp: Replace list_kref with a local counter"
  Revert "opp: Increase parsed_static_opps in _of_add_opp_table_v1()"
  Revert "mmc: core: Fix size overflow for mmc partitions"
  Revert "exec: Add exec_update_mutex to replace cred_guard_mutex"
  Revert "exec: Fix a deadlock in strace"
  Revert "selftests/ptrace: add test cases for dead-locks"
  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 "perf: Use new infrastructure to fix deadlocks in execve"
  Linux 5.4.69
  ata: sata_mv, avoid trigerrable BUG_ON
  ata: make qc_prep return ata_completion_errors
  ata: define AC_ERR_OK
  kprobes: Fix compiler warning for !CONFIG_KPROBES_ON_FTRACE
  dm: fix bio splitting and its bio completion order for regular IO
  KVM: arm64: Assume write fault on S1PTW permission fault on instruction fetch
  s390/zcrypt: Fix ZCRYPT_PERDEV_REQCNT ioctl
  mm/gup: fix gup_fast with dynamic page table folding
  mm, THP, swap: fix allocating cluster for swapfile by mistake
  dmabuf: fix NULL pointer dereference in dma_buf_release()
  btrfs: fix overflow when copying corrupt csums for a message
  kprobes: tracing/kprobes: Fix to kill kprobes on initmem after boot
  kprobes: Fix to check probe enabled before disarm_kprobe_ftrace()
  s390/dasd: Fix zero write for FBA devices
  tracing: fix double free
  lib/string.c: implement stpcpy
  ALSA: hda/realtek: Enable front panel headset LED on Lenovo ThinkStation P520
  ALSA: hda/realtek - Couldn't detect Mic if booting with headset plugged
  ALSA: usb-audio: Add delay quirk for H570e USB headsets
  scsi: lpfc: Fix initial FLOGI failure due to BBSCN not supported
  x86/ioapic: Unbreak check_timer()
  arch/x86/lib/usercopy_64.c: fix __copy_user_flushcache() cache writeback
  mm: validate pmd after splitting
  KVM: SVM: Add a dedicated INVD intercept routine
  KVM: x86: Reset MMU context if guest toggles CR4.SMAP or CR4.PKE
  regulator: axp20x: fix LDO2/4 description
  MIPS: Add the missing 'CPU_1074K' into __get_cpu_type()
  regmap: fix page selection for noinc writes
  regmap: fix page selection for noinc reads
  ALSA: asihpi: fix iounmap in error handler
  lib80211: fix unmet direct dependendices config warning when !CRYPTO
  bpf: Fix a rcu warning for bpffs map pretty-print
  batman-adv: mcast: fix duplicate mcast packets from BLA backbone to mesh
  batman-adv: mcast: fix duplicate mcast packets in BLA backbone from mesh
  batman-adv: mcast: fix duplicate mcast packets in BLA backbone from LAN
  nvme-tcp: fix kconfig dependency warning when !CRYPTO
  batman-adv: Add missing include for in_interrupt()
  drm/sun4i: sun8i-csc: Secondary CSC register correction
  net: qed: RDMA personality shouldn't fail VF load
  net: qede: Disable aRFS for NPAR and 100G
  net: qed: Disable aRFS for NPAR and 100G
  drm/vc4/vc4_hdmi: fill ASoC card owner
  bpf: Fix clobbering of r2 in bpf_gen_ld_abs
  mac802154: tx: fix use-after-free
  netfilter: conntrack: nf_conncount_init is failing with IPv6 disabled
  batman-adv: mcast/TT: fix wrongly dropped or rerouted packets
  atm: eni: fix the missed pci_disable_device() for eni_init_one()
  batman-adv: bla: fix type misuse for backbone_gw hash indexing
  mwifiex: Increase AES key storage size to 256 bits
  clocksource/drivers/h8300_timer8: Fix wrong return value in h8300_8timer_init()
  ieee802154/adf7242: check status of adf7242_read_reg
  ieee802154: fix one possible memleak in ca8210_dev_com_init
  objtool: Fix noreturn detection for ignored functions
  i2c: core: Call i2c_acpi_install_space_handler() before i2c_acpi_register_devices()
  drm/amdgpu/dc: Require primary plane to be enabled whenever the CRTC is
  drm/amd/display: update nv1x stutter latencies
  drm/amdkfd: fix a memory leak issue
  EDAC/ghes: Check whether the driver is on the safe list correctly
  lockdep: fix order in trace_hardirqs_off_caller()
  s390/init: add missing __init annotations
  i2c: aspeed: Mask IRQ status to relevant bits
  RISC-V: Take text_mutex in ftrace_init_nop()
  ASoC: Intel: bytcr_rt5640: Add quirk for MPMAN Converter9 2-in-1
  ASoC: wm8994: Ensure the device is resumed in wm89xx_mic_detect functions
  ASoC: wm8994: Skip setting of the WM8994_MICBIAS register for WM1811
  ASoC: pcm3168a: ignore 0 Hz settings
  device_cgroup: Fix RCU list debugging warning
  nvme: explicitly update mpath disk capacity on revalidation
  net: openvswitch: use div_u64() for 64-by-32 divisions
  ALSA: hda: Workaround for spurious wakeups on some Intel platforms
  ALSA: hda: Always use jackpoll helper for jack update after resume
  perf parse-events: Use strcmp() to compare the PMU name
  opp: Increase parsed_static_opps in _of_add_opp_table_v1()
  mt76: fix LED link time failure
  ubi: fastmap: Free unused fastmap anchor peb during detach
  scsi: qla2xxx: Retry PLOGI on FC-NVMe PRLI failure
  perf tests: Fix test 68 zstd compression for s390
  btrfs: qgroup: fix data leak caused by race between writeback and truncate
  vfio/pci: fix racy on error and request eventfd ctx
  selftests/x86/syscall_nt: Clear weird flags after each test
  scsi: libfc: Skip additional kref updating work event
  scsi: libfc: Handling of extra kref
  mac80211: skip mpath lookup also for control port tx
  nvme: fix possible deadlock when I/O is blocked
  cifs: Fix double add page to memcg when cifs_readpages
  vfio/pci: Clear error and request eventfd ctx after releasing
  NFS: nfs_xdr_status should record the procedure name
  x86/speculation/mds: Mark mds_user_clear_cpu_buffers() __always_inline
  mtd: parser: cmdline: Support MTD names containing one or more colons
  rapidio: avoid data race between file operation callbacks and mport_cdev_add().
  mm: memcontrol: fix stat-corrupting race in charge moving
  mm/swap_state: fix a data race in swapin_nr_pages
  ceph: fix potential race in ceph_check_caps
  PCI: tegra: Fix runtime PM imbalance on error
  mtd: rawnand: omap_elm: Fix runtime PM imbalance on error
  mtd: rawnand: gpmi: Fix runtime PM imbalance on error
  wlcore: fix runtime pm imbalance in wlcore_regdomain_config
  wlcore: fix runtime pm imbalance in wl1271_tx_work
  ASoC: img-i2s-out: Fix runtime PM imbalance on error
  PCI: tegra194: Fix runtime PM imbalance on error
  perf kcore_copy: Fix module map when there are no modules loaded
  perf metricgroup: Free metric_events on error
  perf util: Fix memory leak of prefix_if_not_in
  perf stat: Fix duration_time value for higher intervals
  perf trace: Fix the selection for architectures to generate the errno name tables
  perf evsel: Fix 2 memory leaks
  KVM: PPC: Book3S HV: Close race with page faults around memslot flushes
  vfio/pci: fix memory leaks of eventfd ctx
  gpio: rcar: Fix runtime PM imbalance on error
  btrfs: fix double __endio_write_update_ordered in direct I/O
  btrfs: don't force read-only after error in drop snapshot
  usb: dwc3: Increase timeout for CmdAct cleared by device controller
  printk: handle blank console arguments passed in.
  drm/nouveau/dispnv50: fix runtime pm imbalance on error
  drm/nouveau: fix runtime pm imbalance on error
  drm/nouveau/debugfs: fix runtime pm imbalance on error
  e1000: Do not perform reset in reset_task if we are already down
  drm/amdkfd: fix restore worker race condition
  arm64/cpufeature: Drop TraceFilt feature exposure from ID_DFR0 register
  scsi: cxlflash: Fix error return code in cxlflash_probe()
  arm64: acpi: Make apei_claim_sea() synchronise with APEI's irq work
  coresight: etm4x: Fix use-after-free of per-cpu etm drvdata
  USB: EHCI: ehci-mv: fix less than zero comparison of an unsigned int
  fuse: update attr_version counter on fuse_notify_inval_inode()
  fuse: don't check refcount after stealing page
  svcrdma: Fix backchannel return code
  powerpc/traps: Make unrecoverable NMIs die instead of panic
  ipmi:bt-bmc: Fix error handling and status check
  drm/exynos: dsi: Remove bridge node reference in error handling path in probe function
  ALSA: hda: Fix potential race in unsol event handler
  tty: serial: samsung: Correct clock selection logic
  tipc: fix memory leak in service subscripting
  KVM: x86: handle wrap around 32-bit address space
  USB: EHCI: ehci-mv: fix error handling in mv_ehci_probe()
  Bluetooth: Handle Inquiry Cancel error after Inquiry Complete
  phy: samsung: s5pv210-usb2: Add delay after reset
  power: supply: max17040: Correct voltage reading
  i2c: tegra: Restore pinmux on system resume
  mm/slub: fix incorrect interpretation of s->offset
  perf mem2node: Avoid double free related to realloc
  media: venus: vdec: Init registered list unconditionally
  atm: fix a memory leak of vcc->user_back
  devlink: Fix reporter's recovery condition
  dt-bindings: sound: wm8994: Correct required supplies based on actual implementaion
  dpaa2-eth: fix error return code in setup_dpni()
  sched/fair: Eliminate bandwidth race between throttling and distribution
  arm64: cpufeature: Relax checks for AArch32 support at EL[0-2]
  sparc64: vcc: Fix error return code in vcc_probe()
  staging:r8188eu: avoid skb_clone for amsdu to msdu conversion
  scsi: aacraid: Fix error handling paths in aac_probe_one()
  net: openvswitch: use u64 for meter bucket
  KVM: arm64: vgic-its: Fix memory leak on the error path of vgic_add_lpi()
  KVM: arm64: vgic-v3: Retire all pending LPIs on vcpu destroy
  drivers: char: tlclk.c: Avoid data race between init and interrupt handler
  bdev: Reduce time holding bd_mutex in sync in blkdev_close()
  perf stat: Force error in fallback on :k events
  KVM: Remove CREATE_IRQCHIP/SET_PIT2 race
  btrfs: fix setting last_trans for reloc roots
  serial: uartps: Wait for tx_empty in console setup
  scsi: qedi: Fix termination timeouts in session logout
  ALSA: hda: Skip controller resume if not needed
  mm/mmap.c: initialize align_offset explicitly for vm_unmapped_area
  drm/amdgpu/sriov add amdgpu_amdkfd_pre_reset in gpu reset
  workqueue: Remove the warning in wq_worker_sleeping()
  nvmet-rdma: fix double free of rdma queue
  SUNRPC: Don't start a timer on an already queued rpc task
  mm/vmscan.c: fix data races using kswapd_classzone_idx
  mm/swapfile: fix data races in try_to_unuse()
  mm/filemap.c: clear page error before actual read
  mm/kmemleak.c: use address-of operator on section symbols
  powerpc/perf: Implement a global lock to avoid races between trace, core and thread imc events.
  drm/amdgpu/vcn2.0: stall DPG when WPTR/RPTR reset
  NFS: Fix races nfs_page_group_destroy() vs nfs_destroy_unlinked_subrequests()
  PCI: pciehp: Fix MSI interrupt race
  ALSA: usb-audio: Fix case when USB MIDI interface has more than one extra endpoint descriptor
  ubifs: Fix out-of-bounds memory access caused by abnormal value of node_len
  ubifs: ubifs_add_orphan: Fix a memory leak bug
  ubifs: ubifs_jnl_write_inode: Fix a memory leak bug
  PCI: Use ioremap(), not phys_to_virt() for platform ROM
  netfilter: nf_tables: silence a RCU-list warning in nft_table_lookup()
  svcrdma: Fix leak of transport addresses
  SUNRPC: Fix a potential buffer overflow in 'svc_print_xprts()'
  scsi: hpsa: correct race condition in offload enabled
  IB/iser: Always check sig MR before putting it to the free pool
  RDMA/rxe: Set sys_image_guid to be aligned with HW IB devices
  xfs: prohibit fs freezing when using empty transactions
  brcmfmac: Fix double freeing in the fmac usb data path
  nvme: Fix controller creation races with teardown flow
  nvme: Fix ctrl use-after-free during sysfs deletion
  nvme-multipath: do not reset on unknown status
  perf: Use new infrastructure to fix deadlocks in execve
  proc: io_accounting: Use new infrastructure to fix deadlocks in execve
  proc: Use new infrastructure to fix deadlocks in execve
  kernel/kcmp.c: Use new infrastructure to fix deadlocks in execve
  selftests/ptrace: add test cases for dead-locks
  exec: Fix a deadlock in strace
  exec: Add exec_update_mutex to replace cred_guard_mutex
  tools: gpio-hammer: Avoid potential overflow in main
  cpufreq: powernv: Fix frame-size-overflow in powernv_cpufreq_work_fn
  net: axienet: Propagate failure of DMA descriptor setup
  net: axienet: Convert DMA error handler to a work queue
  perf cpumap: Fix snprintf overflow check
  serial: 8250: 8250_omap: Terminate DMA before pushing data on RX timeout
  serial: 8250_omap: Fix sleeping function called from invalid context during probe
  serial: 8250_port: Don't service RX FIFO if throttled
  r8169: improve RTL8168b FIFO overflow workaround
  btrfs: free the reloc_control in a consistent way
  btrfs: do not init a reloc root if we aren't relocating
  perf parse-events: Fix 3 use after frees found with clang ASAN
  KVM: LAPIC: Mark hrtimer for period or oneshot mode to expire in hard interrupt context
  thermal: rcar_thermal: Handle probe error gracefully
  tracing: Use address-of operator on section symbols
  drm/msm/a5xx: Always set an OPP supported hardware value
  drm/msm: fix leaks if initialization fails
  KVM: PPC: Book3S HV: Treat TM-related invalid form instructions on P9 like the valid ones
  intel_th: Disallow multi mode on devices where it's broken
  RDMA/cm: Remove a race freeing timewait_info
  nfsd: Don't add locks to closed or closing open stateids
  rtc: ds1374: fix possible race condition
  rtc: sa1100: fix possible race condition
  tpm: ibmvtpm: Wait for buffer to be set before proceeding
  ext4: mark block bitmap corrupted when found instead of BUGON
  xfs: mark dir corrupt when lookup-by-hash fails
  xfs: don't ever return a stale pointer from __xfs_dir3_free_read
  tty: sifive: Finish transmission before changing the clock
  media: tda10071: fix unsigned sign extension overflow
  Bluetooth: L2CAP: handle l2cap config request during open state
  scsi: aacraid: Disabling TM path and only processing IOP reset
  ath10k: use kzalloc to read for ath10k_sdio_hif_diag_read
  perf cs-etm: Correct synthesizing instruction samples
  perf cs-etm: Swap packets for instruction samples
  s390/irq: replace setup_irq() by request_irq()
  cpu-topology: Fix the potential data corruption
  clk: imx: Fix division by zero warning on pfdv2
  drm/amd/display: Stop if retimer is not available
  ARM: OMAP2+: Handle errors for cpu_pm
  drm/amdgpu: increase atombios cmd timeout
  mm: avoid data corruption on CoW fault into PFN-mapped VMA
  perf jevents: Fix leak of mapfile memory
  ext4: fix a data race at inode->i_disksize
  drm/amd/display: fix image corruption with ODM 2:1 DSC 2 slice
  powerpc/book3s64: Fix error handling in mm_iommu_do_alloc()
  timekeeping: Prevent 32bit truncation in scale64_check_overflow()
  Bluetooth: guard against controllers sending zero'd events
  media: go7007: Fix URB type for interrupt handling
  ASoC: SOF: ipc: check ipc return value before data copy
  bus: hisi_lpc: Fixup IO ports addresses to avoid use-after-free in host removal
  random: fix data races at timer_rand_state
  firmware: arm_sdei: Use cpus_read_lock() to avoid races with cpuhp
  iavf: use tc_cls_can_offload_and_chain0() instead of chain check
  drm/omap: dss: Cleanup DSS ports on initialisation failure
  drm/amd/display: dal_ddc_i2c_payloads_create can fail causing panic
  soundwire: bus: disable pm_runtime in sdw_slave_delete
  dmaengine: tegra-apb: Prevent race conditions on channel's freeing
  dmaengine: stm32-dma: use vchan_terminate_vdesc() in .terminate_all
  bpf: Remove recursion prevention from rcu free callback
  x86/pkeys: Add check for pkey "overflow"
  media: staging/imx: Missing assignment in imx_media_capture_device_register()
  dmaengine: stm32-mdma: use vchan_terminate_vdesc() in .terminate_all
  KVM: nVMX: Hold KVM's srcu lock when syncing vmcs12->shadow
  KVM: x86: fix incorrect comparison in trace event
  RDMA/rxe: Fix configuration of atomic queue pair attributes
  perf test: Fix test trace+probe_vfs_getname.sh on s390
  ALSA: usb-audio: Don't create a mixer element with bogus volume range
  mt76: fix handling full tx queues in mt76_dma_tx_queue_skb_raw
  mt76: clear skb pointers from rx aggregation reorder buffer during cleanup
  crypto: chelsio - This fixes the kernel panic which occurs during a libkcapi test
  clk: stratix10: use do_div() for 64-bit calculation
  locking/lockdep: Decrement IRQ context counters when removing lock chain
  drm/omap: fix possible object reference leak
  scsi: lpfc: Fix coverity errors in fmdi attribute handling
  scsi: lpfc: Fix release of hwq to clear the eq relationship
  scsi: lpfc: Fix RQ buffer leakage when no IOCBs available
  selinux: sel_avc_get_stat_idx should increase position index
  audit: CONFIG_CHANGE don't log internal bookkeeping as an event
  drm/amd/display: fix workaround for incorrect double buffer register for DLG ADL and TTU
  nfsd: Fix a perf warning
  skbuff: fix a data race in skb_queue_len()
  ALSA: hda: Clear RIRB status before reading WP
  KVM: fix overflow of zero page refcount with ksm running
  Bluetooth: prefetch channel before killing sock
  mm: pagewalk: fix termination condition in walk_pte_range()
  mm/swapfile.c: swap_next should increase position index
  Bluetooth: Fix refcount use-after-free issue
  tools/power/x86/intel_pstate_tracer: changes for python 3 compatibility
  selftests/ftrace: fix glob selftest
  ceph: ensure we have a new cap before continuing in fill_inode
  ar5523: Add USB ID of SMCWUSBT-G2 wireless adapter
  ARM: 8948/1: Prevent OOB access in stacktrace
  tracing: Set kernel_stack's caller size properly
  Bluetooth: btrtl: Use kvmalloc for FW allocations
  powerpc/eeh: Only dump stack once if an MMIO loop is detected
  nfsd: Fix a soft lockup race in nfsd_file_mark_find_or_create()
  s390/cpum_sf: Use kzalloc and minor changes
  dmaengine: zynqmp_dma: fix burst length configuration
  btrfs: tree-checker: Check leaf chunk item size
  i2c: tegra: Prevent interrupt triggering after transfer timeout
  drm/amd/display: Initialize DSC PPS variables to 0
  scsi: ufs: Fix a race condition in the tracing code
  scsi: ufs: Make ufshcd_add_command_trace() easier to read
  ACPI: EC: Reference count query handlers under lock
  sctp: move trace_sctp_probe_path into sctp_outq_sack
  scsi: lpfc: Fix incomplete NVME discovery when target
  scsi: qla2xxx: Fix stuck session in GNL
  opp: Replace list_kref with a local counter
  media: ti-vpe: cal: Restrict DMA to avoid memory corruption
  drm/scheduler: Avoid accessing freed bad job.
  seqlock: Require WRITE_ONCE surrounding raw_seqcount_barrier
  drm/mcde: Handle pending vblank while disabling display
  ipv6_route_seq_next should increase position index
  rt_cpu_seq_next should increase position index
  neigh_stat_seq_next() should increase position index
  vcc_seq_next should increase position index
  tipc: fix link overflow issue at socket shutdown
  ALSA: hda: enable regmap internal locking
  xfs: fix log reservation overflows when allocating large rt extents
  module: Remove accidental change of module_enable_x()
  KVM: arm/arm64: vgic: Fix potential double free dist->spis in __kvm_vgic_destroy()
  kernel/sys.c: avoid copying possible padding bytes in copy_to_user
  kernel/notifier.c: intercept duplicate registrations to avoid infinite loops
  selftests/bpf: De-flake test_tcpbpf
  arm64: insn: consistently handle exit text
  drm/amdgpu: fix calltrace during kmd unload(v3)
  xfs: fix realtime file data space leak
  s390: avoid misusing CALL_ON_STACK for task stack setup
  xtensa: fix system_call interaction with ptrace
  ASoC: max98090: remove msleep in PLL unlocked workaround
  f2fs: stop GC when the victim becomes fully valid
  CIFS: Properly process SMB3 lease breaks
  CIFS: Use common error handling code in smb2_ioctl_query_info()
  SUNRPC: Capture completion of all RPC tasks
  debugfs: Fix !DEBUG_FS debugfs_create_automount
  mt76: add missing locking around ampdu action
  mt76: do not use devm API for led classdev
  scsi: pm80xx: Cleanup command when a reset times out
  gfs2: clean up iopen glock mess in gfs2_create_inode
  mmc: core: Fix size overflow for mmc partitions
  ubi: Fix producing anchor PEBs
  RDMA/iw_cgxb4: Fix an error handling path in 'c4iw_connect()'
  xfs: fix attr leaf header freemap.size underflow
  fix dget_parent() fastpath race
  PCI: Avoid double hpmemsize MMIO window assignment
  RDMA/i40iw: Fix potential use after free
  RDMA/qedr: Fix potential use after free
  x86/kdump: Always reserve the low 1M when the crashkernel option is specified
  dmaengine: mediatek: hsdma_probe: fixed a memory leak when devm_request_irq fails
  bcache: fix a lost wake-up problem caused by mca_cannibalize_lock
  tracing: Adding NULL checks for trace_array descriptor pointer
  tracing: Verify if trace array exists before destroying it.
  tpm_crb: fix fTPM on AMD Zen+ CPUs
  drm/amdgpu/powerplay/smu7: fix AVFS handling with custom powerplay table
  mfd: mfd-core: Protect against NULL call-back function pointer
  mtd: cfi_cmdset_0002: don't free cfi->cfiq in error path of cfi_amdstd_setup()
  ice: Fix to change Rx/Tx ring descriptor size via ethtool with DCBx
  drm/amdgpu/powerplay: fix AVFS handling with custom powerplay table
  clk/ti/adpll: allocate room for terminating null
  f2fs: avoid kernel panic on corruption test
  iomap: Fix overflow in iomap_page_mkwrite
  dax: Fix alloc_dax_region() compile warning
  net: silence data-races on sk_backlog.tail
  powerpc/64s: Always disable branch profiling for prom_init.o
  scsi: lpfc: Fix kernel crash at lpfc_nvme_info_show during remote port bounce
  scsi: fnic: fix use after free
  PM / devfreq: tegra30: Fix integer overflow on CPU's freq max out
  dm table: do not allow request-based DM to stack on partitions
  leds: mlxreg: Fix possible buffer overflow
  xfs: properly serialise fallocate against AIO+DIO
  drm/amd/display: Free gamma after calculating legacy transfer function
  media: smiapp: Fix error handling at NVM reading
  soundwire: intel/cadence: fix startup sequence
  ASoC: kirkwood: fix IRQ error handling
  gma/gma500: fix a memory disclosure bug due to uninitialized bytes
  xfs: fix inode fork extent count overflow
  m68k: q40: Fix info-leak in rtc_ioctl
  scsi: aacraid: fix illegal IO beyond last LBA
  mm: fix double page fault on arm64 if PTE_AF is cleared
  PCI/IOV: Serialize sysfs sriov_numvfs reads vs writes
  ath10k: fix memory leak for tpc_stats_final
  ath10k: fix array out-of-bounds access
  scsi: qla2xxx: Add error handling for PLOGI ELS passthrough
  dma-fence: Serialise signal enabling (dma_fence_enable_sw_signaling)
  drm/amdkfd: Fix race in gfx10 context restore handler
  drm/amd/display: Do not double-buffer DTO adjustments
  media: mc-device.c: fix memleak in media_device_register_entity
  selinux: allow labeling before policy is loaded
  scsi: mpt3sas: Free diag buffer without any status check
  scsi: lpfc: Fix pt2pt discovery on SLI3 HBAs
  kernel/sysctl-test: Add null pointer test for sysctl.c:proc_dointvec()
  Linux 5.4.68
  iommu/amd: Use cmpxchg_double() when updating 128-bit IRTE
  mm: memcg: fix memcg reclaim soft lockup
  net: add __must_check to skb_put_padto()
  net: qrtr: check skb_put_padto() return value
  net: phy: Do not warn in phy_stop() on PHY_DOWN
  net: phy: Avoid NPD upon phy_detach() when driver is unbound
  net: lantiq: Disable IRQs only if NAPI gets scheduled
  net: lantiq: Use napi_complete_done()
  net: lantiq: use netif_tx_napi_add() for TX NAPI
  net: lantiq: Wake TX queue again
  bnxt_en: Protect bnxt_set_eee() and bnxt_set_pauseparam() with mutex.
  bnxt_en: return proper error codes in bnxt_show_temp
  net/mlx5e: TLS, Do not expose FPGA TLS counter if not supported
  net/mlx5e: Enable adding peer miss rules only if merged eswitch is supported
  tipc: use skb_unshare() instead in tipc_buf_append()
  tipc: fix shutdown() of connection oriented socket
  tipc: Fix memory leak in tipc_group_create_member()
  taprio: Fix allowing too small intervals
  nfp: use correct define to return NONE fec
  net: sctp: Fix IPv6 ancestor_size calc in sctp_copy_descendant
  net: sch_generic: aviod concurrent reset and enqueue op for lockless qdisc
  net/mlx5: Fix FTE cleanup
  net: ipv6: fix kconfig dependency warning for IPV6_SEG6_HMAC
  net: Fix bridge enslavement failure
  net: dsa: rtl8366: Properly clear member config
  net: DCB: Validate DCB_ATTR_DCB_BUFFER argument
  net: bridge: br_vlan_get_pvid_rcu() should dereference the VLAN group under RCU
  ipv6: avoid lockdep issue in fib6_del()
  ipv4: Update exception handling for multipath routes via same device
  ipv4: Initialize flowi4_multipath_hash in data path
  ip: fix tos reflection in ack and reset packets
  hdlc_ppp: add range checks in ppp_cp_parse_cr()
  geneve: add transport ports in route lookup for geneve
  cxgb4: Fix offset when clearing filter byte counters
  cxgb4: fix memory leak during module unload
  bnxt_en: Fix NULL ptr dereference crash in bnxt_fw_reset_task()
  bnxt_en: Avoid sending firmware messages when AER error is detected.
  act_ife: load meta modules before tcf_idr_check_alloc()
  mm/thp: fix __split_huge_pmd_locked() for migration PMD
  kprobes: fix kill kprobe which has been marked as gone
  ibmvnic: add missing parenthesis in do_reset()
  ibmvnic fix NULL tx_pools and rx_tools issue at do_reset
  af_key: pfkey_dump needs parameter validation
  Revert "ehci-hcd: Move include to keep CRC stable"
  Linux 5.4.67
  dax: Fix compilation for CONFIG_DAX && !CONFIG_FS_DAX
  dm: Call proper helper to determine dax support
  mm/memory_hotplug: drain per-cpu pages again during memory offline
  dm/dax: Fix table reference counts
  selftests/vm: fix display of page size in map_hugetlb
  powerpc/dma: Fix dma_map_ops::get_required_mask
  ehci-hcd: Move include to keep CRC stable
  s390/zcrypt: fix kmalloc 256k failure
  x86/boot/compressed: Disable relocation relaxation
  serial: 8250_pci: Add Realtek 816a and 816b
  Input: i8042 - add Entroware Proteus EL07R4 to nomux and reset lists
  Input: trackpoint - add new trackpoint variant IDs
  percpu: fix first chunk size calculation for populated bitmap
  ALSA: hda/realtek - The Mic on a RedmiBook doesn't work
  ALSA: hda: fixup headset for ASUS GX502 laptop
  Revert "ALSA: hda - Fix silent audio output and corrupted input on MSI X570-A PRO"
  i2c: i801: Fix resume bug
  usb: typec: ucsi: Prevent mode overrun
  usblp: fix race between disconnect() and read()
  USB: UAS: fix disconnect by unplugging a hub
  USB: quirks: Add USB_QUIRK_IGNORE_REMOTE_WAKEUP quirk for BYD zhaoxin notebook
  drm/i915: Filter wake_flags passed to default_wake_function
  riscv: Add sfence.vma after early page table changes
  i2c: mxs: use MXS_DMA_CTRL_WAIT4END instead of DMA_CTRL_ACK
  iommu/amd: Fix potential @entry null deref
  arm64: bpf: Fix branch offset in JIT
  drm/mediatek: Add missing put_device() call in mtk_hdmi_dt_parse_pdata()
  drm/mediatek: Add exception handing in mtk_drm_probe() if component init fail
  MIPS: SNI: Fix spurious interrupts
  fbcon: Fix user font detection test at fbcon_resize().
  perf test: Free formats for perf pmu parse test
  perf parse-event: Fix memory leak in evsel->unit
  perf evlist: Fix cpu/thread map leak
  MIPS: SNI: Fix MIPS_L1_CACHE_SHIFT
  perf test: Fix the "signal" test inline assembly
  Drivers: hv: vmbus: Add timeout to vmbus_wait_for_unload
  arm64: Allow CPUs unffected by ARM erratum 1418040 to come in late
  scsi: libsas: Fix error path in sas_notify_lldd_dev_found()
  Drivers: hv: vmbus: hibernation: do not hang forever in vmbus_bus_resume()
  ASoC: meson: axg-toddr: fix channel order on g12 platforms
  powerpc/book3s64/radix: Fix boot failure with large amount of guest memory
  ASoC: qcom: common: Fix refcount imbalance on error
  ASoC: qcom: Set card->owner to avoid warnings
  clk: rockchip: Fix initialization of mux_pll_src_4plls_p
  clk: davinci: Use the correct size when allocating memory
  KVM: MIPS: Change the definition of kvm type
  spi: Fix memory leak on splited transfers
  i2c: algo: pca: Reapply i2c bus settings after reset
  f2fs: Return EOF on unaligned end of file DIO read
  f2fs: fix indefinite loop scanning for free nid
  block: only call sched requeue_request() for scheduled requests
  nvme-tcp: cancel async events before freeing event struct
  nvme-rdma: cancel async events before freeing event struct
  nvme-fc: cancel async events before freeing event struct
  openrisc: Fix cache API compile issue when not inlining
  cifs: fix DFS mount with cifsacl/modefromsid
  rapidio: Replace 'select' DMAENGINES 'with depends on'
  SUNRPC: stop printk reading past end of string
  NFS: Zero-stateid SETATTR should first return delegation
  spi: spi-loopback-test: Fix out-of-bounds read
  regulator: pwm: Fix machine constraints application
  scsi: lpfc: Fix FLOGI/PLOGI receive race condition in pt2pt discovery
  scsi: libfc: Fix for double free()
  scsi: pm8001: Fix memleak in pm8001_exec_internal_task_abort
  NFSv4.1 handle ERR_DELAY error reclaiming locking state on delegation recall
  firmware_loader: fix memory leak for paged buffer
  hv_netvsc: Remove "unlikely" from netvsc_select_queue
  net: handle the return value of pskb_carve_frag_list() correctly
  dsa: Allow forwarding of redirected IGMP traffic
  e1000e: Add support for Comet Lake
  RDMA/bnxt_re: Restrict the max_gids to 256
  gfs2: initialize transaction tr_ailX_lists earlier
  Revert "netfilter: conntrack: allow sctp hearbeat after connection re-use"
  Linux 5.4.66
  gcov: add support for GCC 10.1
  drm/msm: Disable the RPTR shadow
  drm/msm/gpu: make ringbuffer readonly
  usb: typec: ucsi: acpi: Check the _DEP dependencies
  usb: Fix out of sync data toggle if a configured device is reconfigured
  USB: serial: option: add support for SIM7070/SIM7080/SIM7090 modules
  USB: serial: option: support dynamic Quectel USB compositions
  USB: serial: ftdi_sio: add IDs for Xsens Mti USB converter
  usb: core: fix slab-out-of-bounds Read in read_descriptors
  phy: qcom-qmp: Use correct values for ipq8074 PCIe Gen2 PHY init
  staging: greybus: audio: fix uninitialized value issue
  video: fbdev: fix OOB read in vga_8planes_imageblit()
  ARM: dts: vfxxx: Add syscon compatible with OCOTP
  debugfs: Fix module state check condition
  KVM: fix memory leak in kvm_io_bus_unregister_dev()
  KVM: arm64: Do not try to map PUDs when they are folded into PMD
  KVM: VMX: Don't freeze guest when event delivery causes an APIC-access exit
  vgacon: remove software scrollback support
  fbcon: remove now unusued 'softback_lines' cursor() argument
  fbcon: remove soft scrollback code
  RDMA/mlx4: Read pkey table length instead of hardcoded value
  RDMA/rxe: Fix the parent sysfs read when the interface has 15 chars
  rbd: require global CAP_SYS_ADMIN for mapping and unmapping
  mmc: sdhci-of-esdhc: Don't walk device-tree on every interrupt
  mmc: sdio: Use mmc_pre_req() / mmc_post_req()
  drm/msm: Disable preemption on all 5xx targets
  drm/tve200: Stabilize enable/disable
  drm/i915/gvt: do not check len & max_len for lri
  scsi: target: iscsi: Fix hang in iscsit_access_np() when getting tpg->np_login_sem
  scsi: target: iscsi: Fix data digest calculation
  regulator: core: Fix slab-out-of-bounds in regulator_unlock_recursive()
  regulator: plug of_node leak in regulator_register()'s error path
  regulator: push allocation in set_consumer_device_supply() out of lock
  regulator: push allocations in create_regulator() outside of lock
  regulator: push allocation in regulator_init_coupling() outside of lock
  kobject: Restore old behaviour of kobject_del(NULL)
  btrfs: fix wrong address when faulting in pages in the search ioctl
  btrfs: fix lockdep splat in add_missing_dev
  btrfs: require only sector size alignment for parent eb bytenr
  staging: wlan-ng: fix out of bounds read in prism2sta_probe_usb()
  iio:accel:mma8452: Fix timestamp alignment and prevent data leak.
  iio:accel:mma7455: Fix timestamp alignment and prevent data leak.
  iio: accel: kxsd9: Fix alignment of local buffer.
  iio:chemical:ccs811: Fix timestamp alignment and prevent data leak.
  iio:light:max44000 Fix timestamp alignment and prevent data leak.
  iio:magnetometer:ak8975 Fix alignment and data leak issues.
  iio:adc:ti-adc081c Fix alignment and data leak issues
  iio:adc:max1118 Fix alignment of timestamp and data leak issues
  iio:adc:ina2xx Fix timestamp alignment issue.
  iio:adc:ti-adc084s021 Fix alignment and data leak issues.
  iio:accel:bmc150-accel: Fix timestamp alignment and prevent data leak.
  iio:proximity:mb1232: Fix timestamp alignment and prevent data leak.
  iio:light:ltr501 Fix timestamp alignment issue.
  iio: cros_ec: Set Gyroscope default frequency to 25Hz
  iio: adc: ti-ads1015: fix conversion when CONFIG_PM is not set
  gcov: Disable gcov build with GCC 10
  iommu/amd: Do not use IOMMUv2 functionality when SME is active
  drm/amdgpu: Fix bug in reporting voltage for CIK
  ALSA: hda: fix a runtime pm issue in SOF when integrated GPU is disabled
  ALSA: hda: hdmi - add Rocketlake support
  arm64/module: set trampoline section flags regardless of CONFIG_DYNAMIC_FTRACE
  cpufreq: intel_pstate: Fix intel_pstate_get_hwp_max() for turbo disabled
  cpufreq: intel_pstate: Refuse to turn off with HWP enabled
  ARC: [plat-hsdk]: Switch ethernet phy-mode to rgmii-id
  HID: elan: Fix memleak in elan_input_configured
  drivers/net/wan/hdlc_cisco: Add hard_header_len
  HID: microsoft: Add rumble support for the 8bitdo SN30 Pro+ controller
  HID: quirks: Set INCREMENT_USAGE_ON_DUPLICATE for all Saitek X52 devices
  nvme-pci: cancel nvme device request before disabling
  nvme-rdma: fix reset hang if controller died in the middle of a reset
  nvme-rdma: fix timeout handler
  nvme-rdma: serialize controller teardown sequences
  nvme-tcp: fix reset hang if controller died in the middle of a reset
  nvme-tcp: fix timeout handler
  nvme-tcp: serialize controller teardown sequences
  nvme: have nvme_wait_freeze_timeout return if it timed out
  nvme-fabrics: don't check state NVME_CTRL_NEW for request acceptance
  nvmet-tcp: Fix NULL dereference when a connect data comes in h2cdata pdu
  irqchip/eznps: Fix build error for !ARC700 builds
  xfs: initialize the shortform attr header padding entry
  cfg80211: Adjust 6 GHz frequency to channel conversion
  drivers/net/wan/lapbether: Set network_header before transmitting
  xfs: fix off-by-one in inode alloc block reservation calculation
  net: hns3: Fix for geneve tx checksum bug
  drivers/dma/dma-jz4780: Fix race condition between probe and irq handler
  ALSA: hda/tegra: Program WAKEEN register for Tegra
  ALSA: hda: Fix 2 channel swapping for Tegra
  firestream: Fix memleak in fs_open
  NFC: st95hf: Fix memleak in st95hf_in_send_cmd
  drivers/net/wan/lapbether: Added needed_tailroom
  netfilter: conntrack: allow sctp hearbeat after connection re-use
  dmaengine: acpi: Put the CSRT table after using it
  ARC: HSDK: wireup perf irq
  arm64: dts: ns2: Fixed QSPI compatible string
  ARM: dts: BCM5301X: Fixed QSPI compatible string
  ARM: dts: NSP: Fixed QSPI compatible string
  ARM: dts: bcm: HR2: Fixed QSPI compatible string
  IB/isert: Fix unaligned immediate-data handling
  block: Set same_page to false in __bio_try_merge_page if ret is false
  spi: stm32: fix pm_runtime_get_sync() error checking
  nvme-fabrics: allow to queue requests for live queues
  spi: stm32: Rate-limit the 'Communication suspended' message
  mmc: sdhci-msm: Add retries when all tuning phases are found valid
  mmc: sdhci-acpi: Clear amd_sdhci_host on reset
  drm/sun4i: backend: Disable alpha on the lowest plane on the A20
  drm/sun4i: backend: Support alpha property on lowest plane
  soundwire: fix double free of dangling pointer
  scsi: mpt3sas: Don't call disable_irq from IRQ poll handler
  scsi: megaraid_sas: Don't call disable_irq from process IRQ poll
  RDMA/core: Fix reported speed and width
  scsi: libsas: Set data_dir as DMA_NONE if libata marks qc as NODATA
  iio: adc: mcp3422: fix locking scope
  iio: adc: mcp3422: fix locking on error path
  drm/sun4i: Fix dsi dcs long write function
  arm64: dts: imx8mq: Fix TMU interrupt property
  drm/sun4i: add missing put_device() call in sun8i_r40_tcon_tv_set_mux()
  RDMA/bnxt_re: Do not report transparent vlan from QP1
  RDMA/rxe: Fix panic when calling kmem_cache_create()
  RDMA/rxe: Drop pointless checks in rxe_init_ports
  RDMA/rxe: Fix memleak in rxe_mem_init_user
  ARM: dts: imx7ulp: Correct gpio ranges
  ARM: dts: ls1021a: fix QuadSPI-memory reg range
  selftests/timers: Turn off timeout setting
  ARM: dts: socfpga: fix register entry for timer3 on Arria10
  regulator: remove superfluous lock in regulator_resolve_coupling()
  regulator: push allocation in regulator_ena_gpio_request() out of lock
  ARM: dts: logicpd-som-lv-baseboard: Fix missing video
  ARM: dts: logicpd-som-lv-baseboard: Fix broken audio
  ARM: dts: logicpd-torpedo-baseboard: Fix broken audio
  Linux 5.4.65
  net: disable netpoll on fresh napis
  tipc: fix shutdown() of connectionless socket
  taprio: Fix using wrong queues in gate mask
  sctp: not disable bh in the whole sctp_get_port_local()
  net: usb: dm9601: Add USB ID of Keenetic Plus DSL
  netlabel: fix problems with mapping removal
  ipv6: Fix sysctl max for fib_multipath_hash_policy
  ipv4: Silence suspicious RCU usage warning
  Linux 5.4.64
  net: usb: Fix uninit-was-stored issue in asix_read_phy_addr()
  cfg80211: regulatory: reject invalid hints
  mm/khugepaged.c: fix khugepaged's request size in collapse_file
  mm/hugetlb: fix a race between hugetlb sysctl handlers
  checkpatch: fix the usage of capture group ( ... )
  sdhci: tegra: Add missing TMCLK for data timeout
  perf record: Correct the help info of option "--no-bpf-event"
  vfio/pci: Fix SR-IOV VF handling with MMIO blocking
  mm: madvise: fix vma user-after-free
  mm: slub: fix conversion of freelist_corrupted()
  dm thin metadata: Fix use-after-free in dm_bm_set_read_only
  dm thin metadata: Avoid returning cmd->bm wild pointer on error
  dm cache metadata: Avoid returning cmd->bm wild pointer on error
  dm crypt: Initialize crypto wait structures
  dm integrity: fix error reporting in bitmap mode after creation
  dm mpath: fix racey management of PG initialization
  dm writecache: handle DAX to partitions on persistent memory correctly
  drm/amd/pm: avoid false alarm due to confusing softwareshutdowntemp setting
  dmaengine: dw-edma: Fix scatter-gather address calculation
  blk-iocost: ioc_pd_free() shouldn't assume irq disabled
  libata: implement ATA_HORKAGE_MAX_TRIM_128M and apply to Sandisks
  block: ensure bdi->io_pages is always initialized
  block: allow for_each_bvec to support zero len bvec
  affs: fix basic permission bits to actually work
  media: rc: uevent sysfs file races with rc_unregister_device()
  media: rc: do not access device via sysfs after rc_unregister_device()
  mmc: sdhci-pci: Fix SDHCI_RESET_ALL for CQHCI for Intel GLK-based controllers
  mmc: cqhci: Add cqhci_deactivate()
  mmc: dt-bindings: Add resets/reset-names for Mediatek MMC bindings
  mmc: mediatek: add optional module reset property
  arm64: dts: mt7622: add reset node for mmc device
  ALSA: hda/realtek - Improved routing for Thinkpad X1 7th/8th Gen
  ALSA: hda/realtek: Add quirk for Samsung Galaxy Book Ion NT950XCJ-X716A
  ALSA; firewire-tascam: exclude Tascam FE-8 from detection
  ALSA: hda - Fix silent audio output and corrupted input on MSI X570-A PRO
  ALSA: firewire-digi00x: exclude Avid Adrenaline from detection
  ALSA: hda/hdmi: always check pin power status in i915 pin fixup
  ALSA: pcm: oss: Remove superfluous WARN_ON() for mulaw sanity check
  ALSA: usb-audio: Add implicit feedback quirk for UR22C
  ALSA: ca0106: fix error code handling
  Revert "ALSA: hda: Add support for Loongson 7A1000 controller"
  Revert "net: dsa: microchip: set the correct number of ports"
  btrfs: fix potential deadlock in the search ioctl
  net: core: use listified Rx for GRO_NORMAL in napi_gro_receive()
  btrfs: tree-checker: fix the error message for transid error
  btrfs: set the lockdep class for log tree extent buffers
  btrfs: set the correct lockdep class for new nodes
  btrfs: allocate scrub workqueues outside of locks
  btrfs: drop path before adding new uuid tree entry
  ARC: perf: don't bail setup if pct irq missing in device-tree
  xfs: don't update mtime on COW faults
  ext2: don't update mtime on COW faults
  tracing/kprobes, x86/ptrace: Fix regs argument order for i386
  iommu/vt-d: Handle 36bit addressing for x86-32
  vfio-pci: Invalidate mmaps and block MMIO access on disabled memory
  vfio-pci: Fault mmaps to enable vma tracking
  vfio/type1: Support faulting PFNMAP vmas
  include/linux/log2.h: add missing () around n in roundup_pow_of_two()
  net/packet: fix overflow in tpacket_rcv
  iommu/amd: Restore IRTE.RemapEn bit after programming IRTE
  thermal: qcom-spmi-temp-alarm: Don't suppress negative temp
  thermal: ti-soc-thermal: Fix bogus thermal shutdowns for omap4430
  iommu/vt-d: Serialize IOMMU GCMD register modifications
  x86, fakenuma: Fix invalid starting node ID
  tg3: Fix soft lockup when tg3_reset_task() fails.
  perf jevents: Fix suspicious code in fixregex()
  xfs: fix xfs_bmap_validate_extent_raw when checking attr fork of rt files
  MIPS: add missing MSACSR and upper MSA initialization
  net: gemini: Fix another missing clk_disable_unprepare() in probe
  fix regression in "epoll: Keep a reference on files added to the check list"
  net: ethernet: mlx4: Fix memory allocation in mlx4_buddy_init()
  perf tools: Correct SNOOPX field offset
  cxgb4: fix thermal zone device registration
  nvme: fix controller instance leak
  nvmet-fc: Fix a missed _irqsave version of spin_lock in 'nvmet_fc_fod_op_done()'
  netfilter: nfnetlink: nfnetlink_unicast() reports EAGAIN instead of ENOBUFS
  net: dsa: mt7530: fix advertising unsupported 1000baseT_Half
  selftests/bpf: Fix massive output from test_maps
  media: cedrus: Add missing v4l2_ctrl_request_hdl_put()
  media: vicodec: add missing v4l2_ctrl_request_hdl_put()
  bnxt: don't enable NAPI until rings are ready
  xfs: fix boundary test in xfs_attr_shortform_verify
  bnxt_en: fix HWRM error when querying VF temperature
  bnxt_en: Fix possible crash in bnxt_fw_reset_task().
  bnxt_en: Fix PCI AER error recovery flow
  bnxt_en: Check for zero dir entries in NVRAM.
  bnxt_en: Don't query FW when netif_running() is false.
  net: ethernet: ti: cpsw: fix clean up of vlan mc entries for host port
  gtp: add GTPA_LINK info to msg sent to userspace
  dmaengine: pl330: Fix burst length if burst size is smaller than bus width
  net: arc_emac: Fix memleak in arc_mdio_probe
  ravb: Fixed to be able to unload modules
  net: systemport: Fix memleak in bcm_sysport_probe
  net: hns: Fix memleak in hns_nic_dev_probe
  netfilter: nf_tables: fix destination register zeroing
  netfilter: nf_tables: incorrect enum nft_list_attributes definition
  netfilter: nf_tables: add NFTA_SET_USERDATA if not null
  mmc: sdhci-acpi: Fix HS400 tuning for AMDI0040
  MIPS: BMIPS: Also call bmips_cpu_setup() for secondary cores
  MIPS: mm: BMIPS5000 has inclusive physical caches
  rxrpc: Make rxrpc_kernel_get_srtt() indicate validity
  rxrpc: Keep the ACK serial in a var in rxrpc_input_ack()
  dmaengine: at_hdmac: check return value of of_find_device_by_node() in at_dma_xlate()
  batman-adv: bla: use netif_rx_ni when not in interrupt context
  batman-adv: Fix own OGM check in aggregated OGMs
  batman-adv: Avoid uninitialized chaddr when handling DHCP
  dmaengine: of-dma: Fix of_dma_router_xlate's of_dma_xlate handling
  fsldma: fix very broken 32-bit ppc ioread64 functionality
  xen/xenbus: Fix granting of vmalloc'd memory
  drm/amd/display: Fix memleak in amdgpu_dm_mode_config_init
  drm/amd/display: Retry AUX write when fail occurs
  drivers: gpu: amd: Initialize amdgpu_dm_backlight_caps object to 0 in amdgpu_dm_update_backlight_caps
  drm/amd/display: Reject overlay plane configurations in multi-display scenarios
  s390: don't trace preemption in percpu macros
  nbd: restore default timeout when setting it to zero
  cpuidle: Fixup IRQ state
  drm/omap: fix incorrect lock state
  ceph: don't allow setlease on cephfs
  drm/msm/a6xx: fix gmu start on newer firmware
  habanalabs: check correct vmalloc return code
  habanalabs: validate FW file size
  drm/msm: enable vblank during atomic commits
  nvmet: Disable keep-alive timer when kato is cleared to 0h
  hwmon: (applesmc) check status earlier.
  drm/msm: add shutdown support for display platform_driver
  tty: serial: qcom_geni_serial: Drop __init from qcom_geni_console_setup
  drm/msm/dpu: Fix scale params in plane validation
  HID: quirks: Always poll three more Lenovo PixArt mice
  Linux 5.4.63
  scsi: target: tcmu: Optimize use of flush_dcache_page
  scsi: target: tcmu: Fix size in calls to tcmu_flush_dcache_range
  sdhci: tegra: Remove SDHCI_QUIRK_DATA_TIMEOUT_USES_SDCLK for Tegra186
  sdhci: tegra: Remove SDHCI_QUIRK_DATA_TIMEOUT_USES_SDCLK for Tegra210
  arm64: tegra: Add missing timeout clock to Tegra210 SDMMC
  arm64: tegra: Add missing timeout clock to Tegra186 SDMMC nodes
  arm64: tegra: Add missing timeout clock to Tegra194 SDMMC nodes
  dt-bindings: mmc: tegra: Add tmclk for Tegra210 and later
  KVM: arm64: Set HCR_EL2.PTW to prevent AT taking synchronous exception
  KVM: arm64: Survive synchronous exceptions caused by AT instructions
  KVM: arm64: Add kvm_extable for vaxorcism code
  drm/etnaviv: fix TS cache flushing on GPUs with BLT engine
  drm/sched: Fix passing zero to 'PTR_ERR' warning v2
  perf record/stat: Explicitly call out event modifiers in the documentation
  HID: core: Sanitize event code and type when mapping input
  HID: core: Correctly handle ReportSize being zero
  Linux 5.4.62
  io_uring: Fix NULL pointer dereference in io_sq_wq_submit_work()
  ALSA: usb-audio: Update documentation comment for MS2109 quirk
  HID: hiddev: Fix slab-out-of-bounds write in hiddev_ioctl_usage()
  kbuild: fix broken builds because of GZIP,BZIP2,LZOP variables
  kbuild: add variables for compression tools
  kheaders: explain why include/config/autoconf.h is excluded from md5sum
  kheaders: remove the last bashism to allow sh to run it
  kheaders: optimize header copy for in-tree builds
  kheaders: optimize md5sum calculation for in-tree builds
  kheaders: remove unneeded 'cat' command piped to 'head' / 'tail'
  fbmem: pull fbcon_update_vcs() out of fb_set_var()
  usb: dwc3: gadget: Handle ZLP for sg requests
  usb: dwc3: gadget: Fix handling ZLP
  usb: dwc3: gadget: Don't setup more than requested
  drm/i915: Fix cmd parser desc matching with masks
  usb: storage: Add unusual_uas entry for Sony PSZ drives
  USB: cdc-acm: rework notification_buffer resizing
  USB: gadget: u_f: Unbreak offset calculation in VLAs
  USB: gadget: f_ncm: add bounds checks to ncm_unwrap_ntb()
  USB: gadget: u_f: add overflow checks to VLA macros
  usb: host: ohci-exynos: Fix error handling in exynos_ohci_probe()
  USB: Ignore UAS for JMicron JMS567 ATA/ATAPI Bridge
  USB: quirks: Ignore duplicate endpoint on Sound Devices MixPre-D
  USB: quirks: Add no-lpm quirk for another Raydium touchscreen
  usb: uas: Add quirk for PNY Pro Elite
  USB: yurex: Fix bad gfp argument
  drm/amd/pm: correct the thermal alert temperature limit settings
  drm/amd/pm: correct Vega20 swctf limit setting
  drm/amd/pm: correct Vega12 swctf limit setting
  drm/amd/pm: correct Vega10 swctf limit setting
  drm/amd/powerplay: Fix hardmins not being sent to SMU for RV
  drm/amdgpu/gfx10: refine mgcg setting
  drm/amdgpu: Fix buffer overflow in INFO ioctl
  x86/hotplug: Silence APIC only after all interrupts are migrated
  irqchip/stm32-exti: Avoid losing interrupts due to clearing pending bits by mistake
  genirq/matrix: Deal with the sillyness of for_each_cpu() on UP
  crypto: af_alg - Work around empty control messages without MSG_MORE
  device property: Fix the secondary firmware node handling in set_primary_fwnode()
  powerpc/perf: Fix crashes with generic_compat_pmu & BHRB
  PM: sleep: core: Fix the handling of pending runtime resume requests
  arm64: vdso32: make vdso32 install conditional
  xhci: Always restore EP_SOFT_CLEAR_TOGGLE even if ep reset failed
  xhci: Do warm-reset when both CAS and XDEV_RESUME are set
  usb: host: xhci: fix ep context print mismatch in debugfs
  XEN uses irqdesc::irq_data_common::handler_data to store a per interrupt XEN data pointer which contains XEN specific information.
  writeback: Fix sync livelock due to b_dirty_time processing
  writeback: Avoid skipping inode writeback
  writeback: Protect inode->i_io_list with inode->i_lock
  serial: 8250: change lock order in serial8250_do_startup()
  serial: 8250_exar: Fix number of ports for Commtech PCIe cards
  serial: stm32: avoid kernel warning on absence of optional IRQ
  serial: pl011: Don't leak amba_ports entry on driver register error
  serial: pl011: Fix oops on -EPROBE_DEFER
  serial: samsung: Removes the IRQ not found warning
  vt_ioctl: change VT_RESIZEX ioctl to check for error return from vc_resize()
  vt: defer kfree() of vc_screenbuf in vc_do_resize()
  USB: lvtest: return proper error code in probe
  fbcon: prevent user font height or width change from causing potential out-of-bounds access
  btrfs: detect nocow for swap after snapshot delete
  btrfs: fix space cache memory leak after transaction abort
  btrfs: check the right error variable in btrfs_del_dir_entries_in_log
  btrfs: reset compression level for lzo on remount
  blk-mq: order adding requests to hctx->dispatch and checking SCHED_RESTART
  HID: i2c-hid: Always sleep 60ms after I2C_HID_PWR_ON commands
  block: loop: set discard granularity and alignment for block device backed loop
  block: fix get_max_io_size()
  arm64: Allow booting of late CPUs affected by erratum 1418040
  arm64: Move handling of erratum 1418040 into C code
  powerpc/perf: Fix soft lockups due to missed interrupt accounting
  net: gianfar: Add of_node_put() before goto statement
  macvlan: validate setting of multiple remote source MAC addresses
  Revert "scsi: qla2xxx: Fix crash on qla2x00_mailbox_command"
  scsi: qla2xxx: Fix null pointer access during disconnect from subsystem
  scsi: qla2xxx: Check if FW supports MQ before enabling
  scsi: qla2xxx: Fix login timeout
  scsi: ufs: Clean up completed request without interrupt notification
  scsi: ufs: Improve interrupt handling for shared interrupts
  scsi: ufs: Fix possible infinite loop in ufshcd_hold
  scsi: fcoe: Fix I/O path allocation
  selftests: disable rp_filter for icmp_redirect.sh
  ASoC: wm8994: Avoid attempts to read unreadable registers
  s390/cio: add cond_resched() in the slow_eval_known_fn() loop
  ALSA: hda/realtek: Add model alc298-samsung-headphone
  can: j1939: transport: j1939_xtp_rx_dat_one(): compare own packets to detect corruptions
  netfilter: avoid ipv6 -> nf_defrag_ipv6 module dependency
  drm/amd/display: Switch to immediate mode for updating infopackets
  drm/amd/powerplay: correct UVD/VCE PG state on custom pptable uploading
  drm/amd/powerplay: correct Vega20 cached smu feature state
  spi: stm32: always perform registers configuration prior to transfer
  spi: stm32: fix stm32_spi_prepare_mbr in case of odd clk_rate
  spi: stm32: fix fifo threshold level in case of short transfer
  spi: stm32h7: fix race condition at end of transfer
  fs: prevent BUG_ON in submit_bh_wbc()
  ext4: correctly restore system zone info when remount fails
  ext4: handle error of ext4_setup_system_zone() on remount
  ext4: handle option set by mount flags correctly
  jbd2: abort journal if free a async write error metadata buffer
  ext4: handle read only external journal device
  ext4: don't BUG on inconsistent journal feature
  jbd2: make sure jh have b_transaction set in refile/unfile_buffer
  spi: stm32: clear only asserted irq flags on interrupt
  usb: gadget: f_tcm: Fix some resource leaks in some error paths
  i2c: rcar: in slave mode, clear NACK earlier
  i2c: core: Don't fail PRP0001 enumeration when no ID table exist
  null_blk: fix passing of REQ_FUA flag in null_handle_rq
  nvme: multipath: round-robin: fix single non-optimized path case
  nvme-fc: Fix wrong return value in __nvme_fc_init_request()
  blkcg: fix memleak for iolatency
  blk-mq: insert request not through ->queue_rq into sw/scheduler queue
  hwmon: (nct7904) Correct divide by 0
  bfq: fix blkio cgroup leakage v4
  block: Fix page_is_mergeable() for compound pages
  drm/msm/adreno: fix updating ring fence
  block: virtio_blk: fix handling single range discard request
  block: respect queue limit of max discard segment
  media: gpio-ir-tx: improve precision of transmitted signal due to scheduling
  ALSA: usb-audio: Add capture support for Saffire 6 (USB 1.1)
  cpufreq: intel_pstate: Fix EPP setting via sysfs in active mode
  PCI: qcom: Add missing reset for ipq806x
  PCI: qcom: Change duplicate PCI reset to phy reset
  PCI: qcom: Add missing ipq806x clocks in PCIe driver
  EDAC/{i7core,sb,pnd2,skx}: Fix error event severity
  EDAC: skx_common: get rid of unused type var
  EDAC: sb_edac: get rid of unused vars
  mm/vunmap: add cond_resched() in vunmap_pmd_range
  drm/amd/display: Fix dmesg warning from setting abm level
  drm/amd/display: Add additional config guards for DCN
  drm/amd/display: Trigger modesets on MST DSC connectors
  drm/ingenic: Fix incorrect assumption about plane->index
  gpu/drm: ingenic: Use the plane's src_[x,y] to configure DMA length
  cma: don't quit at first error when activating reserved areas
  mm/cma.c: switch to bitmap_zalloc() for cma bitmap allocation
  mm: fix kthread_use_mm() vs TLB invalidate
  mm/shuffle: don't move pages between zones and don't read garbage memmaps
  btrfs: only commit delayed items at fsync if we are logging a directory
  btrfs: only commit the delayed inode when doing a full fsync
  btrfs: factor out inode items copy loop from btrfs_log_inode()
  s390/numa: set node distance to LOCAL_DISTANCE
  drm/xen-front: Fix misused IS_ERR_OR_NULL checks
  drm/xen: fix passing zero to 'PTR_ERR' warning
  PM / devfreq: rk3399_dmc: Fix kernel oops when rockchip,pmu is absent
  PM / devfreq: rk3399_dmc: Disable devfreq-event device when fails
  PM / devfreq: rk3399_dmc: Add missing of_node_put()
  usb: cdns3: gadget: always zeroed TRB buffer when enable endpoint
  sched/uclamp: Fix a deadlock when enabling uclamp static key
  sched/uclamp: Protect uclamp fast path code with static key
  Revert "ath10k: fix DMA related firmware crashes on multiple devices"
  arm64: Fix __cpu_logical_map undefined issue
  efi: provide empty efi_enter_virtual_mode implementation
  brcmfmac: Set timeout value when configuring power save
  USB: sisusbvga: Fix a potential UB casued by left shifting a negative value
  powerpc/spufs: add CONFIG_COREDUMP dependency
  KVM: arm64: Fix symbol dependency in __hyp_call_panic_nvhe
  media: davinci: vpif_capture: fix potential double free
  hugetlbfs: prevent filesystem stacking of hugetlbfs
  EDAC/ie31200: Fallback if host bridge device is already initialized
  scsi: fcoe: Memory leak fix in fcoe_sysfs_fcf_del()
  ceph: do not access the kiocb after aio requests
  ceph: fix potential mdsc use-after-free crash
  scsi: iscsi: Do not put host in iscsi_set_flashnode_param()
  btrfs: make btrfs_qgroup_check_reserved_leak take btrfs_inode
  btrfs: file: reserve qgroup space after the hole punch range is locked
  locking/lockdep: Fix overflow in presentation of average lock-time
  drm/nouveau: Fix reference count leak in nouveau_connector_detect
  drm/nouveau: fix reference count leak in nv50_disp_atomic_commit
  drm/nouveau/drm/noveau: fix reference count leak in nouveau_fbcon_open
  f2fs: fix use-after-free issue
  HID: quirks: add NOGET quirk for Logitech GROUP
  cec-api: prevent leaking memory through hole in structure
  ALSA: hda: Add support for Loongson 7A1000 controller
  mips/vdso: Fix resource leaks in genvdso.c
  rtlwifi: rtl8192cu: Prevent leaking urb
  ARM: dts: ls1021a: output PPS signal on FIPER2
  PCI: Fix pci_create_slot() reference count leak
  omapfb: fix multiple reference count leaks due to pm_runtime_get_sync
  f2fs: fix error path in do_recover_data()
  selftests/powerpc: Purge extra count_pmc() calls of ebb selftests
  scsi: target: Fix xcopy sess release leak
  xfs: Don't allow logging of XFS_ISTALE inodes
  scsi: lpfc: Fix shost refcount mismatch when deleting vport
  drm/amdgpu/display: fix ref count leak when pm_runtime_get_sync fails
  drm/amdgpu: fix ref count leak in amdgpu_display_crtc_set_config
  drm/amd/display: fix ref count leak in amdgpu_drm_ioctl
  drm/amdgpu: fix ref count leak in amdgpu_driver_open_kms
  drm/radeon: fix multiple reference count leak
  drm/amdkfd: Fix reference count leaks.
  iommu/iova: Don't BUG on invalid PFNs
  mfd: intel-lpss: Add Intel Tiger Lake PCH-H PCI IDs
  scsi: target: tcmu: Fix crash on ARM during cmd completion
  blktrace: ensure our debugfs dir exists
  media: pci: ttpci: av7110: fix possible buffer overflow caused by bad DMA value in debiirq()
  powerpc/xive: Ignore kmemleak false positives
  arm64: dts: qcom: msm8916: Pull down PDM GPIOs during sleep
  mfd: intel-lpss: Add Intel Emmitsburg PCH PCI IDs
  ASoC: tegra: Fix reference count leaks.
  ASoC: img-parallel-out: Fix a reference count leak
  ASoC: img: Fix a reference count leak in img_i2s_in_set_fmt
  ALSA: hda/hdmi: Use force connectivity quirk on another HP desktop
  ALSA: hda/realtek: Fix pin default on Intel NUC 8 Rugged
  ALSA: pci: delete repeated words in comments
  ALSA: hda/hdmi: Add quirk to force connectivity
  ipvlan: fix device features
  net/sched: act_ct: Fix skb double-free in tcf_ct_handle_fragments() error flow
  net: ena: Make missed_tx stat incremental
  tipc: fix uninit skb->data in tipc_nl_compat_dumpit()
  net/smc: Prevent kernel-infoleak in __smc_diag_dump()
  net: sctp: Fix negotiation of the number of data streams.
  net: qrtr: fix usage of idr in port assignment to socket
  net: nexthop: don't allow empty NHA_GROUP
  net: Fix potential wrong skb->protocol in skb_vlan_untag()
  gre6: Fix reception with IP6_TNL_F_RCV_DSCP_COPY
  binfmt_flat: revert "binfmt_flat: don't offset the data start"
  powerpc/64s: Don't init FSCR_DSCR in __init_FSCR()

 Conflicts:
	Documentation/devicetree/bindings
	Documentation/devicetree/bindings/gpio/sgpio-aspeed.txt
	Documentation/devicetree/bindings/mmc/mtk-sd.txt
	Documentation/devicetree/bindings/mmc/nvidia,tegra20-sdhci.txt
	Documentation/devicetree/bindings/net/can/tcan4x5x.txt
	Documentation/devicetree/bindings/net/nfc/nxp-nci.txt
	Documentation/devicetree/bindings/net/nfc/pn544.txt
	Documentation/devicetree/bindings/sound/wm8994.txt
	block/bio.c
	block/blk-mq-sysfs.c
	block/blk-sysfs.c
	drivers/hid/hid-quirks.c
	drivers/mailbox/mailbox.c
	drivers/mmc/host/cqhci.c
	drivers/scsi/ufs/ufshcd.c
	drivers/soc/qcom/smp2p.c
	drivers/usb/dwc3/core.c
	drivers/usb/dwc3/core.h
	drivers/usb/dwc3/ep0.c
	drivers/usb/dwc3/gadget.c
	drivers/usb/dwc3/gadget.h
	drivers/usb/gadget/function/f_fs.c
	drivers/usb/host/xhci.c
	kernel/sched/cpufreq_schedutil.c
	mm/cma.c
	mm/madvise.c
	mm/memory.c
	mm/page_alloc.c
	net/qrtr/qrtr.c

Change-Id: I5d64dc5428045e92d5d1ce73dd55f78b36e83371
Signed-off-by: Srinivasarao P <spathi@codeaurora.org>
2021-04-22 09:44:51 +05:30
Qian Cai
19b9ff1146 mm/vmscan.c: fix data races using kswapd_classzone_idx
[ Upstream commit 5644e1fbbfe15ad06785502bbfe5751223e5841d ]

pgdat->kswapd_classzone_idx could be accessed concurrently in
wakeup_kswapd().  Plain writes and reads without any lock protection
result in data races.  Fix them by adding a pair of READ|WRITE_ONCE() as
well as saving a branch (compilers might well optimize the original code
in an unintentional way anyway).  While at it, also take care of
pgdat->kswapd_order and non-kswapd threads in allow_direct_reclaim().  The
data races were reported by KCSAN,

 BUG: KCSAN: data-race in wakeup_kswapd / wakeup_kswapd

 write to 0xffff9f427ffff2dc of 4 bytes by task 7454 on cpu 13:
  wakeup_kswapd+0xf1/0x400
  wakeup_kswapd at mm/vmscan.c:3967
  wake_all_kswapds+0x59/0xc0
  wake_all_kswapds at mm/page_alloc.c:4241
  __alloc_pages_slowpath+0xdcc/0x1290
  __alloc_pages_slowpath at mm/page_alloc.c:4512
  __alloc_pages_nodemask+0x3bb/0x450
  alloc_pages_vma+0x8a/0x2c0
  do_anonymous_page+0x16e/0x6f0
  __handle_mm_fault+0xcd5/0xd40
  handle_mm_fault+0xfc/0x2f0
  do_page_fault+0x263/0x6f9
  page_fault+0x34/0x40

 1 lock held by mtest01/7454:
  #0: ffff9f425afe8808 (&mm->mmap_sem#2){++++}, at:
 do_page_fault+0x143/0x6f9
 do_user_addr_fault at arch/x86/mm/fault.c:1405
 (inlined by) do_page_fault at arch/x86/mm/fault.c:1539
 irq event stamp: 6944085
 count_memcg_event_mm+0x1a6/0x270
 count_memcg_event_mm+0x119/0x270
 __do_softirq+0x34c/0x57c
 irq_exit+0xa2/0xc0

 read to 0xffff9f427ffff2dc of 4 bytes by task 7472 on cpu 38:
  wakeup_kswapd+0xc8/0x400
  wake_all_kswapds+0x59/0xc0
  __alloc_pages_slowpath+0xdcc/0x1290
  __alloc_pages_nodemask+0x3bb/0x450
  alloc_pages_vma+0x8a/0x2c0
  do_anonymous_page+0x16e/0x6f0
  __handle_mm_fault+0xcd5/0xd40
  handle_mm_fault+0xfc/0x2f0
  do_page_fault+0x263/0x6f9
  page_fault+0x34/0x40

 1 lock held by mtest01/7472:
  #0: ffff9f425a9ac148 (&mm->mmap_sem#2){++++}, at:
 do_page_fault+0x143/0x6f9
 irq event stamp: 6793561
 count_memcg_event_mm+0x1a6/0x270
 count_memcg_event_mm+0x119/0x270
 __do_softirq+0x34c/0x57c
 irq_exit+0xa2/0xc0

 BUG: KCSAN: data-race in kswapd / wakeup_kswapd

 write to 0xffff90973ffff2dc of 4 bytes by task 820 on cpu 6:
  kswapd+0x27c/0x8d0
  kthread+0x1e0/0x200
  ret_from_fork+0x27/0x50

 read to 0xffff90973ffff2dc of 4 bytes by task 6299 on cpu 0:
  wakeup_kswapd+0xf3/0x450
  wake_all_kswapds+0x59/0xc0
  __alloc_pages_slowpath+0xdcc/0x1290
  __alloc_pages_nodemask+0x3bb/0x450
  alloc_pages_vma+0x8a/0x2c0
  do_anonymous_page+0x170/0x700
  __handle_mm_fault+0xc9f/0xd00
  handle_mm_fault+0xfc/0x2f0
  do_page_fault+0x263/0x6f9
  page_fault+0x34/0x40

Signed-off-by: Qian Cai <cai@lca.pw>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Reviewed-by: Andrew Morton <akpm@linux-foundation.org>
Cc: Marco Elver <elver@google.com>
Cc: Matthew Wilcox <willy@infradead.org>
Link: http://lkml.kernel.org/r/1582749472-5171-1-git-send-email-cai@lca.pw
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2020-10-01 13:17:53 +02:00
Xunlei Pang
a5bc1c7a9a mm: memcg: fix memcg reclaim soft lockup
commit e3336cab2579012b1e72b5265adf98e2d6e244ad upstream.

We've met softlockup with "CONFIG_PREEMPT_NONE=y", when the target memcg
doesn't have any reclaimable memory.

It can be easily reproduced as below:

  watchdog: BUG: soft lockup - CPU#0 stuck for 111s![memcg_test:2204]
  CPU: 0 PID: 2204 Comm: memcg_test Not tainted 5.9.0-rc2+ #12
  Call Trace:
    shrink_lruvec+0x49f/0x640
    shrink_node+0x2a6/0x6f0
    do_try_to_free_pages+0xe9/0x3e0
    try_to_free_mem_cgroup_pages+0xef/0x1f0
    try_charge+0x2c1/0x750
    mem_cgroup_charge+0xd7/0x240
    __add_to_page_cache_locked+0x2fd/0x370
    add_to_page_cache_lru+0x4a/0xc0
    pagecache_get_page+0x10b/0x2f0
    filemap_fault+0x661/0xad0
    ext4_filemap_fault+0x2c/0x40
    __do_fault+0x4d/0xf9
    handle_mm_fault+0x1080/0x1790

It only happens on our 1-vcpu instances, because there's no chance for
oom reaper to run to reclaim the to-be-killed process.

Add a cond_resched() at the upper shrink_node_memcgs() to solve this
issue, this will mean that we will get a scheduling point for each memcg
in the reclaimed hierarchy without any dependency on the reclaimable
memory in that memcg thus making it more predictable.

Suggested-by: Michal Hocko <mhocko@suse.com>
Signed-off-by: Xunlei Pang <xlpang@linux.alibaba.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Acked-by: Chris Down <chris@chrisdown.name>
Acked-by: Michal Hocko <mhocko@suse.com>
Acked-by: Johannes Weiner <hannes@cmpxchg.org>
Link: http://lkml.kernel.org/r/1598495549-67324-1-git-send-email-xlpang@linux.alibaba.com
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Julius Hemanth Pitti <jpitti@cisco.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2020-09-26 18:03:15 +02:00
Vinayak Menon
ac80551df4 mm: reduce the time spend by killed tasks in alloc path
There are issues reported where the tasks killed by LMK
holding huge amounts of memory, loops for seconds in the
reclaim path, thus causing OOMs to happen from other
contexts or a panic when oom path finds that there are no
killable tasks. This patch brings back a change in older
kernel versions to avoid reclaim when a fatal signal is
pending. This is more improtant in our case unlike upstream,
as we loop almost forever in reclaim path when there are LMK
killable tasks (see lmk_kill_possible). Another change done
by the patch is to return without sleep in too_many_isolated
case for tasks with fatal signal pending.

Change-Id: Icd2bb7a9602ea6566425f7918e34c218bbed21cb
Signed-off-by: Vinayak Menon <vinmenon@codeaurora.org>
2020-07-07 05:16:51 -07:00
qctecmdr
64f0825f01 Merge "vmscan: Support multiple kswapd threads per node" 2020-07-03 04:10:18 -07:00
Buddy Lumpkin
767f647150 vmscan: Support multiple kswapd threads per node
Page replacement is handled in the Linux Kernel in one of two ways:

1) Asynchronously via kswapd
2) Synchronously, via direct reclaim

At page allocation time the allocating task is immediately given a page
from the zone free list allowing it to go right back to work doing
whatever it was doing; Probably directly or indirectly executing business
logic.

Just prior to satisfying the allocation, free pages is checked to see if
it has reached the zone low watermark and if so, kswapd is awakened.
Kswapd will start scanning pages looking for inactive pages to evict to
make room for new page allocations. The work of kswapd allows tasks to
continue allocating memory from their respective zone free list without
incurring any delay.

When the demand for free pages exceeds the rate that kswapd tasks can
supply them, page allocation works differently. Once the allocating task
finds that the number of free pages is at or below the zone min watermark,
the task will no longer pull pages from the free list. Instead, the task
will run the same CPU-bound routines as kswapd to satisfy its own
allocation by scanning and evicting pages. This is called a direct reclaim.

The time spent performing a direct reclaim can be substantial, often
taking tens to hundreds of milliseconds for small order0 allocations to
half a second or more for order9 huge-page allocations. In fact, kswapd is
not actually required on a linux system. It exists for the sole purpose of
optimizing performance by preventing direct reclaims.

When memory shortfall is sufficient to trigger direct reclaims, they can
occur in any task that is running on the system. A single aggressive
memory allocating task can set the stage for collateral damage to occur in
small tasks that rarely allocate additional memory. Consider the impact of
injecting an additional 100ms of latency when nscd allocates memory to
facilitate caching of a DNS query.

The presence of direct reclaims 10 years ago was a fairly reliable
indicator that too much was being asked of a Linux system. Kswapd was
likely wasting time scanning pages that were ineligible for eviction.
Adding RAM or reducing the working set size would usually make the problem
go away. Since then hardware has evolved to bring a new struggle for
kswapd. Storage speeds have increased by orders of magnitude while CPU
clock speeds stayed the same or even slowed down in exchange for more
cores per package. This presents a throughput problem for a single
threaded kswapd that will get worse with each generation of new hardware.

Test Details

NOTE: The tests below were run with shadow entries disabled. See the
associated patch and cover letter for details

The tests below were designed with the assumption that a kswapd bottleneck
is best demonstrated using filesystem reads. This way, the inactive list
will be full of clean pages, simplifying the analysis and allowing kswapd
to achieve the highest possible steal rate. Maximum steal rates for kswapd
are likely to be the same or lower for any other mix of page types on the
system.

Tests were run on a 2U Oracle X7-2L with 52 Intel Xeon Skylake 2GHz cores,
756GB of RAM and 8 x 3.6 TB NVMe Solid State Disk drives. Each drive has
an XFS file system mounted separately as /d0 through /d7. SSD drives
require multiple concurrent streams to show their potential, so I created
eleven 250GB zero-filled files on each drive so that I could test with
parallel reads.

The test script runs in multiple stages. At each stage, the number of dd
tasks run concurrently is increased by 2. I did not include all of the
test output for brevity.

During each stage dd tasks are launched to read from each drive in a round
robin fashion until the specified number of tasks for the stage has been
reached. Then iostat, vmstat and top are started in the background with 10
second intervals. After five minutes, all of the dd tasks are killed and
the iostat, vmstat and top output is parsed in order to report the
following:

CPU consumption
- sy - aggregate kernel mode CPU consumption from vmstat output. The value
       doesn't tend to fluctuate much so I just grab the highest value.
       Each sample is averaged over 10 seconds
- dd_cpu - for all of the dd tasks averaged across the top samples since
           there is a lot of variation.

Throughput
- in Kbytes
- Command is iostat -x -d 10 -g total

This first test performs reads using O_DIRECT in order to show the maximum
throughput that can be obtained using these drives. It also demonstrates
how rapidly throughput scales as the number of dd tasks are increased.

The dd command for this test looks like this:

Command Used: dd iflag=direct if=/d${i}/$n of=/dev/null bs=4M

Test #1: Direct IO
dd sy dd_cpu throughput
6  0  2.33   14726026.40
10 1  2.95   19954974.80
16 1  2.63   24419689.30
22 1  2.63   25430303.20
28 1  2.91   26026513.20
34 1  2.53   26178618.00
40 1  2.18   26239229.20
46 1  1.91   26250550.40
52 1  1.69   26251845.60
58 1  1.54   26253205.60
64 1  1.43   26253780.80
70 1  1.31   26254154.80
76 1  1.21   26253660.80
82 1  1.12   26254214.80
88 1  1.07   26253770.00
90 1  1.04   26252406.40

Throughput was close to peak with only 22 dd tasks. Very little system CPU
was consumed as expected as the drives DMA directly into the user address
space when using direct IO.

In this next test, the iflag=direct option is removed and we only run the
test until the pgscan_kswapd from /proc/vmstat starts to increment. At
that point metrics are parsed and reported and the pagecache contents are
dropped prior to the next test. Lather, rinse, repeat.

Test #2: standard file system IO, no page replacement
dd sy dd_cpu throughput
6  2  28.78  5134316.40
10 3  31.40  8051218.40
16 5  34.73  11438106.80
22 7  33.65  14140596.40
28 8  31.24  16393455.20
34 10 29.88  18219463.60
40 11 28.33  19644159.60
46 11 25.05  20802497.60
52 13 26.92  22092370.00
58 13 23.29  22884881.20
64 14 23.12  23452248.80
70 15 22.40  23916468.00
76 16 22.06  24328737.20
82 17 20.97  24718693.20
88 16 18.57  25149404.40
90 16 18.31  25245565.60

Each read has to pause after the buffer in kernel space is populated while
those pages are added to the pagecache and copied into the user address
space. For this reason, more parallel streams are required to achieve peak
throughput. The copy operation consumes substantially more CPU than direct
IO as expected.

The next test measures throughput after kswapd starts running. This is the
same test only we wait for kswapd to wake up before we start collecting
metrics. The script actually keeps track of a few things that were not
mentioned earlier. It tracks direct reclaims and page scans by watching
the metrics in /proc/vmstat. CPU consumption for kswapd is tracked the
same way it is tracked for dd.

Since the test is 100% reads, you can assume that the page steal rate for
kswapd and direct reclaims is almost identical to the scan rate.

Test #3: 1 kswapd thread per node
dd sy dd_cpu kswapd0 kswapd1 throughput  dr    pgscan_kswapd pgscan_direct
10 4  26.07  28.56   27.03   7355924.40  0     459316976     0
16 7  34.94  69.33   69.66   10867895.20 0     872661643     0
22 10 36.03  93.99   99.33   13130613.60 489   1037654473    11268334
28 10 30.34  95.90   98.60   14601509.60 671   1182591373    15429142
34 14 34.77  97.50   99.23   16468012.00 10850 1069005644    249839515
40 17 36.32  91.49   97.11   17335987.60 18903 975417728     434467710
46 19 38.40  90.54   91.61   17705394.40 25369 855737040     582427973
52 22 40.88  83.97   83.70   17607680.40 31250 709532935     724282458
58 25 40.89  82.19   80.14   17976905.60 35060 657796473     804117540
64 28 41.77  73.49   75.20   18001910.00 39073 561813658     895289337
70 33 45.51  63.78   64.39   17061897.20 44523 379465571     1020726436
76 36 46.95  57.96   60.32   16964459.60 47717 291299464     1093172384
82 39 47.16  55.43   56.16   16949956.00 49479 247071062     1134163008
88 42 47.41  53.75   47.62   16930911.20 51521 195449924     1180442208
90 43 47.18  51.40   50.59   16864428.00 51618 190758156     1183203901

In the previous test where kswapd was not involved, the system-wide kernel
mode CPU consumption with 90 dd tasks was 16%. In this test CPU consumption
with 90 tasks is at 43%. With 52 cores, and two kswapd tasks (one per NUMA
node), kswapd can only be responsible for a little over 4% of the increase.
The rest is likely caused by 51,618 direct reclaims that scanned 1.2
billion pages over the five minute time period of the test.

Same test, more kswapd tasks:

Test #4: 4 kswapd threads per node
dd sy dd_cpu kswapd0 kswapd1 throughput  dr    pgscan_kswapd pgscan_direct
10 5  27.09  16.65   14.17   7842605.60  0     459105291     0
16 10 37.12  26.02   24.85   11352920.40 15    920527796     358515
22 11 36.94  37.13   35.82   13771869.60 0     1132169011     0
28 13 35.23  48.43   46.86   16089746.00 0     1312902070     0
34 15 33.37  53.02   55.69   18314856.40 0     1476169080     0
40 19 35.90  69.60   64.41   19836126.80 0     1629999149     0
46 22 36.82  88.55   57.20   20740216.40 0     1708478106     0
52 24 34.38  93.76   68.34   21758352.00 0     1794055559     0
58 24 30.51  79.20   82.33   22735594.00 0     1872794397     0
64 26 30.21  97.12   76.73   23302203.60 176   1916593721     4206821
70 33 32.92  92.91   92.87   23776588.00 3575  1817685086     85574159
76 37 31.62  91.20   89.83   24308196.80 4752  1812262569     113981763
82 29 25.53  93.23   92.33   24802791.20 306   2032093122     7350704
88 43 37.12  76.18   77.01   25145694.40 20310 1253204719     487048202
90 42 38.56  73.90   74.57   22516787.60 22774 1193637495     545463615

By increasing the number of kswapd threads, throughput increased by ~50%
while kernel mode CPU utilization decreased or stayed the same, likely due
to a decrease in the number of parallel tasks at any given time doing page
replacement.

Change-Id: I966d4a9c33bad188b3409f7ceea1df205a63c3bd
Signed-off-by: Buddy Lumpkin <buddy.lumpkin@oracle.com>
Patch-mainline: linux-mm @ Mon,  2 Apr 2018 09:24:22
Link: https://lore.kernel.org/lkml/1522661062-39745-1-git-send-email-buddy.lumpkin@oracle.com
[charante@codeaurora.org]: Changes done to ensure QGKI compliance.
Signed-off-by: Charan Teja Kalla <charante@codeaurora.org>
2020-06-19 18:44:35 +05:30
Minchan Kim
6aee86262a mm: Enhance per process reclaim to consider shared pages
Some pages could be shared by several processes. (ex, libc)
In case of that, it's too bad to reclaim them from the beginnig.

This patch causes VM to keep them on memory until last task
try to reclaim them so shared pages will be reclaimed only if
all of task has gone swapping out.

This feature doesn't handle non-linear mapping on ramfs because
it's very time-consuming and doesn't make sure of reclaiming and
not common.

Change-Id: I7e5f34f2e947f5db6d405867fe2ad34863ca40f7
Signed-off-by: Sangseok Lee <sangseok.lee@lge.com>
Signed-off-by: Minchan Kim <minchan@kernel.org>
Patch-mainline: linux-mm @ 9 May 2013 16:21:27
[vinmenon@codeaurora.org: merge conflict fixes + fix for ksm]
Signed-off-by: Vinayak Menon <vinmenon@codeaurora.org>
2020-06-02 21:31:03 -07:00
Minchan Kim
d0456e9e94 mm: Remove shrink_page
By previous patch, shrink_page_list can handle pages from
multiple zone so let's remove shrink_page.

Change-Id: I3526377aa6ee6142b8f3ec63396e7ada1e442505
Signed-off-by: Minchan Kim <minchan@kernel.org>
Patch-mainline: linux-mm @ 22 Apr 2013 17:45:03
[vinmenon@codeaurora.org: trivial merge conflict fixes]
Signed-off-by: Vinayak Menon <vinmenon@codeaurora.org>
2020-05-20 05:27:54 +05:30
Minchan Kim
f99a8d7a20 mm: make shrink_page_list with pages work from multiple zones
Shrink_page_list expects all pages come from a same zone
but it's too limited to use.

This patch removes the dependency so next patch can use
shrink_page_list with pages from multiple zones.

Change-Id: I34469b7f0a79f2b79e30e40033ba8b3e1dd5f2d0
Signed-off-by: Minchan Kim <minchan@kernel.org>
Patch-mainline: linux-mm @ 9 May 2013 16:21:25
[vinmenon@codeaurora.org: changes for node based lrus]
Signed-off-by: Vinayak Menon <vinmenon@codeaurora.org>
2020-05-08 18:52:04 +05:30
Minchan Kim
fde15c0345 mm: Per process reclaim
These day, there are many platforms available in the embedded market
and they are smarter than kernel which has very limited information
about working set so they want to involve memory management more heavily
like android's lowmemory killer and ashmem or recent many lowmemory
notifier.

One of the simple imagine scenario about userspace's intelligence is that
platform can manage tasks as forground and background so it would be
better to reclaim background's task pages for end-user's *responsibility*
although it has frequent referenced pages.

This patch adds new knob "reclaim under proc/<pid>/" so task manager
can reclaim any target process anytime, anywhere. It could give another
method to platform for using memory efficiently.

It can avoid process killing for getting free memory, which was really
terrible experience because I lost my best score of game I had ever
after I switch the phone call while I enjoyed the game.

Reclaim file-backed pages only.
	echo file > /proc/PID/reclaim
Reclaim anonymous pages only.
	echo anon > /proc/PID/reclaim
Reclaim all pages
	echo all > /proc/PID/reclaim

Change-Id: Iabdb7bc2ef3dc4d94e3ea005fbe18f4cd06739ab
Signed-off-by: Minchan Kim <minchan@kernel.org>
Patch-mainline: linux-mm @ 9 May 2013 16:21:24
[vinmenon@codeaurora.org: merge conflict fixes]
Signed-off-by: Vinayak Menon <vinmenon@codeaurora.org>
2020-05-08 18:51:55 +05:30
Blagovest Kolenichev
2e72d8932e Merge android-5.4.24 (ce5de62) into msm-5.4
* refs/heads/tmp-ce5de62:
  Revert "BACKPORT: tracing: Remove unnecessary DEBUG_FS dependency"
  Linux 5.4.24
  blktrace: Protect q->blk_trace with RCU
  kvm: nVMX: VMWRITE checks unsupported field before read-only field
  kvm: nVMX: VMWRITE checks VMCS-link pointer before VMCS field
  mm, thp: fix defrag setting if newline is not used
  mm/huge_memory.c: use head to check huge zero page
  mm/gup: allow FOLL_FORCE for get_user_pages_fast()
  mm/debug.c: always print flags in dump_page()
  locking/lockdep: Fix lockdep_stats indentation problem
  xfs: clear kernel only flags in XFS_IOC_ATTRMULTI_BY_HANDLE
  bus: tegra-aconnect: Remove PM_CLK dependency
  netfilter: nf_flowtable: fix documentation
  netfilter: nft_tunnel: no need to call htons() when dumping ports
  thermal: brcmstb_thermal: Do not use DT coefficients
  thermal: db8500: Depromote debug print
  ubifs: Fix ino_t format warnings in orphan_delete()
  rcu: Allow only one expedited GP to run concurrently with wakeups
  KVM: x86: Remove spurious clearing of async #PF MSR
  KVM: x86: Remove spurious kvm_mmu_unload() from vcpu destruction path
  x86/resctrl: Check monitoring static key in the MBM overflow handler
  perf ui gtk: Add missing zalloc object
  perf hists browser: Restore ESC as "Zoom out" of DSO/thread/etc
  pwm: omap-dmtimer: put_device() after of_find_device_by_node()
  lib/vdso: Update coarse timekeeper unconditionally
  lib/vdso: Make __arch_update_vdso_data() logic understandable
  kprobes: Set unoptimized flag after unoptimizing code
  ima: ima/lsm policy rule loading logic bug fixes
  drivers: net: xgene: Fix the order of the arguments of 'alloc_etherdev_mqs()'
  RDMA/hns: Bugfix for posting a wqe with sge
  RDMA/hns: Simplify the calculation and usage of wqe idx for post verbs
  f2fs: fix to add swap extent correctly
  sched/fair: Optimize select_idle_cpu
  KVM: Check for a bad hva before dropping into the ghc slow path
  KVM: SVM: Override default MMIO mask if memory encryption is enabled
  mwifiex: delete unused mwifiex_get_intf_num()
  mwifiex: drop most magic numbers from mwifiex_process_tdls_action_frame()
  namei: only return -ECHILD from follow_dotdot_rcu()
  kbuild: make single target builds even faster
  kbuild: remove unneeded variable, single-all
  kbuild: move headers_check rule to usr/include/Makefile
  kbuild: remove header compile test
  selftests: Install settings files to fix TIMEOUT failures
  net: ena: make ena rxfh support ETH_RSS_HASH_NO_CHANGE
  net/smc: no peer ID in CLC decline for SMCD
  net: atlantic: fix out of range usage of active_vlans array
  net: atlantic: fix potential error handling
  net: atlantic: fix use after free kasan warn
  net: netlink: cap max groups which will be considered in netlink_bind()
  s390/qeth: vnicc Fix EOPNOTSUPP precedence
  nvme-pci: Hold cq_poll_lock while completing CQEs
  usb: charger: assign specific number for enum value
  hv_netvsc: Fix unwanted wakeup in netvsc_attach()
  kbuild: fix DT binding schema rule to detect command line changes
  mac80211: Remove a redundant mutex unlock
  nl80211: fix potential leak in AP start
  drm/i915/gvt: Separate display reset from ALL_ENGINES reset
  drm/i915/gvt: Fix orphan vgpu dmabuf_objs' lifetime
  i2c: jz4780: silence log flood on txabrt
  i2c: altera: Fix potential integer overflow
  MIPS: VPE: Fix a double free and a memory leak in 'release_vpe()'
  HID: hiddev: Fix race in in hiddev_disconnect()
  HID: alps: Fix an error handling path in 'alps_input_configured()'
  netfilter: xt_hashlimit: reduce hashlimit_mutex scope for htable_put()
  netfilter: ipset: Fix forceadd evaluation path
  vhost: Check docket sk_family instead of call getname
  net/smc: transfer fasync_list in case of fallback
  netfilter: ipset: Fix "INFO: rcu detected stall in hash_xxx" reports
  io_uring: fix 32-bit compatability with sendmsg/recvmsg
  cpufreq: Fix policy initialization for internal governor drivers
  amdgpu/gmc_v9: save/restore sdpif regs during S3
  Revert "PM / devfreq: Modify the device name as devfreq(X) for sysfs"
  tracing: Disable trace_printk() on post poned tests
  macintosh: therm_windtunnel: fix regression when instantiating devices
  drm/radeon: Inline drm_get_pci_dev
  drm/amdgpu: Drop DRIVER_USE_AGP
  HID: core: increase HID report buffer size to 8KiB
  HID: core: fix off-by-one memset in hid_report_raw_event()
  HID: ite: Only bind to keyboard USB interface on Acer SW5-012 keyboard dock
  KVM: VMX: check descriptor table exits on instruction emulation
  ACPI: watchdog: Fix gas->access_width usage
  ACPICA: Introduce ACPI_ACCESS_BYTE_WIDTH() macro
  audit: always check the netlink payload length in audit_receive_msg()
  audit: fix error handling in audit_data_to_entry()
  ext4: potential crash on allocation error in ext4_alloc_flex_bg_array()
  nvme/pci: move cqe check after device shutdown
  nvme: prevent warning triggered by nvme_stop_keep_alive
  nvme/tcp: fix bug on double requeue when send fails
  net: hns3: fix a copying IPv6 address error in hclge_fd_get_flow_tuples()
  net: hns3: add management table after IMP reset
  mac80211: fix wrong 160/80+80 MHz setting
  cfg80211: add missing policy for NL80211_ATTR_STATUS_CODE
  cifs: Fix mode output in debugging statements
  ice: update Unit Load Status bitmask to check after reset
  net: ena: ena-com.c: prevent NULL pointer dereference
  net: ena: ethtool: use correct value for crc32 hash
  net: ena: fix corruption of dev_idx_to_host_tbl
  net: ena: fix incorrectly saving queue numbers when setting RSS indirection table
  net: ena: rss: store hash function as values and not bits
  net: ena: rss: fix failure to get indirection table
  net: ena: rss: do not allocate key when not supported
  net: ena: fix incorrect default RSS key
  net: ena: add missing ethtool TX timestamping indication
  net: ena: fix uses of round_jiffies()
  net: ena: fix potential crash when rxfh key is NULL
  i40e: Fix the conditional for i40e_vc_validate_vqs_bitmaps
  soc/tegra: fuse: Fix build with Tegra194 configuration
  amdgpu: Prevent build errors regarding soft/hard-float FP ABI tags
  drm/amd/display: Add initialitions for PLL2 clock source
  drm/amd/display: Limit minimum DPPCLK to 100MHz.
  drm/amd/display: Check engine is not NULL before acquiring
  RDMA/siw: Remove unwanted WARN_ON in siw_cm_llp_data_ready()
  drm/amd/display: Do not set optimized_require to false after plane disable
  ARM: dts: sti: fixup sound frame-inversion for stihxxx-b2120.dtsi
  ceph: do not execute direct write in parallel if O_APPEND is specified
  perf/x86/msr: Add Tremont support
  perf/x86/cstate: Add Tremont support
  perf/x86/intel: Add Elkhart Lake support
  perf/smmuv3: Use platform_get_irq_optional() for wired interrupt
  NFSv4: Fix races between open and dentry revalidation
  qmi_wwan: unconditionally reject 2 ep interfaces
  qmi_wwan: re-add DW5821e pre-production variant
  s390/zcrypt: fix card and queue total counter wrap
  cfg80211: check wiphy driver existence for drvinfo report
  mac80211: consider more elements in parsing CRC
  dax: pass NOWAIT flag to iomap_apply
  sched/fair: Prevent unlimited runtime on throttled group
  timers/nohz: Update NOHZ load in remote tick
  sched/core: Don't skip remote tick for idle CPUs
  drm/msm: Set dma maximum segment size for mdss
  ipmi:ssif: Handle a possible NULL pointer reference
  ipv6: Fix nlmsg_flags when splitting a multipath route
  ipv6: Fix route replacement with dev-only route
  bonding: fix lockdep warning in bond_get_stats()
  net: export netdev_next_lower_dev_rcu()
  bonding: add missing netdev_update_lockdep_key()
  bnxt_en: Issue PCIe FLR in kdump kernel to cleanup pending DMAs.
  bnxt_en: Improve device shutdown method.
  sctp: move the format error check out of __sctp_sf_do_9_1_abort
  udp: rehash on disconnect
  Revert "net: dev: introduce support for sch BYPASS for lockless qdisc"
  qede: Fix race between rdma destroy workqueue and link change event
  nfc: pn544: Fix occasional HW initialization failure
  net/tls: Fix to avoid gettig invalid tls record
  net: sched: correct flower port blocking
  net: phy: restore mdio regs in the iproc mdio driver
  net: mscc: fix in frame extraction
  net: macb: ensure interface is not suspended on at91rm9200
  net: fib_rules: Correctly set table field when table number exceeds 8 bits
  net: dsa: b53: Ensure the default VID is untagged
  EDAC: skx_common: downgrade message importance on missing PCI device
  io_uring: grab ->fs as part of async offload
  ANDROID: abi_gki_aarch64_whitelist: add module_layout and task_struct
  ANDROID: gki_defconfig: disable KPROBES, update ABI
  FROMGIT: scsi: ufs: Select INITIAL ADAPT type for HS Gear4
  FROMLIST: scsi: ufs: Use ufshcd_config_pwr_mode() when scale gear
  FROMGIT: scsi: ufs-qcom: Apply QUIRK_HOST_TACTIVATE for WDC UFS devices
  FROMGIT: scsi: ufs: Allow vendor device quirks to be applied early
  BACKPORT: scsi: ufs: Delete struct ufs_dev_desc
  ANDROID: gki_defconfig: enable IOMMU_LIMIT_IOVA_ALIGNMENT
  FROMLIST: iommu/iova: Support limiting IOVA alignment
  FROMLIST: iommu/iova: Add a best-fit algorithm
  FROMLIST: iommu/dma: Allow drivers to reserve an iova range
  ANDROID: Unconditionally create bridge tracepoints
  ANDROID: gki_defconfig: Enable MFD_SYSCON on x86
  ANDROID: update ABI for CONFIG_IIO_* changes
  ANDROID: gki_defconfig: add CONFIG_IIO_BUFFER and CONFIG_IIO_TRIGGER
  ANDROID: gki: set CONFIG_SERIAL_SPRD_CONSOLE for earlycon
  ANDROID: Re-add default y for VIRTIO_PCI_LEGACY
  ANDROID: GKI: build in HVC_DRIVER
  ANDROID: Removed default m for virtual sw crypto device
  ANDROID: Remove default y on BRIDGE_IGMP_SNOOPING
  ANDROID: GKI: Added missing SND configs
  ANDROID: scsi: ufs: allow ufs variants to override sg entry size
  ANDROID: GKI: Remove CONFIG_BRIDGE from arm64 config
  ANDROID: Enable HID_NINTENDO as y
  FROMLIST: HID: nintendo: add nintendo switch controller driver
  UPSTREAM: iommu/arm-smmu: Restore naming of driver parameter prefix
  ANDROID: gki_defconfig: Remove 'BRIDGE_NETFILTER is not set'
  UPSTREAM: net: disable BRIDGE_NETFILTER by default
  Linux 5.4.23
  ASoC: SOF: Intel: hda: Add iDisp4 DAI
  bpf: Selftests build error in sockmap_basic.c
  s390/mm: Explicitly compare PAGE_DEFAULT_KEY against zero in storage_key_init_range
  s390/kaslr: Fix casts in get_random
  net/mlx5e: Fix crash in recovery flow without devlink reporter
  net/mlx5: Fix sleep while atomic in mlx5_eswitch_get_vepa
  net/mlx5e: Reset RQ doorbell counter before moving RQ state from RST to RDY
  xen: Enable interrupts when calling _cond_resched()
  ata: ahci: Add shutdown to freeze hardware resources of ahci
  io_uring: prevent sq_thread from spinning when it should stop
  rxrpc: Fix call RCU cleanup using non-bh-safe locks
  netfilter: xt_hashlimit: limit the max size of hashtable
  ALSA: seq: Fix concurrent access to queue current tick/time
  ALSA: seq: Avoid concurrent access to queue flags
  ALSA: rawmidi: Avoid bit fields for state flags
  io_uring: fix __io_iopoll_check deadlock in io_sq_thread
  arm64: lse: Fix LSE atomics with LLVM
  bpf, offload: Replace bitwise AND by logical AND in bpf_prog_offload_info_fill
  genirq/proc: Reject invalid affinity masks (again)
  crypto: rename sm3-256 to sm3 in hash_algo_name
  iommu/vt-d: Fix compile warning from intel-svm.h
  ecryptfs: replace BUG_ON with error handling code
  ASoC: fsl_sai: Fix exiting path on probing failure
  ASoC: atmel: fix atmel_ssc_set_audio link failure
  staging: greybus: use after free in gb_audio_manager_remove_all()
  staging: rtl8723bs: fix copy of overlapping memory
  usb: dwc2: Fix in ISOC request length checking
  usb: gadget: composite: Fix bMaxPower for SuperSpeedPlus
  scsi: Revert "target: iscsi: Wait for all commands to finish before freeing a session"
  scsi: Revert "RDMA/isert: Fix a recently introduced regression related to logout"
  drm/msm/dpu: fix BGR565 vs RGB565 confusion
  drm/i915/gt: Protect defer_request() from new waiters
  drm/bridge: tc358767: fix poll timeouts
  drm/i915/gvt: more locking for ppgtt mm LRU list
  drm/i915/execlists: Always force a context reload when rewinding RING_TAIL
  drm/i915/gt: Detect if we miss WaIdleLiteRestore
  Revert "dmaengine: imx-sdma: Fix memory leak"
  Btrfs: fix deadlock during fast fsync when logging prealloc extents beyond eof
  btrfs: don't set path->leave_spinning for truncate
  Btrfs: fix race between shrinking truncate and fiemap
  Btrfs: fix btrfs_wait_ordered_range() so that it waits for all ordered extents
  btrfs: do not check delayed items are empty for single transaction cleanup
  btrfs: reset fs_root to NULL on error in open_ctree
  btrfs: fix bytes_may_use underflow in prealloc error condtition
  btrfs: destroy qgroup extent records on transaction abort
  KVM: apic: avoid calculating pending eoi from an uninitialized val
  KVM: nVMX: handle nested posted interrupts when apicv is disabled for L1
  KVM: nVMX: clear PIN_BASED_POSTED_INTR from nested pinbased_ctls only when apicv is globally disabled
  KVM: nVMX: Check IO instruction VM-exit conditions
  KVM: nVMX: Refactor IO bitmap checks into helper function
  ext4: fix race between writepages and enabling EXT4_EXTENTS_FL
  ext4: rename s_journal_flag_rwsem to s_writepages_rwsem
  ext4: fix mount failure with quota configured as module
  ext4: fix potential race between s_flex_groups online resizing and access
  ext4: fix potential race between s_group_info online resizing and access
  ext4: fix potential race between online resizing and write operations
  ext4: add cond_resched() to __ext4_find_entry()
  ext4: fix a data race in EXT4_I(inode)->i_disksize
  KVM: x86: don't notify userspace IOAPIC on edge-triggered interrupt EOI
  KVM: nVMX: Don't emulate instructions in guest mode
  sched/psi: Fix OOB write when writing 0 bytes to PSI files
  drm/i915: Update drm/i915 bug filing URL
  drm/i915: Wean off drm_pci_alloc/drm_pci_free
  drm/nouveau/kms/gv100-: Re-set LUT after clearing for modesets
  drm/amdgpu/gfx10: disable gfxoff when reading rlc clock
  drm/amdgpu/gfx9: disable gfxoff when reading rlc clock
  drm/amdgpu/soc15: fix xclk for raven
  mm: Avoid creating virtual address aliases in brk()/mmap()/mremap()
  lib/stackdepot.c: fix global out-of-bounds in stack_slabs
  mm/sparsemem: pfn_to_page is not valid yet on SPARSEMEM
  mm/vmscan.c: don't round up scan size for online memory cgroup
  genirq/irqdomain: Make sure all irq domain flags are distinct
  nvme-multipath: Fix memory leak with ana_log_buf
  mm/memcontrol.c: lost css_put in memcg_expand_shrinker_maps()
  Revert "ipc,sem: remove uneeded sem_undo_list lock usage in exit_sem()"
  ACPI: PM: s2idle: Check fixed wakeup events in acpi_s2idle_wake()
  MAINTAINERS: Update drm/i915 bug filing URL
  serdev: ttyport: restore client ops on deregistration
  tty: serial: qcom_geni_serial: Fix RX cancel command failure
  tty: serial: imx: setup the correct sg entry for tx dma
  tty/serial: atmel: manage shutdown in case of RS485 or ISO7816 mode
  serial: 8250: Check UPF_IRQ_SHARED in advance
  x86/cpu/amd: Enable the fixed Instructions Retired counter IRPERF
  x86/mce/amd: Fix kobject lifetime
  x86/mce/amd: Publish the bank pointer only after setup has succeeded
  x86/ima: use correct identifier for SetupMode variable
  jbd2: fix ocfs2 corrupt when clearing block group bits
  arm64: memory: Add missing brackets to untagged_addr() macro
  powerpc/hugetlb: Fix 8M hugepages on 8xx
  powerpc/hugetlb: Fix 512k hugepages on 8xx with 16k page size
  powerpc/entry: Fix an #if which should be an #ifdef in entry_32.S
  powerpc/tm: Fix clearing MSR[TS] in current when reclaiming on signal delivery
  powerpc/eeh: Fix deadlock handling dead PHB
  powerpc/8xx: Fix clearing of bits 20-23 in ITLB miss
  drm/panfrost: perfcnt: Reserve/use the AS attached to the perfcnt MMU context
  staging: rtl8723bs: Fix potential overuse of kernel memory
  staging: rtl8723bs: Fix potential security hole
  staging: rtl8188eu: Fix potential overuse of kernel memory
  staging: rtl8188eu: Fix potential security hole
  scsi: Revert "target/core: Inline transport_lun_remove_cmd()"
  usb: dwc3: debug: fix string position formatting mixup with ret and len
  usb: dwc3: gadget: Check for IOC/LST bit in TRB->ctrl fields
  usb: dwc2: Fix SET/CLEAR_FEATURE and GET_STATUS flows
  USB: hub: Fix the broken detection of USB3 device in SMSC hub
  USB: hub: Don't record a connect-change event during reset-resume
  USB: Fix novation SourceControl XL after suspend
  usb: uas: fix a plug & unplug racing
  USB: quirks: blacklist duplicate ep on Sound Devices USBPre2
  USB: core: add endpoint-blacklist quirk
  usb: host: xhci: update event ring dequeue pointer on purpose
  xhci: Fix memory leak when caching protocol extended capability PSI tables - take 2
  xhci: apply XHCI_PME_STUCK_QUIRK to Intel Comet Lake platforms
  xhci: fix runtime pm enabling for quirky Intel hosts
  xhci: Force Maximum Packet size for Full-speed bulk devices to valid range.
  staging: vt6656: fix sign of rx_dbm to bb_pre_ed_rssi.
  staging: android: ashmem: Disallow ashmem memory from being remapped
  vt: vt_ioctl: fix race in VT_RESIZEX
  vt: selection, handle pending signals in paste_selection
  vt: fix scrollback flushing on background consoles
  floppy: check FDC index for errors before assigning it
  e1000e: Use rtnl_lock to prevent race conditions between net and pci/pm
  USB: misc: iowarrior: add support for the 100 device
  USB: misc: iowarrior: add support for the 28 and 28L devices
  USB: misc: iowarrior: add support for 2 OEMed devices
  thunderbolt: Prevent crash if non-active NVMem file is read
  btrfs: handle logged extent failure properly
  ecryptfs: fix a memory leak bug in ecryptfs_init_messaging()
  ecryptfs: fix a memory leak bug in parse_tag_1_packet()
  tpm: Initialize crypto_id of allocated_banks to HASH_ALGO__LAST
  ASoC: sun8i-codec: Fix setting DAI data format
  ASoC: codec2codec: avoid invalid/double-free of pcm runtime
  ALSA: hda/realtek - Apply quirk for yet another MSI laptop
  ALSA: hda/realtek - Apply quirk for MSI GP63, too
  ALSA: hda: Use scnprintf() for printing texts for sysfs/procfs
  iommu/qcom: Fix bogus detach logic
  UPSTREAM: sched/psi: Fix OOB write when writing 0 bytes to PSI files
  ANDROID: build.config.gki.aarch64: enable symbol trimming
  ANDROID: kbuild: avoid excessively long argument lists
  ANDROID: gki_defconfig: Enable CONFIG_RD_LZ4
  ANDROID: net: wireless: Add module_param(mac_prefix) to mac80211_hwsim
  ANDROID: gki: Enable BINFMT_MISC as part of GKI
  ANDROID: gki_defconfig: disable CONFIG_CRYPTO_MD4
  FROMLIST: kbuild: generate autoksyms.h early
  FROMLIST: kbuild: split adjust_autoksyms.sh in two parts
  FROMLIST: kbuild: allow symbol whitelisting with TRIM_UNUSED_KSYMS
  ANDROID: ABI/Whitelist: update for unisoc
  ANDROID: Disable wq fp check in CFI builds
  ANDROID: gki_defconfig: Disable CONFIG_RT_GROUP_SCHED
  FROMGIT: of: property: Add device link support for power-domains and hwlocks
  ANDROID: drm/msm/a6xx: Make a6xx_gmu_bo.iova a dma_addr_t
  FROMLIST: of: of_reserved_mem: Increase limit on number of reserved regions
  ANDROID: dm: Add wrapped key support in dm-default-key
  ANDROID: dm: add support for passing through derive_raw_secret
  ANDROID: block: Prevent crypto fallback for wrapped keys
  FROMLIST: drm/msm/a6xx: Use the DMA API for GMU memory objects
  FROMLIST: arm64: dts: sdm845: Set the virtual address range for GMU allocations
  UPSTREAM: of: Make of_dma_get_range() work on bus nodes
  UPSTREAM: of/address: Fix of_pci_range_parser_one translation of DMA addresses
  UPSTREAM: of/address: Translate 'dma-ranges' for parent nodes missing 'dma-ranges'
  UPSTREAM: of: Factor out #{addr,size}-cells parsing
  UPSTREAM: of: address: Follow DMA parent for "dma-coherent"
  UPSTREAM: of/address: Introduce of_get_next_dma_parent() helper
  UPSTREAM: of: Make of_dma_get_range() private
  ANDROID: fix merge issue in 5.4.22
  ANDROID: update ABI for 5.4.22
  Linux 5.4.22
  rtc: Kconfig: select REGMAP_I2C when necessary
  bcache: properly initialize 'path' and 'err' in register_bcache()
  drm/amdgpu/display: handle multiple numbers of fclks in dcn_calcs.c (v2)
  s390/pci: Recover handle in clp_set_pci_fn()
  mlxsw: spectrum_dpipe: Add missing error path
  fuse: don't overflow LLONG_MAX with end offset
  virtio_balloon: prevent pfn array overflow
  cifs: log warning message (once) if out of disk space
  i40e: Relax i40e_xsk_wakeup's return value when PF is busy
  help_next should increase position index
  NFS: Fix memory leaks
  drm/amdgpu/smu10: fix smu10_get_clock_by_type_with_voltage
  drm/amdgpu/smu10: fix smu10_get_clock_by_type_with_latency
  brd: check and limit max_part par
  microblaze: Prevent the overflow of the start
  asm-generic/tlb: add missing CONFIG symbol
  iwlwifi: mvm: Check the sta is not NULL in iwl_mvm_cfg_he_sta()
  iwlwifi: mvm: Fix thermal zone registration
  nvme-pci: remove nvmeq->tags
  nvmet: Pass lockdep expression to RCU lists
  irqchip/gic-v3-its: Reference to its_invall_cmd descriptor when building INVALL
  bcache: fix incorrect data type usage in btree_flush_write()
  bcache: explicity type cast in bset_bkey_last()
  bcache: fix memory corruption in bch_cache_accounting_clear()
  reiserfs: prevent NULL pointer dereference in reiserfs_insert_item()
  lib/scatterlist.c: adjust indentation in __sg_alloc_table
  ocfs2: fix a NULL pointer dereference when call ocfs2_update_inode_fsync_trans()
  ocfs2: make local header paths relative to C files
  btrfs: do not do delalloc reservation under page lock
  powerpc: Do not consider weak unresolved symbol relocations as bad
  radeon: insert 10ms sleep in dce5_crtc_load_lut
  trigger_next should increase position index
  ftrace: fpid_next() should increase position index
  char: hpet: Fix out-of-bounds read bug
  drm/nouveau/disp/nv50-: prevent oops when no channel method map provided
  irqchip/gic-v3: Only provision redistributors that are enabled in ACPI
  drm/amd/display: do not allocate display_mode_lib unnecessarily
  rbd: work around -Wuninitialized warning
  ceph: check availability of mds cluster on mount after wait timeout
  powerpc/mm: Don't log user reads to 0xffffffff
  bpf: map_seq_next should always increase position index
  cifs: fix NULL dereference in match_prepath
  cifs: Fix mount options set in automount
  cifs: fix unitialized variable poential problem with network I/O cache lock patch
  iwlegacy: ensure loop counter addr does not wrap and cause an infinite loop
  rtw88: fix potential NULL skb access in TX ISR
  hostap: Adjust indentation in prism2_hostapd_add_sta
  ALSA: usb-audio: add quirks for Line6 Helix devices fw>=2.82
  ARM: 8951/1: Fix Kexec compilation issue.
  selftests/eeh: Bump EEH wait time to 60s
  powerpc/pseries/lparcfg: Fix display of Maximum Memory
  jbd2: make sure ESHUTDOWN to be recorded in the journal superblock
  jbd2: switch to use jbd2_journal_abort() when failed to submit the commit record
  selftests: bpf: Reset global state between reuseport test runs
  alarmtimer: Make alarmtimer platform device child of RTC device
  iommu/vt-d: Remove unnecessary WARN_ON_ONCE()
  bcache: fix use-after-free in register_bcache()
  bcache: rework error unwinding in register_bcache
  bcache: cached_dev_free needs to put the sb page
  btrfs: Fix split-brain handling when changing FSID to metadata uuid
  btrfs: separate definition of assertion failure handlers
  media: uvcvideo: Add a quirk to force GEO GC6500 Camera bits-per-pixel value
  powerpc/sriov: Remove VF eeh_dev state when disabling SR-IOV
  drm/nouveau/mmu: fix comptag memory leak
  sunrpc: Fix potential leaks in sunrpc_cache_unhash()
  ALSA: hda - Add docking station support for Lenovo Thinkpad T420s
  bpf, btf: Always output invariant hit in pahole DWARF to BTF transform
  driver core: platform: fix u32 greater or equal to zero comparison
  s390/ftrace: generate traced function stack frame
  s390: adjust -mpacked-stack support check for clang 10
  x86/decoder: Add TEST opcode to Group3-2
  objtool: Fix ARCH=x86_64 build error
  kbuild: use -S instead of -E for precise cc-option test in Kconfig
  spi: spi-fsl-qspi: Ensure width is respected in spi-mem operations
  ALSA: hda/hdmi - add retry logic to parse_intel_hdmi()
  irqchip/mbigen: Set driver .suppress_bind_attrs to avoid remove problems
  regulator: core: Fix exported symbols to the exported GPL version
  remoteproc: Initialize rproc_class before use
  module: avoid setting info->name early in case we can fall back to info->mod->name
  btrfs: device stats, log when stats are zeroed
  btrfs: safely advance counter when looking up bio csums
  btrfs: fix possible NULL-pointer dereference in integrity checks
  pwm: Remove set but not set variable 'pwm'
  ide: serverworks: potential overflow in svwks_set_pio_mode()
  cmd64x: potential buffer overflow in cmd64x_program_timings()
  pwm: omap-dmtimer: Remove PWM chip in .remove before making it unfunctional
  x86/mm: Fix NX bit clearing issue in kernel_map_pages_in_pgd
  f2fs: fix memleak of kobject
  regulator: vctrl-regulator: Avoid deadlock getting and setting the voltage
  ASoC: SOF: Intel: hda: Fix SKL dai count
  debugobjects: Fix various data races
  watchdog/softlockup: Enforce that timestamp is valid on boot
  perf/x86/amd: Constrain Large Increment per Cycle events
  sched/topology: Assert non-NUMA topology masks don't (partially) overlap
  sched/core: Fix size of rq::uclamp initialization
  arm64: dts: ti: k3-j721e-main: Add missing power-domains for smmu
  KVM: PPC: Remove set but not used variable 'ra', 'rs', 'rt'
  EDAC/sifive: Fix return value check in ecc_register()
  drm/amd/display: fixup DML dependencies
  arm64: fix alternatives with LLVM's integrated assembler
  arm64: lse: fix LSE atomics with LLVM's integrated assembler
  RDMA/mlx5: Don't fake udata for kernel path
  ALSA: usb-audio: add implicit fb quirk for MOTU M Series
  crypto: essiv - fix AEAD capitalization and preposition use in help text
  scsi: iscsi: Don't destroy session if there are outstanding connections
  scsi: ufs-mediatek: add apply_dev_quirks variant operation
  scsi: ufs: pass device information to apply_dev_quirks
  f2fs: free sysfs kobject
  f2fs: set I_LINKABLE early to avoid wrong access by vfs
  ALSA: usb-audio: unlock on error in probe
  iommu/arm-smmu-v3: Use WRITE_ONCE() when changing validity of an STE
  kbuild: remove *.tmp file when filechk fails
  usb: musb: omap2430: Get rid of musb .set_vbus for omap2430 glue
  perf/imx_ddr: Fix cpu hotplug state cleanup
  drm/vmwgfx: prevent memory leak in vmw_cmdbuf_res_add
  gpiolib: Set lockdep class for hierarchical irq domains
  dm thin: don't allow changing data device during thin-pool reload
  drm/nouveau/fault/gv100-: fix memory leak on module unload
  drm/nouveau/drm/ttm: Remove set but not used variable 'mem'
  drm/nouveau: Fix copy-paste error in nouveau_fence_wait_uevent_handler
  drm/nouveau/gr/gk20a,gm200-: add terminators to method lists read from fw
  drm/nouveau/secboot/gm20b: initialize pointer in gm20b_secboot_new()
  vme: bridges: reduce stack usage
  bpf: Return -EBADRQC for invalid map type in __bpf_tx_xdp_map
  ASoC: SOF: Intel: hda-dai: fix compilation warning in pcm_prepare
  driver core: Print device when resources present in really_probe()
  driver core: platform: Prevent resouce overflow from causing infinite loops
  visorbus: fix uninitialized variable access
  misc: xilinx_sdfec: fix xsdfec_poll()'s return type
  tty: synclink_gt: Adjust indentation in several functions
  tty: synclinkmp: Adjust indentation in several functions
  raid6/test: fix a compilation warning
  ASoC: atmel: fix build error with CONFIG_SND_ATMEL_SOC_DMA=m
  ALSA: usb-audio: Add boot quirk for MOTU M Series
  ARM: dts: rockchip: add reg property to brcmf sub node for rk3188-bqedison2qc
  arm64: dts: rockchip: add reg property to brcmf sub-nodes
  arm64: dts: rockchip: fix dwmmc clock name for px30
  clocksource: davinci: only enable clockevents once tim34 is initialized
  wan: ixp4xx_hss: fix compile-testing on 64-bit
  x86/nmi: Remove irq_work from the long duration NMI handler
  bnxt: Detach page from page pool before sending up the stack
  Input: edt-ft5x06 - work around first register access error
  rcu: Use WRITE_ONCE() for assignments to ->pprev for hlist_nulls
  efi/x86: Don't panic or BUG() on non-critical error conditions
  soc/tegra: fuse: Correct straps' address for older Tegra124 device trees
  IB/hfi1: Add RcvShortLengthErrCnt to hfi1stats
  IB/hfi1: Add software counter for ctxt0 seq drop
  staging: rtl8188: avoid excessive stack usage
  drm/mediatek: Add gamma property according to hardware capability
  udf: Fix free space reporting for metadata and virtual partitions
  usbip: Fix unsafe unaligned pointer usage
  ARM: dts: stm32: Add power-supply for DSI panel on stm32f469-disco
  usb: dwc3: use proper initializers for property entries
  drm: remove the newline for CRC source name.
  RDMA/hns: Avoid printing address of mtt page
  mlx5: work around high stack usage with gcc
  drm/amdkfd: Fix permissions of hang_hws
  iommu/vt-d: Avoid sending invalid page response
  iommu/vt-d: Match CPU and IOMMU paging mode
  ACPI: button: Add DMI quirk for Razer Blade Stealth 13 late 2019 lid switch
  ASoC: Intel: sof_rt5682: Ignore the speaker amp when there isn't one.
  vfio/spapr/nvlink2: Skip unpinning pages on error exit
  tools lib api fs: Fix gcc9 stringop-truncation compilation error
  net: phy: fixed_phy: fix use-after-free when checking link GPIO
  ALSA: sh: Fix compile warning wrt const
  ALSA: hda/realtek - Apply mic mute LED quirk for Dell E7xx laptops, too
  clk: uniphier: Add SCSSI clock gate for each channel
  clk: Use parent node pointer during registration if necessary
  ALSA: sh: Fix unused variable warnings
  clk: sunxi-ng: add mux and pll notifiers for A64 CPU clock
  RDMA/rxe: Fix error type of mmap_offset
  fbdev: fix numbering of fbcon options
  ASoC: soc-topology: fix endianness issues
  reset: uniphier: Add SCSSI reset control for each channel
  pinctrl: sh-pfc: sh7269: Fix CAN function GPIOs
  drm/fbdev: Fallback to non tiled mode if all tiles not present
  PM / devfreq: rk3399_dmc: Add COMPILE_TEST and HAVE_ARM_SMCCC dependency
  PM / devfreq: exynos-ppmu: Fix excessive stack usage
  x86/vdso: Provide missing include file
  crypto: chtls - Fixed memory leak
  net: phy: realtek: add logging for the RGMII TX delay configuration
  bpf: Print error message for bpftool cgroup show
  dmaengine: imx-sdma: Fix memory leak
  dmaengine: Store module owner in dma_device struct
  clk: actually call the clock init before any other callback of the clock
  iommu/iova: Silence warnings under memory pressure
  iommu/amd: Only support x2APIC with IVHD type 11h/40h
  iommu/amd: Check feature support bit before accessing MSI capability registers
  arm64: dts: qcom: db845c: Enable ath10k 8bit host-cap quirk
  scsi: lpfc: Fix: Rework setting of fdmi symbolic node name registration
  selinux: ensure we cleanup the internal AVC counters on error in avc_update()
  ARM: dts: r8a7779: Add device node for ARM global timer
  clk: renesas: rcar-gen3: Allow changing the RPC[D2] clocks
  drm/mediatek: handle events when enabling/disabling crtc
  crypto: inside-secure - add unspecified HAS_IOMEM dependency
  scsi: aic7xxx: Adjust indentation in ahc_find_syncrate
  scsi: ufs: Complete pending requests in host reset and restore path
  nfsd: Clone should commit src file metadata too
  ACPICA: Disassembler: create buffer fields in ACPI_PARSE_LOAD_PASS1
  clk: qcom: smd: Add missing bimc clock
  drm/amdgpu: fix KIQ ring test fail in TDR of SRIOV
  orinoco: avoid assertion in case of NULL pointer
  rtlwifi: rtl_pci: Fix -Wcast-function-type
  iwlegacy: Fix -Wcast-function-type
  ipw2x00: Fix -Wcast-function-type
  b43legacy: Fix -Wcast-function-type
  PCI: Add DMA alias quirk for PLX PEX NTB
  PCI: Add nr_devfns parameter to pci_add_dma_alias()
  ALSA: usx2y: Adjust indentation in snd_usX2Y_hwdep_dsp_status
  netfilter: nft_tunnel: add the missing ERSPAN_VERSION nla_policy
  fore200e: Fix incorrect checks of NULL pointer dereference
  r8169: check that Realtek PHY driver module is loaded
  samples/bpf: Set -fno-stack-protector when building BPF programs
  reiserfs: Fix spurious unlock in reiserfs_fill_super() error handling
  media: v4l2-device.h: Explicitly compare grp{id,mask} to zero in v4l2_device macros
  selftests/net: make so_txtime more robust to timer variance
  gpu/drm: ingenic: Avoid null pointer deference in plane atomic update
  Revert "nfp: abm: fix memory leak in nfp_abm_u32_knode_replace"
  PCI: Increase D3 delay for AMD Ryzen5/7 XHCI controllers
  PCI: Add generic quirk for increasing D3hot delay
  media: cx23885: Add support for AVerMedia CE310B
  PCI: iproc: Apply quirk_paxc_bridge() for module as well as built-in
  bus: ti-sysc: Implement quirk handling for CLKDM_NOAUTO
  ARM: dts: imx6: rdu2: Limit USBH1 to Full Speed
  ARM: dts: imx6: rdu2: Disable WP for USDHC2 and USDHC3
  ARM: exynos_defconfig: Bring back explicitly wanted options
  clk: imx: Add correct failure handling for clk based helpers
  padata: validate cpumask without removed CPU during offline
  arm64: dts: qcom: msm8996: Disable USB2 PHY suspend by core
  selinux: ensure we cleanup the internal AVC counters on error in avc_insert()
  opp: Free static OPPs on errors while adding them
  arm: dts: allwinner: H3: Add PMU node
  arm64: dts: allwinner: H5: Add PMU node
  arm64: dts: allwinner: H6: Add PMU mode
  NFC: port100: Convert cpu_to_le16(le16_to_cpu(E1) + E2) to use le16_add_cpu().
  net/wan/fsl_ucc_hdlc: reject muram offsets above 64K
  regulator: rk808: Lower log level on optional GPIOs being not available
  ASoC: intel: sof_rt5682: Add support for tgl-max98357a-rt5682
  ASoC: intel: sof_rt5682: Add quirk for number of HDMI DAI's
  modules: lockdep: Suppress suspicious RCU usage warning
  arm64: dts: rockchip: Fix NanoPC-T4 cooling maps
  drm/panel: simple: Add Logic PD Type 28 display support
  drm/amdgpu: Ensure ret is always initialized when using SOC15_WAIT_ON_RREG
  ath10k: correct the tlv len of ath10k_wmi_tlv_op_gen_config_pno_start
  drm/amdgpu: remove 4 set but not used variable in amdgpu_atombios_get_connector_info_from_object_table
  bpf, sockhash: Synchronize_rcu before free'ing map
  drm/amdkfd: Fix a bug in SDMA RLC queue counting under HWS mode
  clk: qcom: rcg2: Don't crash if our parent can't be found; return an error
  clk: qcom: Don't overwrite 'cfg' in clk_rcg2_dfs_populate_freq()
  kconfig: fix broken dependency in randconfig-generated .config
  block, bfq: do not plug I/O for bfq_queues with no proc refs
  drivers/block/zram/zram_drv.c: fix error return codes not being returned in writeback_store
  Btrfs: keep pages dirty when using btrfs_writepage_fixup_worker
  KVM: s390: ENOTSUPP -> EOPNOTSUPP fixups
  nbd: add a flush_workqueue in nbd_start_device
  tracing: Simplify assignment parsing for hist triggers
  drm/amd/display: Retrain dongles when SINK_COUNT becomes non-zero
  rtc: i2c/spi: Avoid inclusion of REGMAP support when not needed
  selftests: settings: tests can be in subsubdirs
  brcmfmac: sdio: Fix OOB interrupt initialization on brcm43362
  rtw88: fix rate mask for 1SS chip
  ath10k: Correct the DMA direction for management tx buffers
  ext4, jbd2: ensure panic when aborting with zero errno
  ARM: 8952/1: Disable kmemleak on XIP kernels
  tracing: Fix very unlikely race of registering two stat tracers
  tracing: Fix tracing_stat return values in error handling paths
  powerpc/iov: Move VF pdev fixup into pcibios_fixup_iov()
  s390/pci: Fix possible deadlock in recover_store()
  wan/hdlc_x25: fix skb handling
  dmaengine: fsl-qdma: fix duplicated argument to &&
  udf: Allow writing to 'Rewritable' partitions
  pwm: omap-dmtimer: Simplify error handling
  x86/sysfb: Fix check for bad VRAM size
  clk: ti: dra7: fix parent for gmac_clkctrl
  ext4: fix deadlock allocating bio_post_read_ctx from mempool
  jbd2: clear JBD2_ABORT flag before journal_reset to update log tail info when load journal
  kselftest: Minimise dependency of get_size on C library interfaces
  drm/amd/display: Clear state after exiting fixed active VRR state
  clocksource/drivers/bcm2835_timer: Fix memory leak of timer
  usb: dwc2: Fix IN FIFO allocation
  usb: gadget: udc: fix possible sleep-in-atomic-context bugs in gr_probe()
  drm/nouveau/nouveau: fix incorrect sizeof on args.src an args.dst
  spi: fsl-lpspi: fix only one cs-gpio working
  drm/amdgpu/sriov: workaround on rev_id for Navi12 under sriov
  uio: fix a sleep-in-atomic-context bug in uio_dmem_genirq_irqcontrol()
  raid6/test: fix a compilation error
  net: ethernet: ixp4xx: Standard module init
  sparc: Add .exit.data section.
  MIPS: Loongson: Fix potential NULL dereference in loongson3_platform_init()
  efi/x86: Map the entire EFI vendor string before copying it
  pinctrl: baytrail: Do not clear IRQ flags on direct-irq enabled pins
  IB/core: Let IB core distribute cache update events
  kernel/module: Fix memleak in module_add_modinfo_attrs()
  media: sti: bdisp: fix a possible sleep-in-atomic-context bug in bdisp_device_run()
  char/random: silence a lockdep splat with printk()
  x86/fpu: Deactivate FPU state after failure during state load
  iommu/vt-d: Fix off-by-one in PASID allocation
  gpio: gpio-grgpio: fix possible sleep-in-atomic-context bugs in grgpio_irq_map/unmap()
  clk: meson: meson8b: make the CCF use the glitch-free mali mux
  powerpc/powernv/iov: Ensure the pdn for VFs always contains a valid PE number
  clk: at91: sam9x60: fix programmable clock prescaler
  media: sun4i-csi: Fix [HV]sync polarity handling
  media: sun4i-csi: Fix data sampling polarity handling
  media: sun4i-csi: Deal with DRAM offset
  media: i2c: mt9v032: fix enum mbus codes and frame sizes
  media: ov5640: Fix check for PLL1 exceeding max allowed rate
  pxa168fb: Fix the function used to release some memory in an error handling path
  drm/msm/adreno: fix zap vs no-zap handling
  drm/mipi_dbi: Fix off-by-one bugs in mipi_dbi_blank()
  printk: fix exclusive_console replaying
  pinctrl: sh-pfc: sh7264: Fix CAN function GPIOs
  gianfar: Fix TX timestamping with a stacked DSA driver
  ALSA: ctl: allow TLV read operation for callback type of element in locked case
  ext4: fix ext4_dax_read/write inode locking sequence for IOCB_NOWAIT
  leds: pca963x: Fix open-drain initialization
  drm/amd/display: Map ODM memory correctly when doing ODM combine
  PCI: Fix pci_add_dma_alias() bitmask size
  brcmfmac: Fix use after free in brcmf_sdio_readframes()
  brcmfmac: Fix memory leak in brcmf_p2p_create_p2pdev()
  cpu/hotplug, stop_machine: Fix stop_machine vs hotplug order
  clk: meson: pll: Fix by 0 division in __pll_params_to_rate()
  media: meson: add missing allocation failure check on new_buf
  f2fs: call f2fs_balance_fs outside of locked page
  f2fs: preallocate DIO blocks when forcing buffered_io
  rcu: Fix data-race due to atomic_t copy-by-value
  rcu: Fix missed wakeup of exp_wq waiters
  rcu/nocb: Fix dump_tree hierarchy print always active
  drm/qxl: Complete exception handling in qxl_device_init()
  wil6210: fix break that is never reached because of zero'ing of a retry counter
  ath10k: Fix qmi init error handling
  drm/gma500: Fixup fbdev stolen size usage evaluation
  net/sched: flower: add missing validation of TCA_FLOWER_FLAGS
  net/sched: matchall: add missing validation of TCA_MATCHALL_FLAGS
  net: dsa: tag_qca: Make sure there is headroom for tag
  net/smc: fix leak of kernel memory to user space
  enic: prevent waking up stopped tx queues over watchdog reset
  core: Don't skip generic XDP program execution for cloned SKBs
  ANDROID: ufs, block: fix crypto power management and move into block layer
  ANDROID: rtc: class: support hctosys from modular RTC drivers
  ANDROID: update the abi after clk changes
  ANDROID: update abi for f2fs/fscrypt merge
  ANDROID: Kconfig.gki: Remove most of the built in qcom clks
  FROMLIST: f2fs: Handle casefolding with Encryption
  FROMLIST: fscrypt: Have filesystems handle their d_ops
  FROMLIST: ext4: Use generic casefolding support
  FROMLIST: f2fs: Use generic casefolding support
  FROMLIST: Add standard casefolding support
  FROMLIST: unicode: Add utf8_casefold_hash
  ANDROID: gki: Set CONFIG_SERIAL_SAMSUNG for early con.
  UPSTREAM: tty: serial: samsung_tty: remove SERIAL_SAMSUNG_DEBUG
  UPSTREAM: tty: serial: samsung_tty: build it for any platform
  UPSTREAM: tty: serial: samsung_tty: do not abuse the struct uart_port unused fields
  UPSTREAM: tty: serial: samsung_tty: fix blank line checkpatch warning
  UPSTREAM: tty: serial: samsung_tty: fix up minor comment formatting
  UPSTREAM: tty: serial: samsung_tty: use 'unsigned int' not 'unsigned'
  UPSTREAM: tty: serial: samsung_tty: use standard debugging macros
  UPSTREAM: tty: serial: samsung_tty: drop unneded dbg() calls
  UPSTREAM: tty: serial: samsung_tty: delete samsung.h
  UPSTREAM: tty: serial: samsung.h: remove reset_port callback from struct s3c24xx_uart_info
  UPSTREAM: tty: serial: samsung.h: fix up minor comment issues
  UPSTREAM: tty: serial: samsung_tty: fix build warning
  UPSTREAM: tty: serial: samsung: allow driver to be built by anyone
  UPSTREAM: tty: serial: samsung: remove variable 'ufstat' set but not used
  UPSTREAM: {tty: serial, nand: onenand}: samsung: rename to fix build warning
  UPSTREAM: random: ignore GRND_RANDOM in getentropy(2)
  UPSTREAM: random: add GRND_INSECURE to return best-effort non-cryptographic bytes
  UPSTREAM: linux/random.h: Mark CONFIG_ARCH_RANDOM functions __must_check
  UPSTREAM: linux/random.h: Use false with bool
  UPSTREAM: linux/random.h: Remove arch_has_random, arch_has_random_seed
  UPSTREAM: random: remove some dead code of poolinfo
  UPSTREAM: random: fix typo in add_timer_randomness()
  UPSTREAM: random: Add and use pr_fmt()
  UPSTREAM: random: convert to ENTROPY_BITS for better code readability
  UPSTREAM: random: remove unnecessary unlikely()
  UPSTREAM: random: remove kernel.random.read_wakeup_threshold
  UPSTREAM: random: delete code to pull data into pools
  UPSTREAM: random: remove the blocking pool
  UPSTREAM: random: make /dev/random be almost like /dev/urandom
  UPSTREAM: random: Add a urandom_read_nowait() for random APIs that don't warn
  UPSTREAM: random: Don't wake crng_init_wait when crng_init == 1
  UPSTREAM: char/random: silence a lockdep splat with printk()
  ANDROID: Incremental fs: Support xattrs
  BACKPORT: sched/fair: Remove wake_cap()
  UPSTREAM: sched/core: Remove for_each_lower_domain()
  UPSTREAM: sched/topology: Remove SD_BALANCE_WAKE on asymmetric capacity systems
  UPSTREAM: sched/fair: Add asymmetric CPU capacity wakeup scan
  ANDROID: ufs: add quirk to fix abnormal ocs fatal error
  FROMLIST: ufs: fix a bug on printing PRDT
  ANDROID: update abi for 5.4.21
  ANDROID: clang: update to 10.0.4
  Linux 5.4.21
  mmc: core: Rework wp-gpio handling
  gpio: add gpiod_toggle_active_low()
  KVM: x86/mmu: Fix struct guest_walker arrays for 5-level paging
  ext4: choose hardlimit when softlimit is larger than hardlimit in ext4_statfs_project()
  jbd2: do not clear the BH_Mapped flag when forgetting a metadata buffer
  jbd2: move the clearing of b_modified flag to the journal_unmap_buffer()
  Revert "drm/sun4i: drv: Allow framebuffer modifiers in mode config"
  NFSv4.1 make cachethis=no for writes
  perf stat: Don't report a null stalled cycles per insn metric
  KVM: x86: Mask off reserved bit from #DB exception payload
  arm64: dts: fast models: Fix FVP PCI interrupt-map property
  cifs: fix mount option display for sec=krb5i
  mac80211: fix quiet mode activation in action frames
  hwmon: (pmbus/ltc2978) Fix PMBus polling of MFR_COMMON definitions.
  perf/x86/intel: Fix inaccurate period in context switch for auto-reload
  spmi: pmic-arb: Set lockdep class for hierarchical irq domains
  sched/uclamp: Reject negative values in cpu_uclamp_write()
  s390/time: Fix clk type in get_tod_clock
  RDMA/core: Fix protection fault in get_pkey_idx_qp_list
  RDMA/rxe: Fix soft lockup problem due to using tasklets in softirq
  RDMA/hfi1: Fix memory leak in _dev_comp_vect_mappings_create
  RDMA/iw_cxgb4: initiate CLOSE when entering TERM
  RDMA/core: Fix invalid memory access in spec_filter_size
  IB/umad: Fix kernel crash while unloading ib_umad
  IB/rdmavt: Reset all QPs when the device is shut down
  IB/hfi1: Close window for pq and request coliding
  IB/hfi1: Acquire lock to release TID entries when user file is closed
  IB/mlx5: Return failure when rts2rts_qp_counters_set_id is not supported
  drivers: ipmi: fix off-by-one bounds check that leads to a out-of-bounds write
  nvme: fix the parameter order for nvme_get_log in nvme_get_fw_slot_info
  bus: moxtet: fix potential stack buffer overflow
  drm/panfrost: Make sure the shrinker does not reclaim referenced BOs
  drm/vgem: Close use-after-free race in vgem_gem_create
  s390/uv: Fix handling of length extensions
  s390/pkey: fix missing length of protected key on return
  perf/x86/amd: Add missing L2 misses event spec to AMD Family 17h's event map
  KVM: nVMX: Use correct root level for nested EPT shadow page tables
  EDAC/mc: Fix use-after-free and memleaks during device removal
  EDAC/sysfs: Remove csrow objects on errors
  cifs: make sure we do not overflow the max EA buffer size
  xprtrdma: Fix DMA scatter-gather list mapping imbalance
  arm64: ssbs: Fix context-switch when SSBS is present on all CPUs
  gpio: xilinx: Fix bug where the wrong GPIO register is written to
  ARM: npcm: Bring back GPIOLIB support
  btrfs: log message when rw remount is attempted with unclean tree-log
  btrfs: print message when tree-log replay starts
  btrfs: ref-verify: fix memory leaks
  Btrfs: fix race between using extent maps and merging them
  ext4: improve explanation of a mount failure caused by a misconfigured kernel
  ext4: add cond_resched() to ext4_protect_reserved_inode
  ext4: fix checksum errors with indexed dirs
  ext4: fix support for inode sizes > 1024 bytes
  ext4: don't assume that mmp_nodename/bdevname have NUL
  ALSA: usb-audio: Add clock validity quirk for Denon MC7000/MCX8000
  ALSA: usb-audio: sound: usb: usb true/false for bool return type
  ACPI: PM: s2idle: Prevent spurious SCIs from waking up the system
  ACPICA: Introduce acpi_any_gpe_status_set()
  ACPI: PM: s2idle: Avoid possible race related to the EC GPE
  ACPI: EC: Fix flushing of pending work
  ALSA: usb-audio: Apply sample rate quirk for Audioengine D1
  ALSA: hda/realtek - Fix silent output on MSI-GL73
  ALSA: hda/realtek - Add more codec supported Headset Button
  ALSA: usb-audio: Fix UAC2/3 effect unit parsing
  Input: synaptics - remove the LEN0049 dmi id from topbuttonpad list
  Input: synaptics - enable SMBus on ThinkPad L470
  Input: synaptics - switch T470s to RMI4 by default
  ANDROID: ABI/Whitelist: initial unisoc whitelist
  ANDROID: Fix ABI representation after enabling CONFIG_NET_NS
  ANDROID: gki_defconfig: Enable CONFIG_NET_NS
  ANDROID: gki_defconfig: Enable XDP_SOCKETS
  ANDROID: gki_defconfig: Enable MAC80211_RC_MINSTREL
  ANDROID: virtio: virtio_input: pass _DIRECT only if the device advertises _DIRECT
  ANDROID: staging: ion: delete unused heap types and IDs
  ANDROID: gki_defconfig: disable system_contig ion heap.
  ANDROID: cf build: Use merge_configs
  ANDROID: net: bpf: Allow TC programs to call BPF_FUNC_skb_change_head
  ANDROID: gki_defconfig: Disable SDCARD_FS
  Linux 5.4.20
  selinux: fall back to ref-walk if audit is required
  libertas: make lbs_ibss_join_existing() return error code on rates overflow
  libertas: don't exit from lbs_ibss_join_existing() with RCU read lock held
  mwifiex: Fix possible buffer overflows in mwifiex_cmd_append_vsie_tlv()
  mwifiex: Fix possible buffer overflows in mwifiex_ret_wmm_get_status()
  dmaengine: axi-dmac: add a check for devm_regmap_init_mmio
  clk: meson: g12a: fix missing uart2 in regmap table
  mfd: max77650: Select REGMAP_IRQ in Kconfig
  regmap: fix writes to non incrementing registers
  pinctrl: sh-pfc: r8a7778: Fix duplicate SDSELF_B and SD1_CLK_B
  pinctrl: sh-pfc: r8a77965: Fix DU_DOTCLKIN3 drive/bias control
  selinux: fix regression introduced by move_mount(2) syscall
  selinux: revert "stop passing MAY_NOT_BLOCK to the AVC upon follow_link"
  bcache: avoid unnecessary btree nodes flushing in btree_flush_write()
  dt-bindings: iio: adc: ad7606: Fix wrong maxItems value
  media: i2c: adv748x: Fix unsafe macros
  drivers: watchdog: stm32_iwdg: set WDOG_HW_RUNNING at probe
  crypto: caam/qi2 - fix typo in algorithm's driver name
  crypto: atmel-sha - fix error handling when setting hmac key
  crypto: artpec6 - return correct error code for failed setkey()
  crypto: testmgr - don't try to decrypt uninitialized buffers
  mtd: sharpslpart: Fix unsigned comparison to zero
  mtd: onenand_base: Adjust indentation in onenand_read_ops_nolock
  arm64: nofpsmid: Handle TIF_FOREIGN_FPSTATE flag cleanly
  KVM: arm64: Treat emulated TVAL TimerValue as a signed 32-bit integer
  KVM: arm64: pmu: Fix chained SW_INCR counters
  KVM: arm64: pmu: Don't increment SW_INCR if PMCR.E is unset
  KVM: arm: Make inject_abt32() inject an external abort instead
  KVM: arm: Fix DFSR setting for non-LPAE aarch32 guests
  KVM: arm/arm64: Fix young bit from mmu notifier
  arm64: ptrace: nofpsimd: Fail FP/SIMD regset operations
  arm64: cpufeature: Set the FP/SIMD compat HWCAP bits properly
  arm64: cpufeature: Fix the type of no FP/SIMD capability
  sched/uclamp: Fix a bug in propagating uclamp value in new cgroups
  ARM: 8949/1: mm: mark free_memmap as __init
  KVM: arm/arm64: vgic-its: Fix restoration of unmapped collections
  ARM: at91: pm: use of_device_id array to find the proper shdwc node
  ARM: at91: pm: use SAM9X60 PMC's compatible
  iommu/arm-smmu-v3: Populate VMID field for CMDQ_OP_TLBI_NH_VA
  powerpc/pseries: Allow not having ibm, hypertas-functions::hcall-multi-tce for DDW
  powerpc/pseries/vio: Fix iommu_table use-after-free refcount warning
  powerpc/papr_scm: Fix leaking 'bus_desc.provider_name' in some paths
  powerpc/ptdump: Only enable PPC_CHECK_WX with STRICT_KERNEL_RWX
  powerpc/ptdump: Fix W+X verification call in mark_rodata_ro()
  Revert "powerpc/pseries/iommu: Don't use dma_iommu_ops on secure guests"
  soc: qcom: rpmhpd: Set 'active_only' for active only power domains
  tools/power/acpi: fix compilation error
  ARM: dts: at91: sama5d3: define clock rate range for tcb1
  ARM: dts: at91: sama5d3: fix maximum peripheral clock rates
  ARM: dts: meson8b: use the actual frequency for the GPU's 364MHz OPP
  ARM: dts: meson8: use the actual frequency for the GPU's 182.1MHz OPP
  arm64: dts: marvell: clearfog-gt-8k: fix switch cpu port node
  arm64: dts: renesas: r8a77990: ebisu: Remove clkout-lr-synchronous from sound
  ARM: dts: am43xx: add support for clkout1 clock
  ARM: dts: at91: Reenable UART TX pull-ups
  arm64: dts: uDPU: fix broken ethernet
  arm64: dts: qcom: msm8998: Fix tcsr syscon size
  platform/x86: intel_mid_powerbtn: Take a copy of ddata
  ARC: [plat-axs10x]: Add missing multicast filter number to GMAC node
  watchdog: qcom: Use platform_get_irq_optional() for bark irq
  rtc: cmos: Stop using shared IRQ
  rtc: hym8563: Return -EINVAL if the time is known to be invalid
  x86/boot: Handle malformed SRAT tables during early ACPI parsing
  NFSv4.0: nfs4_do_fsinfo() should not do implicit lease renewals
  NFSv4: try lease recovery on NFS4ERR_EXPIRED
  NFSv4: pnfs_roc() must use cred_fscmp() to compare creds
  NFS: Fix fix of show_nfs_errors
  NFS/pnfs: Fix pnfs_generic_prepare_to_resend_writes()
  NFS: Revalidate the file size on a fatal write error
  nfs: NFS_SWAP should depend on SWAP
  bpf, sockmap: Check update requirements after locking
  bpf: Improve bucket_log calculation logic
  selftests/bpf: Test freeing sockmap/sockhash with a socket in it
  bpf, sockhash: Synchronize_rcu before free'ing map
  bpf, sockmap: Don't sleep while holding RCU lock on tear-down
  bpftool: Don't crash on missing xlated program instructions
  iwlwifi: mvm: avoid use after free for pmsr request
  PCI/AER: Initialize aer_fifo
  PCI: Don't disable bridge BARs when assigning bus resources
  PCI: tegra: Fix afi_pex2_ctrl reg offset for Tegra30
  PCI/switchtec: Fix vep_vector_number ioread width
  PCI/switchtec: Use dma_set_mask_and_coherent()
  ath10k: pci: Only dump ATH10K_MEM_REGION_TYPE_IOREG when safe
  PCI/IOV: Fix memory leak in pci_iov_add_virtfn()
  scsi: ufs: Fix ufshcd_probe_hba() reture value in case ufshcd_scsi_add_wlus() fails
  RDMA/umem: Fix ib_umem_find_best_pgsz()
  RDMA/cma: Fix unbalanced cm_id reference count during address resolve
  RDMA/uverbs: Verify MR access flags
  RDMA/core: Fix locking in ib_uverbs_event_read
  RDMA/i40iw: fix a potential NULL pointer dereference
  RDMA/netlink: Do not always generate an ACK for some netlink operations
  IB/mlx4: Fix leak in id_map_find_del
  IB/srp: Never use immediate data if it is disabled by a user
  IB/mlx4: Fix memory leak in add_gid error flow
  hv_sock: Remove the accept port restriction
  ASoC: pcm: update FE/BE trigger order based on the command
  ANDROID: gki_defconfig: Add CONFIG_UNICODE
  ANDROID: added memory initialization tests to cuttlefish config
  ANDROID: gki_defconfig: enable CONFIG_RUNTIME_TESTING_MENU
  fs-verity: use u64_to_user_ptr()
  fs-verity: use mempool for hash requests
  fs-verity: implement readahead of Merkle tree pages
  fs-verity: implement readahead for FS_IOC_ENABLE_VERITY
  fscrypt: improve format of no-key names
  ubifs: allow both hash and disk name to be provided in no-key names
  ubifs: don't trigger assertion on invalid no-key filename
  fscrypt: clarify what is meant by a per-file key
  fscrypt: derive dirhash key for casefolded directories
  fscrypt: don't allow v1 policies with casefolding
  fscrypt: add "fscrypt_" prefix to fname_encrypt()
  fscrypt: don't print name of busy file when removing key
  ubifs: use IS_ENCRYPTED() instead of ubifs_crypt_is_encrypted()
  fscrypt: document gfp_flags for bounce page allocation
  fscrypt: optimize fscrypt_zeroout_range()
  fscrypt: remove redundant bi_status check
  fscrypt: Allow modular crypto algorithms
  FROMLIST: rename missed uaccess .fixup section
  ANDROID: gki_defconfig: enable heap and stack initialization.
  ANDROID: ABI/Whitelist: update for db845c
  ANDROID: ABI/Whitelist: update for Cuttlefish
  ANDROID: update ABI representation and GKI whitelist
  ANDROID: f2fs: fix missing blk-crypto changes
  fscrypt: include <linux/ioctl.h> in UAPI header
  fscrypt: don't check for ENOKEY from fscrypt_get_encryption_info()
  fscrypt: remove fscrypt_is_direct_key_policy()
  fscrypt: move fscrypt_valid_enc_modes() to policy.c
  fscrypt: check for appropriate use of DIRECT_KEY flag earlier
  fscrypt: split up fscrypt_supported_policy() by policy version
  fscrypt: introduce fscrypt_needs_contents_encryption()
  fscrypt: move fscrypt_d_revalidate() to fname.c
  fscrypt: constify inode parameter to filename encryption functions
  fscrypt: constify struct fscrypt_hkdf parameter to fscrypt_hkdf_expand()
  fscrypt: verify that the crypto_skcipher has the correct ivsize
  fscrypt: use crypto_skcipher_driver_name()
  fscrypt: support passing a keyring key to FS_IOC_ADD_ENCRYPTION_KEY
  UPSTREAM: dynamic_debug: allow to work if debugfs is disabled
  UPSTREAM: serial: sprd: Add polling IO support
  UPSTREAM: dmaengine: sprd: Add wrap address support for link-list mode
  UPSTREAM: pinctrl: sprd: Add CM4 sleep mode support
  UPSTREAM: pinctrl: sprd: Add PIN_CONFIG_BIAS_DISABLE configuration support
  UPSTREAM: spi: sprd: adi: Set BIT_WDG_NEW bit when rebooting
  UPSTREAM: nvmem: sprd: Add Spreadtrum SoCs eFuse support
  UPSTREAM: dt-bindings: nvmem: Add Spreadtrum eFuse controller documentation
  UPSTREAM: scsi: ufs-mediatek: enable low-power mode for hibern8 state
  BACKPORT: scsi: ufs: export some functions for vendor usage
  UPSTREAM: scsi: ufs-mediatek: add dbg_register_dump implementation
  UPSTREAM: scsi: ufs-mediatek: add apply_dev_quirks variant operation
  UPSTREAM: scsi: ufs: pass device information to apply_dev_quirks
  UPSTREAM: scsi: ufs: add device reset history for vendor implementations
  UPSTREAM: scsi: ufs: fix empty check of error history
  UPSTREAM: scsi: ufs-mediatek: configure and enable clk-gating
  UPSTREAM: scsi: ufs-mediatek: configure customized auto-hibern8 timer
  BACKPORT: scsi: ufs: export ufshcd_auto_hibern8_update for vendor usage
  UPSTREAM: scsi: ufs-mediatek: introduce reference clock control
  UPSTREAM: scsi: ufs-mediatek: add device reset implementation
  UPSTREAM: scsi: soc: mediatek: add header for SiP service interface
  BACKPORT: scsi: ufs: use ufshcd_vops_dbg_register_dump for vendor specific dumps
  BACKPORT: scsi: ufs: unify scsi_block_requests usage
  UPSTREAM: scsi: ufs: disable interrupt during clock-gating
  UPSTREAM: scsi: ufs: disable irq before disabling clocks
  UPSTREAM: scsi: ufs-mediatek: enable auto suspend capability
  ANDROID: update ABI for 5.4.19
  ANDROID: fix up dummy-cpufreq.c due to api changes
  Linux 5.4.19
  powerpc/kuap: Fix set direction in allow/prevent_user_access()
  regulator fix for "regulator: core: Add regulator_is_equal() helper"
  rxrpc: Fix service call disconnection
  perf/core: Fix mlock accounting in perf_mmap()
  clocksource: Prevent double add_timer_on() for watchdog_timer
  x86/apic/msi: Plug non-maskable MSI affinity race
  cifs: fail i/o on soft mounts if sessionsetup errors out
  KVM: Play nice with read-only memslots when querying host page size
  KVM: Use vcpu-specific gva->hva translation when querying host page size
  KVM: nVMX: vmread should not set rflags to specify success in case of #PF
  KVM: x86: fix overlap between SPTE_MMIO_MASK and generation
  KVM: x86: Use gpa_t for cr2/gpa to fix TDP support on 32-bit KVM
  KVM: x86: use CPUID to locate host page table reserved bits
  KVM: x86/mmu: Apply max PA check for MMIO sptes to 32-bit KVM
  drm/dp_mst: Remove VCPI while disabling topology mgr
  btrfs: free block groups after free'ing fs trees
  btrfs: use bool argument in free_root_pointers()
  x86/timer: Don't skip PIT setup when APIC is disabled or in legacy mode
  mfd: bd70528: Fix hour register mask
  mfd: rn5t618: Mark ADC control register volatile
  mfd: da9062: Fix watchdog compatible string
  ASoC: Intel: skl_hda_dsp_common: Fix global-out-of-bounds bug
  net/mlx5: Deprecate usage of generic TLS HW capability bit
  net/mlx5: Fix deadlock in fs_core
  drop_monitor: Do not cancel uninitialized work item
  qed: Fix timestamping issue for L2 unicast ptp packets.
  ipv6/addrconf: fix potential NULL deref in inet6_set_link_af()
  taprio: Fix dropping packets when using taprio + ETF offloading
  taprio: Use taprio_reset_tc() to reset Traffic Classes configuration
  taprio: Add missing policy validation for flags
  taprio: Fix still allowing changing the flags during runtime
  taprio: Fix enabling offload with wrong number of traffic classes
  net: macb: Limit maximum GEM TX length in TSO
  net: macb: Remove unnecessary alignment check for TSO
  net/mlx5: IPsec, fix memory leak at mlx5_fpga_ipsec_delete_sa_ctx
  net/mlx5: IPsec, Fix esp modify function attribute
  net: systemport: Avoid RBUF stuck in Wake-on-LAN mode
  net: stmmac: fix a possible endless loop
  net_sched: fix a resource leak in tcindex_set_parms()
  net: mvneta: move rx_dropped and rx_errors in per-cpu stats
  net: dsa: microchip: enable module autoprobe
  net: dsa: bcm_sf2: Only 7278 supports 2Gb/sec IMP port
  net: dsa: b53: Always use dev->vlan_enabled in b53_configure_vlan()
  dpaa_eth: support all modes with rate adapting PHYs
  devlink: report 0 after hitting end in region read
  bonding/alb: properly access headers in bond_alb_xmit()
  ASoC: sgtl5000: Fix VDDA and VDDIO comparison
  regulator: core: Add regulator_is_equal() helper
  ubifs: Fix memory leak from c->sup_node
  ubi: Fix an error pointer dereference in error handling code
  ubi: fastmap: Fix inverted logic in seen selfcheck
  virtio_balloon: Fix memory leaks on errors in virtballoon_probe()
  virtio-balloon: Fix memory leak when unloading while hinting is in progress
  nfsd: Return the correct number of bytes written to the file
  nfsd: fix jiffies/time_t mixup in LRU list
  nfsd: fix delay timer on 32-bit architectures
  IB/core: Fix ODP get user pages flow
  IB/mlx5: Fix outstanding_pi index for GSI qps
  net: tulip: Adjust indentation in {dmfe, uli526x}_init_module
  net: smc911x: Adjust indentation in smc911x_phy_configure
  ppp: Adjust indentation into ppp_async_input
  NFC: pn544: Adjust indentation in pn544_hci_check_presence
  drm: msm: mdp4: Adjust indentation in mdp4_dsi_encoder_enable
  powerpc/44x: Adjust indentation in ibm4xx_denali_fixup_memsize
  ext2: Adjust indentation in ext2_fill_super
  phy: qualcomm: Adjust indentation in read_poll_timeout
  mtd: spi-nor: Split mt25qu512a (n25q512a) entry into two
  scsi: ufs: Recheck bkops level if bkops is disabled
  scsi: qla4xxx: Adjust indentation in qla4xxx_mem_free
  scsi: csiostor: Adjust indentation in csio_device_reset
  scsi: qla2xxx: Fix the endianness of the qla82xx_get_fw_size() return type
  ASoC: meson: axg-fifo: fix fifo threshold setup
  percpu: Separate decrypted varaibles anytime encryption can be enabled
  broken ping to ipv6 linklocal addresses on debian buster
  fix up iter on short count in fuse_direct_io()
  virtio-pci: check name when counting MSI-X vectors
  virtio-balloon: initialize all vq callbacks
  drm/amd/dm/mst: Ignore payload update failures
  clk: tegra: Mark fuse clock as critical
  mm/mmu_gather: invalidate TLB correctly on batch allocation failure and flush
  arm64: dts: qcom: qcs404-evb: Set vdd_apc regulator in high power mode
  mm/page_alloc.c: fix uninitialized memmaps on a partially populated last section
  ocfs2: fix oops when writing cloned file
  KVM: s390: do not clobber registers during guest reset/store status
  KVM: x86: Revert "KVM: X86: Fix fpu state crash in kvm guest"
  KVM: x86: Ensure guest's FPU state is loaded when accessing for emulation
  KVM: x86: Handle TIF_NEED_FPU_LOAD in kvm_{load,put}_guest_fpu()
  KVM: x86: Free wbinvd_dirty_mask if vCPU creation fails
  KVM: x86: Don't let userspace set host-reserved cr4 bits
  KVM: VMX: Add non-canonical check on writes to RTIT address MSRs
  x86/KVM: Clean up host's steal time structure
  x86/kvm: Cache gfn to pfn translation
  x86/KVM: Make sure KVM_VCPU_FLUSH_TLB flag is not missed
  x86/kvm: Introduce kvm_(un)map_gfn()
  x86/kvm: Be careful not to clear KVM_VCPU_FLUSH_TLB bit
  kvm/svm: PKU not currently supported
  KVM: PPC: Book3S PR: Free shared page if mmu initialization fails
  KVM: PPC: Book3S HV: Uninit vCPU if vcore creation fails
  KVM: x86: Fix potential put_fpu() w/o load_fpu() on MPX platform
  KVM: x86: Protect MSR-based index computations in fixed_msr_to_seg_unit() from Spectre-v1/L1TF attacks
  KVM: x86: Protect x86_decode_insn from Spectre-v1/L1TF attacks
  KVM: x86: Protect MSR-based index computations from Spectre-v1/L1TF attacks in x86.c
  KVM: x86: Protect ioapic_read_indirect() from Spectre-v1/L1TF attacks
  KVM: x86: Protect MSR-based index computations in pmu.h from Spectre-v1/L1TF attacks
  KVM: x86: Protect ioapic_write_indirect() from Spectre-v1/L1TF attacks
  KVM: x86: Protect kvm_hv_msr_[get|set]_crash_data() from Spectre-v1/L1TF attacks
  KVM: x86: Protect kvm_lapic_reg_write() from Spectre-v1/L1TF attacks
  KVM: x86: Protect DR-based index computations from Spectre-v1/L1TF attacks
  KVM: x86: Protect pmu_intel.c from Spectre-v1/L1TF attacks
  KVM: x86: Refactor prefix decoding to prevent Spectre-v1/L1TF attacks
  KVM: x86: Refactor picdev_write() to prevent Spectre-v1/L1TF attacks
  aio: prevent potential eventfd recursion on poll
  eventfd: track eventfd_signal() recursion depth
  bcache: add readahead cache policy options via sysfs interface
  watchdog: fix UAF in reboot notifier handling in watchdog core code
  xen/balloon: Support xend-based toolstack take two
  tools/kvm_stat: Fix kvm_exit filter name
  media: rc: ensure lirc is initialized before registering input device
  media: iguanair: fix endpoint sanity check
  drm/rect: Avoid division by zero
  drm: atmel-hlcdc: prefer a lower pixel-clock than requested
  drm: atmel-hlcdc: enable clock before configuring timing engine
  drm: atmel-hlcdc: use double rate for pixel clock only if supported
  gfs2: fix O_SYNC write handling
  gfs2: move setting current->backing_dev_info
  gfs2: fix gfs2_find_jhead that returns uninitialized jhead with seq 0
  sunrpc: expiry_time should be seconds not timeval
  mwifiex: fix unbalanced locking in mwifiex_process_country_ie()
  iwlwifi: don't throw error when trying to remove IGTK
  ARM: tegra: Enable PLLP bypass during Tegra124 LP1
  btrfs: Correctly handle empty trees in find_first_clear_extent_bit
  btrfs: flush write bio if we loop in extent_write_cache_pages
  Btrfs: fix race between adding and putting tree mod seq elements and nodes
  btrfs: drop log root for dropped roots
  btrfs: set trans->drity in btrfs_commit_transaction
  Btrfs: fix infinite loop during fsync after rename operations
  Btrfs: make deduplication with range including the last block work
  Btrfs: fix missing hole after hole punching and fsync when using NO_HOLES
  ext4: fix race conditions in ->d_compare() and ->d_hash()
  ext4: fix deadlock allocating crypto bounce page from mempool
  jbd2_seq_info_next should increase position index
  nfsd: fix filecache lookup
  NFS: Directory page cache pages need to be locked when read
  NFS: Fix memory leaks and corruption in readdir
  scsi: qla2xxx: Fix unbound NVME response length
  powerpc/futex: Fix incorrect user access blocking
  crypto: picoxcell - adjust the position of tasklet_init and fix missed tasklet_kill
  crypto: api - Fix race condition in crypto_spawn_alg
  crypto: atmel-aes - Fix counter overflow in CTR mode
  crypto: pcrypt - Do not clear MAY_SLEEP flag in original request
  crypto: arm64/ghash-neon - bump priority to 150
  crypto: ccp - set max RSA modulus size for v3 platform devices as well
  crypto: hisilicon - Use the offset fields in sqe to avoid need to split scatterlists
  crypto: api - fix unexpectedly getting generic implementation
  selftests: bpf: Ignore FIN packets for reuseport tests
  selftests: bpf: Use a temporary file in test_sockmap
  selftests/bpf: Skip perf hw events test if the setup disabled it
  selftests/bpf: Fix test_attach_probe
  samples/bpf: Xdp_redirect_cpu fix missing tracepoint attach
  samples/bpf: Don't try to remove user's homedir on clean
  tc-testing: fix eBPF tests failure on linux fresh clones
  libbpf: Fix realloc usage in bpf_core_find_cands
  bpf, devmap: Pass lockdep expression to RCU lists
  selftests/bpf: Fix perf_buffer test on systems w/ offline CPUs
  riscv, bpf: Fix broken BPF tail calls
  btrfs: Handle another split brain scenario with metadata uuid feature
  btrfs: fix improper setting of scanned for range cyclic write cache pages
  crypto: pcrypt - Avoid deadlock by using per-instance padata queues
  ftrace: Protect ftrace_graph_hash with ftrace_sync
  ftrace: Add comment to why rcu_dereference_sched() is open coded
  tracing: Annotate ftrace_graph_notrace_hash pointer with __rcu
  tracing: Annotate ftrace_graph_hash pointer with __rcu
  ASoC: SOF: core: release resources on errors in probe_continue
  ASoC: SOF: Introduce state machine for FW boot
  scsi: qla2xxx: Fix stuck login session using prli_pend_timer
  dm: fix potential for q->make_request_fn NULL pointer
  dm thin metadata: use pool locking at end of dm_pool_metadata_close
  dm crypt: fix benbi IV constructor crash if used in authenticated mode
  dm crypt: fix GFP flags passed to skcipher_request_alloc()
  dm writecache: fix incorrect flush sequence when doing SSD mode commit
  dm space map common: fix to ensure new block isn't already in use
  dm zoned: support zone sizes smaller than 128MiB
  ARM: dma-api: fix max_pfn off-by-one error in __dma_supported()
  of: Add OF_DMA_DEFAULT_COHERENT & select it on powerpc
  cpufreq: Avoid creating excessively large stack frames
  PM: core: Fix handling of devices deleted during system-wide resume
  f2fs: fix race conditions in ->d_compare() and ->d_hash()
  f2fs: fix dcache lookup of !casefolded directories
  f2fs: code cleanup for f2fs_statfs_project()
  f2fs: fix miscounted block limit in f2fs_statfs_project()
  f2fs: choose hardlimit when softlimit is larger than hardlimit in f2fs_statfs_project()
  ovl: fix lseek overflow on 32bit
  ovl: fix wrong WARN_ON() in ovl_cache_update_ino()
  power: supply: ltc2941-battery-gauge: fix use-after-free
  power: supply: axp20x_ac_power: Fix reporting online status
  cpupower: Revert library ABI changes from commit ae2917093f
  scsi: qla2xxx: Fix mtcp dump collection failure
  scsi: megaraid_sas: Do not initiate OCR if controller is not in ready state
  erofs: fix out-of-bound read for shifted uncompressed block
  scripts/find-unused-docs: Fix massive false positives
  fs: allow deduplication of eof block into the end of the destination file
  padata: Remove broken queue flushing
  crypto: ccree - fix PM race condition
  crypto: ccree - fix FDE descriptor sequence
  crypto: ccree - fix pm wrongful error reporting
  crypto: ccree - fix AEAD decrypt auth fail
  crypto: ccree - fix backlog memory leak
  crypto: api - Check spawn->alg under lock in crypto_drop_spawn
  nvmem: core: fix memory abort in cleanup path
  mfd: axp20x: Mark AXP20X_VBUS_IPSOUT_MGMT as volatile
  hv_balloon: Balloon up according to request page number
  ASoC: SOF: core: free trace on errors
  mmc: sdhci-of-at91: fix memleak on clk_get failure
  ubifs: Fix deadlock in concurrent bulk-read and writepage
  ubifs: Fix FS_IOC_SETFLAGS unexpectedly clearing encrypt flag
  ubifs: Fix wrong memory allocation
  ubifs: don't trigger assertion on invalid no-key filename
  fscrypt: don't print name of busy file when removing key
  alarmtimer: Unregister wakeup source when module get fails
  ACPI / battery: Deal better with neither design nor full capacity not being reported
  ACPI / battery: Use design-cap for capacity calculations if full-cap is not available
  ACPI / battery: Deal with design or full capacity being reported as -1
  ACPI: video: Do not export a non working backlight interface on MSI MS-7721 boards
  mmc: spi: Toggle SPI polarity, do not hardcode it
  PCI: keystone: Fix error handling when "num-viewport" DT property is not populated
  PCI: keystone: Fix link training retries initiation
  PCI: keystone: Fix outbound region mapping
  PCI: tegra: Fix return value check of pm_runtime_get_sync()
  tracing: Fix now invalid var_ref_vals assumption in trace action
  powerpc/32s: Fix CPU wake-up from sleep mode
  powerpc/32s: Fix bad_kuap_fault()
  powerpc/pseries: Advance pfn if section is not present in lmb_is_removable()
  powerpc/xmon: don't access ASDR in VMs
  powerpc/ptdump: Fix W+X verification
  powerpc/mmu_gather: enable RCU_TABLE_FREE even for !SMP case
  s390/mm: fix dynamic pagetable upgrade for hugetlbfs
  MIPS: boot: fix typo in 'vmlinux.lzma.its' target
  MIPS: fix indentation of the 'RELOCS' message
  MIPS: syscalls: fix indentation of the 'SYSNR' message
  KVM: arm64: Only sign-extend MMIO up to register width
  KVM: arm/arm64: Correct AArch32 SPSR on exception entry
  KVM: arm/arm64: Correct CPSR on exception entry
  KVM: arm64: Correct PSTATE on exception entry
  arm64: acpi: fix DAIF manipulation with pNMI
  ALSA: hda: Add JasperLake PCI ID and codec vid
  ALSA: hda: Add Clevo W65_67SB the power_save blacklist
  ALSA: hda: Apply aligned MMIO access only conditionally
  platform/x86: intel_scu_ipc: Fix interrupt support
  x86/cpu: Update cached HLE state on write to TSX_CTRL_CPUID_CLEAR
  irqdomain: Fix a memory leak in irq_domain_push_irq()
  lib/test_kasan.c: fix memory leak in kmalloc_oob_krealloc_more()
  media: v4l2-rect.h: fix v4l2_rect_map_inside() top/left adjustments
  media: v4l2-core: compat: ignore native command codes
  media/v4l2-core: set pages dirty upon releasing DMA buffers
  mm: move_pages: report the number of non-attempted pages
  mm: thp: don't need care deferred split queue in memcg charge move path
  mm/memory_hotplug: fix remove_memory() lockdep splat
  utimes: Clamp the timestamps in notify_change()
  mmc: sdhci-pci: Make function amd_sdhci_reset static
  mm/sparse.c: reset section's mem_map when fully deactivated
  memcg: fix a crash in wb_workfn when a device disappears
  ALSA: dummy: Fix PCM format loop in proc output
  ALSA: usb-audio: Annotate endianess in Scarlett gen2 quirk
  ALSA: usb-audio: Fix endianess in descriptor validation
  usb: gadget: f_ecm: Use atomic_t to track in-flight request
  usb: gadget: f_ncm: Use atomic_t to track in-flight request
  usb: gadget: legacy: set max_speed to super-speed
  usb: gadget: f_fs: set req->num_sgs as 0 for non-sg transfer
  objtool: Silence build output
  usb: typec: tcpci: mask event interrupts when remove driver
  usb: dwc3: gadget: Delay starting transfer
  usb: dwc3: gadget: Check END_TRANSFER completion
  brcmfmac: Fix memory leak in brcmf_usbdev_qinit
  Bluetooth: btusb: Disable runtime suspend on Realtek devices
  Bluetooth: btusb: fix memory leak on fw
  nvmet: Fix controller use after free
  nvmet: Fix error print message at nvmet_install_queue function
  rcu: Use READ_ONCE() for ->expmask in rcu_read_unlock_special()
  srcu: Apply *_ONCE() to ->srcu_last_gp_end
  rcu: Avoid data-race in rcu_gp_fqs_check_wake()
  rcu: Use *_ONCE() to protect lockless ->expmask accesses
  tracing: Fix sched switch start/stop refcount racy updates
  tracing/kprobes: Have uname use __get_str() in print_fmt
  ipc/msg.c: consolidate all xxxctl_down() functions
  netfilter: ipset: fix suspicious RCU usage in find_set_and_id
  mfd: dln2: More sanity checking for endpoints
  media: uvcvideo: Avoid cyclic entity chains due to malformed USB descriptors
  bnxt_en: Fix logic that disables Bus Master during firmware reset.
  netdevsim: fix stack-out-of-bounds in nsim_dev_debugfs_init()
  MAINTAINERS: correct entries for ISDN/mISDN section
  ionic: fix rxq comp packet type mask
  tcp: clear tp->segs_{in|out} in tcp_disconnect()
  tcp: clear tp->data_segs{in|out} in tcp_disconnect()
  tcp: clear tp->delivered in tcp_disconnect()
  tcp: clear tp->total_retrans in tcp_disconnect()
  rxrpc: Fix NULL pointer deref due to call->conn being cleared on disconnect
  rxrpc: Fix missing active use pinning of rxrpc_local object
  rxrpc: Fix insufficient receive notification generation
  rxrpc: Fix use-after-free in rxrpc_put_local()
  bnxt_en: Fix TC queue mapping.
  net: stmmac: Delete txtimer in suspend()
  net_sched: fix an OOB access in cls_tcindex
  net: hsr: fix possible NULL deref in hsr_handle_frame()
  l2tp: Allow duplicate session creation with UDP
  gtp: use __GFP_NOWARN to avoid memalloc warning
  cls_rsvp: fix rsvp_policy
  bnxt_en: Move devlink_register before registering netdev
  sparc32: fix struct ipc64_perm type definition
  ANDROID: Revert "ANDROID: gki_defconfig: removed CONFIG_PM_WAKELOCKS"
  ANDROID: dm: prevent default-key from being enabled without needed hooks
  UPSTREAM: crypto: x86 - Regularize glue function prototypes
  ANDROID: gki: x86: Enable PCI_MSI, WATCHDOG, HPET
  ANDROID: drm: Add support for DP 1.4 Compliance edid corruption test
  ANDROID: drm: Parse Colorimetry data block from EDID
  ANDROID: drm: fix HDR static metadata type field numbering
  ANDROID: Incremental fs: Make files writeable
  UPSTREAM: mfd: syscon: Add arguments support for syscon reference
  ANDROID: Incremental fs: Fix crash on failed lookup
  UPSTREAM: usb: gadget: f_fs: set req->num_sgs as 0 for non-sg transfer
  ANDROID: support GKI image that contains an uncompressed Kernel Image.
  ANDROID: update ABI for 5.4.18
  Linux 5.4.18
  tracing/uprobe: Fix to make trace_uprobe_filter alignment safe
  Revert "rsi: fix potential null dereference in rsi_probe()"
  ASoC: topology: fix soc_tplg_fe_link_create() - link->dobj initialization order
  mm/migrate.c: also overwrite error when it is bigger than zero
  perf report: Fix no libunwind compiled warning break s390 issue
  dm thin: fix use-after-free in metadata_pre_commit_callback
  flow_dissector: Fix to use new variables for port ranges in bpf hook
  cpuidle: teo: Avoid using "early hits" incorrectly
  btrfs: do not zero f_bavail if we have available space
  net: Fix skb->csum update in inet_proto_csum_replace16().
  netfilter: nf_tables_offload: fix check the chain offload flag
  netfilter: conntrack: sctp: use distinct states for new SCTP connections
  l2t_seq_next should increase position index
  seq_tab_next() should increase position index
  net: fsl/fman: rename IF_MODE_XGMII to IF_MODE_10G
  net/fsl: treat fsl,erratum-a011043
  powerpc/fsl/dts: add fsl,erratum-a011043
  qlcnic: Fix CPU soft lockup while collecting firmware dump
  ARM: dts: am43x-epos-evm: set data pin directions for spi0 and spi1
  r8152: disable DelayPhyPwrChg
  r8152: avoid the MCU to clear the lanwake
  r8152: disable test IO for RTL8153B
  r8152: Disable PLA MCU clock speed down
  r8152: disable U2P3 for RTL8153B
  r8152: get default setting of WOL before initializing
  tee: optee: Fix compilation issue with nommu
  led: max77650: add of_match table
  ARM: 8955/1: virt: Relax arch timer version check during early boot
  scsi: fnic: do not queue commands during fwreset
  Input: max77650-onkey - add of_match table
  xfrm: interface: do not confirm neighbor when do pmtu update
  xfrm interface: fix packet tx through bpf_redirect()
  vti[6]: fix packet tx through bpf_redirect()
  ARM: dts: am335x-boneblack-common: fix memory size
  Input: evdev - convert kzalloc()/vzalloc() to kvzalloc()
  iwlwifi: dbg: force stop the debug monitor HW
  iwlwifi: Don't ignore the cap field upon mcc update
  iwlwifi: pcie: allocate smaller dev_cmd for TX headers
  XArray: Fix xas_pause at ULONG_MAX
  riscv: delete temporary files
  perf/x86/intel/uncore: Remove PCIe3 unit for SNR
  perf/x86/intel/uncore: Add PCI ID of IMC for Xeon E3 V5 Family
  wireless: wext: avoid gcc -O3 warning
  mac80211: Fix TKIP replay protection immediately after key setup
  cfg80211: Fix radar event during another phy CAC
  wireless: fix enabling channel 12 for custom regulatory domain
  lkdtm/bugs: fix build error in lkdtm_UNSET_SMEP
  parisc: Use proper printk format for resource_size_t
  qmi_wwan: Add support for Quectel RM500Q
  ASoC: sti: fix possible sleep-in-atomic
  ASoC: hdac_hda: Fix error in driver removal after failed probe
  ASoC: SOF: Intel: fix HDA codec driver probe with multiple controllers
  platform/x86: intel_pmc_core: update Comet Lake platform driver
  platform/x86: GPD pocket fan: Allow somewhat lower/higher temperature limits
  iavf: remove current MAC address filter on VF reset
  igb: Fix SGMII SFP module discovery for 100FX/LX.
  ixgbe: Fix calculation of queue with VFs and flow director on interface flap
  ixgbevf: Remove limit of 10 entries for unicast filter list
  i40e: Fix virtchnl_queue_select bitmap validation
  s390/zcrypt: move ap device reset from bus to driver code
  ASoC: rt5640: Fix NULL dereference on module unload
  clk: mmp2: Fix the order of timer mux parents
  mac80211: mesh: restrict airtime metric to peered established plinks
  clk: sunxi-ng: h6-r: Fix AR100/R_APB2 parent order
  clk: sunxi-ng: sun8i-r: Fix divider on APB0 clock
  rseq: Unregister rseq for clone CLONE_VM
  tools lib traceevent: Fix memory leakage in filter_event
  soc: ti: wkup_m3_ipc: Fix race condition with rproc_boot
  ARM: dts: beagle-x15-common: Model 5V0 regulator
  ARM: dts: am57xx-beagle-x15/am57xx-idk: Remove "gpios" for endpoint dt nodes
  ARM: dts: sun8i: a83t: Correct USB3503 GPIOs polarity
  arm64: dts: meson-sm1-sei610: add gpio bluetooth interrupt
  clk: sunxi-ng: v3s: Fix incorrect number of hw_clks.
  cgroup: Prevent double killing of css when enabling threaded cgroup
  Bluetooth: Fix race condition in hci_release_sock()
  ttyprintk: fix a potential deadlock in interrupt context issue
  tomoyo: Use atomic_t for statistics counter
  media: dvb-usb/dvb-usb-urb.c: initialize actlen to 0
  media: gspca: zero usb_buf
  media: vp7045: do not read uninitialized values if usb transfer fails
  media: af9005: uninitialized variable printked
  media: digitv: don't continue if remote control state can't be read
  reiserfs: Fix memory leak of journal device string
  mm/mempolicy.c: fix out of bounds write in mpol_parse_str()
  arm64: kbuild: remove compressed images on 'make ARCH=arm64 (dist)clean'
  tools lib: Fix builds when glibc contains strlcpy()
  PM / devfreq: Add new name attribute for sysfs
  perf c2c: Fix return type for histogram sorting comparision functions
  gfs2: Another gfs2_find_jhead fix
  e1000e: Revert "e1000e: Make watchdog use delayed work"
  e1000e: Drop unnecessary __E1000_DOWN bit twiddling
  x86/resctrl: Fix use-after-free due to inaccurate refcount of rdtgroup
  x86/resctrl: Fix use-after-free when deleting resource groups
  x86/resctrl: Fix a deadlock due to inaccurate reference
  cifs: fix soft mounts hanging in the reconnect code
  vfs: fix do_last() regression
  ANDROID: Incremental fs: Remove C++-style comments
  ANDROID: gki_defconfig: Set CONFIG_ANDROID_BINDERFS=y
  FROMLIST: selinux: Fix typo in filesystem name
  UPSTREAM: drm: Add DisplayPort colorspace property creation function
  UPSTREAM: drm: Rename HDMI colorspace property creation function
  ANDROID: db845c: Update db845c_gki.fragment to add support for bluetooth modules
  UPSTREAM: sched/rt: Make RT capacity-aware
  UPSTREAM: sched/fair: Make EAS wakeup placement consider uclamp restrictions
  UPSTREAM: sched/fair: Make task_fits_capacity() consider uclamp restrictions
  UPSTREAM: sched/uclamp: Rename uclamp_util_with() into uclamp_rq_util_with()
  UPSTREAM: sched/uclamp: Make uclamp util helpers use and return UL values
  BACKPORT: sched/uclamp: Remove uclamp_util()
  Revert "ANDROID: sched/fair: EAS: Add uclamp support to find_energy_efficient_cpu()"
  Linux 5.4.17
  power/supply: ingenic-battery: Don't change scale if there's only one
  Revert "um: Enable CONFIG_CONSTRUCTORS"
  KVM: arm64: Write arch.mdcr_el2 changes since last vcpu_load on VHE
  crypto: pcrypt - Fix user-after-free on module unload
  crypto: caam - do not reset pointer size from MCFGR register
  crypto: vmx - reject xts inputs that are too short
  crypto: af_alg - Use bh_lock_sock in sk_destruct
  rsi: fix non-atomic allocation in completion handler
  rsi: fix memory leak on failed URB submission
  rsi: fix use-after-free on probe errors
  rsi: fix use-after-free on failed probe and unbind
  bus: ti-sysc: Fix missing force mstandby quirk handling
  Bluetooth: btbcm: Use the BDADDR_PROPERTY quirk
  Bluetooth: Allow combination of BDADDR_PROPERTY and INVALID_BDADDR quirks
  ALSA: hda/realtek - Move some alc236 pintbls to fallback table
  usb-storage: Disable UAS on JMicron SATA enclosure
  bus: ti-sysc: Add module enable quirk for audio AESS
  mmc: sdhci-pci: Add support for Intel JSL
  mmc: sdhci-pci: Quirk for AMD SDHC Device 0x7906
  ARM: OMAP2+: SmartReflex: add omap_sr_pdata definition
  ARM: config: aspeed-g5: Enable 8250_DW quirks
  mfd: intel-lpss: Add Intel Comet Lake PCH-H PCI IDs
  perf/imx_ddr: Add enhanced AXI ID filter support
  iommu/amd: Support multiple PCI DMA aliases in IRQ Remapping
  iommu/amd: Support multiple PCI DMA aliases in device table
  spi: pxa2xx: Add support for Intel Comet Lake-H
  bus: ti-sysc: Use swsup quirks also for am335x musb
  bus: ti-sysc: Handle mstandby quirk and use it for musb
  media: dvbsky: add support for eyeTV Geniatech T2 lite
  PCI: Add DMA alias quirk for Intel VCA NTB
  platform/x86: dell-laptop: disable kbd backlight on Inspiron 10xx
  staging: mt7621-pci: add quirks for 'E2' revision using 'soc_device_attribute'
  libbpf: Fix BTF-defined map's __type macro handling of arrays
  drm/amdgpu/SRIOV: add navi12 pci id for SRIOV (v2)
  ASoC: Intel: cht_bsw_rt5645: Add quirk for boards using pmc_plt_clk_0
  extcon-intel-cht-wc: Don't reset USB data connection at probe
  HID: steam: Fix input device disappearing
  atm: eni: fix uninitialized variable warning
  stmmac: debugfs entry name is not be changed when udev rename device name.
  drm/amd/display: Reduce HDMI pixel encoding if max clock is exceeded
  iommu/dma: fix variable 'cookie' set but not used
  gpio: max77620: Add missing dependency on GPIOLIB_IRQCHIP
  net: wan: sdla: Fix cast from pointer to integer of different size
  drivers/net/b44: Change to non-atomic bit operations on pwol_mask
  net: Google gve: Remove dma_wmb() before ringing doorbell
  spi: spi-dw: Add lock protect dw_spi rx/tx to prevent concurrent calls
  can: tcan4x5x: tcan4x5x_parse_config(): reset device before register access
  usb: musb: jz4740: Silence error if code is -EPROBE_DEFER
  watchdog: orion: fix platform_get_irq() complaints
  watchdog: rn5t618_wdt: fix module aliases
  watchdog: max77620_wdt: fix potential build errors
  HID: intel-ish-hid: ipc: Add Tiger Lake PCI device ID
  phy: cpcap-usb: Prevent USB line glitches from waking up modem
  ASoC: topology: Prevent use-after-free in snd_soc_get_pcm_runtime()
  ASoC: fsl_audmix: add missed pm_runtime_disable
  phy: qcom-qmp: Increase PHY ready timeout
  drivers/hid/hid-multitouch.c: fix a possible null pointer access.
  ASoC: SOF: Intel: hda: hda-dai: fix oops on hda_link .hw_free
  ASoC: SOF: fix fault at driver unload after failed probe
  HID: wacom: Recognize new MobileStudio Pro PID
  HID: intel-ish-hid: ipc: add CMP device id
  HID: Add quirk for incorrect input length on Lenovo Y720
  HID: asus: Ignore Asus vendor-page usage-code 0xff events
  HID: ite: Add USB id match for Acer SW5-012 keyboard dock
  HID: Add quirk for Xin-Mo Dual Controller
  arc: eznps: fix allmodconfig kconfig warning
  HID: multitouch: Add LG MELF0410 I2C touchscreen support
  rxrpc: Fix use-after-free in rxrpc_receive_data()
  net: include struct nhmsg size in nh nlmsg size
  mlxsw: minimal: Fix an error handling path in 'mlxsw_m_port_create()'
  udp: segment looped gso packets correctly
  net: socionext: fix xdp_result initialization in netsec_process_rx
  net: socionext: fix possible user-after-free in netsec_process_rx
  net_sched: walk through all child classes in tc_bind_tclass()
  net_sched: fix ops->bind_class() implementations
  net_sched: ematch: reject invalid TCF_EM_SIMPLE
  zd1211rw: fix storage endpoint lookup
  rtl8xxxu: fix interface sanity check
  brcmfmac: fix interface sanity check
  ath9k: fix storage endpoint lookup
  cifs: Fix memory allocation in __smb2_handle_cancelled_cmd()
  cifs: set correct max-buffer-size for smb2_ioctl_init()
  CIFS: Fix task struct use-after-free on reconnect
  crypto: chelsio - fix writing tfm flags to wrong place
  driver core: Fix test_async_driver_probe if NUMA is disabled
  iio: st_gyro: Correct data for LSM9DS0 gyro
  iio: adc: stm32-dfsdm: fix single conversion
  mei: me: add comet point (lake) H device ids
  mei: hdcp: bind only with i915 on the same PCH
  binder: fix log spam for existing debugfs file creation.
  component: do not dereference opaque pointer in debugfs
  debugfs: Return -EPERM when locked down
  serial: imx: fix a race condition in receive path
  serial: 8250_bcm2835aux: Fix line mismatch on driver unbind
  staging: vt6656: Fix false Tx excessive retries reporting.
  staging: vt6656: use NULLFUCTION stack on mac80211
  staging: vt6656: correct packet types for CTS protect, mode.
  staging: wlan-ng: ensure error return is actually returned
  staging: most: net: fix buffer overflow
  usb: typec: fusb302: fix "op-sink-microwatt" default that was in mW
  usb: typec: wcove: fix "op-sink-microwatt" default that was in mW
  usb: dwc3: turn off VBUS when leaving host mode
  USB: serial: ir-usb: fix IrLAP framing
  USB: serial: ir-usb: fix link-speed handling
  USB: serial: ir-usb: add missing endpoint sanity check
  usb: host: xhci-tegra: set MODULE_FIRMWARE for tegra186
  usb: dwc3: pci: add ID for the Intel Comet Lake -V variant
  rsi_91x_usb: fix interface sanity check
  orinoco_usb: fix interface sanity check
  Bluetooth: btusb: fix non-atomic allocation in completion handler
  ANDROID: scsi: ufs: fix collision between CRYPTO and RPM_AUTOSUSPEND bits
  ANDROID: gki: Removed cf modules from gki_defconfig
  ANDROID: Remove default y for VIRTIO_PCI_LEGACY
  ANDROID: gki_defconfig: enabled INTERCONNECT
  ANDROID: gki_defconfig: Remove SND_8X0
  ANDROID: gki: Fixed some typos in Kconfig.gki
  ANDROID: gki_defconfig: Enable req modules in GKI
  ANDROID: modularize BLK_MQ_VIRTIO
  ANDROID: kallsyms: strip hashes from static functions with ThinLTO and CFI
  ANDROID: Incremental fs: Remove unneeded compatibility typedef
  ANDROID: Incremental fs: Enable incrementalfs in GKI
  ANDROID: Incremental fs: Fix sparse errors
  ANDROID: Fixing incremental fs style issues
  ANDROID: Make incfs selftests pass
  ANDROID: Initial commit of Incremental FS
  Linux 5.4.16
  net/x25: fix nonblocking connect
  netfilter: nf_tables: autoload modules from the abort path
  netfilter: nf_tables: add __nft_chain_type_get()
  netfilter: ipset: use bitmap infrastructure completely
  media: v4l2-ioctl.c: zero reserved fields for S/TRY_FMT
  libertas: Fix two buffer overflows at parsing bss descriptor
  net/sonic: Prevent tx watchdog timeout
  net/sonic: Fix CAM initialization
  net/sonic: Fix command register usage
  net/sonic: Quiesce SONIC before re-initializing descriptor memory
  net/sonic: Fix receive buffer replenishment
  net/sonic: Improve receive descriptor status flag check
  net/sonic: Avoid needless receive descriptor EOL flag updates
  net/sonic: Fix receive buffer handling
  net/sonic: Fix interface error stats collection
  net/sonic: Use MMIO accessors
  net/sonic: Clear interrupt flags immediately
  net/sonic: Add mutual exclusion for accessing shared state
  readdir: be more conservative with directory entry names
  do_last(): fetch directory ->i_mode and ->i_uid before it's too late
  net, sk_msg: Don't check if sock is locked when tearing down psock
  xfrm: support output_mark for offload ESP packets
  drm/i915/userptr: fix size calculation
  iwlwifi: mvm: fix potential SKB leak on TXQ TX
  iwlwifi: mvm: fix SKB leak on invalid queue
  tracing: xen: Ordered comparison of function pointers
  scsi: RDMA/isert: Fix a recently introduced regression related to logout
  hwmon: (nct7802) Fix non-working alarm on voltages
  hwmon: (nct7802) Fix voltage limits to wrong registers
  hsr: Fix a compilation error
  leds: gpio: Fix uninitialized gpio label for fwnode based probe
  readdir: make user_access_begin() use the real access range
  iommu/amd: Fix IOMMU perf counter clobbering during init
  lib: Reduce user_access_begin() boundaries in strncpy_from_user() and strnlen_user()
  netfilter: nft_osf: add missing check for DREG attribute
  Input: sun4i-ts - add a check for devm_thermal_zone_of_sensor_register
  Input: pegasus_notetaker - fix endpoint sanity check
  Input: aiptek - fix endpoint sanity check
  Input: gtco - fix endpoint sanity check
  Input: sur40 - fix interface sanity checks
  Input: pm8xxx-vib - fix handling of separate enable register
  net/tls: fix async operation
  mlxsw: switchx2: Do not modify cloned SKBs during xmit
  mmc: sdhci_am654: Reset Command and Data line after tuning
  mmc: sdhci_am654: Remove Inverted Write Protect flag
  mmc: sdhci: fix minimum clock rate for v3 controller
  mmc: tegra: fix SDR50 tuning override
  ARM: 8950/1: ftrace/recordmcount: filter relocation types
  Revert "Input: synaptics-rmi4 - don't increment rmiaddr for SMBus transfers"
  Input: keyspan-remote - fix control-message timeouts
  iommu/vt-d: Call __dmar_remove_one_dev_info with valid pointer
  pinctrl: sunrisepoint: Add missing Interrupt Status register offset
  XArray: Fix xas_find returning too many entries
  XArray: Fix xa_find_after with multi-index entries
  XArray: Fix infinite loop with entry at ULONG_MAX
  iwlwifi: mvm: don't send the IWL_MVM_RXQ_NSSN_SYNC notif to Rx queues
  Revert "iwlwifi: mvm: fix scan config command size"
  powerpc/xive: Discard ESB load value when interrupt is invalid
  powerpc/mm/hash: Fix sharing context ids between kernel & userspace
  tracing: Fix histogram code when expression has same var as value
  tracing: Do not set trace clock if tracefs lockdown is in effect
  tracing/uprobe: Fix double perf_event linking on multiprobe uprobe
  tracing: trigger: Replace unneeded RCU-list traversals
  PM: hibernate: fix crashes with init_on_free=1
  drm/i915: Align engine->uabi_class/instance with i915_drm.h
  drm/panfrost: Add the panfrost_gem_mapping concept
  PCI: Mark AMD Navi14 GPU rev 0xc5 ATS as broken
  ceph: hold extra reference to r_parent over life of request
  hwmon: (core) Do not use device managed functions for memory allocations
  hwmon: (adt7475) Make volt2reg return same reg as reg2volt input
  afs: Fix characters allowed into cell names
  Revert "io_uring: only allow submit from owning task"
  ipv4: Detect rollover in specific fib table dump
  net/mlx5e: kTLS, Do not send decrypted-marked SKBs via non-accel path
  net/mlx5e: kTLS, Remove redundant posts in TX resync flow
  net/mlx5e: kTLS, Fix corner-case checks in TX resync flow
  net/mlx5: DR, use non preemptible call to get the current cpu number
  net/mlx5: E-Switch, Prevent ingress rate configuration of uplink rep
  net/mlx5: DR, Enable counter on non-fwd-dest objects
  net/mlx5: Update the list of the PCI supported devices
  net/mlx5: Fix lowest FDB pool size
  net: Fix packet reordering caused by GRO and listified RX cooperation
  fou: Fix IPv6 netlink policy
  mlxsw: spectrum_acl: Fix use-after-free during reload
  airo: Add missing CAP_NET_ADMIN check in AIROOLDIOCTL/SIOCDEVPRIVATE
  airo: Fix possible info leak in AIROOLDIOCTL/SIOCDEVPRIVATE
  tun: add mutex_unlock() call and napi.skb clearing in tun_get_user()
  tcp: do not leave dangling pointers in tp->highest_sack
  tcp_bbr: improve arithmetic division in bbr_update_bw()
  Revert "udp: do rmem bulk free even if the rx sk queue is empty"
  net: usb: lan78xx: Add .ndo_features_check
  net-sysfs: Fix reference count leak
  net_sched: use validated TCA_KIND attribute in tc_new_tfilter()
  net_sched: fix datalen for ematch
  net: rtnetlink: validate IFLA_MTU attribute in rtnl_create_link()
  net, ip_tunnel: fix namespaces move
  net, ip6_tunnel: fix namespaces move
  net: ip6_gre: fix moving ip6gre between namespaces
  net: cxgb3_main: Add CAP_NET_ADMIN check to CHELSIO_GET_MEM
  net: bcmgenet: Use netif_tx_napi_add() for TX NAPI
  ipv6: sr: remove SKB_GSO_IPXIP6 on End.D* actions
  gtp: make sure only SOCK_DGRAM UDP sockets are accepted
  firestream: fix memory leaks
  can, slip: Protect tty->disc_data in write_wakeup and close with RCU
  ANDROID: gki_defconfig: Set IKHEADERS back to =y
  ANDROID: gki_defconfig: Enable CONFIG_BTT
  f2fs: fix race conditions in ->d_compare() and ->d_hash()
  f2fs: fix dcache lookup of !casefolded directories
  f2fs: Add f2fs stats to sysfs
  f2fs: delete duplicate information on sysfs nodes
  f2fs: change to use rwsem for gc_mutex
  f2fs: update f2fs document regarding to fsync_mode
  f2fs: add a way to turn off ipu bio cache
  f2fs: code cleanup for f2fs_statfs_project()
  f2fs: fix miscounted block limit in f2fs_statfs_project()
  f2fs: show the CP_PAUSE reason in checkpoint traces
  f2fs: fix deadlock allocating bio_post_read_ctx from mempool
  f2fs: remove unneeded check for error allocating bio_post_read_ctx
  f2fs: convert inline_dir early before starting rename
  f2fs: fix memleak of kobject
  f2fs: fix to add swap extent correctly
  f2fs: run fsck when getting bad inode during GC
  f2fs: support data compression
  f2fs: free sysfs kobject
  f2fs: declare nested quota_sem and remove unnecessary sems
  f2fs: don't put new_page twice in f2fs_rename
  f2fs: set I_LINKABLE early to avoid wrong access by vfs
  f2fs: don't keep META_MAPPING pages used for moving verity file blocks
  f2fs: introduce private bioset
  f2fs: cleanup duplicate stats for atomic files
  f2fs: Check write pointer consistency of non-open zones
  f2fs: Check write pointer consistency of open zones
  f2fs: set GFP_NOFS when moving inline dentries
  f2fs: should avoid recursive filesystem ops
  f2fs: keep quota data on write_begin failure
  f2fs: call f2fs_balance_fs outside of locked page
  f2fs: preallocate DIO blocks when forcing buffered_io
  FROMGIT: ext4: Add EXT4_IOC_FSGETXATTR/EXT4_IOC_FSSETXATTR to compat_ioctl.
  ANDROID: gki_defconfig: Set IKHEADERS back to =m
  ANDROID: gki_defconfig: enable NVDIMM/PMEM options
  Linux 5.4.15
  optee: Fix multi page dynamic shm pool alloc
  phy/rockchip: inno-hdmi: round clock rate down to closest 1000 Hz
  gpio: aspeed: avoid return type warning
  net-sysfs: Call dev_hold always in netdev_queue_add_kobject
  s390/qeth: fix dangling IO buffers after halt/clear
  block: fix memleak of bio integrity data
  platform/chrome: wilco_ec: fix use after free issue
  xdp: Fix cleanup on map free for devmap_hash map type
  drm/radeon: fix bad DMA from INTERRUPT_CNTL2
  dmaengine: ti: edma: fix missed failure handling
  afs: Remove set but not used variables 'before', 'after'
  dma-direct: don't check swiotlb=force in dma_direct_map_resource
  mt76: mt76u: rely on usb_interface instead of usb_dev
  sched/cpufreq: Move the cfs_rq_util_change() call to cpufreq_update_util()
  SUNRPC: Fix another issue with MIC buffer space
  workqueue: Add RCU annotation for pwq list walk
  tee: optee: fix device enumeration error handling
  tee: optee: Fix dynamic shm pool allocations
  mmc: core: fix wl1251 sdio quirks
  mmc: sdio: fix wl1251 vendor id
  firmware: arm_scmi: Fix doorbell ring logic for !CONFIG_64BIT
  kselftests: cgroup: Avoid the reuse of fd after it is deallocated
  i2c: stm32f7: report dma error during probe
  packet: fix data-race in fanout_flow_is_huge()
  rtc: bd70528: fix module alias to autoload module
  selftests: gen_kselftest_tar.sh: Do not clobber kselftest/
  net: axienet: Fix error return code in axienet_probe()
  net: neigh: use long type to store jiffies delta
  rt2800: remove errornous duplicate condition
  hv_netvsc: flag software created hash value
  net: openvswitch: don't unlock mutex when changing the user_features fails
  scsi: ufs: delete redundant function ufshcd_def_desc_sizes()
  dpaa_eth: avoid timestamp read on error paths
  dpaa_eth: perform DMA unmapping before read
  rcu: Fix uninitialized variable in nocb_gp_wait()
  libbpf: Don't use kernel-side u32 type in xsk.c
  firmware: imx: Remove call to devm_of_platform_populate
  power: supply: bd70528: Add MODULE_ALIAS to allow module auto loading
  drm/amdgpu/vi: silence an uninitialized variable warning
  regulator: bd70528: Add MODULE_ALIAS to allow module auto loading
  pwm: sun4i: Fix incorrect calculation of duty_cycle/period
  ACPI: platform: Unregister stale platform devices
  net: netsec: Correct dma sync for XDP_TX frames
  drm: rcar_lvds: Fix color mismatches on R-Car H2 ES2.0 and later
  PCI: mobiveil: Fix csr_read()/write() build issue
  software node: Get reference to parent swnode in get_parent op
  drm/rockchip: Round up _before_ giving to the clock framework
  dpaa2-eth: Fix minor bug in ethtool stats reporting
  hwrng: omap3-rom - Fix missing clock by probing with device tree
  drm/amdgpu: remove excess function parameter description
  drm: panel-lvds: Potential Oops in probe error handling
  drm/panfrost: Add missing check for pfdev->regulator
  rtw88: fix error handling when setup efuse info
  rtw88: fix beaconing mode rsvd_page memory violation issue
  gpiolib: No need to call gpiochip_remove_pin_ranges() twice
  sched/core: Further clarify sched_class::set_next_task()
  ipmi: Fix memory leak in __ipmi_bmc_register
  watchdog: sprd: Fix the incorrect pointer getting from driver data
  soc: aspeed: Fix snoop_file_poll()'s return type
  soc: renesas: Add missing check for non-zero product register address
  soc: qcom: llcc: Name regmaps to avoid collisions
  soc/tegra: pmc: Fix crashes for hierarchical interrupts
  leds: tlc591xx: update the maximum brightness
  perf map: No need to adjust the long name of modules
  crypto: sun4i-ss - fix big endian issues
  crypto: amcc - restore CRYPTO_AES dependency
  nfsd: depend on CRYPTO_MD5 for legacy client tracking
  s390/pkey: fix memory leak within _copy_apqns_from_user()
  ice: fix stack leakage
  mt7601u: fix bbp version check in mt7601u_wait_bbp_ready
  mt76: mt76u: fix endpoint definition order
  phy: ti: gmii-sel: fix mac tx internal delay for rgmii-rxid
  net: phy: broadcom: Fix RGMII delays configuration for BCM54210E
  phy: lantiq: vrx200-pcie: fix error return code in ltq_vrx200_pcie_phy_power_on()
  net/mlx5e: Fix free peer_flow when refcount is 0
  tipc: fix wrong timeout input for tipc_wait_for_cond()
  tipc: fix wrong socket reference counter after tipc_sk_timeout() returns
  tipc: fix potential memory leak in __tipc_sendmsg()
  tipc: update mon's self addr when node addr generated
  tipc: reduce sensitive to retransmit failures
  powerpc/archrandom: fix arch_get_random_seed_int()
  powerpc/kasan: Fix boot failure with RELOCATABLE && FSL_BOOKE
  powerpc/pseries: Enable support for ibm,drc-info property
  powerpc/security: Fix debugfs data leak on 32-bit
  SUNRPC: Fix backchannel latency metrics
  SUNRPC: Fix svcauth_gss_proxy_init()
  mfd: intel-lpss: Add default I2C device properties for Gemini Lake
  i2c: i2c-stm32f7: fix 10-bits check in slave free id search loop
  i2c: stm32f7: rework slave_id allocation
  xfs: Sanity check flags of Q_XQUOTARM call
  ARM: OMAP2+: Add missing put_device() call in omapdss_init_of()
  ARM: dts: logicpd-torpedo-37xx-devkit-28: Reference new DRM panel
  samples/bpf: Fix broken xdp_rxq_info due to map order assumptions
  samples: bpf: update map definition to new syntax BTF-defined map
  bpf: Force .BTF section start to zero when dumping from vmlinux
  libbpf: Make btf__resolve_size logic always check size error condition
  libbpf: Fix another potential overflow issue in bpf_prog_linfo
  libbpf: Fix potential overflow issue
  libbpf: Fix memory leak/double free issue
  libbpf: Fix compatibility for kernels without need_wakeup
  drm/i915: Fix pid leak with banned clients
  ANDROID: update ABI following inline crypto changes
  ANDROID: gki_defconfig: enable dm-default-key
  ANDROID: dm: add dm-default-key target for metadata encryption
  ANDROID: dm: enable may_passthrough_inline_crypto on some targets
  ANDROID: dm: add support for passing through inline crypto support
  ANDROID: block: Introduce passthrough keyslot manager
  ANDROID: ext4, f2fs: enable direct I/O with inline encryption
  FROMLIST: scsi: ufs: add program_key() variant op
  ANDROID: block: export symbols needed for modules to use inline crypto
  ANDROID: block: fix some inline crypto bugs
  UPSTREAM: mm/page_io.c: annotate refault stalls from swap_readpage
  FROMLIST: security: selinux: allow per-file labelling for binderfs
  Revert "ANDROID: security,perf: Allow further restriction of perf_event_open"
  ANDROID: selinux: modify RTM_GETLINK permission
  BACKPORT: tracing: Remove unnecessary DEBUG_FS dependency
  BACKPORT: debugfs: Fix !DEBUG_FS debugfs_create_automount
  Linux 5.4.14
  scsi: lpfc: use hdwq assigned cpu for allocation
  perf script: Fix --reltime with --time
  hwmon: (pmbus/ibm-cffps) Fix LED blink behavior
  hwmon: (pmbus/ibm-cffps) Switch LEDs to blocking brightness call
  regulator: ab8500: Remove SYSCLKREQ from enum ab8505_regulator_id
  clk: imx7ulp: Correct DDR clock mux options
  clk: imx7ulp: Correct system clock source option #7
  clk: sprd: Use IS_ERR() to validate the return value of syscon_regmap_lookup_by_phandle()
  perf script: Allow --time with --reltime
  perf probe: Fix wrong address verification
  rtw88: fix potential read outside array boundary
  scsi: lpfc: Fix a kernel warning triggered by lpfc_get_sgl_per_hdwq()
  scsi: lpfc: Fix hdwq sgl locks and irq handling
  scsi: lpfc: Fix list corruption detected in lpfc_put_sgl_per_hdwq
  scsi: core: scsi_trace: Use get_unaligned_be*()
  scsi: qla2xxx: fix rports not being mark as lost in sync fabric scan
  scsi: qla2xxx: Fix qla2x00_request_irqs() for MSI
  scsi: scsi_transport_sas: Fix memory leak when removing devices
  scsi: hisi_sas: Return directly if init hardware failed
  scsi: lpfc: fix: Coverity: lpfc_get_scsi_buf_s3(): Null pointer dereferences
  scsi: target: core: Fix a pr_debug() argument
  scsi: bnx2i: fix potential use after free
  scsi: qla4xxx: fix double free bug
  scsi: hisi_sas: Set the BIST init value before enabling BIST
  scsi: hisi_sas: Don't create debugfs dump folder twice
  scsi: esas2r: unlock on error in esas2r_nvram_read_direct()
  reiserfs: fix handling of -EOPNOTSUPP in reiserfs_for_each_xattr
  um: virtio_uml: Disallow modular build
  um: Don't trace irqflags during shutdown
  mtd: cfi_cmdset_0002: fix delayed error detection on HyperFlash
  mtd: cfi_cmdset_0002: only check errors when ready in cfi_check_err_status()
  mtd: devices: fix mchp23k256 read and write
  Revert "arm64: dts: juno: add dma-ranges property"
  ARM: dts: Fix sgx sysconfig register for omap4
  arm64: dts: juno: Fix UART frequency
  ARM: dts: dra7: fix cpsw mdio fck clock
  arm64: dts: allwinner: a64: Re-add PMU node
  ARM: dts: imx6ul-kontron-n6310-s: Disable the snvs-poweroff driver
  arm64: dts: qcom: sdm845-cheza: delete zap-shader
  arm64: dts: imx8mm-evk: Assigned clocks for audio plls
  arm64: dts: renesas: r8a774a1: Remove audio port node
  arm64: dts: marvell: Fix CP110 NAND controller node multi-line comment alignment
  tick/sched: Annotate lockless access to last_jiffies_update
  cfg80211: check for set_wiphy_params
  arm64: dts: marvell: Add AP806-dual missing CPU clocks
  arm64: dts: renesas: r8a77970: Fix PWM3
  arm64: dts: meson-gxl-s905x-khadas-vim: fix gpio-keys-polled node
  arm64: dts: meson: g12: fix audio fifo reg size
  arm64: dts: meson: axg: fix audio fifo reg size
  cw1200: Fix a signedness bug in cw1200_load_firmware()
  arm64: dts: qcom: msm8998: Disable coresight by default
  irqchip: Place CONFIG_SIFIVE_PLIC into the menu
  tcp: refine rule to allow EPOLLOUT generation under mem pressure
  dt-bindings: Add missing 'properties' keyword enclosing 'snps,tso'
  xen/blkfront: Adjust indentation in xlvbd_alloc_gendisk
  devlink: Wait longer before warning about unset port type
  net: stmmac: tc: Do not setup flower filtering if RSS is enabled
  net: stmmac: selftests: Update status when disabling RSS
  selftests: mlxsw: qos_mc_aware: Fix mausezahn invocation
  net: stmmac: selftests: Mark as fail when received VLAN ID != expected
  net: stmmac: selftests: Make it work in Synopsys AXS101 boards
  mlxsw: spectrum_qdisc: Include MC TCs in Qdisc counters
  mlxsw: spectrum: Wipe xstats.backlog of down ports
  mlxsw: spectrum: Do not modify cloned SKBs during xmit
  sh_eth: check sh_eth_cpu_data::dual_port when dumping registers
  drm/amdgpu: allow direct upload save restore list for raven2
  i40e: prevent memory leak in i40e_setup_macvlans
  net: dsa: bcm_sf2: Configure IMP port for 2Gb/sec
  net: sched: act_ctinfo: fix memory leak
  net: dsa: tag_gswip: fix typo in tagger name
  net: dsa: sja1105: Don't error out on disabled ports with no phy-mode
  net: systemport: Fixed queue mapping in internal ring map
  net: ethernet: ave: Avoid lockdep warning
  bnxt_en: Do not treat DSN (Digital Serial Number) read failure as fatal.
  bnxt_en: Fix ipv6 RFS filter matching logic.
  bnxt_en: Fix NTUPLE firmware command failures.
  tcp: fix marked lost packets not being retransmitted
  r8152: add missing endpoint sanity check
  ptp: free ptp device pin descriptors properly
  net/wan/fsl_ucc_hdlc: fix out of bounds write on array utdm_info
  net: usb: lan78xx: limit size of local TSO packets
  net/sched: act_ife: initalize ife->metalist earlier
  net: phy: dp83867: Set FORCE_LINK_GOOD to default after reset
  net: hns: fix soft lockup when there is not enough memory
  net: hns3: pad the short frame before sending to the hardware
  net: dsa: tag_qca: fix doubled Tx statistics
  net: avoid updating qdisc_xmit_lock_key in netdev_update_lockdep_key()
  hv_netvsc: Fix memory leak when removing rndis device
  macvlan: use skb_reset_mac_header() in macvlan_queue_xmit()
  batman-adv: Fix DAT candidate selection on little endian systems
  bpftool: Fix printing incorrect pointer in btf_dump_ptr
  net: bpf: Don't leak time wait and request sockets
  NFC: pn533: fix bulk-message timeout
  netfilter: nf_tables: fix flowtable list del corruption
  netfilter: nf_tables: store transaction list locally while requesting module
  netfilter: nf_tables: remove WARN and add NLA_STRING upper limits
  netfilter: nft_tunnel: ERSPAN_VERSION must not be null
  netfilter: nft_tunnel: fix null-attribute check
  netfilter: nat: fix ICMP header corruption on ICMP errors
  netfilter: arp_tables: init netns pointer in xt_tgdtor_param struct
  netfilter: fix a use-after-free in mtype_destroy()
  i2c: iop3xx: Fix memory leak in probe error path
  bpf/sockmap: Read psock ingress_msg before sk_receive_queue
  cfg80211: fix page refcount issue in A-MSDU decap
  cfg80211: fix memory leak in cfg80211_cqm_rssi_update
  cfg80211: fix memory leak in nl80211_probe_mesh_link
  cfg80211: fix deadlocks in autodisconnect work
  i2c: tegra: Properly disable runtime PM on driver's probe error
  i2c: tegra: Fix suspending in active runtime PM state
  bpf: Sockmap/tls, fix pop data with SK_DROP return code
  bpf: Sockmap/tls, skmsg can have wrapped skmsg that needs extra chaining
  bpf: Sockmap/tls, tls_sw can create a plaintext buf > encrypt buf
  bpf: Sockmap/tls, msg_push_data may leave end mark in place
  bpf: Sockmap, skmsg helper overestimates push, pull, and pop bounds
  bpf: Sockmap/tls, push write_space updates through ulp updates
  bpf: Sockmap, ensure sock lock held during tear down
  bpf: Sockmap/tls, during free we may call tcp_bpf_unhash() in loop
  bpf: Fix incorrect verifier simulation of ARSH under ALU32
  drm/amd/display: Reorder detect_edp_sink_caps before link settings read.
  block: Fix the type of 'sts' in bsg_queue_rq()
  net: fix kernel-doc warning in <linux/netdevice.h>
  tipc: fix retrans failure due to wrong destination
  tipc: fix potential hanging after b/rcast changing
  reset: Fix {of,devm}_reset_control_array_get kerneldoc return types
  net: stmmac: Enable 16KB buffer size
  net: stmmac: 16KB buffer must be 16 byte aligned
  ARM: dts: imx7: Fix Toradex Colibri iMX7S 256MB NAND flash support
  ARM: dts: imx6q-icore-mipi: Use 1.5 version of i.Core MX6DL
  ARM: dts: imx6sll-evk: Remove incorrect power supply assignment
  ARM: dts: imx6sl-evk: Remove incorrect power supply assignment
  ARM: dts: imx6sx-sdb: Remove incorrect power supply assignment
  ARM: dts: imx6qdl-sabresd: Remove incorrect power supply assignment
  mm: khugepaged: add trace status description for SCAN_PAGE_HAS_PRIVATE
  mm/page-writeback.c: avoid potential division by zero in wb_min_max_ratio()
  mm/memory_hotplug: don't free usage map when removing a re-added early section
  Btrfs: always copy scrub arguments back to user space
  btrfs: check rw_devices, not num_devices for balance
  btrfs: fix memory leak in qgroup accounting
  btrfs: relocation: fix reloc_root lifespan and access
  btrfs: do not delete mismatched root refs
  btrfs: fix invalid removal of root ref
  btrfs: rework arguments of btrfs_unlink_subvol
  mm, debug_pagealloc: don't rely on static keys too early
  mm: memcg/slab: call flush_memcg_workqueue() only if memcg workqueue is valid
  mm: memcg/slab: fix percpu slab vmstats flushing
  mm/huge_memory.c: thp: fix conflict of above-47bit hint address and PMD alignment
  mm/shmem.c: thp, shmem: fix conflict of above-47bit hint address and PMD alignment
  perf report: Fix incorrectly added dimensions as switch perf data file
  locking/lockdep: Fix buffer overrun problem in stack_trace[]
  perf hists: Fix variable name's inconsistency in hists__for_each() macro
  clk: samsung: exynos5420: Keep top G3D clocks enabled
  s390/setup: Fix secure ipl message
  efi/earlycon: Fix write-combine mapping on x86
  x86/resctrl: Fix potential memory leak
  drm/i915: Add missing include file <linux/math64.h>
  mtd: spi-nor: Fix selection of 4-byte addressing opcodes on Spansion
  scsi: storvsc: Correctly set number of hardware queues for IDE disk
  s390/zcrypt: Fix CCA cipher key gen with clear key value function
  x86/efistub: Disable paging at mixed mode entry
  perf/x86/intel/uncore: Fix missing marker for snr_uncore_imc_freerunning_events
  locking/rwsem: Fix kernel crash when spinning on RWSEM_OWNER_UNKNOWN
  x86/CPU/AMD: Ensure clearing of SME/SEV features is maintained
  x86/resctrl: Fix an imbalance in domain_remove_cpu()
  cpu/SMT: Fix x86 link error without CONFIG_SYSFS
  usb: core: hub: Improved device recognition on remote wakeup
  mtd: rawnand: gpmi: Restore nfc timing setup after suspend/resume
  mtd: rawnand: gpmi: Fix suspend/resume problem
  ptrace: reintroduce usage of subjective credentials in ptrace_has_cap()
  scsi: mptfusion: Fix double fetch bug in ioctl
  scsi: fnic: fix invalid stack access
  staging: comedi: ni_routes: allow partial routing information
  staging: comedi: ni_routes: fix null dereference in ni_find_route_source()
  USB: serial: quatech2: handle unbound ports
  USB: serial: keyspan: handle unbound ports
  USB: serial: io_edgeport: add missing active-port sanity check
  USB: serial: io_edgeport: handle unbound ports on URB completion
  USB: serial: ch341: handle unbound port at reset_resume
  USB: serial: suppress driver bind attributes
  USB: serial: option: add support for Quectel RM500Q in QDL mode
  USB: serial: opticon: fix control-message timeouts
  USB: serial: option: Add support for Quectel RM500Q
  USB: serial: simple: Add Motorola Solutions TETRA MTP3xxx and MTP85xx
  iio: buffer: align the size of scan bytes to size of the largest element
  iio: chemical: pms7003: fix unmet triggered buffer dependency
  iio: light: vcnl4000: Fix scale for vcnl4040
  iio: imu: st_lsm6dsx: Fix selection of ST_LSM6DS3_ID
  iio: adc: ad7124: Fix DT channel configuration
  perf: Correctly handle failed perf_get_aux_event()
  ARM: davinci: select CONFIG_RESET_CONTROLLER
  ARM: dts: am571x-idk: Fix gpios property to have the correct gpio number
  cpuidle: teo: Fix intervals[] array indexing bug
  io_uring: only allow submit from owning task
  fuse: fix fuse_send_readpages() in the syncronous read case
  block: fix an integer overflow in logical block size
  clk: sunxi-ng: r40: Allow setting parent rate for external clock outputs
  Fix built-in early-load Intel microcode alignment
  arm64: dts: agilex/stratix10: fix pmu interrupt numbers
  arm64: dts: allwinner: a64: olinuxino: Fix eMMC supply regulator
  arm64: dts: allwinner: a64: olinuxino: Fix SDIO supply regulator
  ALSA: usb-audio: fix sync-ep altsetting sanity check
  ALSA: firewire-tascam: fix corruption due to spin lock without restoration in SoftIRQ context
  ALSA: seq: Fix racy access for queue timer in proc read
  ALSA: dice: fix fallback from protocol extension into limited functionality
  ASoC: Intel: bytcht_es8316: Fix Irbis NB41 netbook quirk
  ARM: dts: imx6q-dhcom: Fix SGTL5000 VDDIO regulator connection
  ARM: dts: imx7ulp: fix reg of cpu node
  ARM: OMAP2+: Fix ti_sysc_find_one_clockdomain to check for to_clk_hw_omap
  ASoC: msm8916-wcd-analog: Fix MIC BIAS Internal1
  ASoC: msm8916-wcd-analog: Fix selected events for MIC BIAS External1
  ASoC: stm32: dfsdm: fix 16 bits record
  ASoC: stm32: sai: fix possible circular locking
  ASoC: msm8916-wcd-digital: Reset RX interpolation path after use
  arm64: dts: imx8mq-librem5-devkit: use correct interrupt for the magnetometer
  Revert "gpio: thunderx: Switch to GPIOLIB_IRQCHIP"
  clk: Don't try to enable critical clocks if prepare failed
  bus: ti-sysc: Fix iterating over clocks
  arm64: dts: imx8mm: Change SDMA1 ahb clock for imx8mm
  arm64: dts: ls1028a: fix endian setting for dcfg
  ARM: dts: imx6q-dhcom: fix rtc compatible
  dt-bindings: reset: meson8b: fix duplicate reset IDs
  soc: amlogic: meson-ee-pwrc: propagate errors from pm_genpd_init()
  soc: amlogic: meson-ee-pwrc: propagate PD provider registration errors
  clk: qcom: gcc-sdm845: Add missing flag to votable GDSCs
  ARM: dts: meson8: fix the size of the PMU registers
  ANDROID: gki: Make GKI specific modules builtins
  ANDROID: virtio-net: Skip set_features on non-cvq devices
  ANDROID: fscrypt: add support for hardware-wrapped keys
  ANDROID: block: add KSM op to derive software secret from wrapped key
  ANDROID: block: provide key size as input to inline crypto APIs
  ANDROID: ufshcd-crypto: export cap find API
  ANDROID: build config for cuttlefish ramdisk
  ANDROID: x86: gki_defconfig: enable LTO and CFI
  ANDROID: x86: map CFI jump tables in pti_clone_entry_text
  ANDROID: x86, module: Ignore __typeid__ relocations
  ANDROID: x86, relocs: Ignore __typeid__ relocations
  ANDROID: x86/alternatives: Use C int3 selftest but disable KASAN
  ANDROID: x86/extable: Do not mark exception callback as CFI
  ANDROID: x86, build: allow LTO_CLANG and THINLTO to be selected
  ANDROID: x86: disable UNWINDER_ORC with LTO_CLANG
  ANDROID: x86: disable STACK_VALIDATION with LTO_CLANG
  ANDROID: x86: disable HAVE_ARCH_PREL32_RELOCATIONS with LTO_CLANG
  ANDROID: x86/vdso: disable LTO only for VDSO
  FROMLIST: crypto, x86/sha: Eliminate casts on asm implementations
  UPSTREAM: x86/vmlinux: Actually use _etext for the end of the text segment
  Linux 5.4.13
  ocfs2: call journal flush to mark journal as empty after journal recovery when mount
  hexagon: work around compiler crash
  hexagon: parenthesize registers in asm predicates
  kbuild/deb-pkg: annotate libelf-dev dependency as :native
  media: intel-ipu3: Align struct ipu3_uapi_awb_fr_config_s to 32 bytes
  drm/amdgpu: enable gfxoff for raven1 refresh
  ioat: ioat_alloc_ring() failure handling.
  s390/qeth: lock the card while changing its hsuid
  dmaengine: k3dma: Avoid null pointer traversal
  rxrpc: Fix missing security check on incoming calls
  rxrpc: Don't take call->user_mutex in rxrpc_new_incoming_call()
  rxrpc: Unlock new call in rxrpc_new_incoming_call() rather than the caller
  drm/arm/mali: make malidp_mw_connector_helper_funcs static
  MIPS: Prevent link failure with kcov instrumentation
  tomoyo: Suppress RCU warning at list_for_each_entry_rcu().
  mips: Fix gettimeofday() in the vdso library
  mips: cacheinfo: report shared CPU map
  riscv: export flush_icache_all to modules
  rseq/selftests: Turn off timeout setting
  selftests: firmware: Fix it to do root uid check and skip
  scsi: target/iblock: Fix protection error with blocks greater than 512B
  scsi: libcxgbi: fix NULL pointer dereference in cxgbi_device_destroy()
  gpio: mpc8xxx: Add platform device to gpiochip->parent
  rtc: bd70528: Add MODULE ALIAS to autoload module
  rtc: brcmstb-waketimer: add missed clk_disable_unprepare
  rtc: msm6242: Fix reading of 10-hour digit
  NFSD fixing possible null pointer derefering in copy offload
  f2fs: fix potential overflow
  sch_cake: Add missing NLA policy entry TCA_CAKE_SPLIT_GSO
  iwlwifi: mvm: fix support for single antenna diversity
  rtlwifi: Remove unnecessary NULL check in rtl_regd_init
  iwlwifi: mvm: consider ieee80211 station max amsdu value
  spi: lpspi: fix memory leak in fsl_lpspi_probe
  spi: rspi: Use platform_get_irq_byname_optional() for optional irqs
  spi: atmel: fix handling of cs_change set on non-last xfer
  spi: pxa2xx: Set controller->max_transfer_size in dma mode
  mtd: spi-nor: fix silent truncation in spi_nor_read_raw()
  mtd: spi-nor: fix silent truncation in spi_nor_read()
  spi: sprd: Fix the incorrect SPI register
  ubifs: do_kill_orphans: Fix a memory leak bug
  ubifs: Fixed missed le64_to_cpu() in journal
  Revert "ubifs: Fix memory leak bug in alloc_ubifs_info() error path"
  memory: mtk-smi: Add PM suspend and resume ops
  iommu/mediatek: Add a new tlb_lock for tlb_flush
  iommu/mediatek: Correct the flush_iotlb_all callback
  media: hantro: Set H264 FIELDPIC_FLAG_E flag correctly
  media: aspeed-video: Fix memory leaks in aspeed_video_probe
  media: hantro: Do not reorder H264 scaling list
  media: cedrus: Use correct H264 8x8 scaling list
  media: coda: fix deadlock between decoder picture run and start command
  media: exynos4-is: Fix recursive locking in isp_video_release()
  media: v4l: cadence: Fix how unsued lanes are handled in 'csi2rx_start()'
  media: hantro: h264: Fix the frame_num wraparound case
  media: rcar-vin: Fix incorrect return statement in rvin_try_format()
  media: ov6650: Fix default format not applied on device probe
  media: ov6650: Fix .get_fmt() V4L2_SUBDEV_FORMAT_TRY support
  media: ov6650: Fix some format attributes not under control
  media: ov6650: Fix incorrect use of JPEG colorspace
  ARM: 8943/1: Fix topology setup in case of CPU hotplug for CONFIG_SCHED_MC
  tty: serial: pch_uart: correct usage of dma_unmap_sg
  tty: serial: imx: use the sg count from dma_map_sg
  MIPS: SGI-IP27: Fix crash, when CPUs are disabled via nr_cpus parameter
  MIPS: Loongson: Fix return value of loongson_hwmon_init
  MIPS: PCI: remember nasid changed by set interrupt affinity
  powerpc/powernv: Disable native PCIe port management
  PCI/PTM: Remove spurious "d" from granularity message
  tools: PCI: Fix fd leakage
  PCI/PM: Clear PCIe PME Status even for legacy power management
  PCI: Fix missing bridge dma_ranges resource list cleanup
  PCI: dwc: Fix find_next_bit() usage
  PCI: aardvark: Fix PCI_EXP_RTCTL register configuration
  PCI: aardvark: Use LTSSM state to build link training flag
  compat_ioctl: handle SIOCOUTQNSD
  af_unix: add compat_ioctl support
  gfs2: add compat_ioctl support
  arm64: dts: apq8096-db820c: Increase load on l21 for SDCARD
  scsi: sd: enable compat ioctls for sed-opal
  drm/amdgpu/discovery: reserve discovery data at the top of VRAM
  drm/amdgpu: cleanup creating BOs at fixed location (v2)
  Revert "drm/virtio: switch virtio_gpu_wait_ioctl() to gem helper."
  PCI: pciehp: Do not disable interrupt twice on suspend
  pinctrl: lewisburg: Update pin list according to v1.1v6
  pinctrl: sh-pfc: Do not use platform_get_irq() to count interrupts
  pinctrl: sh-pfc: Fix PINMUX_IPSR_PHYS() to set GPSR
  pinctl: ti: iodelay: fix error checking on pinctrl_count_index_with_args call
  affs: fix a memory leak in affs_remount
  rsi: fix potential null dereference in rsi_probe()
  clk: imx: pll14xx: Fix quick switch of S/K parameter
  dmaengine: dw: platform: Mark 'hclk' clock optional
  clk: Fix memory leak in clk_unregister()
  clk: samsung: exynos5420: Preserve CPU clocks configuration during suspend/resume
  clk: meson: axg-audio: fix regmap last register
  mei: fix modalias documentation
  iio: imu: adis16480: assign bias value only if operation succeeded
  iio: imu: st_lsm6dsx: fix gyro gain definitions for LSM9DS1
  NFSv4.x: Drop the slot if nfs4_delegreturn_prepare waits for layoutreturn
  NFSv4.x: Handle bad/dead sessions correctly in nfs41_sequence_process()
  nfsd: v4 support requires CRYPTO_SHA256
  nfsd: Fix cld_net->cn_tfm initialization
  NFSv2: Fix a typo in encode_sattr()
  crypto: geode-aes - convert to skcipher API and make thread-safe
  crypto: algif_skcipher - Use chunksize instead of blocksize
  crypto: virtio - implement missing support for output IVs
  crypto: arm64/aes-neonbs - add return value of skcipher_walk_done() in __xts_crypt()
  crypto: hisilicon - select NEED_SG_DMA_LENGTH in qm Kconfig
  crypto: cavium/nitrox - fix firmware assignment to AE cores
  scsi: ufs: Give an unique ID to each ufs-bsg
  dm: add dm-clone to the documentation index
  xprtrdma: Fix oops in Receive handler after device removal
  xprtrdma: Fix completion wait during device removal
  xprtrdma: Fix create_qp crash on device unload
  Documentation/ABI: Add missed attribute for mlxreg-io sysfs interfaces
  Documentation/ABI: Fix documentation inconsistency for mlxreg-io sysfs interfaces
  asm-generic/nds32: don't redefine cacheflush primitives
  platform/x86: GPD pocket fan: Use default values when wrong modparams are given
  platform/x86: asus-wmi: Fix keyboard brightness cannot be set to 0
  platform/mellanox: fix potential deadlock in the tmfifo driver
  scsi: sd: Clear sdkp->protection_type if disk is reformatted without PI
  scsi: enclosure: Fix stale device oops with hot replug
  keys: Fix request_key() cache
  afs: Fix afs_lookup() to not clobber the version on a new dentry
  afs: Fix use-after-loss-of-ref
  libbpf: Fix Makefile' libbpf symbol mismatch diagnostic
  bpf: Support pre-2.25-binutils objcopy for vmlinux BTF
  bpf: skmsg, fix potential psock NULL pointer dereference
  bpf: Make use of probe_user_write in probe write helper
  uaccess: Add non-pagefault user-space write function
  RDMA/srpt: Report the SCSI residual to the initiator
  RDMA/mlx5: Return proper error value
  rdma: Remove nes ABI header
  RDMA/hns: Bugfix for qpc/cqc timer configuration
  RDMA/hns: Fix to support 64K page for srq
  xprtrdma: Close window between waking RPC senders and posting Receives
  xprtrdma: Fix MR list handling
  xprtrdma: Connection becomes unstable after a reconnect
  xprtrdma: Add unique trace points for posting Local Invalidate WRs
  RDMA/hns: Release qp resources when failed to destroy qp
  RDMA/hns: Fix build error again
  RDMA/siw: Fix port number endianness in a debug message
  RDMA/counter: Prevent QP counter manual binding in auto mode
  RDMA/hns: Modify return value of restrack functions
  RDMA/hns: remove a redundant le16_to_cpu
  RDMA/hns: Prevent undefined behavior in hns_roce_set_user_sq_size()
  ASoC: rsnd: fix DALIGN register for SSIU
  ASoC: core: Fix compile warning with CONFIG_DEBUG_FS=n
  ASoC: SOF: Intel: Broadwell: clarify mutual exclusion with legacy driver
  ASoC: fsl_esai: Add spin lock to protect reset, stop and start
  ASoC: simple_card_utils.h: Add missing include
  ASoC: dt-bindings: mt8183: add missing update
  netfilter: nft_meta: use 64-bit time arithmetic
  netfilter: nf_tables_offload: release flow_rule on error from commit path
  btrfs: simplify inode locking for RWF_NOWAIT
  hsr: fix slab-out-of-bounds Read in hsr_debugfs_rename()
  syscalls/x86: Fix function types in COND_SYSCALL
  syscalls/x86: Use the correct function type for sys_ni_syscall
  syscalls/x86: Use COMPAT_SYSCALL_DEFINE0 for IA32 (rt_)sigreturn
  syscalls/x86: Wire up COMPAT_SYSCALL_DEFINE0
  perf vendor events s390: Remove name from L1D_RO_EXCL_WRITES description
  afs: Fix missing cell comparison in afs_test_super()
  reset: brcmstb: Remove resource checks
  dt-bindings: reset: Fix brcmstb-reset example
  can: j1939: fix address claim code example
  ath9k: use iowrite32 over __raw_writel
  MAINTAINERS: Append missed file to the database
  scsi: smartpqi: Update attribute name to `driver_version`
  cifs: Adjust indentation in smb2_open_file
  s390/qeth: fix initialization on old HW
  s390/qeth: vnicc Fix init to default
  s390/qeth: Fix vnicc_is_in_use if rx_bcast not set
  s390/qeth: fix false reporting of VNIC CHAR config failure
  s390/qeth: fix qdio teardown after early init error
  hsr: reset network header when supervision frame is created
  hsr: rename debugfs file when interface name is changed
  hsr: add hsr root debugfs directory
  drm/tegra: Fix ordering of cleanup code
  PCI: amlogic: Fix probed clock names
  PM / devfreq: tegra: Add COMMON_CLK dependency
  gpio: Fix error message on out-of-range GPIO in lookup table
  scsi: mpt3sas: Fix double free in attach error handling
  fs: move guard_bio_eod() after bio_set_op_attrs
  bpf: cgroup: prevent out-of-order release of cgroup bpf
  iommu: Remove device link to group on failure
  iommu/vt-d: Unlink device if failed to add to group
  selftests: loopback.sh: skip this test if the driver does not support
  pinctrl: meson: Fix wrong shift value when get drive-strength
  gpio: zynq: Fix for bug in zynq_gpio_restore_context API
  mtd: onenand: omap2: Pass correct flags for prep_dma_memcpy
  ASoC: SOF: imx8: Fix dsp_box offset
  netfilter: nft_flow_offload: fix underflow in flowtable reference counter
  pinctrl: lochnagar: select GPIOLIB
  ASoC: stm32: spdifrx: fix input pin state management
  ASoC: stm32: spdifrx: fix race condition in irq handler
  ASoC: stm32: spdifrx: fix inconsistent lock state
  ASoC: soc-core: Set dpcm_playback / dpcm_capture
  ASoC: SOF: imx8: fix memory allocation failure check on priv->pd_dev
  i2c: bcm2835: Store pointer to bus clock
  mtd: rawnand: stm32_fmc2: avoid to lock the CPU bus
  IB/hfi1: Don't cancel unused work item
  RDMA/bnxt_re: Fix Send Work Entry state check while polling completions
  RDMA/bnxt_re: Avoid freeing MR resources if dereg fails
  phy: mapphone-mdm6600: Fix uninitialized status value regression
  rtc: mt6397: fix alarm register overwrite
  HID: hidraw, uhid: Always report EPOLLOUT
  FROMGIT: drivers/iommu: Initialise module 'owner' field in iommu_device_set_ops()
  Revert "drm/virtio: switch virtio_gpu_wait_ioctl() to gem helper."
  ANDROID: update kernel ABI for CONFIG_DUMMY
  ANDROID: update ABI whitelist
  UPSTREAM: dmaengine: k3dma: Avoid null pointer traversal
  GKI: enable CONFIG_DUMMY=y
  ANDROID: update kernel ABI for f2fs/fscrypt/other changes
  ANDROID: db845c: Add build config
  ANDROID: db845c: add db845c_gki.fragment
  FROMLIST: usb: dwc3: gadget: Correct the logic for finding last SG entry
  FROMLIST: usb: xhci: provide a debugfs hook for erasing rom
  FROMLIST: usb: renesas-xhci: allow multiple firmware versions
  FROMLIST: usb: renesas-xhci: Add ROM loader for uPD720201
  FROMLIST: usb: renesas-xhci: Add the renesas xhci driver
  FROMLIST: usb: xhci: export few functions
  ANDROID: arm64: dts: db845c: Add clocks entry to display to track real clock inputs
  ANDROID: arm64: dts: db845c: add Low speed expansion i2c and spi nodes
  ANDROID: arm64: dts: qcom: sdm845-db845c: Bring in LT9611
  ANDROID: arm64: dts: qcom: db845c: Enable PCIe controllers
  ANDROID: arm64: dts: qcom: sdm845: Add second PCIe PHY and controller
  ANDROID: arm64: dts: qcom: sdm845: Add first PCIe controller and PHY
  ANDROID: arm64: dts/sdm845: Enable FW implemented safe sequence handler on MTP
  ANDROID: drm/bridge: Introduce LT9611 DSI to HDMI bridge
  FROMLIST: drm: msm: Quiet down plane errors in atomic_check
  FROMLIST: reset: qcom-aoss: Allow CONFIG_RESET_QCOM_AOSS to be a tristate
  FROMLIST: tty: serial: Kconfig: Allow SERIAL_QCOM_GENI_CONSOLE to be enabled if SERIAL_QCOM_GENI is a module
  FROMLIST: lib/list_sort: fix function type mismatches
  UPSTREAM: kcov: fix struct layout for kcov_remote_arg
  docs: fs-verity: mention statx() support
  f2fs: support STATX_ATTR_VERITY
  ext4: support STATX_ATTR_VERITY
  statx: define STATX_ATTR_VERITY
  docs: fs-verity: document first supported kernel version
  f2fs: add support for IV_INO_LBLK_64 encryption policies
  ext4: add support for IV_INO_LBLK_64 encryption policies
  fscrypt: add support for IV_INO_LBLK_64 policies
  fscrypt: avoid data race on fscrypt_mode::logged_impl_name
  fscrypt: zeroize fscrypt_info before freeing
  fscrypt: remove struct fscrypt_ctx
  fscrypt: invoke crypto API for ESSIV handling
  null_blk: remove unused variable warning on !CONFIG_BLK_DEV_ZONED
  block: set the zone size in blk_revalidate_disk_zones atomically
  block: don't handle bio based drivers in blk_revalidate_disk_zones
  null_blk: cleanup null_gendisk_register
  null_blk: fix zone size paramter check
  block: allocate the zone bitmaps lazily
  block: replace seq_zones_bitmap with conv_zones_bitmap
  block: simplify blkdev_nr_zones
  block: remove the empty line at the end of blk-zoned.c
  scsi: sd_zbc: Improve report zones error printout
  scsi: sd_zbc: Remove set but not used variable 'buflen'
  block: rework zone reporting
  scsi: sd_zbc: Cleanup sd_zbc_alloc_report_buffer()
  null_blk: clean up report zones
  null_blk: clean up the block device operations
  null_blk: return fixed zoned reads > write pointer
  scsi: sd_zbc: add zone open, close, and finish support
  block: Remove partition support for zoned block devices
  block: Simplify report zones execution
  block: cleanup the !zoned case in blk_revalidate_disk_zones
  block: Enhance blk_revalidate_disk_zones()
  block: add zone open, close and finish ioctl support
  block: add zone open, close and finish operations
  block: Simplify REQ_OP_ZONE_RESET_ALL handling
  block: Remove REQ_OP_ZONE_RESET plugging
  f2fs: stop GC when the victim becomes fully valid
  f2fs: expose main_blkaddr in sysfs
  f2fs: choose hardlimit when softlimit is larger than hardlimit in f2fs_statfs_project()
  f2fs: Fix deadlock in f2fs_gc() context during atomic files handling
  f2fs: show f2fs instance in printk_ratelimited
  f2fs: fix potential overflow
  f2fs: fix to update dir's i_pino during cross_rename
  f2fs: support aligned pinned file
  f2fs: avoid kernel panic on corruption test
  f2fs: fix wrong description in document
  f2fs: cache global IPU bio
  f2fs: fix to avoid memory leakage in f2fs_listxattr
  f2fs: check total_segments from devices in raw_super
  f2fs: update multi-dev metadata in resize_fs
  f2fs: mark recovery flag correctly in read_raw_super_block()
  f2fs: fix to update time in lazytime mode

Conflicts:
	Documentation/devicetree/bindings
	Documentation/devicetree/bindings/iio/adc/adi,ad7606.yaml
	Documentation/devicetree/bindings/net/snps,dwmac.yaml
	Documentation/devicetree/bindings/reset/brcm,brcmstb-reset.txt
	Documentation/devicetree/bindings/sound/mt8183-mt6358-ts3a227-max98357.txt
	Makefile
	block/keyslot-manager.c
	drivers/clk/qcom/clk-rcg2.c
	drivers/cpufreq/cpufreq.c
	drivers/gpu/drm/drm_connector.c
	drivers/hid/hid-quirks.c
	drivers/iommu/Makefile
	drivers/iommu/arm-smmu.c
	drivers/iommu/iova.c
	drivers/md/Kconfig
	drivers/md/dm.c
	drivers/scsi/ufs/ufs.h
	drivers/scsi/ufs/ufs_quirks.h
	drivers/scsi/ufs/ufshcd-crypto.c
	drivers/scsi/ufs/unipro.h
	drivers/staging/android/ion/heaps/Kconfig
	drivers/staging/android/ion/heaps/Makefile
	drivers/tty/serial/Kconfig
	drivers/usb/dwc3/gadget.c
	fs/crypto/keyring.c
	fs/crypto/keysetup.c
	include/linux/keyslot-manager.h
	include/linux/perf_event.h
	kernel/sched/fair.c
	kernel/sched/rt.c

Added change 552546366a ("hugetlbfs: hugetlb_fault_mutex_hash()
cleanup") to fix build errors against mm/hugetlb.c

Extra updated files to fit properly imported content
into downstream:

	arch/arm64/configs/vendor/genericarmv8-64_defconfig
	arch/arm64/configs/vendor/lahaina_QGKI.config
	arch/arm64/configs/vendor/lahaina_debug.config
	drivers/android/binderfs.c
	drivers/regulator/core.c
	drivers/scsi/ufs/ufshcd-qti.c
	drivers/staging/android/ion/heaps/ion_carveout_heap.c
	drivers/staging/android/ion/heaps/msm_ion.c
	drivers/usb/dwc3/host.c
	drivers/scsi/ufs/ufshcd-crypto-qti.c
	fs/hugetlbfs/inode.c
	gen_headers_arm.bp
	gen_headers_arm64.bp
	include/linux/cpufreq.h
	include/linux/hugetlb.h
	include/uapi/linux/msm_ion.h
	include/uapi/linux/msm_ion_ids.h
	kernel/sched/cpufreq_schedutil.c
	kernel/sched/fair.c
	mm/hugetlb.c
	mm/userfaultfd.c

Change-Id: I22295df9d7bca3fc7be9587e893cdd59128cc528
Signed-off-by: Blagovest Kolenichev <bkolenichev@codeaurora.org>
2020-04-14 08:25:29 -07:00
Gavin Shan
198f5aa0f7 mm/vmscan.c: don't round up scan size for online memory cgroup
commit 76073c646f5f4999d763f471df9e38a5a912d70d upstream.

Commit 68600f623d ("mm: don't miss the last page because of round-off
error") makes the scan size round up to @denominator regardless of the
memory cgroup's state, online or offline.  This affects the overall
reclaiming behavior: the corresponding LRU list is eligible for
reclaiming only when its size logically right shifted by @sc->priority
is bigger than zero in the former formula.

For example, the inactive anonymous LRU list should have at least 0x4000
pages to be eligible for reclaiming when we have 60/12 for
swappiness/priority and without taking scan/rotation ratio into account.

After the roundup is applied, the inactive anonymous LRU list becomes
eligible for reclaiming when its size is bigger than or equal to 0x1000
in the same condition.

    (0x4000 >> 12) * 60 / (60 + 140 + 1) = 1
    ((0x1000 >> 12) * 60) + 200) / (60 + 140 + 1) = 1

aarch64 has 512MB huge page size when the base page size is 64KB.  The
memory cgroup that has a huge page is always eligible for reclaiming in
that case.

The reclaiming is likely to stop after the huge page is reclaimed,
meaing the further iteration on @sc->priority and the silbing and child
memory cgroups will be skipped.  The overall behaviour has been changed.
This fixes the issue by applying the roundup to offlined memory cgroups
only, to give more preference to reclaim memory from offlined memory
cgroup.  It sounds reasonable as those memory is unlikedly to be used by
anyone.

The issue was found by starting up 8 VMs on a Ampere Mustang machine,
which has 8 CPUs and 16 GB memory.  Each VM is given with 2 vCPUs and
2GB memory.  It took 264 seconds for all VMs to be completely up and
784MB swap is consumed after that.  With this patch applied, it took 236
seconds and 60MB swap to do same thing.  So there is 10% performance
improvement for my case.  Note that KSM is disable while THP is enabled
in the testing.

         total     used    free   shared  buff/cache   available
   Mem:  16196    10065    2049       16        4081        3749
   Swap:  8175      784    7391
         total     used    free   shared  buff/cache   available
   Mem:  16196    11324    3656       24        1215        2936
   Swap:  8175       60    8115

Link: http://lkml.kernel.org/r/20200211024514.8730-1-gshan@redhat.com
Fixes: 68600f623d ("mm: don't miss the last page because of round-off error")
Signed-off-by: Gavin Shan <gshan@redhat.com>
Acked-by: Roman Gushchin <guro@fb.com>
Cc: <stable@vger.kernel.org>	[4.20+]
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2020-02-28 17:22:20 +01:00
Blagovest Kolenichev
ab4d1ca6f4 Merge android-5.4.7 (861433ef) into msm-5.4
* refs/heads/tmp-861433ef:
  ANDROID: Kconfig.gki: Remove most of the built in qcom clks
  ANDROID: serdev: Fix platform device support
  Revert "rpmsg: glink: Set tail pointer to 0 at end of FIFO"
  Revert "PM / QoS: Redefine FREQ_QOS_MAX_DEFAULT_VALUE to S32_MAX"
  Revert "UPSTREAM: firmware/qcom_scm: Add scm call to handle smmu errata"
  Revert "UPSTREAM: firmware: qcom_scm-64: Add atomic version of qcom_scm_call"
  Revert "UPSTREAM: cpufreq: qcom-hw: Move driver initialization earlier"
  Linux 5.4.7
  iwlwifi: pcie: move power gating workaround earlier in the flow
  nbd: fix shutdown and recv work deadlock v2
  mmc: sdhci: Add a quirk for broken command queuing
  mmc: sdhci: Workaround broken command queuing on Intel GLK
  mmc: sdhci-of-esdhc: fix P2020 errata handling
  mmc: sdhci: Update the tuning failed messages to pr_debug level
  mmc: sdhci-of-esdhc: Revert "mmc: sdhci-of-esdhc: add erratum A-009204 support"
  mmc: sdhci-msm: Correct the offset and value for DDR_CONFIG register
  ocxl: Fix concurrent AFU open and device removal
  powerpc/irq: fix stack overflow verification
  powerpc/vcpu: Assume dedicated processors as non-preempt
  x86/mce: Fix possibly incorrect severity calculation on AMD
  x86/MCE/AMD: Allow Reserved types to be overwritten in smca_banks[]
  x86/MCE/AMD: Do not use rdmsr_safe_on_cpu() in smca_configure()
  x86/intel: Disable HPET on Intel Coffee Lake H platforms
  KVM: arm64: Ensure 'params' is initialised when looking up sys register
  KVM: arm/arm64: Properly handle faulting of device mappings
  kvm: x86: Host feature SSBD doesn't imply guest feature AMD_SSBD
  kvm: x86: Host feature SSBD doesn't imply guest feature SPEC_CTRL_SSBD
  KVM: PPC: Book3S HV: Fix regression on big endian hosts
  iocost: over-budget forced IOs should schedule async delay
  ext4: validate the debug_want_extra_isize mount option at parse time
  ext4: unlock on error in ext4_expand_extra_isize()
  ext4: check for directory entries too close to block end
  ext4: fix ext4_empty_dir() for directories with holes
  clk: imx: pll14xx: fix clk_pll14xx_wait_lock
  clk: imx: clk-composite-8m: add lock to gate/mux
  clk: imx: clk-imx7ulp: Add missing sentinel of ulp_div_table
  pinctrl: baytrail: Really serialize all register accesses
  serial: sprd: Add clearing break interrupt operation
  tty/serial: atmel: fix out of range clock divider handling
  staging: comedi: gsc_hpdi: check dma_alloc_coherent() return value
  platform/x86: hp-wmi: Make buffer for HPWMI_FEATURE2_QUERY 128 bytes
  intel_th: msu: Fix window switching without windows
  intel_th: Fix freeing IRQs
  intel_th: pci: Add Elkhart Lake SOC support
  intel_th: pci: Add Comet Lake PCH-V support
  USB: EHCI: Do not return -EPIPE when hub is disconnected
  mm: vmscan: protect shrinker idr replace with CONFIG_MEMCG
  KEYS: asymmetric: return ENOMEM if akcipher_request_alloc() fails
  cpufreq: Avoid leaving stale IRQ work items during CPU offline
  efi/memreserve: Register reservations as 'reserved' in /proc/iomem
  spi: fsl: use platform_get_irq() instead of of_irq_to_resource()
  spi: fsl: don't map irq during probe
  usbip: Fix error path of vhci_recv_ret_submit()
  usbip: Fix receive error in vhci-hcd when using scatter-gather
  can: flexcan: add low power enter/exit acknowledgment helper
  ARM: dts: Fix vcsi regulator to be always-on for droid4 to prevent hangs
  s390/ftrace: fix endless recursion in function_graph tracer
  md: avoid invalid memory access for array sb->dev_roles
  RDMA/siw: Fix post_recv QP state locking
  ath10k: Revert "ath10k: add cleanup in ath10k_sta_state()"
  drm/amdgpu: fix uninitialized variable pasid_mapping_needed
  usb: xhci: Fix build warning seen with CONFIG_PM=n
  spi: cadence: Correct handling of native chipselect
  spi: dw: Correct handling of native chipselect
  selftests: net: tls: remove recv_rcvbuf test
  can: kvaser_usb: kvaser_usb_leaf: Fix some info-leaks to USB devices
  can: flexcan: poll MCR_LPM_ACK instead of GPR ACK for stop mode acknowledgment
  can: flexcan: fix possible deadlock and out-of-order reception after wakeup
  can: j1939: j1939_sk_bind(): take priv after lock is held
  can: m_can: tcan4x5x: add required delay after reset
  can: xilinx_can: Fix missing Rx can packets on CANFD2.0
  iommu/vt-d: Allocate reserved region for ISA with correct permission
  iommu/vt-d: Set ISA bridge reserved region as relaxable
  iommu/vt-d: Fix dmar pte read access not set error
  iommu: set group default domain before creating direct mappings
  iommu: fix KASAN use-after-free in iommu_insert_resv_region
  tpm: fix invalid locking in NONBLOCKING mode
  tpm_tis: reserve chip for duration of tpm_tis_core_init
  mmc: mediatek: fix CMD_TA to 2 for MT8173 HS200/HS400 mode
  Revert "mmc: sdhci: Fix incorrect switch to HS mode"
  btrfs: don't prematurely free work in scrub_missing_raid56_worker()
  btrfs: don't prematurely free work in reada_start_machine_worker()
  MIPS: futex: Restore \n after sync instructions
  net: wireless: intel: iwlwifi: fix GRO_NORMAL packet stalling
  ibmvnic: Fix completion structure initialization
  RDMA/bnxt_re: Fix chip number validation Broadcom's Gen P5 series
  bpf: Provide better register bounds after jmp32 instructions
  RDMA/bnxt_re: Fix stat push into dma buffer on gen p5 devices
  RDMA/bnxt_re: Fix missing le16_to_cpu
  tools, bpf: Fix build for 'make -s tools/bpf O=<dir>'
  net: phy: initialise phydev speed and duplex sanely
  ice: Fix setting coalesce to handle DCB configuration
  ice: Only disable VF state when freeing each VF resources
  drm/amdgpu: fix bad DMA from INTERRUPT_CNTL2
  mips: fix build when "48 bits virtual memory" is enabled
  libtraceevent: Fix memory leakage in copy_filter_type
  crypto: vmx - Avoid weird build failures
  mac80211: consider QoS Null frames for STA_NULLFUNC_ACKED
  crypto: sun4i-ss - Fix 64-bit size_t warnings on sun4i-ss-hash.c
  crypto: sun4i-ss - Fix 64-bit size_t warnings
  s390/cpumf: Adjust registration of s390 PMU device drivers
  mt76: fix possible out-of-bound access in mt7615_fill_txs/mt7603_fill_txs
  net: ethernet: ti: ale: clean ale tbl on init and intf restart
  ASoC: soc-pcm: check symmetry before hw_params
  fbtft: Make sure string is NULL terminated
  iwlwifi: check kasprintf() return value
  bnxt_en: Improve RX buffer error handling.
  s390/kasan: support memcpy_real with TRACE_IRQFLAGS
  s390/crypto: Fix unsigned variable compared with zero
  perf probe: Fix to show function entry line as probe-able
  perf session: Fix decompression of PERF_RECORD_COMPRESSED records
  brcmfmac: remove monitor interface when detaching
  net-af_xdp: Use correct number of channels from ethtool
  x86/insn: Add some Intel instructions to the opcode map
  ASoC: Intel: bytcr_rt5640: Update quirk for Acer Switch 10 SW5-012 2-in-1
  firmware_loader: Fix labels with comma for builtin firmware
  net: phy: avoid matching all-ones clause 45 PHY IDs
  bnxt_en: Return proper error code for non-existent NVM variable
  selftests, bpf: Workaround an alu32 sub-register spilling issue
  selftests, bpf: Fix test_tc_tunnel hanging
  perf/core: Fix the mlock accounting, again
  ASoC: wm5100: add missed pm_runtime_disable
  spi: st-ssc4: add missed pm_runtime_disable
  ASoC: wm2200: add missed operations in remove and probe failure
  sched/uclamp: Fix overzealous type replacement
  btrfs: don't prematurely free work in run_ordered_work()
  btrfs: don't prematurely free work in end_workqueue_fn()
  mmc: tmio: Add MMC_CAP_ERASE to allow erase/discard/trim requests
  crypto: virtio - deal with unsupported input sizes
  xhci-pci: Allow host runtime PM as default also for Intel Ice Lake xHCI
  tun: fix data-race in gro_normal_list()
  spi: tegra20-slink: add missed clk_unprepare
  regulator: core: Let boot-on regulators be powered off
  ASoC: wm8904: fix regcache handling
  iwlwifi: mvm: fix unaligned read of rx_pkt_status
  bcache: fix deadlock in bcache_allocator
  tracing/kprobe: Check whether the non-suffixed symbol is notrace
  MIPS: ralink: enable PCI support only if driver for mt7621 SoC is selected
  tracing: use kvcalloc for tgid_map array allocation
  RDMA/efa: Clear the admin command buffer prior to its submission
  qtnfmac: fix using skb after free
  x86/crash: Add a forward declaration of struct kimage
  qtnfmac: fix invalid channel information output
  qtnfmac: fix debugfs support for multiple cards
  cpufreq: Register drivers only after CPU devices have been registered
  bcache: fix static checker warning in bcache_device_free()
  parport: load lowlevel driver if ports not found
  nvme: Discard workaround for non-conformant devices
  net: ethernet: ti: Add dependency for TI_DAVINCI_EMAC
  s390/disassembler: don't hide instruction addresses
  r8169: respect EEE user setting when restarting network
  net: dsa: sja1105: Disallow management xmit during switch reset
  ASoC: Intel: kbl_rt5663_rt5514_max98927: Add dmic format constraint
  bpf, testing: Workaround a verifier failure for test_progs
  iio: dac: ad5446: Add support for new AD5600 DAC
  ASoC: rt5677: Mark reg RT5677_PWR_ANLG2 as volatile
  spi: pxa2xx: Add missed security checks
  media: vim2m: media_device_cleanup was called too early
  media: vicodec: media_device_cleanup was called too early
  EDAC/ghes: Fix grain calculation
  iio: cros_ec_baro: set info_mask_shared_by_all_available field
  media: v4l2-ctrl: Lock main_hdl on operations of requests_queued.
  media: cedrus: Use helpers to access capture queue
  media: si470x-i2c: add missed operations in remove
  ice: delay less
  crypto: atmel - Fix authenc support when it is set to m
  soundwire: intel: fix PDI/stream mapping for Bulk
  media: pvrusb2: Fix oops on tear-down when radio support is not present
  selftests: net: Fix printf format warnings on arm
  fsi: core: Fix small accesses and unaligned offsets via sysfs
  ath10k: fix get invalid tx rate for Mesh metric
  media: exynos4-is: fix wrong mdev and v4l2 dev order in error path
  drm/amdgpu: Avoid accidental thread reactivation.
  selftests: proc: Make va_max 1MB
  cgroup: freezer: don't change task and cgroups status unnecessarily
  s390/bpf: Use kvcalloc for addrs array
  libbpf: Fix negative FD close() in xsk_setup_xdp_prog()
  perf probe: Filter out instances except for inlined subroutine and subprogram
  perf probe: Skip end-of-sequence and non statement lines
  perf probe: Fix to show calling lines of inlined functions
  perf probe: Return a better scope DIE if there is no best scope
  net: avoid potential false sharing in neighbor related code
  perf probe: Skip overlapped location on searching variables
  perf parse: If pmu configuration fails free terms
  xen/gntdev: Use select for DMA_SHARED_BUFFER
  ice: Check for null pointer dereference when setting rings
  drm/amdgpu: fix potential double drop fence reference
  drm/amd/powerplay: fix struct init in renoir_print_clk_levels
  drm/amdgpu: disallow direct upload save restore list from gfx driver
  perf tools: Splice events onto evlist even on error
  perf tools: Fix cross compile for ARM64
  perf probe: Fix to probe a function which has no entry pc
  libsubcmd: Use -O0 with DEBUG=1
  perf probe: Fix to show inlined function callsite without entry_pc
  perf probe: Fix to show ranges of variables in functions without entry_pc
  perf probe: Fix to probe an inline function which has no entry pc
  perf probe: Walk function lines in lexical blocks
  perf jevents: Fix resource leak in process_mapfile() and main()
  perf probe: Fix to list probe event with correct line number
  perf cs-etm: Fix definition of macro TO_CS_QUEUE_NR
  perf probe: Fix to find range-only function instance
  rtlwifi: fix memory leak in rtl92c_set_fw_rsvdpagepkt()
  drm: msm: a6xx: fix debug bus register configuration
  RDMA/core: Fix return code when modify_port isn't supported
  ALSA: timer: Limit max amount of slave instances
  spi: img-spfi: fix potential double release
  bnx2x: Fix PF-VF communication over multi-cos queues.
  spi: dw: Fix Designware SPI loopback
  media: vivid: media_device_cleanup was called too early
  ASoC: SOF: topology: set trigger order for FE DAI link
  nvmem: core: fix nvmem_cell_write inline function
  nvmem: imx-ocotp: reset error status on probe
  media: staging/imx: Use a shorter name for driver
  nvme: introduce "Command Aborted By host" status code
  media: v4l2-core: fix touch support in v4l_g_fmt
  media: rcar_drif: fix a memory disclosure
  cpufreq: sun50i: Fix CPU speed bin detection
  ixgbe: protect TX timestamping from API misuse
  pinctrl: amd: fix __iomem annotation in amd_gpio_irq_handler()
  pinctrl: qcom: sc7180: Add missing tile info in SDC_QDSD_PINGROUP/UFS_RESET
  ASoC: SOF: imx: fix reverse CONFIG_SND_SOC_SOF_OF dependency
  spi: sifive: disable clk when probe fails and remove
  ALSA: pcm: Fix missing check of the new non-cached buffer type
  Bluetooth: Fix advertising duplicated flags
  libbpf: Fix error handling in bpf_map__reuse_fd()
  iio: dln2-adc: fix iio_triggered_buffer_postenable() position
  ALSA: bebob: expand sleep just after breaking connections for protocol version 1
  pinctrl: sh-pfc: sh7734: Fix duplicate TCLK1_B
  net/mlx5e: Verify that rule has at least one fwd/drop action
  loop: fix no-unmap write-zeroes request behavior
  libata: Ensure ata_port probe has completed before detach
  net: hns3: add struct netdev_queue debug info for TX timeout
  s390/mm: add mm_pxd_folded() checks to pxd_free()
  s390: add error handling to perf_callchain_kernel
  s390/time: ensure get_clock_monotonic() returns monotonic values
  phy: qcom-usb-hs: Fix extcon double register after power cycle
  phy: renesas: phy-rcar-gen2: Fix the array off by one warning
  net: dsa: LAN9303: select REGMAP when LAN9303 enable
  gpu: host1x: Allocate gather copy for host1x
  staging: wilc1000: check if device is initialzied before changing vif
  RDMA/core: Set DMA parameters correctly
  RDMA/qedr: Fix srqs xarray initialization
  RDMA/hns: Fix memory leak on 'context' on error return path
  RDMA/qedr: Fix memory leak in user qp and mr
  ACPI: button: Add DMI quirk for Medion Akoya E2215T
  spi: sprd: adi: Add missing lock protection when rebooting
  ubsan, x86: Annotate and allow __ubsan_handle_shift_out_of_bounds() in uaccess regions
  regulator: core: Release coupled_rdevs on regulator_init_coupling() error
  drm/tegra: sor: Use correct SOR index on Tegra210
  net: phy: dp83867: enable robust auto-mdix
  i40e: Wrong 'Advertised FEC modes' after set FEC to AUTO
  drm/amd/display: correctly populate dpp refclk in fpga
  i40e: initialize ITRN registers with correct values
  drm/amd/display: setting the DIG_MODE to the correct value.
  arm64: psci: Reduce the waiting time for cpu_psci_cpu_kill()
  EDAC/amd64: Set grain per DIMM
  drm: Don't free jobs in wait_event_interruptible()
  md/bitmap: avoid race window between md_bitmap_resize and bitmap_file_clear_bit
  staging: wilc1000: potential corruption in wilc_parse_join_bss_param()
  md: no longer compare spare disk superblock events in super_load
  media: smiapp: Register sensor after enabling runtime PM on the device
  media: aspeed: clear garbage interrupts
  media: imx7-mipi-csis: Add a check for devm_regulator_get
  media: st-mipid02: add a check for devm_gpiod_get_optional
  media: ov5640: Make 2592x1944 mode only available at 15 fps
  media: ad5820: Define entity function
  media: ov6650: Fix stored frame interval not in sync with hardware
  drm/nouveau: Don't grab runtime PM refs for HPD IRQs
  media: aspeed: set hsync and vsync polarities to normal before starting mode detection
  media: cedrus: Fix undefined shift with a SHIFT_AND_MASK_BITS macro
  x86/ioapic: Prevent inconsistent state when moving an interrupt
  ipmi: Don't allow device module unload when in use
  RDMA/siw: Fix SQ/RQ drain logic
  rtl8xxxu: fix RTL8723BU connection failure issue after warm reboot
  ASoC: soc-pcm: fixup dpcm_prune_paths() loop continue
  drm/gma500: fix memory disclosures due to uninitialized bytes
  RDMA/hns: Fix wrong parameters when initial mtt of srq->idx_que
  net: hns3: log and clear hardware error after reset complete
  selftests/bpf: Make a copy of subtest name
  perf tests: Disable bp_signal testing for arm64
  power: supply: cpcap-battery: Check voltage before orderly_poweroff
  staging: iio: ad9834: add a check for devm_clk_get
  drm/amdgpu: fix amdgpu trace event print string format error
  drm/amd/display: fix header for RN clk mgr
  drm/amd/display: enable hostvm based on roimmu active for dcn2.1
  x86/mce: Lower throttling MCE messages' priority to warning
  bpf/stackmap: Fix deadlock with rq_lock in bpf_get_stack()
  Bluetooth: hci_core: fix init for HCI_USER_CHANNEL
  Bluetooth: Workaround directed advertising bug in Broadcom controllers
  Bluetooth: missed cpu_to_le16 conversion in hci_init4_req
  Bluetooth: btusb: avoid unused function warning
  iio: adc: max1027: Reset the device at probe time
  drm/amd/powerplay: avoid disabling ECC if RAS is enabled for VEGA20
  usb: usbfs: Suppress problematic bind and unbind uevents.
  perf vendor events arm64: Fix Hisi hip08 DDRC PMU eventname
  perf test: Avoid infinite loop for task exit case
  perf report: Add warning when libunwind not compiled in
  perf test: Report failure for mmap events
  drm/bridge: dw-hdmi: Restore audio when setting a mode
  rtw88: coex: Set 4 slot mode for A2DP
  ath10k: Correct error handling of dma_map_single()
  x86/mm: Use the correct function type for native_set_fixmap()
  drm/amd/display: Program DWB watermarks from correct state
  extcon: sm5502: Reset registers during initialization
  drm/amd/display: Fix dongle_caps containing stale information.
  syscalls/x86: Use the correct function type in SYSCALL_DEFINE0
  drm/amd/display: add new active dongle to existent w/a
  media: ti-vpe: vpe: fix a v4l2-compliance failure about invalid sizeimage
  drm/amd/display: wait for set pipe mcp command completion
  drm/amd/display: Properly round nominal frequency for SPD
  media: ti-vpe: vpe: ensure buffers are cleaned up properly in abort cases
  media: ti-vpe: vpe: fix a v4l2-compliance failure causing a kernel panic
  media: ti-vpe: vpe: Make sure YUYV is set as default format
  media: ti-vpe: vpe: fix a v4l2-compliance failure about frame sequence number
  media: ti-vpe: vpe: fix a v4l2-compliance warning about invalid pixel format
  media: ti-vpe: vpe: Fix Motion Vector vpdma stride
  ASoC: SOF: enable sync_write in hdac_bus
  misc: fastrpc: fix memory leak from miscdev->name
  crypto: aegis128/simd - build 32-bit ARM for v8 architecture explicitly
  crypto: inside-secure - Fix a maybe-uninitialized warning
  media: cx88: Fix some error handling path in 'cx8800_initdev()'
  team: call RCU read lock when walking the port_list
  net/smc: increase device refcount for added link group
  libbpf: Fix passing uninitialized bytes to setsockopt
  libbpf: Fix struct end padding in btf_dump
  selftests/bpf: Fix btf_dump padding test case
  drm/drm_vblank: Change EINVAL by the correct errno
  mwifiex: pcie: Fix memory leak in mwifiex_pcie_init_evt_ring
  MIPS: futex: Emit Loongson3 sync workarounds within asm
  drm/amdkfd: Fix MQD size calculation
  block: Fix writeback throttling W=1 compiler warnings
  samples: pktgen: fix proc_cmd command result check logic
  drm/bridge: dw-hdmi: Refuse DDC/CI transfers on the internal I2C controller
  media: meson/ao-cec: move cec_notifier_cec_adap_register after hw setup
  media: cec-funcs.h: add status_req checks
  media: flexcop-usb: fix NULL-ptr deref in flexcop_usb_transfer_init()
  tools/memory-model: Fix data race detection for unordered store and load
  regulator: max8907: Fix the usage of uninitialized variable in max8907_regulator_probe()
  hwrng: omap3-rom - Call clk_disable_unprepare() on exit only if not idled
  crypto: aegis128-neon - use Clang compatible cflags for ARM
  usb: renesas_usbhs: add suspend event support in gadget mode
  drm/amd/display: fix struct init in update_bounding_box
  rtw88: fix NSS of hw_cap
  media: venus: Fix occasionally failures to suspend
  drm/amd/display: set minimum abm backlight level
  selftests/bpf: Correct path to include msg + path
  drm/amd/powerplay: A workaround to GPU RESET on APU
  x86/math-emu: Check __copy_from_user() result
  drm/amdkfd: fix a potential NULL pointer dereference (v2)
  drm/sun4i: dsi: Fix TCON DRQ set bits
  pinctrl: devicetree: Avoid taking direct reference to device name string
  drm/amd/display: Set number of pipes to 1 if the second pipe was disabled
  media: vimc: Fix gpf in rmmod path when stream is active
  ath10k: fix offchannel tx failure when no ath10k_mac_tx_frm_has_freq
  media: venus: core: Fix msm8996 frequency table
  tools/power/cpupower: Fix initializer override in hsw_ext_cstates
  media: ov6650: Fix stored crop rectangle not in sync with hardware
  media: ov6650: Fix stored frame format not in sync with hardware
  media: i2c: ov2659: Fix missing 720p register config
  media: ov6650: Fix crop rectangle alignment not passed back
  media: i2c: ov2659: fix s_stream return value
  media: ov6650: Fix control handler not freed on init error
  media: max2175: Fix build error without CONFIG_REGMAP_I2C
  media: vim2m: Fix BUG_ON in vim2m_device_release()
  media: vim2m: Fix abort issue
  media: seco-cec: Add a missing 'release_region()' in an error handling path
  media: cedrus: fill in bus_info for media device
  media: am437x-vpfe: Setting STD to current value is not an error
  spi: gpio: prevent memory leak in spi_gpio_probe
  drm/komeda: Workaround for broken FLIP_COMPLETE timestamps
  IB/iser: bound protection_sg size by data_sg size
  ath10k: fix backtrace on coredump
  Revert "pinctrl: sh-pfc: r8a77990: Fix MOD_SEL1 bit31 when using SIM0_D"
  Revert "pinctrl: sh-pfc: r8a77990: Fix MOD_SEL1 bit30 when using SSI_SCK2 and SSI_WS2"
  libertas: fix a potential NULL pointer dereference
  rtlwifi: prevent memory leak in rtl_usb_probe
  staging: rtl8188eu: fix possible null dereference
  staging: rtl8192u: fix multiple memory leaks on error path
  drm/meson: vclk: use the correct G12A frac max value
  spi: Add call to spi_slave_abort() function when spidev driver is released
  ath10k: Check if station exists before forwarding tx airtime report
  drm/amd/display: Handle virtual signal type in disable_link()
  ath10k: add cleanup in ath10k_sta_state()
  drm/amd/display: Rebuild mapped resources after pipe split
  drm/ttm: return -EBUSY on pipelining with no_gpu_wait (v2)
  drm/amdgpu: grab the id mgr lock while accessing passid_mapping
  drm/amdgpu/sriov: add ring_stop before ring_create in psp v11 code
  iio: light: bh1750: Resolve compiler warning and make code more readable
  iio: max31856: add missing of_node and parent references to iio_dev
  drm/amd/display: OTC underflow fix
  drm/bridge: analogix-anx78xx: silence -EPROBE_DEFER warnings
  drm/amd/display: verify stream link before link test
  drm: Use EOPNOTSUPP, not ENOTSUPP
  drm: exynos: exynos_hdmi: use cec_notifier_conn_(un)register
  drm/panel: Add missing drm_panel_init() in panel drivers
  drm/mipi-dbi: fix a loop in debugfs code
  drm: mst: Fix query_payload ack reply struct
  drm/virtio: switch virtio_gpu_wait_ioctl() to gem helper.
  drm/vc4/vc4_hdmi: fill in connector info
  ALSA: hda/ca0132 - Fix work handling in delayed HP detection
  ALSA: hda/ca0132 - Avoid endless loop
  ALSA: hda/ca0132 - Keep power on during processing DSP response
  ALSA: pcm: Avoid possible info leaks from PCM stream buffers
  Btrfs: fix removal logic of the tree mod log that leads to use-after-free issues
  btrfs: handle ENOENT in btrfs_uuid_tree_iterate
  btrfs: do not leak reloc root if we fail to read the fs root
  btrfs: skip log replay on orphaned roots
  btrfs: abort transaction after failed inode updates in create_subvol
  btrfs: send: remove WARN_ON for readonly mount
  Btrfs: fix missing data checksums after replaying a log tree
  btrfs: return error pointer from alloc_test_extent_buffer
  Btrfs: make tree checker detect checksum items with overlapping ranges
  btrfs: do not call synchronize_srcu() in inode_tree_del
  btrfs: don't double lock the subvol_sem for rename exchange
  NFC: nxp-nci: Fix probing without ACPI
  net: dsa: b53: Fix egress flooding settings
  net: stmmac: platform: Fix MDIO init for platforms without PHY
  net: ethernet: ti: davinci_cpdma: fix warning "device driver frees DMA memory with different size"
  mlxsw: spectrum_router: Remove unlikely user-triggerable warning
  dpaa2-ptp: fix double free of the ptp_qoriq IRQ
  net: ena: fix issues in setting interrupt moderation params in ethtool
  net: ena: fix default tx interrupt moderation interval
  bonding: fix bond_neigh_init()
  neighbour: remove neigh_cleanup() method
  selftests: forwarding: Delete IPv6 address at the end
  sctp: fully initialize v4 addr in some functions
  sctp: fix memleak on err handling of stream initialization
  qede: Fix multicast mac configuration
  qede: Disable hardware gro when xdp prog is installed
  nfp: flower: fix stats id allocation
  net: usb: lan78xx: Fix suspend/resume PHY register access error
  net-sysfs: Call dev_hold always in rx_queue_add_kobject
  net: qlogic: Fix error paths in ql_alloc_large_buffers()
  net: phy: ensure that phy IDs are correctly typed
  net: nfc: nci: fix a possible sleep-in-atomic-context bug in nci_uart_tty_receive()
  net: hisilicon: Fix a BUG trigered by wrong bytes_compl
  net: gemini: Fix memory leak in gmac_setup_txqs
  net: dst: Force 4-byte alignment of dst_metrics
  mod_devicetable: fix PHY module format
  fjes: fix missed check in fjes_acpi_add
  af_packet: set defaule value for tmo
  ANDROID: Kconfig.gki: Add Hidden SPRD DRM configs
  ANDROID: Add a tracepoint for mapping inode to full path
  Revert "drm/virtio: fix DRM_FORMAT_* handling"
  ANDROID: gki_defconfig: Disable TRANSPARENT_HUGEPAGE
  staging: android: ion: Remove unused rbtree for ion_buffer
  Linux 5.4.6
  ALSA: hda: Fix regression by strip mask fix
  drm/amdgpu: add invalidate semaphore limit for SRIOV and picasso in gmc9
  drm/amdgpu: avoid using invalidate semaphore for picasso
  drm/i915/gvt: Fix cmd length check for MI_ATOMIC
  drm/amdgpu/gfx10: re-init clear state buffer after gpu reset
  drm/amdgpu/gfx10: explicitly wait for cp idle after halt/unhalt
  drm/amdgpu: invalidate mmhub semaphore workaround in gmc9/gmc10
  drm/amdgpu: initialize vm_inv_eng0_sem for gfxhub and mmhub
  drm/amd/display: add default clocks if not able to fetch them
  drm/amd/display: re-enable wait in pipelock, but add timeout
  drm/dp_mst: Correct the bug in drm_dp_update_payload_part1()
  drm/radeon: fix r1xx/r2xx register checker for POT textures
  drm/i915/fbc: Disable fbc by default on all glk+
  drm/nouveau/kms/nv50-: Limit MST BPC to 8
  drm/nouveau/kms/nv50-: Store the bpc we're using in nv50_head_atom
  drm/nouveau/kms/nv50-: Call outp_atomic_check_view() before handling PBN
  scsi: qla2xxx: Fix incorrect SFUB length used for Secure Flash Update MB Cmd
  scsi: qla2xxx: Correctly retrieve and interpret active flash region
  scsi: qla2xxx: Change discovery state before PLOGI
  scsi: qla2xxx: Added support for MPI and PEP regions for ISP28XX
  scsi: qla2xxx: Initialize free_work before flushing it
  scsi: qla2xxx: Ignore NULL pointer in tcm_qla2xxx_free_mcmd
  scsi: iscsi: Fix a potential deadlock in the timeout handler
  scsi: ufs: Disable autohibern8 feature in Cadence UFS
  dm thin: Flush data device before committing metadata
  dm thin metadata: Add support for a pre-commit callback
  dm clone: Flush destination device before committing metadata
  dm clone metadata: Use a two phase commit
  dm clone metadata: Track exact changes per transaction
  dm btree: increase rebalance threshold in __rebalance2()
  dm mpath: remove harmful bio-based optimization
  drm: meson: venc: cvbs: fix CVBS mode matching
  drm/mgag200: Flag all G200 SE A machines as broken wrt <startadd>
  drm/mgag200: Add workaround for HW that does not support 'startadd'
  drm/mgag200: Store flags from PCI driver data in device structure
  drm/mgag200: Extract device type from flags
  drm/panfrost: Fix a race in panfrost_gem_free_object()
  drm/panfrost: Fix a BO leak in panfrost_ioctl_mmap_bo()
  drm/panfrost: Fix a race in panfrost_ioctl_madvise()
  dma-buf: Fix memory leak in sync_file_merge()
  vfio/pci: call irq_bypass_unregister_producer() before freeing irq
  ARM: tegra: Fix FLOW_CTLR_HALT register clobbering by tegra_resume()
  ARM: dts: s3c64xx: Fix init order of clock providers
  cifs: Fix retrieval of DFS referrals in cifs_mount()
  CIFS: Fix NULL pointer dereference in mid callback
  CIFS: Do not miss cancelled OPEN responses
  CIFS: Close open handle after interrupted close
  CIFS: Respect O_SYNC and O_DIRECT flags during reconnect
  cifs: Don't display RDMA transport on reconnect
  cifs: smbd: Return -ECONNABORTED when trasnport is not in connected state
  cifs: smbd: Return -EINVAL when the number of iovs exceeds SMBDIRECT_MAX_SGE
  cifs: smbd: Add messages on RDMA session destroy and reconnection
  cifs: smbd: Only queue work for error recovery on memory registration
  cifs: smbd: Return -EAGAIN when transport is reconnecting
  rpmsg: glink: Free pending deferred work on remove
  rpmsg: glink: Don't send pending rx_done during remove
  rpmsg: glink: Fix rpmsg_register_device err handling
  rpmsg: glink: Put an extra reference during cleanup
  rpmsg: glink: Fix use after free in open_ack TIMEOUT case
  rpmsg: glink: Fix reuse intents memory leak issue
  rpmsg: glink: Set tail pointer to 0 at end of FIFO
  xtensa: fix syscall_set_return_value
  xtensa: fix TLB sanity checker
  gfs2: fix glock reference problem in gfs2_trans_remove_revoke
  gfs2: Multi-block allocations in gfs2_page_mkwrite
  xtensa: use MEMBLOCK_ALLOC_ANYWHERE for KASAN shadow map
  block: fix "check bi_size overflow before merge"
  PM / QoS: Redefine FREQ_QOS_MAX_DEFAULT_VALUE to S32_MAX
  PCI: Apply Cavium ACS quirk to ThunderX2 and ThunderX3
  PCI: rcar: Fix missing MACCTLR register setting in initialization sequence
  PCI: Do not use bus number zero from EA capability
  PCI/MSI: Fix incorrect MSI-X masking on resume
  PCI: Fix Intel ACS quirk UPDCR register address
  PCI: pciehp: Avoid returning prematurely from sysfs requests
  PCI/PM: Always return devices to D0 when thawing
  PCI/switchtec: Read all 64 bits of part_event_bitmap
  mmc: core: Re-work HW reset for SDIO cards
  mmc: core: Drop check for mmc_card_is_removable() in mmc_rescan()
  mmc: block: Add CMD13 polling for MMC IOCTLS with R1B response
  mmc: block: Make card_busy_detect() a bit more generic
  USB: Fix incorrect DMA allocations for local memory pool drivers
  ANDROID: update ABI for db845c changes
  BACKPORT: iommu: arm-smmu-impl: Add sdm845 implementation hook
  UPSTREAM: firmware/qcom_scm: Add scm call to handle smmu errata
  UPSTREAM: firmware: qcom_scm-64: Add atomic version of qcom_scm_call
  UPSTREAM: cpufreq: qcom-hw: Move driver initialization earlier
  UPSTREAM: cpufreq: Initialize cpufreq-dt driver earlier
  UPSTREAM: cpufreq: Initialize the governors in core_initcall
  ANDROID: tty: serial_core: Export uart_console_device so it can be used by modules
  ANDROID: gki_defconfig: Add qcom pcie options to gki_defconfig
  ANDROID: Kconfig.gki: Add entries for qcom clk drivers
  ANDROID: Kconfig.gki: Add PINCTRL_MSM to QCOM Hidden configs
  ANDROID: Kconfig.gki: Add hidden CONFIG_WANT_DEV_COREDUMP for DRM_MSM driver
  ANDROID: PCI: qcom: Add support for SDM845 PCIe controller
  ANDROID: PCI: qcom: Fix the fixup of PCI_VENDOR_ID_QCOM
  ANDROID: phy: qcom: qmp: Add SDM845 QHP PCIe PHY
  ANDROID: phy: qcom: qmp: Add SDM845 PCIe QMP PHY support
  ANDROID: phy: qcom: qmp: Use power_on/off ops for PCIe
  ANDROID: phy: qcom-qmp: Increase PHY ready timeout
  ANDROID: gki_defconfig: Enable CONFIG_GNSS_CMDLINE_SERIAL
  ANDROID: gnss: Add command line test driver
  ANDROID: serdev: add platform device support
  ANDROID: usb: gadget: Add configfs attribuite for controling match_existing_only
  ANDROID: gki_defconfig: enable ARM64_SW_TTBR0_PAN
  ANDROID: gki_defconfig: Set BINFMT_MISC as =m
  FROMLIST: ARM: Remove arm_pm_restart()
  FROMLIST: ARM64: Remove arm_pm_restart()
  FROMLIST: ARM: Register with kernel restart handler
  FROMLIST: drivers: firmware: psci: Register with kernel restart handler
  FROMLIST: ARM: xen: Register with kernel restart handler
  FROMLIST: ARM: prima2: Register with kernel restart handler
  ANDROID: ASoC: add hikey960-i2s DT bindings
  ANDROID: sound: Add hikey960 i2s audio driver
  ANDROID: HACK: adv7511: Add poweron delay to allow for EDID probing to work
  ANDROID: drm: kirin: Fix Makefile to correct for module builds
  ANDROID: drm: kirin960: Remove one mode-line that seems to be causing trouble
  ANDROID: drm: kirin: remove wait for VACTIVE IRQ
  ANDROID: drm: kirin: Add kirin960 dpe driver support
  ANDROID: drm: kirin: Introduce kirin960
  ANDROID: arm64: dts: hi3660: Add support for usb on Hikey960
  ANDROID: arm64: dts: hikey960: Fix bootwarning on mapping reboot reason syscon
  ANDROID: arm64: dts: hi3660: adb reboot node
  ANDROID: arm64: dts: hi3660: enable gpu
  ANDROID: arm64: dts: hi3660-hikey960: Add i2s & sound device
  ANDROID: arm64: dts: hi3660: add display driver dts
  ANDROID: arm64: dts: hikey960: Add CMA entry for ION/framebuffers
  ANDROID: mm/memory.c: export mm_trace_rss_stat
  ANDROID: update ABI for 5.4.5

Conflicts:
	Documentation/devicetree/bindings
	drivers/iommu/Makefile
	drivers/rpmsg/qcom_glink_native.c
	drivers/usb/gadget/configfs.c
	kernel/sched/cpufreq_schedutil.c

Change-Id: I70a4b65be7a0c8be589f13d1fd2ce05207a972f0
Signed-off-by: Blagovest Kolenichev <bkolenichev@codeaurora.org>
2020-02-21 14:12:55 -08:00
Yang Shi
b58b8e9331 mm: vmscan: protect shrinker idr replace with CONFIG_MEMCG
commit 42a9a53bb394a1de2247ef78f0b802ae86798122 upstream.

Since commit 0a432dcbeb ("mm: shrinker: make shrinker not depend on
memcg kmem"), shrinkers' idr is protected by CONFIG_MEMCG instead of
CONFIG_MEMCG_KMEM, so it makes no sense to protect shrinker idr replace
with CONFIG_MEMCG_KMEM.

And in the CONFIG_MEMCG && CONFIG_SLOB case, shrinker_idr contains only
shrinker, and it is deferred_split_shrinker.  But it is never actually
called, since idr_replace() is never compiled due to the wrong #ifdef.
The deferred_split_shrinker all the time is staying in half-registered
state, and it's never called for subordinate mem cgroups.

Link: http://lkml.kernel.org/r/1575486978-45249-1-git-send-email-yang.shi@linux.alibaba.com
Fixes: 0a432dcbeb ("mm: shrinker: make shrinker not depend on memcg kmem")
Signed-off-by: Yang Shi <yang.shi@linux.alibaba.com>
Reviewed-by: Kirill Tkhai <ktkhai@virtuozzo.com>
Acked-by: Michal Hocko <mhocko@suse.com>
Cc: Johannes Weiner <hannes@cmpxchg.org>
Cc: Shakeel Butt <shakeelb@google.com>
Cc: Roman Gushchin <guro@fb.com>
Cc: <stable@vger.kernel.org>	[5.4+]
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-12-31 16:46:07 +01:00
Raghavendra Rao Ananta
c249464a77 Merge remote-tracking branch 'remotes/origin/tmp-aefd2d632eb0' into msm-lahaina
* remotes/origin/tmp-aefd2d632eb0:
  ANDROID: binder: fix sleeping from invalid function caused by RT inheritance
  FROMGIT: scsi: ufs: override auto suspend tunables for ufs
  FROMGIT: scsi: core: allow auto suspend override by low-level driver
  Linux 5.4-rc6
  net: fix installing orphaned programs
  net: cls_bpf: fix NULL deref on offload filter removal
  selftests: bpf: Skip write only files in debugfs
  selftests: net: reuseport_dualstack: fix uninitalized parameter
  r8169: fix wrong PHY ID issue with RTL8168dp
  net: dsa: bcm_sf2: Fix IMP setup for port different than 8
  net: phylink: Fix phylink_dbg() macro
  gve: Fixes DMA synchronization.
  inet: stop leaking jiffies on the wire
  ixgbe: Remove duplicate clear_bit() call
  Documentation: networking: device drivers: Remove stray asterisks
  e1000: fix memory leaks
  i40e: Fix receive buffer starvation for AF_XDP
  igb: Fix constant media auto sense switching when no cable is connected
  net: ethernet: arc: add the missed clk_disable_unprepare
  ANDROID: gki_defconfig: enable CONFIG_KEYBOARD_GPIO
  NFS: Fix an RCU lock leak in nfs4_refresh_delegation_stateid()
  NFSv4: Don't allow a cached open with a revoked delegation
  arm64: apply ARM64_ERRATUM_843419 workaround for Brahma-B53 core
  arm64: Brahma-B53 is SSB and spectre v2 safe
  arm64: apply ARM64_ERRATUM_845719 workaround for Brahma-B53 core
  igb: Enable media autosense for the i350.
  igb/igc: Don't warn on fatal read failures when the device is removed
  tcp: increase tcp_max_syn_backlog max value
  net: increase SOMAXCONN to 4096
  netdevsim: Fix use-after-free during device dismantle
  rxrpc: Fix handling of last subpacket of jumbo packet
  usb: dwc3: gadget: fix race when disabling ep with cancelled xfers
  ANDROID: Remove KVM_INTEL allmodconfig workaround
  ANDROID: Fix x86_64 allmodconfig build
  iocost: don't nest spin_lock_irq in ioc_weight_write()
  s390/idle: fix cpu idle time calculation
  s390/unwind: fix mixing regs and sp
  s390/cmm: fix information leak in cmm_timeout_handler()
  arm64: cpufeature: Enable Qualcomm Falkor errata 1009 for Kryo
  KVM: vmx, svm: always run with EFER.NXE=1 when shadow paging is active
  kvm: call kvm_arch_destroy_vm if vm creation fails
  efi/efi_test: Lock down /dev/efi_test and require CAP_SYS_ADMIN
  x86, efi: Never relocate kernel below lowest acceptable address
  efi: libstub/arm: Account for firmware reserved memory at the base of RAM
  efi/random: Treat EFI_RNG_PROTOCOL output as bootloader randomness
  efi/tpm: Return -EINVAL when determining tpm final events log size fails
  efi: Make CONFIG_EFI_RCI2_TABLE selectable on x86 only
  hv_netvsc: Fix error handling in netvsc_attach()
  hv_netvsc: Fix error handling in netvsc_set_features()
  cxgb4: fix panic when attaching to ULD fail
  net: annotate lockless accesses to sk->sk_napi_id
  FROMLIST: scsi: ufs-qcom: enter and exit hibern8 during clock scaling
  FROMLIST: scsi: ufs: export hibern8 entry and exit
  ANDROID: scsi: ufs: UFS crypto variant operations API
  ANDROID: gki_defconfig: enable inline encryption
  FROMLIST: ext4: add inline encryption support
  FROMLIST: f2fs: add inline encryption support
  FROMLIST: fscrypt: add inline encryption support
  FROMLIST: scsi: ufs: Add inline encryption support to UFS
  FROMLIST: scsi: ufs: UFS crypto API
  FROMLIST: scsi: ufs: UFS driver v2.1 spec crypto additions
  FROMLIST: block: blk-crypto for Inline Encryption
  ANDROID: block: Fix bio_crypt_should_process WARN_ON
  ALSA: timer: Fix mutex deadlock at releasing card
  FROMLIST: block: Add encryption context to struct bio
  io_uring: ensure we clear io_kiocb->result before each issue
  parisc: fix frame pointer in ftrace_regs_caller()
  net: annotate accesses to sk->sk_incoming_cpu
  FROMLIST: block: Keyslot Manager for Inline Encryption
  FROMLIST: f2fs: add support for IV_INO_LBLK_64 encryption policies
  FROMLIST: ext4: add support for IV_INO_LBLK_64 encryption policies
  FROMLIST: fscrypt: add support for IV_INO_LBLK_64 policies
  FROMLIST: docs: ioctl-number: document fscrypt ioctl numbers
  FROMLIST: fscrypt: zeroize fscrypt_info before freeing
  FROMLIST: fscrypt: remove struct fscrypt_ctx
  FROMLIST: fscrypt: invoke crypto API for ESSIV handling
  mlxsw: core: Unpublish devlink parameters during reload
  qed: Optimize execution time for nvm attributes configuration.
  vxlan: fix unexpected failure of vxlan_changelink()
  qed: fix spelling mistake "queuess" -> "queues"
  SUNRPC: Destroy the back channel when we destroy the host transport
  SUNRPC: The RDMA back channel mustn't disappear while requests are outstanding
  SUNRPC: The TCP back channel mustn't disappear while requests are outstanding
  drm/amdgpu: enable -msse2 for GCC 7.1+ users
  drm/amdgpu: fix stack alignment ABI mismatch for GCC 7.1+
  drm/amdgpu: fix stack alignment ABI mismatch for Clang
  drm/radeon: Fix EEH during kexec
  drm/amdgpu/gmc10: properly set BANK_SELECT and FRAGMENT_SIZE
  drm/amdgpu/powerplay/vega10: allow undervolting in p7
  dc.c:use kzalloc without test
  drm/amd/display: setting the DIG_MODE to the correct value.
  drm/amd/display: Passive DP->HDMI dongle detection fix
  drm/amd/display: add 50us buffer as WA for pstate switch in active
  drm/amd/display: Allow inverted gamma
  drm/amd/display: do not synchronize "drr" displays
  drm/amdgpu: If amdgpu_ib_schedule fails return back the error.
  drm/sched: Set error to s_fence if HW job submission failed.
  drm/amdgpu/gfx10: update gfx golden settings for navi12
  drm/amdgpu/gfx10: update gfx golden settings for navi14
  drm/amdgpu/gfx10: update gfx golden settings
  drm/amd/display: Change Navi14's DWB flag to 1
  drm/amdgpu/sdma5: do not execute 0-sized IBs (v2)
  drm/amdgpu: Fix SDMA hang when performing VKexample test
  iwlwifi: fw api: support new API for scan config cmd
  mt76: dma: fix buffer unmap with non-linear skbs
  mt76: mt76x2e: disable pcie_aspm by default
  ALSA: hda - Fix mutex deadlock in HDMI codec driver
  usb: cdns3: gadget: Fix g_audio use case when connected to Super-Speed host
  usb: cdns3: gadget: reset EP_CLAIMED flag while unloading
  gfs2: Fix initialisation of args for remount
  iommu/vt-d: Fix panic after kexec -p for kdump
  iommu/amd: Apply the same IVRS IOAPIC workaround to Acer Aspire A315-41
  iommu/ipmmu-vmsa: Remove dev_err() on platform_get_irq() failure
  nl80211: fix validation of mesh path nexthop
  nl80211: Disallow setting of HT for channel 14
  USB: serial: whiteheat: fix line-speed endianness
  USB: serial: whiteheat: fix potential slab corruption
  MAINTAINERS: Change to my personal email address
  drm/i915: Fix PCH reference clock for FDI on HSW/BDW
  net: rtnetlink: fix a typo fbd -> fdb
  net/smc: fix refcounting for non-blocking connect()
  bonding: fix using uninitialized mode_lock
  net: fec_ptp: Use platform_get_irq_xxx_optional() to avoid error message
  net: fec_main: Use platform_get_irq_byname_optional() to avoid error message
  MAINTAINERS: remove Dave Watson as TLS maintainer
  vxlan: check tun_info options_len properly
  erspan: fix the tun_info options_len check for erspan
  net: hisilicon: Fix ping latency when deal with high throughput
  net/mlx4_core: Dynamically set guaranteed amount of counters per VF
  net/mlx5e: Initialize on stack link modes bitmap
  net/mlx5e: Fix ethtool self test: link speed
  net/mlx5e: Fix handling of compressed CQEs in case of low NAPI budget
  net/mlx5e: Don't store direct pointer to action's tunnel info
  net/mlx5: Fix NULL pointer dereference in extended destination
  net/mlx5: Fix rtable reference leak
  net/mlx5e: Only skip encap flows update when encap init failed
  net/mlx5e: Replace kfree with kvfree when free vhca stats
  net/mlx5e: Remove incorrect match criteria assignment line
  net/mlx5e: Determine source port properly for vlan push action
  net/mlx5: Fix flow counter list auto bits struct
  net: mscc: ocelot: refuse to overwrite the port's native vlan
  net: mscc: ocelot: fix vlan_filtering when enslaving to bridge before link is up
  wimax: i2400: Fix memory leak in i2400m_op_rfkill_sw_toggle
  drm/i915/tgl: Fix doc not corresponding to code
  ANDROID: staging: ion: Fix dynamic heap ID assignment
  ANDROID: Fix typo for FROMLIST: section
  drm/panfrost: Don't dereference bogus MMU pointers
  ANDROID: media: increase video max frame number
  drm/panfrost: fix -Wmissing-prototypes warnings
  net: hisilicon: Fix "Trying to free already-free IRQ"
  fjes: Handle workqueue allocation failure
  Revert "sched: Rework pick_next_task() slow-path"
  arm64: cpufeature: Enable Qualcomm Falkor/Kryo errata 1003
  drm/etnaviv: fix dumping of iommuv2
  drm/etnaviv: reinstate MMUv1 command buffer window check
  drm/etnaviv: fix deadlock in GPU coredump
  arm64: Ensure VM_WRITE|VM_SHARED ptes are clean by default
  um-ubd: Entrust re-queue to the upper layers
  nvme-multipath: remove unused groups_only mode in ana log
  nvme-multipath: fix possible io hang after ctrl reconnect
  powerpc/powernv: Fix CPU idle to be called with IRQs disabled
  sched/topology: Allow sched_asym_cpucapacity to be disabled
  sched/topology: Don't try to build empty sched domains
  USB: gadget: Reject endpoints with 0 maxpacket value
  powerpc/prom_init: Undo relocation before entering secure mode
  ANDROID: dummy_cpufreq: Implement get()
  ANDROID: gki_defconfig: enable CONFIG_CPUSETS
  ANDROID: virtio: virtio_input: Set the amount of multitouch slots in virtio input
  scsi: qla2xxx: stop timer in shutdown path
  hwmon: (ina3221) Fix read timeout issue
  net: usb: lan78xx: Disable interrupts before calling generic_handle_irq()
  Revert "ANDROID: Revert "kheaders: make headers archive reproducible""
  net: dsa: sja1105: improve NET_DSA_SJA1105_TAS dependency
  net: ethernet: ftgmac100: Fix DMA coherency issue with SW checksum
  net: fix sk_page_frag() recursion from memory reclaim
  udp: fix data-race in udp_set_dev_scratch()
  net: dpaa2: Use the correct style for SPDX License Identifier
  net: add READ_ONCE() annotation in __skb_wait_for_more_packets()
  net: use skb_queue_empty_lockless() in busy poll contexts
  net: use skb_queue_empty_lockless() in poll() handlers
  udp: use skb_queue_empty_lockless()
  net: add skb_queue_empty_lockless()
  ANDROID: gki_defconfig: enable CONFIG_CPU_FREQ_GOV_CONSERVATIVE
  RDMA/hns: Prevent memory leaks of eq->buf_list
  RISC-V: Add PCIe I/O BAR memory mapping
  RDMA/iw_cxgb4: Avoid freeing skb twice in arp failure case
  RDMA/mlx5: Use irq xarray locking for mkey_table
  ANDROID: fix VIDEOBUF2_CORE dependency in 'allmodconfig' builds
  UAS: Revert commit 3ae62a4209 ("UAS: fix alignment of scatter/gather segments")
  usb-storage: Revert commit 747668dbc0 ("usb-storage: Set virt_boundary_mask to avoid SG overflows")
  usbip: Fix free of unallocated memory in vhci tx
  usbip: tools: Fix read_usb_vudc_device() error path handling
  usb: xhci: fix __le32/__le64 accessors in debugfs code
  usb: xhci: fix Immediate Data Transfer endianness
  xhci: Fix use-after-free regression in xhci clear hub TT implementation
  USB: ldusb: fix control-message timeout
  USB: ldusb: use unsigned size format specifiers
  USB: ldusb: fix ring-buffer locking
  USB: Skip endpoints with 0 maxpacket length
  io_uring: don't touch ctx in setup after ring fd install
  ANDROID: modpost: fix up merge issues due to namespace removal
  Revert "ALSA: hda: Flush interrupts on disabling"
  perf/headers: Fix spelling s/EACCESS/EACCES/, s/privilidge/privilege/
  perf/x86/uncore: Fix event group support
  perf/x86/amd/ibs: Handle erratum #420 only on the affected CPU family (10h)
  perf/x86/amd/ibs: Fix reading of the IBS OpData register and thus precise RIP validity
  perf/core: Start rejecting the syscall with attr.__reserved_2 set
  vringh: fix copy direction of vringh_iov_push_kern()
  vsock/virtio: remove unused 'work' field from 'struct virtio_vsock_pkt'
  virtio_ring: fix stalls for packed rings
  riscv: for C functions called only from assembly, mark with __visible
  riscv: fp: add missing __user pointer annotations
  riscv: add missing header file includes
  riscv: mark some code and data as file-static
  riscv: init: merge split string literals in preprocessor directive
  riscv: add prototypes for assembly language functions from head.S
  io_uring: Fix leaked shadow_req
  fix memory leak in large read decrypt offload
  Linux 5.4-rc5
  usb: cdns3: gadget: Don't manage pullups
  usb: dwc3: remove the call trace of USBx_GFLADJ
  usb: gadget: configfs: fix concurrent issue between composite APIs
  usb: dwc3: pci: prevent memory leak in dwc3_pci_probe
  usb: gadget: composite: Fix possible double free memory bug
  usb: gadget: udc: atmel: Fix interrupt storm in FIFO mode.
  usb: renesas_usbhs: fix type of buf
  usb: renesas_usbhs: Fix warnings in usbhsg_recip_handler_std_set_device()
  usb: gadget: udc: renesas_usb3: Fix __le16 warnings
  usb: renesas_usbhs: fix __le16 warnings
  usb: cdns3: include host-export,h for cdns3_host_init
  usb: mtu3: fix missing include of mtu3_dr.h
  usb: fsl: Check memory resource before releasing it
  usb: dwc3: select CONFIG_REGMAP_MMIO
  ANDROID: add README.md
  selftests: fib_tests: add more tests for metric update
  ipv4: fix route update on metric change.
  net: Zeroing the structure ethtool_wolinfo in ethtool_get_wol()
  ALSA: bebob: Fix prototype of helper function to return negative value
  cxgb4: request the TX CIDX updates to status page
  netns: fix GFP flags in rtnl_net_notifyid()
  net: ethernet: Use the correct style for SPDX License Identifier
  net/smc: keep vlan_id for SMC-R in smc_listen_work()
  net/smc: fix closing of fallback SMC sockets
  ANDROID: virt_wifi: Add data ops for scan data simulation
  ANDROID: Allow DRM_IOCTL_MODE_*_DUMB for render clients.
  riscv: cleanup do_trap_break
  net: hwbm: if CONFIG_NET_HWBM unset, make stub functions static
  ANDROID: cpufreq: create dummy cpufreq driver
  net: mvneta: make stub functions static inline
  net: sch_generic: Use pfifo_fast as fallback scheduler for CAN hardware
  nbd: verify socket is supported during setup
  ata: libahci_platform: Fix regulator_get_optional() misuse
  nbd: handle racing with error'ed out commands
  nbd: protect cmd->status with cmd->lock
  Revert "ANDROID: x86: Remove a useless warning message"
  ANDROID: init: GKI: enable hidden configs for media
  ANDROID: gki_defconfig: add FORTIFY_SOURCE, remove SPMI_MSM_PMIC_ARB
  Revert "Revert "Revert "Revert "x86/mm: Identify the end of the kernel area to be reserved""""
  build.config.*: Link android-mainline kernels with LLD
  ANDROID: ALSA: jack: Update supported jack switch types
  ANDROID: ASoC: compress: fix unsigned integer overflow check
  io_uring: fix bad inflight accounting for SETUP_IOPOLL|SETUP_SQTHREAD
  io_uring: used cached copies of sq->dropped and cq->overflow
  FROMLIST: iommu: Export core IOMMU functions to kernel modules
  FROMLIST: PCI: Export PCI ACS and DMA searching functions to modules
  FROMLIST: of: Export of_phandle_iterator_args() to modules
  ARM: dts: stm32: relax qspi pins slew-rate for stm32mp157
  io_uring: Fix race for sqes with userspace
  io_uring: Fix broken links with offloading
  io_uring: Fix corrupted user_data
  xen: issue deprecation warning for 32-bit pv guest
  kvm: Allocate memslots and buses before calling kvm_arch_init_vm
  powerpc/powernv/eeh: Fix oops when probing cxl devices
  irqchip/sifive-plic: Skip contexts except supervisor in plic_init()
  ANDROID: soc: qcom: Add required header to irq.h
  ACPI: processor: Add QoS requests for all CPUs
  cifs: Fix cifsInodeInfo lock_sem deadlock when reconnect occurs
  CIFS: Fix use after free of file info structures
  CIFS: Fix retry mid list corruption on reconnects
  scsi: sd: define variable dif as unsigned int instead of bool
  ANDROID: v4l2-compat-ioctl32.c: copy reserved fields
  scsi: target: cxgbit: Fix cxgbit_fw4_ack()
  IB/core: Avoid deadlock during netlink message handling
  ANDROID: of: property: Enable of_devlink by default
  virt_wifi: fix refcnt leak in module exit routine
  net: remove unnecessary variables and callback
  vxlan: add adjacent link to limit depth level
  net: core: add ignore flag to netdev_adjacent structure
  macsec: fix refcnt leak in module exit routine
  team: fix nested locking lockdep warning
  bonding: use dynamic lockdep key instead of subclass
  bonding: fix unexpected IFF_BONDING bit unset
  net: core: add generic lockdep keys
  net: core: limit nested device depth
  keys: Fix memory leak in copy_net_ns
  ANDROID: of: property: Make sure child dependencies don't block probing of parent
  ANDROID: driver core: Allow fwnode_operations.add_links to differentiate errors
  ANDROID: driver core: Allow a device to wait on optional suppliers
  ANDROID: driver core: Add device link support for SYNC_STATE_ONLY flag
  FROMGIT: docs: driver-model: Add documentation for sync_state
  FROMGIT: driver: core: Improve documentation for fwnode_operations.add_links()
  FROMGIT: of: property: Minor code formatting/style clean ups
  i2c: stm32f7: remove warning when compiling with W=1
  i2c: stm32f7: fix a race in slave mode with arbitration loss irq
  i2c: stm32f7: fix first byte to send in slave mode
  i2c: mt65xx: fix NULL ptr dereference
  RDMA/nldev: Skip counter if port doesn't match
  irqchip/gic-v3-its: Use the exact ITSList for VMOVP
  FROMLIST: drivers: pinctrl: msm: setup GPIO chip in hierarchy
  FROMLIST: drivers: irqchip: pdc: Add irqchip set/get state calls
  FROMLIST: genirq: Introduce irq_chip_get/set_parent_state calls
  FROMLIST: drivers: irqchip: pdc: additionally set type in SPI config registers
  FROMLIST: dt-bindings/interrupt-controller: pdc: add SPI config register
  FROMLIST: of: irq: document properties for wakeup interrupt parent
  FROMLIST: drivers: irqchip: add PDC irqdomain for wakeup capable GPIOs
  FROMLIST: drivers: irqchip: pdc: Do not toggle IRQ_ENABLE during mask/unmask
  FROMLIST: drivers: irqchip: qcom-pdc: update max PDC interrupts
  FROMLIST: irqdomain: add bus token DOMAIN_BUS_WAKEUP
  gfs2: Fix memory leak when gfs2meta's fs_context is freed
  ALSA: hda/realtek - Fix 2 front mics of codec 0x623
  ALSA: hda/realtek - Add support for ALC623
  ALSA: usb-audio: Add DSD support for Gustard U16/X26 USB Interface
  netfilter: nft_payload: fix missing check for matching length in offloads
  ipvs: move old_secure_tcp into struct netns_ipvs
  ipvs: don't ignore errors in case refcounting ip_vs module fails
  ANDROID: drop patches/ symbolic link
  mfd: mt6397: Fix probe after changing mt6397-core
  net: phy: smsc: LAN8740: add PHY_RST_AFTER_CLK_EN flag
  MIPS: tlbex: Fix build_restore_pagemask KScratch restore
  io_uring: correct timeout req sequence when inserting a new entry
  io_uring : correct timeout req sequence when waiting timeout
  io_uring: revert "io_uring: optimize submit_and_wait API"
  MIPS: bmips: mark exception vectors as char arrays
  xsk: Fix registration of Rx-only sockets
  net/flow_dissector: switch to siphash
  MAINTAINERS: Update the Spreadtrum SoC maintainer
  ANDROID: Revert "ANDROID: Removed check for asm-goto"
  riscv: cleanup <asm/bug.h>
  riscv: Fix undefined reference to vmemmap_populate_basepages
  riscv: Fix implicit declaration of 'page_to_section'
  riscv: fix fs/proc/kcore.c compilation with sparsemem enabled
  ANDROID: sdcardfs: evict dentries on fscrypt key removal
  ANDROID: fscrypt: add key removal notifier chain
  ANDROID: move up spin_unlock_bh() ahead of remove_proc_entry()
  ANDROID: Kconfig.gki: Add hidden MMC config support
  ANDROID: Kconfig.gki: Add Hidden QCOM configs
  ANDROID: Kconfig.gki: Add SND_PCM_ELD to HIDDEN_DRM configs
  ANDROID: Kconfig.gki: Add extra audio selections
  ANDROID: Kconfig.gki: Add extra GKI_HIDDEN_REGMAP_CONFIGS selections
  ANDROID: Four part re-add of asm-goto usage [4/4]
  ANDROID: Four part re-add of asm-goto usage [3/4]
  ANDROID: Four part re-add of asm-goto usage [2/4]
  ANDROID: Four part re-add of asm-goto usage [1/4]
  ANDROID: Move out patches/ and replace by link to kernel/common-patches project
  of: reserved_mem: add missing of_node_put() for proper ref-counting
  of: unittest: fix memory leak in unittest_data_add
  dt-bindings: riscv: Fix CPU schema errors
  MAINTAINERS: Remove Gregory and Brian for ARCH_BRCMSTB
  drm/v3d: Fix memory leak in v3d_submit_cl_ioctl
  panfrost: Properly undo pm_runtime_enable when deferring a probe
  dmaengine: cppi41: Fix cppi41_dma_prep_slave_sg() when idle
  posix-cpu-timers: Fix two trivial comments
  timers/sched_clock: Include local timekeeping.h for missing declarations
  lib/vdso: Make clock_getres() POSIX compliant again
  fuse: redundant get_fuse_inode() calls in fuse_writepages_fill()
  fuse: Add changelog entries for protocols 7.1 - 7.8
  fuse: truncate pending writes on O_TRUNC
  fuse: flush dirty data/metadata before non-truncate setattr
  netfilter: nf_tables_offload: restore basechain deletion
  netfilter: nf_flow_table: set timeout before insertion into hashes
  rtlwifi: rtl_pci: Fix problem of too small skb->len
  iwlwifi: pcie: 0x2720 is qu and 0x30DC is not
  iwlwifi: pcie: add workaround for power gating in integrated 22000
  iwlwifi: mvm: handle iwl_mvm_tvqm_enable_txq() error return
  iwlwifi: pcie: fix all 9460 entries for qnj
  iwlwifi: pcie: fix PCI ID 0x2720 configs that should be soc
  rtlwifi: Fix potential overflow on P2P code
  iwlwifi: pcie: fix merge damage on making QnJ exclusive
  scripts/nsdeps: use alternative sed delimiter
  virtiofs: Remove set but not used variable 'fc'
  fs/dax: Fix pmd vs pte conflict detection
  opp: Reinitialize the list_kref before adding the static OPPs again
  bpf: Fix use after free in bpf_get_prog_name
  ALSA: hda: Add Tigerlake/Jasperlake PCI ID
  scsi: qla2xxx: Fix partial flash write of MBI
  scsi: qla2xxx: Initialized mailbox to prevent driver load failure
  scsi: lpfc: Honor module parameter lpfc_use_adisc
  ipv6: include <net/addrconf.h> for missing declarations
  net: openvswitch: free vport unless register_netdevice() succeeds
  selftests: Make l2tp.sh executable
  net: sched: taprio: fix -Wmissing-prototypes warnings
  bnxt_en: Avoid disabling pci device in bnxt_remove_one() for already disabled device.
  bnxt_en: Minor formatting changes in FW devlink_health_reporter
  bnxt_en: Adjust the time to wait before polling firmware readiness.
  bnxt_en: Fix devlink NVRAM related byte order related issues.
  bnxt_en: Fix the size of devlink MSIX parameters.
  net: stmmac: Fix the problem of tso_xmit
  dynamic_debug: provide dynamic_hex_dump stub
  bpf: Fix use after free in subprog's jited symbol removal
  RDMA/uverbs: Prevent potential underflow
  KVM: nVMX: Don't leak L1 MMIO regions to L2
  ARC: perf: Accommodate big-endian CPU
  ARC: [plat-hsdk]: Enable on-boardi SPI ADC IC
  ARC: [plat-hsdk]: Enable on-board SPI NOR flash IC
  KVM: SVM: Fix potential wrong physical id in avic_handle_ldr_update
  cpufreq: Cancel policy update work scheduled before freeing
  s390/kaslr: add support for R_390_GLOB_DAT relocation type
  s390/zcrypt: fix memleak at release
  ALSA: usb-audio: Fix copy&paste error in the validator
  perf/aux: Fix AUX output stopping
  kvm: clear kvmclock MSR on reset
  KVM: x86: fix bugon.cocci warnings
  KVM: VMX: Remove specialized handling of unexpected exit-reasons
  selftests: kvm: fix sync_regs_test with newer gccs
  selftests: kvm: vmx_dirty_log_test: skip the test when VMX is not supported
  selftests: kvm: consolidate VMX support checks
  selftests: kvm: vmx_set_nested_state_test: don't check for VMX support twice
  KVM: Don't shrink/grow vCPU halt_poll_ns if host side polling is disabled
  selftests: kvm: synchronize .gitignore to Makefile
  kvm: x86: Expose RDPID in KVM_GET_SUPPORTED_CPUID
  cpuidle: haltpoll: Take 'idle=' override into account
  ACPI: NFIT: Fix unlock on error in scrub_show()
  tracing: Fix race in perf_trace_buf initialization
  x86/cpu/vmware: Fix platform detection VMWARE_PORT macro
  x86/cpu/vmware: Use the full form of INL in VMWARE_HYPERCALL, for clang/llvm
  xdp: Handle device unregister for devmap_hash map type
  r8152: add device id for Lenovo ThinkPad USB-C Dock Gen 2
  ipv4: fix IPSKB_FRAG_PMTU handling with fragmentation
  ARM: 8926/1: v7m: remove register save to stack before svc
  Input: st1232 - fix reporting multitouch coordinates
  Revert "pwm: Let pwm_get_state() return the last implemented state"
  mmc: mxs: fix flags passed to dmaengine_prep_slave_sg
  virtiofs: Retry request submission from worker context
  virtiofs: Count pending forgets as in_flight forgets
  virtiofs: Set FR_SENT flag only after request has been sent
  virtiofs: No need to check fpq->connected state
  virtiofs: Do not end request in submission context
  fuse: don't advise readdirplus for negative lookup
  drm/komeda: Fix typos in komeda_splitter_validate
  drm/komeda: Don't flush inactive pipes
  i2c: aspeed: fix master pending state handling
  mmc: cqhci: Commit descriptors before setting the doorbell
  mmc: sdhci-omap: Fix Tuning procedure for temperatures < -20C
  ALSA: hda/realtek - Add support for ALC711
  perf/aux: Fix tracking of auxiliary trace buffer allocation
  fuse: don't dereference req->args on finished request
  opp: core: Revert "add regulators enable and disable"
  cifs: Fix missed free operations
  CIFS: avoid using MID 0xFFFF
  cifs: clarify comment about timestamp granularity for old servers
  cifs: Handle -EINPROGRESS only when noblockcnt is set
  PM: QoS: Drop frequency QoS types from device PM QoS
  cpufreq: Use per-policy frequency QoS
  PM: QoS: Introduce frequency QoS
  Linux 5.4-rc4
  hwmon: (nct7904) Fix the incorrect value of vsen_mask & tcpu_mask & temp_mode in nct7904_data struct.
  perf/x86/intel/pt: Fix base for single entry topa
  KVM: arm64: pmu: Reset sample period on overflow handling
  KVM: arm64: pmu: Set the CHAINED attribute before creating the in-kernel event
  arm64: KVM: Handle PMCR_EL0.LC as RES1 on pure AArch64 systems
  KVM: arm64: pmu: Fix cycle counter truncation
  net: reorder 'struct net' fields to avoid false sharing
  net: dsa: fix switch tree list
  net: ethernet: dwmac-sun8i: show message only when switching to promisc
  net: aquantia: add an error handling in aq_nic_set_multicast_list
  net: netem: correct the parent's backlog when corrupted packet was dropped
  net: netem: fix error path for corrupted GSO frames
  macb: propagate errors when getting optional clocks
  xen/netback: fix error path of xenvif_connect_data()
  net: hns3: fix mis-counting IRQ vector numbers issue
  scripts/gdb: fix debugging modules on s390
  kernel/events/uprobes.c: only do FOLL_SPLIT_PMD for uprobe register
  mm/thp: allow dropping THP from page cache
  mm/vmscan.c: support removing arbitrary sized pages from mapping
  mm/thp: fix node page state in split_huge_page_to_list()
  proc/meminfo: fix output alignment
  mm/init-mm.c: include <linux/mman.h> for vm_committed_as_batch
  mm/filemap.c: include <linux/ramfs.h> for generic_file_vm_ops definition
  mm: include <linux/huge_mm.h> for is_vma_temporary_stack
  zram: fix race between backing_dev_show and backing_dev_store
  mm/memcontrol: update lruvec counters in mem_cgroup_move_account
  ocfs2: fix panic due to ocfs2_wq is null
  hugetlbfs: don't access uninitialized memmaps in pfn_range_valid_gigantic()
  mm: memblock: do not enforce current limit for memblock_phys* family
  mm: memcg: get number of pages on the LRU list in memcgroup base on lru_zone_size
  mm/gup: fix a misnamed "write" argument, and a related bug
  mm/gup_benchmark: add a missing "w" to getopt string
  ocfs2: fix error handling in ocfs2_setattr()
  mm: memcg/slab: fix panic in __free_slab() caused by premature memcg pointer release
  mm/memunmap: don't access uninitialized memmap in memunmap_pages()
  mm/memory_hotplug: don't access uninitialized memmaps in shrink_pgdat_span()
  mm/page_owner: don't access uninitialized memmaps when reading /proc/pagetypeinfo
  scripts/gdb: fix lx-dmesg when CONFIG_PRINTK_CALLER is set
  mm/memory-failure.c: don't access uninitialized memmaps in memory_failure()
  fs/proc/page.c: don't access uninitialized memmaps in fs/proc/page.c
  drivers/base/memory.c: don't access uninitialized memmaps in soft_offline_page_store()
  xdp: Prevent overflow in devmap_hash cost calculation for 32-bit builds
  filldir[64]: remove WARN_ON_ONCE() for bad directory entries
  scsi: ufs-bsg: Wake the device before sending raw upiu commands
  scsi: lpfc: Check queue pointer before use
  mips: vdso: Fix __arch_get_hw_counter()
  MAINTAINERS: Use @kernel.org address for Paul Burton
  scsi: qla2xxx: fixup incorrect usage of host_byte
  selftests/bpf: More compatible nc options in test_tc_edt
  net/mlx5: fix memory leak in mlx5_fw_fatal_reporter_dump
  net/mlx5: prevent memory leak in mlx5_fpga_conn_create_cq
  net/mlx5e: TX, Fix consumer index of error cqe dump
  net/mlx5e: kTLS, Enhance TX resync flow
  net/mlx5e: kTLS, Save a copy of the crypto info
  net/mlx5e: kTLS, Remove unneeded cipher type checks
  net/mlx5e: kTLS, Limit DUMP wqe size
  net/mlx5e: kTLS, Fix missing SQ edge fill
  net/mlx5e: kTLS, Fix page refcnt leak in TX resync error flow
  net/mlx5e: kTLS, Save by-value copy of the record frags
  net/mlx5e: kTLS, Save only the frag page to release at completion
  net/mlx5e: kTLS, Size of a Dump WQE is fixed
  net/mlx5e: kTLS, Release reference on DUMPed fragments in shutdown flow
  net/mlx5e: Tx, Zero-memset WQE info struct upon update
  net/mlx5e: Tx, Fix assumption of single WQEBB of NOP in cleanup flow
  usb: cdns3: Error out if USB_DR_MODE_UNKNOWN in cdns3_core_init_role()
  ARM: dts: bcm2837-rpi-cm3: Avoid leds-gpio probing issue
  USB: ldusb: fix read info leaks
  IB/core: Use rdma_read_gid_l2_fields to compare GID L2 fields
  RDMA/qedr: Fix reported firmware version
  RDMA/siw: free siw_base_qp in kref release routine
  tracing: Fix "gfp_t" format for synthetic events
  RDMA/iwcm: move iw_rem_ref() calls out of spinlock
  iw_cxgb4: fix ECN check on the passive accept
  net: usb: lan78xx: Connect PHY before registering MAC
  vsock/virtio: discard packets if credit is not respected
  vsock/virtio: send a credit update when buffer size is changed
  mlxsw: spectrum_trap: Push Ethernet header before reporting trap
  ASoC: SOF: control: return true when kcontrol values change
  ASoC: stm32: sai: fix sysclk management on shutdown
  ASoC: Intel: sof-rt5682: add a check for devm_clk_get
  ASoC: rsnd: Reinitialize bit clock inversion flag for every format setting
  net: ensure correct skb->tstamp in various fragmenters
  net: bcmgenet: reset 40nm EPHY on energy detect
  net: bcmgenet: soft reset 40nm EPHYs before MAC init
  net: phy: bcm7xxx: define soft_reset for 40nm EPHY
  net: bcmgenet: don't set phydev->link from MAC
  bus: ti-sysc: Fix watchdog quirk handling
  ARM: OMAP2+: Add pdata for OMAP3 ISP IOMMU
  ARM: OMAP2+: Plug in device_enable/idle ops for IOMMUs
  iommu/vt-d: Return the correct dma mask when we are bypassing the IOMMU
  iommu/amd: Check PM_LEVEL_SIZE() condition in locked section
  nvme-pci: Set the prp2 correctly when using more than 4k page
  HID: i2c-hid: add Trekstor Primebook C11B to descriptor override
  symbol namespaces: revert to previous __ksymtab name scheme
  modpost: make updating the symbol namespace explicit
  modpost: delegate updating namespaces to separate function
  HID: logitech-hidpp: do all FF cleanup in hidpp_ff_destroy()
  HID: logitech-hidpp: rework device validation
  HID: logitech-hidpp: split g920_get_config()
  HID: i2c-hid: Remove runtime power management
  x86/boot/acpi: Move get_cmdline_acpi_rsdp() under #ifdef guard
  x86/hyperv: Set pv_info.name to "Hyper-V"
  ACPI: CPPC: Set pcc_data[pcc_ss_id] to NULL in acpi_cppc_processor_exit()
  dmaengine: qcom: bam_dma: Fix resource leak
  scsi: lpfc: remove left-over BUILD_NVME defines
  scsi: core: try to get module before removing device
  scsi: hpsa: add missing hunks in reset-patch
  scsi: target: core: Do not overwrite CDB byte 1
  net: Update address for MediaTek ethernet driver in MAINTAINERS
  ipv4: fix race condition between route lookup and invalidation
  ipv4: Return -ENETUNREACH if we can't create route but saddr is valid
  net: phy: micrel: Update KSZ87xx PHY name
  net: phy: micrel: Discern KSZ8051 and KSZ8795 PHYs
  io_uring: fix logic error in io_timeout
  io_uring: fix up O_NONBLOCK handling for sockets
  drm/amdgpu/vce: fix allocation size in enc ring test
  drm/amdgpu: fix error handling in amdgpu_bo_list_create
  drm/amdgpu: fix potential VM faults
  drm/amdgpu: user pages array memory leak fix
  drm/amdgpu/vcn: fix allocation size in enc ring test
  drm/amdgpu/uvd7: fix allocation size in enc ring test (v2)
  drm/amdgpu/uvd6: fix allocation size in enc ring test (v2)
  IB/hfi1: Use a common pad buffer for 9B and 16B packets
  IB/hfi1: Avoid excessive retry for TID RDMA READ request
  RDMA/mlx5: Clear old rate limit when closing QP
  net: dsa: microchip: Add shared regmap mutex
  net: dsa: microchip: Do not reinit mutexes on KSZ87xx
  net: stmmac: fix argument to stmmac_pcs_ctrl_ane()
  dpaa2-eth: Fix TX FQID values
  dpaa2-eth: add irq for the dpmac connect/disconnect event
  usb: hso: obey DMA rules in tiocmget
  Btrfs: check for the full sync flag while holding the inode lock during fsync
  Btrfs: fix qgroup double free after failure to reserve metadata for delalloc
  coccinelle: api/devm_platform_ioremap_resource: remove useless script
  ALSA: hda - Force runtime PM on Nvidia HDMI codecs
  dm cache: fix bugs when a GFP_NOWAIT allocation fails
  ARM: davinci_all_defconfig: enable GPIO backlight
  ARM: davinci: dm365: Fix McBSP dma_slave_map entry
  binder: Don't modify VMA bounds in ->mmap handler
  btrfs: tracepoints: Fix bad entry members of qgroup events
  btrfs: tracepoints: Fix wrong parameter order for qgroup events
  stop_machine: Avoid potential race behaviour
  EDAC/ghes: Fix Use after free in ghes_edac remove path
  ALSA: hda/realtek - Enable headset mic on Asus MJ401TA
  ALSA: usb-audio: Disable quirks for BOSS Katana amplifiers
  kheaders: substituting --sort in archive creation
  powerpc/32s: fix allow/prevent_user_access() when crossing segment boundaries.
  net: stmmac: disable/enable ptp_ref_clk in suspend/resume flow
  net: phy: Fix "link partner" information disappear issue
  rxrpc: use rcu protection while reading sk->sk_user_data
  drm/i915: Fixup preempt-to-busy vs resubmission of a virtual request
  drm/i915/userptr: Never allow userptr into the mappable GGTT
  drm/i915: Favor last VBT child device with conflicting AUX ch/DDC pin
  drm/i915/execlists: Refactor -EIO markup of hung requests
  Revert "blackhole_netdev: fix syzkaller reported issue"
  arm64: tags: Preserve tags for addresses translated via TTBR1
  arm64: mm: fix inverted PAR_EL1.F check
  arm64: sysreg: fix incorrect definition of SYS_PAR_EL1_F
  arm64: entry.S: Do not preempt from IRQ before all cpufeatures are enabled
  md/raid0: fix warning message for parameter default_layout
  kthread: make __kthread_queue_delayed_work static
  pinctrl: aspeed-g6: Rename SD3 to EMMC and rework pin groups
  pinctrl: aspeed-g6: Fix UART13 group pinmux
  pinctrl: aspeed-g6: Make SIG_DESC_CLEAR() behave intuitively
  pinctrl: aspeed-g6: Fix I3C3/I3C4 pinmux configuration
  pinctrl: aspeed-g6: Fix I2C14 SDA description
  pinctrl: aspeed-g6: Sort pins for sanity
  dt-bindings: pinctrl: aspeed-g6: Rework SD3 function and groups
  perf kmem: Fix memory leak in compact_gfp_flags()
  usercopy: Avoid soft lockups in test_check_nonzero_user()
  pinctrl: berlin: as370: fix a typo s/spififib/spdifib
  ACPI: processor: Avoid NULL pointer dereferences at init time
  USB: serial: ti_usb_3410_5052: clean up serial data access
  USB: serial: ti_usb_3410_5052: fix port-close races
  xtensa: fix change_bit in exclusive access option
  HID: intel-ish-hid: fix wrong error handling in ishtp_cl_alloc_tx_ring()
  RISC-V: fix virtual address overlapped in FIXADDR_START and VMEMMAP_START
  net: usb: sr9800: fix uninitialized local variable
  net: bcmgenet: Fix RGMII_MODE_EN value for GENET v1/2/3
  net: stmmac: make tc_flow_parsers static
  davinci_cpdma: make cpdma_chan_split_pool static
  net: i82596: fix dma_alloc_attr for sni_82596
  sctp: change sctp_prot .no_autobind with true
  sched: etf: Fix ordering of packets with same txtime
  net: avoid potential infinite loop in tc_ctl_action()
  net: dsa: sja1105: Use the correct style for SPDX License Identifier
  tcp: fix a possible lockdep splat in tcp_done()
  arm: dts: mediatek: Update mt7629 dts to reflect the latest dt-binding
  net: ethernet: mediatek: Fix MT7629 missing GMII mode support
  Revert "Input: elantech - enable SMBus on new (2018+) systems"
  net/sched: fix corrupted L2 header with MPLS 'push' and 'pop' actions
  net: avoid errors when trying to pop MLPS header on non-MPLS packets
  net: cavium: Use the correct style for SPDX License Identifier
  net: dsa: microchip: Use the correct style for SPDX License Identifier
  PCI: PM: Fix pci_power_up()
  xtensa: virt: fix PCI IO ports mapping
  libata/ahci: Fix PCS quirk application
  vfio/type1: Initialize resv_msi_base
  8250-men-mcb: fix error checking when get_num_ports returns -ENODEV
  USB: usblp: fix use-after-free on disconnect
  usb: udc: lpc32xx: fix bad bit shift operation
  usb: cdns3: Fix dequeue implementation.
  USB: legousbtower: fix a signedness bug in tower_probe()
  USB: legousbtower: fix memleak on disconnect
  USB: ldusb: fix memleak on disconnect
  net: ethernet: broadcom: have drivers select DIMLIB as needed
  net: Update address for vrf and l3mdev in MAINTAINERS
  net: bcmgenet: Set phydev->dev_flags only for internal PHYs
  blackhole_netdev: fix syzkaller reported issue
  ARM: dts: bcm2835-rpi-zero-w: Fix bus-width of sdhci
  sparc64: disable fast-GUP due to unexplained oopses
  btrfs: qgroup: Always free PREALLOC META reserve in btrfs_delalloc_release_extents()
  drm/panfrost: Handle resetting on timeout better
  blk-rq-qos: fix first node deletion of rq_qos_del()
  blkcg: Fix multiple bugs in blkcg_activate_policy()
  xfs: change the seconds fields in xfs_bulkstat to signed
  tools headers UAPI: Sync sched.h with the kernel
  rbd: cancel lock_dwork if the wait is interrupted
  ceph: just skip unrecognized info in ceph_reply_info_extra
  tools headers kvm: Sync kvm.h headers with the kernel sources
  tools headers kvm: Sync kvm headers with the kernel sources
  tools headers kvm: Sync kvm headers with the kernel sources
  perf c2c: Fix memory leak in build_cl_output()
  perf tools: Fix mode setting in copyfile_mode_ns()
  perf annotate: Fix multiple memory and file descriptor leaks
  io_uring: consider the overflow of sequence for timeout req
  perf tools: Fix resource leak of closedir() on the error paths
  perf evlist: Fix fix for freed id arrays
  perf jvmti: Link against tools/lib/ctype.h to have weak strlcpy()
  scripts: setlocalversion: fix a bashism
  kbuild: update comment about KBUILD_ALLDIRS
  virtio-fs: don't show mount options
  nvme-tcp: fix possible leakage during error flow
  nvmet-loop: fix possible leakage during error flow
  btrfs: don't needlessly create extent-refs kernel thread
  iommu/amd: Fix incorrect PASID decoding from event log
  iommu/ipmmu-vmsa: Only call platform_get_irq() when interrupt is mandatory
  iommu/rockchip: Don't use platform_get_irq to implicitly count irqs
  dmaengine: sprd: Fix the possible memory leak issue
  dmaengine: xilinx_dma: Fix control reg update in vdma_channel_set_config
  dmaengine: xilinx_dma: Fix 64-bit simple AXIDMA transfer
  x86/apic/x2apic: Fix a NULL pointer deref when handling a dying cpu
  x86/hyperv: Make vapic support x2apic mode
  KVM: PPC: Book3S HV: XIVE: Ensure VP isn't already in use
  arm64: hibernate: check pgd table allocation
  arm64: cpufeature: Treat ID_AA64ZFR0_EL1 as RAZ when SVE is not enabled
  net: aquantia: correctly handle macvlan and multicast coexistence
  net: aquantia: do not pass lro session with invalid tcp checksum
  net: aquantia: when cleaning hw cache it should be toggled
  net: aquantia: temperature retrieval fix
  gpio: lynxpoint: set default handler to be handle_bad_irq()
  gpio: merrifield: Move hardware initialization to callback
  gpio: lynxpoint: Move hardware initialization to callback
  gpio: intel-mid: Move hardware initialization to callback
  gpiolib: Initialize the hardware with a callback
  gpio: merrifield: Restore use of irq_base
  xtensa: drop EXPORT_SYMBOL for outs*/ins*
  mm/memory-failure: poison read receives SIGKILL instead of SIGBUS if mmaped more than once
  mm/slab.c: fix kernel-doc warning for __ksize()
  xarray.h: fix kernel-doc warning
  bitmap.h: fix kernel-doc warning and typo
  fs/fs-writeback.c: fix kernel-doc warning
  fs/libfs.c: fix kernel-doc warning
  fs/direct-io.c: fix kernel-doc warning
  mm, compaction: fix wrong pfn handling in __reset_isolation_pfn()
  mm, hugetlb: allow hugepage allocations to reclaim as needed
  lib/test_meminit: add a kmem_cache_alloc_bulk() test
  mm/slub.c: init_on_free=1 should wipe freelist ptr for bulk allocations
  lib/generic-radix-tree.c: add kmemleak annotations
  mm/slub: fix a deadlock in show_slab_objects()
  mm, page_owner: rename flag indicating that page is allocated
  mm, page_owner: decouple freeing stack trace from debug_pagealloc
  mm, page_owner: fix off-by-one error in __set_page_owner_handle()
  xtensa: fix type conversion in __get_user_[no]check
  xtensa: clean up assembly arguments in uaccess macros
  block: Fix elv_support_iosched()
  parisc: Remove 32-bit DMA enforcement from sba_iommu
  parisc: Fix vmap memory leak in ioremap()/iounmap()
  parisc: prefer __section from compiler_attributes.h
  parisc: sysctl.c: Use CONFIG_PARISC instead of __hppa_ define
  firmware: dmi: Fix unlikely out-of-bounds read in save_mem_devices
  riscv: tlbflush: remove confusing comment on local_flush_tlb_all()
  riscv: dts: HiFive Unleashed: add default chosen/stdout-path
  riscv: remove the switch statement in do_trap_break()
  drm/panfrost: Add missing GPU feature registers
  bpf: lwtunnel: Fix reroute supplying invalid dst
  xtensa: fix {get,put}_user() for 64bit values
  kmemleak: Do not corrupt the object_list during clean-up
  nvme-tcp: Initialize sk->sk_ll_usec only with NET_RX_BUSY_POLL
  nvme: Wait for reset state when required
  nvme: Prevent resets during paused controller state
  nvme: Restart request timers in resetting state
  nvme: Remove ADMIN_ONLY state
  nvme-pci: Free tagset if no IO queues
  hrtimer: Annotate lockless access to timer->base
  staging: wlan-ng: fix exit return when sme->key_idx >= NUM_WEPKEYS
  ARM: imx_v6_v7_defconfig: Enable CONFIG_DRM_MSM
  arm64: dts: imx8mn: Use correct clock for usdhc's ipg clk
  arm64: dts: imx8mm: Use correct clock for usdhc's ipg clk
  arm64: dts: imx8mq: Use correct clock for usdhc's ipg clk
  platform/x86: i2c-multi-instantiate: Fail the probe if no IRQ provided
  ARM: dts: imx7s: Correct GPT's ipg clock source
  ARM: dts: vf610-zii-scu4-aib: Specify 'i2c-mux-idle-disconnect'
  drm/ttm: fix handling in ttm_bo_add_mem_to_lru
  drm/ttm: Restore ttm prefaulting
  drm/ttm: fix busy reference in ttm_mem_evict_first
  ARM: dts: imx6q-logicpd: Re-Enable SNVS power key
  ath10k: fix latency issue for QCA988x
  virtio-fs: Change module name to virtiofs.ko
  dmaengine: imx-sdma: fix size check for sdma script_number
  dmaengine: tegra210-adma: fix transfer failure
  arm64: dts: lx2160a: Correct CPU core idle state name
  dmaengine: sprd: Fix the link-list pointer register configuration issue
  batman-adv: Avoid free/alloc race when handling OGM buffer
  batman-adv: Avoid free/alloc race when handling OGM2 buffer
  netdevsim: Fix error handling in nsim_fib_init and nsim_fib_exit
  net/ibmvnic: Fix EOI when running in XIVE mode.
  net: lpc_eth: avoid resetting twice
  tcp: annotate sk->sk_wmem_queued lockless reads
  tcp: annotate sk->sk_sndbuf lockless reads
  tcp: annotate sk->sk_rcvbuf lockless reads
  tcp: annotate tp->urg_seq lockless reads
  tcp: annotate tp->snd_nxt lockless reads
  tcp: annotate tp->write_seq lockless reads
  tcp: annotate tp->copied_seq lockless reads
  tcp: annotate tp->rcv_nxt lockless reads
  tcp: add rcu protection around tp->fastopen_rsk
  vhost/test: stop device before reset
  tools/virtio: xen stub
  mailmap: Add Simon Arlott (replacement for expired email address)
  rxrpc: Fix possible NULL pointer access in ICMP handling
  drm/amdgpu/sdma5: fix mask value of POLL_REGMEM packet for pipe sync
  drm/amdgpu: Bail earlier when amdgpu.cik_/si_support is not set to 1
  Revert "drm/radeon: Fix EEH during kexec"
  Input: synaptics-rmi4 - avoid processing unknown IRQs
  btrfs: block-group: Fix a memory leak due to missing btrfs_put_block_group()
  drm/msm/dsi: Implement reset correctly
  Btrfs: add missing extents release on file extent cluster relocation error
  x86/boot/64: Round memory hole size up to next PMD page
  x86/boot/64: Make level2_kernel_pgt pages invalid outside kernel area
  arm64: Fix kcore macros after 52-bit virtual addressing fallout
  tools/virtio: more stubs
  net/smc: receive pending data after RCV_SHUTDOWN
  net/smc: receive returns without data
  net/smc: fix SMCD link group creation with VLAN id
  net: update net_dim documentation after rename
  r8169: fix jumbo packet handling on resume from suspend
  arm64: dts: rockchip: Fix override mode for rk3399-kevin panel
  arm64: dts: rockchip: Fix usb-c on Hugsun X99 TV Box
  arm64: dts: rockchip: fix RockPro64 sdmmc settings
  ARM: 8914/1: NOMMU: Fix exc_ret for XIP
  ARM: 8908/1: add __always_inline to functions called from __get_user_check()
  HID: google: add magnemite/masterball USB ids
  MAINTAINERS: Add BCM2711 to BCM2835 ARCH
  dma-buf/resv: fix exclusive fence get
  drm/edid: Add 6 bpc quirk for SDC panel in Lenovo G50
  dm snapshot: rework COW throttling to fix deadlock
  dm snapshot: introduce account_start_copy() and account_end_copy()
  drm/tiny: Kconfig: Remove always-y THERMAL dep. from TINYDRM_REPAPER
  platform/x86: intel_punit_ipc: Avoid error message when retrieving IRQ
  platform/x86: classmate-laptop: remove unused variable
  opp: of: drop incorrect lockdep_assert_held()
  PM: sleep: include <linux/pm_runtime.h> for pm_wq
  cpufreq: Avoid cpufreq_suspend() deadlock on system shutdown
  ACPI: PM: Drop Dell XPS13 9360 from LPS0 Idle _DSM blacklist
  net: silence KCSAN warnings about sk->sk_backlog.len reads
  net: annotate sk->sk_rcvlowat lockless reads
  net: silence KCSAN warnings around sk_add_backlog() calls
  tcp: annotate lockless access to tcp_memory_pressure
  net: add {READ|WRITE}_ONCE() annotations on ->rskq_accept_head
  net: avoid possible false sharing in sk_leave_memory_pressure()
  tun: remove possible false sharing in tun_flow_update()
  netfilter: conntrack: avoid possible false sharing
  netns: fix NLM_F_ECHO mechanism for RTM_NEWNSID
  scsi: ch: Make it possible to open a ch device multiple times again
  scsi: fix kconfig dependency warning related to 53C700_LE_ON_BE
  scsi: sni_53c710: fix compilation error
  scsi: scsi_dh_alua: handle RTPG sense code correctly during state transitions
  scsi: qla2xxx: fix a potential NULL pointer dereference
  net: usb: qmi_wwan: add Telit 0x1050 composition
  act_mirred: Fix mirred_init_module error handling
  net: taprio: Fix returning EINVAL when configuring without flags
  s390/qeth: Fix initialization of vnicc cmd masks during set online
  s390/qeth: Fix error handling during VNICC initialization
  phylink: fix kernel-doc warnings
  sctp: add chunks to sk_backlog when the newsk sk_socket is not set
  bonding: fix potential NULL deref in bond_update_slave_arr
  net: stmmac: fix disabling flexible PPS output
  net: stmmac: fix length of PTP clock's name string
  ARM: mm: alignment: use "u32" for 32-bit instructions
  ARM: mm: fix alignment handler faults under memory pressure
  ARM: dts: Use level interrupt for omap4 & 5 wlcore
  drivers/amba: fix reset control error handling
  ASoC: simple_card_utils.h: Fix potential multiple redefinition error
  ASoC: msm8916-wcd-digital: add missing MIX2 path for RX1/2
  drm/amdgpu/powerplay: fix typo in mvdd table setup
  iwlwifi: pcie: change qu with jf devices to use qu configuration
  iwlwifi: exclude GEO SAR support for 3168
  iwlwifi: pcie: fix memory leaks in iwl_pcie_ctxt_info_gen3_init
  iwlwifi: dbg_ini: fix memory leak in alloc_sgtable
  iwlwifi: pcie: fix rb_allocator workqueue allocation
  iwlwifi: pcie: fix indexing in command dump for new HW
  iwlwifi: mvm: fix race in sync rx queue notification
  iwlwifi: mvm: force single phy init
  iwlwifi: fix ACPI table revision checks
  iwlwifi: don't access trans_cfg via cfg
  memstick: jmb38x_ms: Fix an error handling path in 'jmb38x_ms_probe()'
  mmc: sdhci-iproc: fix spurious interrupts on Multiblock reads with bcm2711
  pinctrl: armada-37xx: swap polarity on LED group
  arm64: dts: armada-3720-turris-mox: convert usb-phy to phy-supply
  ip6erspan: remove the incorrect mtu limit for ip6erspan
  Doc: networking/device_drivers/pensando: fix ionic.rst warnings
  NFC: pn533: fix use-after-free and memleaks
  Input: soc_button_array - partial revert of support for newer surface devices
  net_sched: fix backward compatibility for TCA_ACT_KIND
  net_sched: fix backward compatibility for TCA_KIND
  net/mlx5: DR, Allow insertion of duplicate rules
  selftests/bpf: More compatible nc options in test_lwt_ip_encap
  selftests/bpf: Set rp_filter in test_flow_dissector
  llc: fix sk_buff refcounting in llc_conn_state_process()
  llc: fix another potential sk_buff leak in llc_ui_sendmsg()
  llc: fix sk_buff leak in llc_conn_service()
  llc: fix sk_buff leak in llc_sap_state_process()
  dm clone: Make __hash_find static
  rt2x00: remove input-polldev.h header
  ARM: dts: am3874-iceboard: Fix 'i2c-mux-idle-disconnect' usage
  ARM: dts: omap5: fix gpu_cm clock provider name
  arm64: Allow CAVIUM_TX2_ERRATUM_219 to be selected
  arm64: Avoid Cavium TX2 erratum 219 when switching TTBR
  arm64: Enable workaround for Cavium TX2 erratum 219 when running SMT
  arm64: KVM: Trap VM ops when ARM64_WORKAROUND_CAVIUM_TX2_219_TVM is set
  mac80211: fix scan when operating on DFS channels in ETSI domains
  mac80211: accept deauth frames in IBSS mode
  cfg80211: fix a bunch of RCU issues in multi-bssid code
  nl80211: fix memory leak in nl80211_get_ftm_responder_stats
  ptp: fix typo of "mechanism" in Kconfig help text
  ionic: fix stats memory dereference
  ASoC: core: Fix pcm code debugfs error
  ARM: dts: sun7i: Drop the module clock from the device tree
  dt-bindings: media: sun4i-csi: Drop the module clock
  rxrpc: Fix call crypto state cleanup
  rxrpc: rxrpc_peer needs to hold a ref on the rxrpc_local record
  rxrpc: Fix trace-after-put looking at the put call record
  rxrpc: Fix trace-after-put looking at the put connection record
  rxrpc: Fix trace-after-put looking at the put peer record
  media: dt-bindings: Fix building error for dt_binding_check
  rxrpc: Fix call ref leak
  ALSA: hdac: clear link output stream mapping
  ALSA: hda/realtek: Reduce the Headphone static noise on XPS 9350/9360
  lib: test_user_copy: style cleanup
  net: stmmac: selftests: Fix L2 Hash Filter test
  net: stmmac: gmac4+: Not all Unicast addresses may be available
  net: stmmac: selftests: Check if filtering is available before running
  net: dsa: b53: Do not clear existing mirrored port mask
  arm64: dts: zii-ultra: fix ARM regulator states
  soc: imx: imx-scu: Getting UID from SCU should have response
  pinctrl: stmfx: fix null pointer on remove
  pinctrl: iproc: allow for error from platform_get_irq()
  nvme: retain split access workaround for capability reads
  nvme: fix possible deadlock when nvme_update_formats fails
  pinctrl: ns2: Fix off by one bugs in ns2_pinmux_enable()
  pinctrl: bcm-iproc: Use SPDX header
  pinctrl: armada-37xx: fix control of pins 32 and up
  arm64: dts: rockchip: fix RockPro64 sdhci settings
  arm64: dts: rockchip: fix RockPro64 vdd-log regulator settings
  regulator: qcom-rpmh: Fix PMIC5 BoB min voltage
  ARM: dts: logicpd-torpedo-som: Remove twl_keypad
  cfg80211: wext: avoid copying malformed SSIDs
  mac80211: Reject malformed SSID elements
  mac80211_hwsim: fix incorrect dev_alloc_name failure goto
  MAINTAINERS: Add hp_sdc drivers to parisc arch
  scsi: MAINTAINERS: Update qla2xxx driver
  scsi: zfcp: fix reaction on bit error threshold notification
  scsi: core: save/restore command resid for error handling
  dt-bindings: arm: rockchip: fix Theobroma-System board bindings
  arm64: dts: rockchip: fix Rockpro64 RK808 interrupt line
  HID: Fix assumption that devices have inputs
  ARM: omap2plus_defconfig: Fix selected panels after generic panel changes
  samples/bpf: Add a workaround for asm_inline
  xsk: Fix crash in poll when device does not support ndo_xsk_wakeup
  samples/bpf: Fix build for task_fd_query_user.c
  ASoc: rockchip: i2s: Fix RPM imbalance
  mmc: sh_mmcif: Use platform_get_irq_optional() for optional interrupt
  mmc: renesas_sdhi: Do not use platform_get_irq() to count interrupts
  ACPI: HMAT: ACPI_HMAT_MEMORY_PD_VALID is deprecated since ACPI-6.3
  Input: goodix - add support for 9-bytes reports
  Input: da9063 - fix capability and drop KEY_SLEEP
  ASoC: wm_adsp: Don't generate kcontrols without READ flags
  sysfs: Fixes __BIN_ATTR_WO() macro
  rt2x00: initialize last_reset
  selftests/bpf: test_progs: Don't leak server_fd in test_sockopt_inherit
  selftests/bpf: test_progs: Don't leak server_fd in tcp_rtt
  regulator: pfuze100-regulator: Variable "val" in pfuze100_regulator_probe() could be uninitialized
  ASoC: intel: bytcr_rt5651: add null check to support_button_press
  ASoC: intel: sof_rt5682: add remove function to disable jack
  ASoC: rt5682: add NULL handler to set_jack function
  ASoC: intel: sof_rt5682: use separate route map for dmic
  ASoC: SOF: Intel: hda: Disable DMI L1 entry during capture
  ASoC: SOF: Intel: initialise and verify FW crash dump data.
  ASoC: SOF: Intel: hda: fix warnings during FW load
  ASoC: SOF: pcm: harden PCM STOP sequence
  ASoC: SOF: pcm: fix resource leak in hw_free
  ASoC: SOF: topology: fix parse fail issue for byte/bool tuple types
  ASoC: SOF: loader: fix kernel oops on firmware boot failure
  regulator: lochnagar: Add on_off_delay for VDDCORE
  ASoC: wm_adsp: Fix theoretical NULL pointer for alg_region
  pinctrl: cherryview: restore Strago DMI workaround for all versions
  pinctrl: intel: Allocate IRQ chip dynamic
  HID: prodikeys: make array keys static const, makes object smaller
  HID: fix error message in hid_open_report()
  ASoC: max98373: check for device node before parsing
  regulator: ti-abb: Fix timeout in ti_abb_wait_txdone/ti_abb_clear_all_txdone
  iommu/io-pgtable-arm: Support all Mali configurations
  iommu/io-pgtable-arm: Correct Mali attributes
  iommu/arm-smmu: Free context bitmap in the err path of arm_smmu_init_domain_context
  scsi: qla2xxx: Remove WARN_ON_ONCE in qla2x00_status_cont_entry()
  scsi: sd: Ignore a failure to sync cache due to lack of authorization
  arm64: dts: Fix gpio to pinmux mapping
  libbpf: handle symbol versioning properly for libbpf.a
  arm64: dts: allwinner: a64: sopine-baseboard: Add PHY regulator delay
  arm64: dts: allwinner: a64: Drop PMU node
  arm64: dts: allwinner: a64: pine64-plus: Add PHY regulator delay
  tools: bpf: Use !building_out_of_srctree to determine srctree
  ASoC: topology: Fix a signedness bug in soc_tplg_dapm_widget_create()
  scsi: core: fix dh and multipathing for SCSI hosts without request batching
  scsi: core: fix missing .cleanup_rq for SCSI hosts without request batching
  regulator: da9062: fix suspend_enable/disable preparation
  dt-bindings: fixed-regulator: fix compatible enum
  regulator: fixed: Prevent NULL pointer dereference when !CONFIG_OF
  ASoC: soc-component: fix a couple missing error assignments
  ASoC: wm8994: Do not register inapplicable controls for WM1811
  ASoC: samsung: arndale: Add missing OF node dereferencing
  irqchip/sifive-plic: Switch to fasteoi flow
  irqchip/gic-v3: Fix GIC_LINE_NR accessor
  regulator: core: make regulator_register() EPROBE_DEFER aware
  regulator: of: fix suspend-min/max-voltage parsing
  irqchip/atmel-aic5: Add support for sam9x60 irqchip
  irqchip/al-fic: Add support for irq retrigger

Change-Id: I5e7fd941c93a36889378f480cc27d8ea77d11b39
Signed-off-by: Raghavendra Rao Ananta <rananta@codeaurora.org>
2019-11-04 17:30:19 -08:00
qctecmdr
f4de4c753b Merge "mm: vmscan: support complete shrinker reclaim" 2019-10-25 02:45:51 -07:00
Liam Mark
1b45604c21 mm: vmscan: support complete shrinker reclaim
Ensure that shrinkers are given the option to completely drop
their caches even when their caches are smaller than the batch size.

This change helps improve memory headroom by ensuring that under
significant memory pressure shrinkers can drop all of their caches.

This change only attempts to more aggressively call the shrinkers
during background memory reclaim, inorder to avoid hurting the
perforamnce of direct memory reclaim.

Change-Id: I8dbc29c054add639e4810e36fd2c8a063e5c52f3
Signed-off-by: Liam Mark <lmark@codeaurora.org>
Signed-off-by: Patrick Daly <pdaly@codeaurora.org>
Signed-off-by: Sudarshan Rajagopalan <sudaraja@codeaurora.org>
Signed-off-by: Isaac J. Manjarres <isaacm@codeaurora.org>
2019-10-24 10:22:26 -07:00
Patrick Daly
1839defde4 mm: vmscan: support equal reclaim for anon and file pages
When performing memory reclaim support treating anonymous and
file backed pages equally.

Swapping anonymous pages out to memory can be efficient enough
to justify treating anonymous and file backed pages equally.

CRs-Fixed: 648984
Change-Id: I6315b8557020d1e27a34225bb9cefbef1fb43266
Signed-off-by: Liam Mark <lmark@codeaurora.org>
Signed-off-by: Patrick Daly <pdaly@codeaurora.org>
Signed-off-by: Sudarshan Rajagopalan <sudaraja@codeaurora.org>
[swatsrid@codeaurora.org: Fix trivial merge conflicts]
Signed-off-by: Swathi Sridhar <swatsrid@codeaurora.org>
[isaacm@codeaurora.org: Fix trivial merge conflicts]
Signed-off-by: Isaac J. Manjarres <isaacm@codeaurora.org>
2019-10-24 10:22:10 -07:00
William Kucharski
906d278d75 mm/vmscan.c: support removing arbitrary sized pages from mapping
__remove_mapping() assumes that pages can only be either base pages or
HPAGE_PMD_SIZE.  Ask the page what size it is.

Link: http://lkml.kernel.org/r/20191017164223.2762148-4-songliubraving@fb.com
Fixes: 99cb0dbd47 ("mm,thp: add read-only THP support for (non-shmem) FS")
Signed-off-by: William Kucharski <william.kucharski@oracle.com>
Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org>
Signed-off-by: Song Liu <songliubraving@fb.com>
Acked-by: Yang Shi <yang.shi@linux.alibaba.com>
Cc: "Kirill A. Shutemov" <kirill.shutemov@linux.intel.com>
Cc: Oleg Nesterov <oleg@redhat.com>
Cc: Srikar Dronamraju <srikar@linux.vnet.ibm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2019-10-19 06:32:32 -04:00
Honglei Wang
b11edebbc9 mm: memcg: get number of pages on the LRU list in memcgroup base on lru_zone_size
Commit 1a61ab8038 ("mm: memcontrol: replace zone summing with
lruvec_page_state()") has made lruvec_page_state to use per-cpu counters
instead of calculating it directly from lru_zone_size with an idea that
this would be more effective.

Tim has reported that this is not really the case for their database
benchmark which is showing an opposite results where lruvec_page_state
is taking up a huge chunk of CPU cycles (about 25% of the system time
which is roughly 7% of total cpu cycles) on 5.3 kernels.  The workload
is running on a larger machine (96cpus), it has many cgroups (500) and
it is heavily direct reclaim bound.

Tim Chen said:

: The problem can also be reproduced by running simple multi-threaded
: pmbench benchmark with a fast Optane SSD swap (see profile below).
:
:
: 6.15%     3.08%  pmbench          [kernel.vmlinux]            [k] lruvec_lru_size
:             |
:             |--3.07%--lruvec_lru_size
:             |          |
:             |          |--2.11%--cpumask_next
:             |          |          |
:             |          |           --1.66%--find_next_bit
:             |          |
:             |           --0.57%--call_function_interrupt
:             |                     |
:             |                      --0.55%--smp_call_function_interrupt
:             |
:             |--1.59%--0x441f0fc3d009
:             |          _ops_rdtsc_init_base_freq
:             |          access_histogram
:             |          page_fault
:             |          __do_page_fault
:             |          handle_mm_fault
:             |          __handle_mm_fault
:             |          |
:             |           --1.54%--do_swap_page
:             |                     swapin_readahead
:             |                     swap_cluster_readahead
:             |                     |
:             |                      --1.53%--read_swap_cache_async
:             |                                __read_swap_cache_async
:             |                                alloc_pages_vma
:             |                                __alloc_pages_nodemask
:             |                                __alloc_pages_slowpath
:             |                                try_to_free_pages
:             |                                do_try_to_free_pages
:             |                                shrink_node
:             |                                shrink_node_memcg
:             |                                |
:             |                                |--0.77%--lruvec_lru_size
:             |                                |
:             |                                 --0.76%--inactive_list_is_low
:             |                                           |
:             |                                            --0.76%--lruvec_lru_size
:             |
:              --1.50%--measure_read
:                        page_fault
:                        __do_page_fault
:                        handle_mm_fault
:                        __handle_mm_fault
:                        do_swap_page
:                        swapin_readahead
:                        swap_cluster_readahead
:                        |
:                         --1.48%--read_swap_cache_async
:                                   __read_swap_cache_async
:                                   alloc_pages_vma
:                                   __alloc_pages_nodemask
:                                   __alloc_pages_slowpath
:                                   try_to_free_pages
:                                   do_try_to_free_pages
:                                   shrink_node
:                                   shrink_node_memcg
:                                   |
:                                   |--0.75%--inactive_list_is_low
:                                   |          |
:                                   |           --0.75%--lruvec_lru_size
:                                   |
:                                    --0.73%--lruvec_lru_size

The likely culprit is the cache traffic the lruvec_page_state_local
generates.  Dave Hansen says:

: I was thinking purely of the cache footprint.  If it's reading
: pn->lruvec_stat_local->count[idx] is three separate cachelines, so 192
: bytes of cache *96 CPUs = 18k of data, mostly read-only.  1 cgroup would
: be 18k of data for the whole system and the caching would be pretty
: efficient and all 18k would probably survive a tight page fault loop in
: the L1.  500 cgroups would be ~90k of data per CPU thread which doesn't
: fit in the L1 and probably wouldn't survive a tight page fault loop if
: both logical threads were banging on different cgroups.
:
: It's just a theory, but it's why I noted the number of cgroups when I
: initially saw this show up in profiles

Fix the regression by partially reverting the said commit and calculate
the lru size explicitly.

Link: http://lkml.kernel.org/r/20190905071034.16822-1-honglei.wang@oracle.com
Fixes: 1a61ab8038 ("mm: memcontrol: replace zone summing with lruvec_page_state()")
Signed-off-by: Honglei Wang <honglei.wang@oracle.com>
Reported-by: Tim Chen <tim.c.chen@linux.intel.com>
Acked-by: Tim Chen <tim.c.chen@linux.intel.com>
Tested-by: Tim Chen <tim.c.chen@linux.intel.com>
Acked-by: Michal Hocko <mhocko@suse.com>
Cc: Vladimir Davydov <vdavydov.dev@gmail.com>
Cc: Johannes Weiner <hannes@cmpxchg.org>
Cc: Roman Gushchin <guro@fb.com>
Cc: Tejun Heo <tj@kernel.org>
Cc: Dave Hansen <dave.hansen@intel.com>
Cc: <stable@vger.kernel.org>	[5.2+]
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2019-10-19 06:32:32 -04:00
Chris Down
1bc63fb127 mm, memcg: make scan aggression always exclude protection
This patch is an incremental improvement on the existing
memory.{low,min} relative reclaim work to base its scan pressure
calculations on how much protection is available compared to the current
usage, rather than how much the current usage is over some protection
threshold.

This change doesn't change the experience for the user in the normal
case too much.  One benefit is that it replaces the (somewhat arbitrary)
100% cutoff with an indefinite slope, which makes it easier to ballpark
a memory.low value.

As well as this, the old methodology doesn't quite apply generically to
machines with varying amounts of physical memory.  Let's say we have a
top level cgroup, workload.slice, and another top level cgroup,
system-management.slice.  We want to roughly give 12G to
system-management.slice, so on a 32GB machine we set memory.low to 20GB
in workload.slice, and on a 64GB machine we set memory.low to 52GB.
However, because these are relative amounts to the total machine size,
while the amount of memory we want to generally be willing to yield to
system.slice is absolute (12G), we end up putting more pressure on
system.slice just because we have a larger machine and a larger workload
to fill it, which seems fairly unintuitive.  With this new behaviour, we
don't end up with this unintended side effect.

Previously the way that memory.low protection works is that if you are
50% over a certain baseline, you get 50% of your normal scan pressure.
This is certainly better than the previous cliff-edge behaviour, but it
can be improved even further by always considering memory under the
currently enforced protection threshold to be out of bounds.  This means
that we can set relatively low memory.low thresholds for variable or
bursty workloads while still getting a reasonable level of protection,
whereas with the previous version we may still trivially hit the 100%
clamp.  The previous 100% clamp is also somewhat arbitrary, whereas this
one is more concretely based on the currently enforced protection
threshold, which is likely easier to reason about.

There is also a subtle issue with the way that proportional reclaim
worked previously -- it promotes having no memory.low, since it makes
pressure higher during low reclaim.  This happens because we base our
scan pressure modulation on how far memory.current is between memory.min
and memory.low, but if memory.low is unset, we only use the overage
method.  In most cromulent configurations, this then means that we end
up with *more* pressure than with no memory.low at all when we're in low
reclaim, which is not really very usable or expected.

With this patch, memory.low and memory.min affect reclaim pressure in a
more understandable and composable way.  For example, from a user
standpoint, "protected" memory now remains untouchable from a reclaim
aggression standpoint, and users can also have more confidence that
bursty workloads will still receive some amount of guaranteed
protection.

Link: http://lkml.kernel.org/r/20190322160307.GA3316@chrisdown.name
Signed-off-by: Chris Down <chris@chrisdown.name>
Reviewed-by: Roman Gushchin <guro@fb.com>
Acked-by: Johannes Weiner <hannes@cmpxchg.org>
Acked-by: Michal Hocko <mhocko@kernel.org>
Cc: Tejun Heo <tj@kernel.org>
Cc: Dennis Zhou <dennis@kernel.org>
Cc: Vladimir Davydov <vdavydov.dev@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2019-10-07 15:47:20 -07:00
Chris Down
9de7ca46ad mm, memcg: make memory.emin the baseline for utilisation determination
Roman points out that when when we do the low reclaim pass, we scale the
reclaim pressure relative to position between 0 and the maximum
protection threshold.

However, if the maximum protection is based on memory.elow, and
memory.emin is above zero, this means we still may get binary behaviour
on second-pass low reclaim.  This is because we scale starting at 0, not
starting at memory.emin, and since we don't scan at all below emin, we
end up with cliff behaviour.

This should be a fairly uncommon case since usually we don't go into the
second pass, but it makes sense to scale our low reclaim pressure
starting at emin.

You can test this by catting two large sparse files, one in a cgroup
with emin set to some moderate size compared to physical RAM, and
another cgroup without any emin.  In both cgroups, set an elow larger
than 50% of physical RAM.  The one with emin will have less page
scanning, as reclaim pressure is lower.

Rebase on top of and apply the same idea as what was applied to handle
cgroup_memory=disable properly for the original proportional patch
http://lkml.kernel.org/r/20190201045711.GA18302@chrisdown.name ("mm,
memcg: Handle cgroup_disable=memory when getting memcg protection").

Link: http://lkml.kernel.org/r/20190201051810.GA18895@chrisdown.name
Signed-off-by: Chris Down <chris@chrisdown.name>
Suggested-by: Roman Gushchin <guro@fb.com>
Acked-by: Johannes Weiner <hannes@cmpxchg.org>
Cc: Michal Hocko <mhocko@kernel.org>
Cc: Tejun Heo <tj@kernel.org>
Cc: Dennis Zhou <dennis@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2019-10-07 15:47:20 -07:00
Chris Down
9783aa9917 mm, memcg: proportional memory.{low,min} reclaim
cgroup v2 introduces two memory protection thresholds: memory.low
(best-effort) and memory.min (hard protection).  While they generally do
what they say on the tin, there is a limitation in their implementation
that makes them difficult to use effectively: that cliff behaviour often
manifests when they become eligible for reclaim.  This patch implements
more intuitive and usable behaviour, where we gradually mount more
reclaim pressure as cgroups further and further exceed their protection
thresholds.

This cliff edge behaviour happens because we only choose whether or not
to reclaim based on whether the memcg is within its protection limits
(see the use of mem_cgroup_protected in shrink_node), but we don't vary
our reclaim behaviour based on this information.  Imagine the following
timeline, with the numbers the lruvec size in this zone:

1. memory.low=1000000, memory.current=999999. 0 pages may be scanned.
2. memory.low=1000000, memory.current=1000000. 0 pages may be scanned.
3. memory.low=1000000, memory.current=1000001. 1000001* pages may be
   scanned. (?!)

* Of course, we won't usually scan all available pages in the zone even
  without this patch because of scan control priority, over-reclaim
  protection, etc.  However, as shown by the tests at the end, these
  techniques don't sufficiently throttle such an extreme change in input,
  so cliff-like behaviour isn't really averted by their existence alone.

Here's an example of how this plays out in practice.  At Facebook, we are
trying to protect various workloads from "system" software, like
configuration management tools, metric collectors, etc (see this[0] case
study).  In order to find a suitable memory.low value, we start by
determining the expected memory range within which the workload will be
comfortable operating.  This isn't an exact science -- memory usage deemed
"comfortable" will vary over time due to user behaviour, differences in
composition of work, etc, etc.  As such we need to ballpark memory.low,
but doing this is currently problematic:

1. If we end up setting it too low for the workload, it won't have
   *any* effect (see discussion above).  The group will receive the full
   weight of reclaim and won't have any priority while competing with the
   less important system software, as if we had no memory.low configured
   at all.

2. Because of this behaviour, we end up erring on the side of setting
   it too high, such that the comfort range is reliably covered.  However,
   protected memory is completely unavailable to the rest of the system,
   so we might cause undue memory and IO pressure there when we *know* we
   have some elasticity in the workload.

3. Even if we get the value totally right, smack in the middle of the
   comfort zone, we get extreme jumps between no pressure and full
   pressure that cause unpredictable pressure spikes in the workload due
   to the current binary reclaim behaviour.

With this patch, we can set it to our ballpark estimation without too much
worry.  Any undesirable behaviour, such as too much or too little reclaim
pressure on the workload or system will be proportional to how far our
estimation is off.  This means we can set memory.low much more
conservatively and thus waste less resources *without* the risk of the
workload falling off a cliff if we overshoot.

As a more abstract technical description, this unintuitive behaviour
results in having to give high-priority workloads a large protection
buffer on top of their expected usage to function reliably, as otherwise
we have abrupt periods of dramatically increased memory pressure which
hamper performance.  Having to set these thresholds so high wastes
resources and generally works against the principle of work conservation.
In addition, having proportional memory reclaim behaviour has other
benefits.  Most notably, before this patch it's basically mandatory to set
memory.low to a higher than desirable value because otherwise as soon as
you exceed memory.low, all protection is lost, and all pages are eligible
to scan again.  By contrast, having a gradual ramp in reclaim pressure
means that you now still get some protection when thresholds are exceeded,
which means that one can now be more comfortable setting memory.low to
lower values without worrying that all protection will be lost.  This is
important because workingset size is really hard to know exactly,
especially with variable workloads, so at least getting *some* protection
if your workingset size grows larger than you expect increases user
confidence in setting memory.low without a huge buffer on top being
needed.

Thanks a lot to Johannes Weiner and Tejun Heo for their advice and
assistance in thinking about how to make this work better.

In testing these changes, I intended to verify that:

1. Changes in page scanning become gradual and proportional instead of
   binary.

   To test this, I experimented stepping further and further down
   memory.low protection on a workload that floats around 19G workingset
   when under memory.low protection, watching page scan rates for the
   workload cgroup:

   +------------+-----------------+--------------------+--------------+
   | memory.low | test (pgscan/s) | control (pgscan/s) | % of control |
   +------------+-----------------+--------------------+--------------+
   |        21G |               0 |                  0 | N/A          |
   |        17G |             867 |               3799 | 23%          |
   |        12G |            1203 |               3543 | 34%          |
   |         8G |            2534 |               3979 | 64%          |
   |         4G |            3980 |               4147 | 96%          |
   |          0 |            3799 |               3980 | 95%          |
   +------------+-----------------+--------------------+--------------+

   As you can see, the test kernel (with a kernel containing this
   patch) ramps up page scanning significantly more gradually than the
   control kernel (without this patch).

2. More gradual ramp up in reclaim aggression doesn't result in
   premature OOMs.

   To test this, I wrote a script that slowly increments the number of
   pages held by stress(1)'s --vm-keep mode until a production system
   entered severe overall memory contention.  This script runs in a highly
   protected slice taking up the majority of available system memory.
   Watching vmstat revealed that page scanning continued essentially
   nominally between test and control, without causing forward reclaim
   progress to become arrested.

[0]: https://facebookmicrosites.github.io/cgroup2/docs/overview.html#case-study-the-fbtax2-project

[akpm@linux-foundation.org: reflow block comments to fit in 80 cols]
[chris@chrisdown.name: handle cgroup_disable=memory when getting memcg protection]
  Link: http://lkml.kernel.org/r/20190201045711.GA18302@chrisdown.name
Link: http://lkml.kernel.org/r/20190124014455.GA6396@chrisdown.name
Signed-off-by: Chris Down <chris@chrisdown.name>
Acked-by: Johannes Weiner <hannes@cmpxchg.org>
Reviewed-by: Roman Gushchin <guro@fb.com>
Cc: Michal Hocko <mhocko@kernel.org>
Cc: Tejun Heo <tj@kernel.org>
Cc: Dennis Zhou <dennis@kernel.org>
Cc: Tetsuo Handa <penguin-kernel@i-love.sakura.ne.jp>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2019-10-07 15:47:20 -07:00
Minchan Kim
1a4e58cce8 mm: introduce MADV_PAGEOUT
When a process expects no accesses to a certain memory range for a long
time, it could hint kernel that the pages can be reclaimed instantly but
data should be preserved for future use.  This could reduce workingset
eviction so it ends up increasing performance.

This patch introduces the new MADV_PAGEOUT hint to madvise(2) syscall.
MADV_PAGEOUT can be used by a process to mark a memory range as not
expected to be used for a long time so that kernel reclaims *any LRU*
pages instantly.  The hint can help kernel in deciding which pages to
evict proactively.

A note: It doesn't apply SWAP_CLUSTER_MAX LRU page isolation limit
intentionally because it's automatically bounded by PMD size.  If PMD
size(e.g., 256) makes some trouble, we could fix it later by limit it to
SWAP_CLUSTER_MAX[1].

- man-page material

MADV_PAGEOUT (since Linux x.x)

Do not expect access in the near future so pages in the specified
regions could be reclaimed instantly regardless of memory pressure.
Thus, access in the range after successful operation could cause
major page fault but never lose the up-to-date contents unlike
MADV_DONTNEED. Pages belonging to a shared mapping are only processed
if a write access is allowed for the calling process.

MADV_PAGEOUT cannot be applied to locked pages, Huge TLB pages, or
VM_PFNMAP pages.

[1] https://lore.kernel.org/lkml/20190710194719.GS29695@dhcp22.suse.cz/

[minchan@kernel.org: clear PG_active on MADV_PAGEOUT]
  Link: http://lkml.kernel.org/r/20190802200643.GA181880@google.com
[akpm@linux-foundation.org: resolve conflicts with hmm.git]
Link: http://lkml.kernel.org/r/20190726023435.214162-5-minchan@kernel.org
Signed-off-by: Minchan Kim <minchan@kernel.org>
Reported-by: kbuild test robot <lkp@intel.com>
Acked-by: Michal Hocko <mhocko@suse.com>
Cc: James E.J. Bottomley <James.Bottomley@HansenPartnership.com>
Cc: Richard Henderson <rth@twiddle.net>
Cc: Ralf Baechle <ralf@linux-mips.org>
Cc: Chris Zankel <chris@zankel.net>
Cc: Daniel Colascione <dancol@google.com>
Cc: Dave Hansen <dave.hansen@intel.com>
Cc: Hillf Danton <hdanton@sina.com>
Cc: Joel Fernandes (Google) <joel@joelfernandes.org>
Cc: Johannes Weiner <hannes@cmpxchg.org>
Cc: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
Cc: Oleksandr Natalenko <oleksandr@redhat.com>
Cc: Shakeel Butt <shakeelb@google.com>
Cc: Sonny Rao <sonnyrao@google.com>
Cc: Suren Baghdasaryan <surenb@google.com>
Cc: Tim Murray <timmurray@google.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2019-09-25 17:51:41 -07:00
Minchan Kim
8940b34a4e mm: change PAGEREF_RECLAIM_CLEAN with PAGE_REFRECLAIM
The local variable references in shrink_page_list is PAGEREF_RECLAIM_CLEAN
as default.  It is for preventing to reclaim dirty pages when CMA try to
migrate pages.  Strictly speaking, we don't need it because CMA didn't
allow to write out by .may_writepage = 0 in reclaim_clean_pages_from_list.

Moreover, it has a problem to prevent anonymous pages's swap out even
though force_reclaim = true in shrink_page_list on upcoming patch.  So
this patch makes references's default value to PAGEREF_RECLAIM and rename
force_reclaim with ignore_references to make it more clear.

This is a preparatory work for next patch.

Link: http://lkml.kernel.org/r/20190726023435.214162-3-minchan@kernel.org
Signed-off-by: Minchan Kim <minchan@kernel.org>
Acked-by: Michal Hocko <mhocko@suse.com>
Acked-by: Johannes Weiner <hannes@cmpxchg.org>
Cc: Chris Zankel <chris@zankel.net>
Cc: Daniel Colascione <dancol@google.com>
Cc: Dave Hansen <dave.hansen@intel.com>
Cc: Hillf Danton <hdanton@sina.com>
Cc: James E.J. Bottomley <James.Bottomley@HansenPartnership.com>
Cc: Joel Fernandes (Google) <joel@joelfernandes.org>
Cc: kbuild test robot <lkp@intel.com>
Cc: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
Cc: Oleksandr Natalenko <oleksandr@redhat.com>
Cc: Ralf Baechle <ralf@linux-mips.org>
Cc: Richard Henderson <rth@twiddle.net>
Cc: Shakeel Butt <shakeelb@google.com>
Cc: Sonny Rao <sonnyrao@google.com>
Cc: Suren Baghdasaryan <surenb@google.com>
Cc: Tim Murray <timmurray@google.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2019-09-25 17:51:41 -07:00
Yang Shi
0a432dcbeb mm: shrinker: make shrinker not depend on memcg kmem
Currently shrinker is just allocated and can work when memcg kmem is
enabled.  But, THP deferred split shrinker is not slab shrinker, it
doesn't make too much sense to have such shrinker depend on memcg kmem.
It should be able to reclaim THP even though memcg kmem is disabled.

Introduce a new shrinker flag, SHRINKER_NONSLAB, for non-slab shrinker.
When memcg kmem is disabled, just such shrinkers can be called in
shrinking memcg slab.

[yang.shi@linux.alibaba.com: add comment]
  Link: http://lkml.kernel.org/r/1566496227-84952-4-git-send-email-yang.shi@linux.alibaba.com
Link: http://lkml.kernel.org/r/1565144277-36240-4-git-send-email-yang.shi@linux.alibaba.com
Signed-off-by: Yang Shi <yang.shi@linux.alibaba.com>
Acked-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
Reviewed-by: Kirill Tkhai <ktkhai@virtuozzo.com>
Cc: Johannes Weiner <hannes@cmpxchg.org>
Cc: Michal Hocko <mhocko@suse.com>
Cc: "Kirill A . Shutemov" <kirill.shutemov@linux.intel.com>
Cc: Hugh Dickins <hughd@google.com>
Cc: Shakeel Butt <shakeelb@google.com>
Cc: David Rientjes <rientjes@google.com>
Cc: Qian Cai <cai@lca.pw>
Cc: Vladimir Davydov <vdavydov.dev@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2019-09-24 15:54:11 -07:00
Yang Shi
7ae88534cd mm: move mem_cgroup_uncharge out of __page_cache_release()
A later patch makes THP deferred split shrinker memcg aware, but it needs
page->mem_cgroup information in THP destructor, which is called after
mem_cgroup_uncharge() now.

So move mem_cgroup_uncharge() from __page_cache_release() to compound page
destructor, which is called by both THP and other compound pages except
HugeTLB.  And call it in __put_single_page() for single order page.

Link: http://lkml.kernel.org/r/1565144277-36240-3-git-send-email-yang.shi@linux.alibaba.com
Signed-off-by: Yang Shi <yang.shi@linux.alibaba.com>
Suggested-by: "Kirill A . Shutemov" <kirill.shutemov@linux.intel.com>
Acked-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
Reviewed-by: Kirill Tkhai <ktkhai@virtuozzo.com>
Cc: Johannes Weiner <hannes@cmpxchg.org>
Cc: Michal Hocko <mhocko@suse.com>
Cc: Hugh Dickins <hughd@google.com>
Cc: Shakeel Butt <shakeelb@google.com>
Cc: David Rientjes <rientjes@google.com>
Cc: Qian Cai <cai@lca.pw>
Cc: Vladimir Davydov <vdavydov.dev@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2019-09-24 15:54:11 -07:00
Vlastimil Babka
5ee04716c4 mm, reclaim: cleanup should_continue_reclaim()
After commit "mm, reclaim: make should_continue_reclaim perform dryrun
detection", closer look at the function shows, that nr_reclaimed == 0
means the function will always return false.  And since non-zero
nr_reclaimed implies non_zero nr_scanned, testing nr_scanned serves no
purpose, and so does the testing for __GFP_RETRY_MAYFAIL.

This patch thus cleans up the function to test only !nr_reclaimed upfront,
and remove the __GFP_RETRY_MAYFAIL test and nr_scanned parameter
completely.  Comment is also updated, explaining that approximating "full
LRU list has been scanned" with nr_scanned == 0 didn't really work.

Link: http://lkml.kernel.org/r/20190806014744.15446-3-mike.kravetz@oracle.com
Signed-off-by: Vlastimil Babka <vbabka@suse.cz>
Signed-off-by: Mike Kravetz <mike.kravetz@oracle.com>
Acked-by: Mike Kravetz <mike.kravetz@oracle.com>
Cc: Hillf Danton <hdanton@sina.com>
Cc: Johannes Weiner <hannes@cmpxchg.org>
Cc: Mel Gorman <mgorman@suse.de>
Cc: Michal Hocko <mhocko@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2019-09-24 15:54:10 -07:00
Hillf Danton
1c6c15971e mm, reclaim: make should_continue_reclaim perform dryrun detection
Patch series "address hugetlb page allocation stalls", v2.

Allocation of hugetlb pages via sysctl or procfs can stall for minutes or
hours.  A simple example on a two node system with 8GB of memory is as
follows:

echo 4096 > /sys/devices/system/node/node1/hugepages/hugepages-2048kB/nr_hugepages
echo 4096 > /proc/sys/vm/nr_hugepages

Obviously, both allocation attempts will fall short of their 8GB goal.
However, one or both of these commands may stall and not be interruptible.
The issues were initially discussed in mail thread [1] and RFC code at
[2].

This series addresses the issues causing the stalls.  There are two
distinct fixes, a cleanup, and an optimization.  The reclaim patch by
Hillf and compaction patch by Vlasitmil address corner cases in their
respective areas.  hugetlb page allocation could stall due to either of
these issues.  Vlasitmil added a cleanup patch after Hillf's
modifications.  The hugetlb patch by Mike is an optimization suggested
during the debug and development process.

[1] http://lkml.kernel.org/r/d38a095e-dc39-7e82-bb76-2c9247929f07@oracle.com
[2] http://lkml.kernel.org/r/20190724175014.9935-1-mike.kravetz@oracle.com

This patch (of 4):

Address the issue of should_continue_reclaim returning true too often for
__GFP_RETRY_MAYFAIL attempts when !nr_reclaimed and nr_scanned.  This was
observed during hugetlb page allocation causing stalls for minutes or
hours.

We can stop reclaiming pages if compaction reports it can make a progress.
There might be side-effects for other high-order allocations that would
potentially benefit from reclaiming more before compaction so that they
would be faster and less likely to stall.  However, the consequences of
premature/over-reclaim are considered worse.

We can also bail out of reclaiming pages if we know that there are not
enough inactive lru pages left to satisfy the costly allocation.

We can give up reclaiming pages too if we see dryrun occur, with the
certainty of plenty of inactive pages.  IOW with dryrun detected, we are
sure we have reclaimed as many pages as we could.

Link: http://lkml.kernel.org/r/20190806014744.15446-2-mike.kravetz@oracle.com
Signed-off-by: Hillf Danton <hdanton@sina.com>
Signed-off-by: Mike Kravetz <mike.kravetz@oracle.com>
Tested-by: Mike Kravetz <mike.kravetz@oracle.com>
Acked-by: Mel Gorman <mgorman@suse.de>
Acked-by: Vlastimil Babka <vbabka@suse.cz>
Cc: Mel Gorman <mgorman@suse.de>
Cc: Michal Hocko <mhocko@kernel.org>
Cc: Vlastimil Babka <vbabka@suse.cz>
Cc: Johannes Weiner <hannes@cmpxchg.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2019-09-24 15:54:10 -07:00
Johannes Weiner
1ba6fc9af3 mm: vmscan: do not share cgroup iteration between reclaimers
One of our services observed a high rate of cgroup OOM kills in the
presence of large amounts of clean cache.  Debugging showed that the
culprit is the shared cgroup iteration in page reclaim.

Under high allocation concurrency, multiple threads enter reclaim at the
same time.  Fearing overreclaim when we first switched from the single
global LRU to cgrouped LRU lists, we introduced a shared iteration state
for reclaim invocations - whether 1 or 20 reclaimers are active
concurrently, we only walk the cgroup tree once: the 1st reclaimer
reclaims the first cgroup, the second the second one etc.  With more
reclaimers than cgroups, we start another walk from the top.

This sounded reasonable at the time, but the problem is that reclaim
concurrency doesn't scale with allocation concurrency.  As reclaim
concurrency increases, the amount of memory individual reclaimers get to
scan gets smaller and smaller.  Individual reclaimers may only see one
cgroup per cycle, and that may not have much reclaimable memory.  We see
individual reclaimers declare OOM when there is plenty of reclaimable
memory available in cgroups they didn't visit.

This patch does away with the shared iterator, and every reclaimer is
allowed to scan the full cgroup tree and see all of reclaimable memory,
just like it would on a non-cgrouped system.  This way, when OOM is
declared, we know that the reclaimer actually had a chance.

To still maintain fairness in reclaim pressure, disallow cgroup reclaim
from bailing out of the tree walk early.  Kswapd and regular direct
reclaim already don't bail, so it's not clear why limit reclaim would have
to, especially since it only walks subtrees to begin with.

This change completely eliminates the OOM kills on our service, while
showing no signs of overreclaim - no increased scan rates, %sys time, or
abrupt free memory spikes.  I tested across 100 machines that have 64G of
RAM and host about 300 cgroups each.

[ It's possible overreclaim never was a *practical* issue to begin
  with - it was simply a concern we had on the mailing lists at the
  time, with no real data to back it up. But we have also added more
  bail-out conditions deeper inside reclaim (e.g. the proportional
  exit in shrink_node_memcg) since. Regardless, now we have data that
  suggests full walks are more reliable and scale just fine. ]

Link: http://lkml.kernel.org/r/20190812192316.13615-1-hannes@cmpxchg.org
Signed-off-by: Johannes Weiner <hannes@cmpxchg.org>
Reviewed-by: Roman Gushchin <guro@fb.com>
Acked-by: Michal Hocko <mhocko@suse.com>
Cc: Vladimir Davydov <vdavydov.dev@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2019-09-24 15:54:08 -07:00
Matthew Wilcox (Oracle)
d8c6546b1a mm: introduce compound_nr()
Replace 1 << compound_order(page) with compound_nr(page).  Minor
improvements in readability.

Link: http://lkml.kernel.org/r/20190721104612.19120-4-willy@infradead.org
Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org>
Reviewed-by: Andrew Morton <akpm@linux-foundation.org>
Reviewed-by: Ira Weiny <ira.weiny@intel.com>
Acked-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
Cc: Michal Hocko <mhocko@suse.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2019-09-24 15:54:08 -07:00
Michal Hocko
d2e5fb927e mm, memcg: do not set reclaim_state on soft limit reclaim
Adric Blake has noticed[1] the following warning:

  WARNING: CPU: 7 PID: 175 at mm/vmscan.c:245 set_task_reclaim_state+0x1e/0x40
  [...]
  Call Trace:
   mem_cgroup_shrink_node+0x9b/0x1d0
   mem_cgroup_soft_limit_reclaim+0x10c/0x3a0
   balance_pgdat+0x276/0x540
   kswapd+0x200/0x3f0
   ? wait_woken+0x80/0x80
   kthread+0xfd/0x130
   ? balance_pgdat+0x540/0x540
   ? kthread_park+0x80/0x80
   ret_from_fork+0x35/0x40
  ---[ end trace 727343df67b2398a ]---

which tells us that soft limit reclaim is about to overwrite the
reclaim_state configured up in the call chain (kswapd in this case but
the direct reclaim is equally possible).  This means that reclaim stats
would get misleading once the soft reclaim returns and another reclaim
is done.

Fix the warning by dropping set_task_reclaim_state from the soft reclaim
which is always called with reclaim_state set up.

[1] http://lkml.kernel.org/r/CAE1jjeePxYPvw1mw2B3v803xHVR_BNnz0hQUY_JDMN8ny29M6w@mail.gmail.com

Link: http://lkml.kernel.org/r/20190828071808.20410-1-mhocko@kernel.org
Signed-off-by: Michal Hocko <mhocko@suse.com>
Reported-by: Adric Blake <promarbler14@gmail.com>
Acked-by: Yafang Shao <laoar.shao@gmail.com>
Acked-by: Yang Shi <yang.shi@linux.alibaba.com>
Cc: Johannes Weiner <hannes@cmpxchg.org>
Cc: Hillf Danton <hdanton@sina.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2019-08-30 18:00:50 -07:00
Mel Gorman
28360f3987 mm, vmscan: do not special-case slab reclaim when watermarks are boosted
Dave Chinner reported a problem pointing a finger at commit 1c30844d2d
("mm: reclaim small amounts of memory when an external fragmentation
event occurs").

The report is extensive:

  https://lore.kernel.org/linux-mm/20190807091858.2857-1-david@fromorbit.com/

and it's worth recording the most relevant parts (colorful language and
typos included).

	When running a simple, steady state 4kB file creation test to
	simulate extracting tarballs larger than memory full of small
	files into the filesystem, I noticed that once memory fills up
	the cache balance goes to hell.

	The workload is creating one dirty cached inode for every dirty
	page, both of which should require a single IO each to clean and
	reclaim, and creation of inodes is throttled by the rate at which
	dirty writeback runs at (via balance dirty pages). Hence the ingest
	rate of new cached inodes and page cache pages is identical and
	steady. As a result, memory reclaim should quickly find a steady
	balance between page cache and inode caches.

	The moment memory fills, the page cache is reclaimed at a much
	faster rate than the inode cache, and evidence suggests that
	the inode cache shrinker is not being called when large batches
	of pages are being reclaimed. In roughly the same time period
	that it takes to fill memory with 50% pages and 50% slab caches,
	memory reclaim reduces the page cache down to just dirty pages
	and slab caches fill the entirety of memory.

	The LRU is largely full of dirty pages, and we're getting spikes
	of random writeback from memory reclaim so it's all going to shit.
	Behaviour never recovers, the page cache remains pinned at just
	dirty pages, and nothing I could tune would make any difference.
	vfs_cache_pressure makes no difference - I would set it so high
	it should trim the entire inode caches in a single pass, yet it
	didn't do anything. It was clear from tracing and live telemetry
	that the shrinkers were pretty much not running except when
	there was absolutely no memory free at all, and then they did
	the minimum necessary to free memory to make progress.

	So I went looking at the code, trying to find places where pages
	got reclaimed and the shrinkers weren't called. There's only one
	- kswapd doing boosted reclaim as per commit 1c30844d2d ("mm:
	reclaim small amounts of memory when an external fragmentation
	event occurs").

The watermark boosting introduced by the commit is triggered in response
to an allocation "fragmentation event".  The boosting was not intended
to target THP specifically and triggers even if THP is disabled.
However, with Dave's perfectly reasonable workload, fragmentation events
can be very common given the ratio of slab to page cache allocations so
boosting remains active for long periods of time.

As high-order allocations might use compaction and compaction cannot
move slab pages the decision was made in the commit to special-case
kswapd when watermarks are boosted -- kswapd avoids reclaiming slab as
reclaiming slab does not directly help compaction.

As Dave notes, this decision means that slab can be artificially
protected for long periods of time and messes up the balance with slab
and page caches.

Removing the special casing can still indirectly help avoid
fragmentation by avoiding fragmentation-causing events due to slab
allocation as pages from a slab pageblock will have some slab objects
freed.  Furthermore, with the special casing, reclaim behaviour is
unpredictable as kswapd sometimes examines slab and sometimes does not
in a manner that is tricky to tune or analyse.

This patch removes the special casing.  The downside is that this is not
a universal performance win.  Some benchmarks that depend on the
residency of data when rereading metadata may see a regression when slab
reclaim is restored to its original behaviour.  Similarly, some
benchmarks that only read-once or write-once may perform better when
page reclaim is too aggressive.  The primary upside is that slab
shrinker is less surprising (arguably more sane but that's a matter of
opinion), behaves consistently regardless of the fragmentation state of
the system and properly obeys VM sysctls.

A fsmark benchmark configuration was constructed similar to what Dave
reported and is codified by the mmtest configuration
config-io-fsmark-small-file-stream.  It was evaluated on a 1-socket
machine to avoid dealing with NUMA-related issues and the timing of
reclaim.  The storage was an SSD Samsung Evo and a fresh trimmed XFS
filesystem was used for the test data.

This is not an exact replication of Dave's setup.  The configuration
scales its parameters depending on the memory size of the SUT to behave
similarly across machines.  The parameters mean the first sample
reported by fs_mark is using 50% of RAM which will barely be throttled
and look like a big outlier.  Dave used fake NUMA to have multiple
kswapd instances which I didn't replicate.  Finally, the number of
iterations differ from Dave's test as the target disk was not large
enough.  While not identical, it should be representative.

  fsmark
                                     5.3.0-rc3              5.3.0-rc3
                                       vanilla          shrinker-v1r1
  Min       1-files/sec     4444.80 (   0.00%)     4765.60 (   7.22%)
  1st-qrtle 1-files/sec     5005.10 (   0.00%)     5091.70 (   1.73%)
  2nd-qrtle 1-files/sec     4917.80 (   0.00%)     4855.60 (  -1.26%)
  3rd-qrtle 1-files/sec     4667.40 (   0.00%)     4831.20 (   3.51%)
  Max-1     1-files/sec    11421.50 (   0.00%)     9999.30 ( -12.45%)
  Max-5     1-files/sec    11421.50 (   0.00%)     9999.30 ( -12.45%)
  Max-10    1-files/sec    11421.50 (   0.00%)     9999.30 ( -12.45%)
  Max-90    1-files/sec     4649.60 (   0.00%)     4780.70 (   2.82%)
  Max-95    1-files/sec     4491.00 (   0.00%)     4768.20 (   6.17%)
  Max-99    1-files/sec     4491.00 (   0.00%)     4768.20 (   6.17%)
  Max       1-files/sec    11421.50 (   0.00%)     9999.30 ( -12.45%)
  Hmean     1-files/sec     5004.75 (   0.00%)     5075.96 (   1.42%)
  Stddev    1-files/sec     1778.70 (   0.00%)     1369.66 (  23.00%)
  CoeffVar  1-files/sec       33.70 (   0.00%)       26.05 (  22.71%)
  BHmean-99 1-files/sec     5053.72 (   0.00%)     5101.52 (   0.95%)
  BHmean-95 1-files/sec     5053.72 (   0.00%)     5101.52 (   0.95%)
  BHmean-90 1-files/sec     5107.05 (   0.00%)     5131.41 (   0.48%)
  BHmean-75 1-files/sec     5208.45 (   0.00%)     5206.68 (  -0.03%)
  BHmean-50 1-files/sec     5405.53 (   0.00%)     5381.62 (  -0.44%)
  BHmean-25 1-files/sec     6179.75 (   0.00%)     6095.14 (  -1.37%)

                     5.3.0-rc3   5.3.0-rc3
                       vanillashrinker-v1r1
  Duration User         501.82      497.29
  Duration System      4401.44     4424.08
  Duration Elapsed     8124.76     8358.05

This is showing a slight skew for the max result representing a large
outlier for the 1st, 2nd and 3rd quartile are similar indicating that
the bulk of the results show little difference.  Note that an earlier
version of the fsmark configuration showed a regression but that
included more samples taken while memory was still filling.

Note that the elapsed time is higher.  Part of this is that the
configuration included time to delete all the test files when the test
completes -- the test automation handles the possibility of testing
fsmark with multiple thread counts.  Without the patch, many of these
objects would be memory resident which is part of what the patch is
addressing.

There are other important observations that justify the patch.

1. With the vanilla kernel, the number of dirty pages in the system is
   very low for much of the test. With this patch, dirty pages is
   generally kept at 10% which matches vm.dirty_background_ratio which
   is normal expected historical behaviour.

2. With the vanilla kernel, the ratio of Slab/Pagecache is close to
   0.95 for much of the test i.e. Slab is being left alone and
   dominating memory consumption. With the patch applied, the ratio
   varies between 0.35 and 0.45 with the bulk of the measured ratios
   roughly half way between those values. This is a different balance to
   what Dave reported but it was at least consistent.

3. Slabs are scanned throughout the entire test with the patch applied.
   The vanille kernel has periods with no scan activity and then
   relatively massive spikes.

4. Without the patch, kswapd scan rates are very variable. With the
   patch, the scan rates remain quite steady.

4. Overall vmstats are closer to normal expectations

	                                5.3.0-rc3      5.3.0-rc3
	                                  vanilla  shrinker-v1r1
    Ops Direct pages scanned             99388.00      328410.00
    Ops Kswapd pages scanned          45382917.00    33451026.00
    Ops Kswapd pages reclaimed        30869570.00    25239655.00
    Ops Direct pages reclaimed           74131.00        5830.00
    Ops Kswapd efficiency %                 68.02          75.45
    Ops Kswapd velocity                   5585.75        4002.25
    Ops Page reclaim immediate         1179721.00      430927.00
    Ops Slabs scanned                 62367361.00    73581394.00
    Ops Direct inode steals               2103.00        1002.00
    Ops Kswapd inode steals             570180.00     5183206.00

	o Vanilla kernel is hitting direct reclaim more frequently,
	  not very much in absolute terms but the fact the patch
	  reduces it is interesting
	o "Page reclaim immediate" in the vanilla kernel indicates
	  dirty pages are being encountered at the tail of the LRU.
	  This is generally bad and means in this case that the LRU
	  is not long enough for dirty pages to be cleaned by the
	  background flush in time. This is much reduced by the
	  patch.
	o With the patch, kswapd is reclaiming 10 times more slab
	  pages than with the vanilla kernel. This is indicative
	  of the watermark boosting over-protecting slab

A more complete set of tests were run that were part of the basis for
introducing boosting and while there are some differences, they are well
within tolerances.

Bottom line, the special casing kswapd to avoid slab behaviour is
unpredictable and can lead to abnormal results for normal workloads.

This patch restores the expected behaviour that slab and page cache is
balanced consistently for a workload with a steady allocation ratio of
slab/pagecache pages.  It also means that if there are workloads that
favour the preservation of slab over pagecache that it can be tuned via
vm.vfs_cache_pressure where as the vanilla kernel effectively ignores
the parameter when boosting is active.

Link: http://lkml.kernel.org/r/20190808182946.GM2739@techsingularity.net
Fixes: 1c30844d2d ("mm: reclaim small amounts of memory when an external fragmentation event occurs")
Signed-off-by: Mel Gorman <mgorman@techsingularity.net>
Reviewed-by: Dave Chinner <dchinner@redhat.com>
Acked-by: Vlastimil Babka <vbabka@suse.cz>
Cc: Michal Hocko <mhocko@kernel.org>
Cc: <stable@vger.kernel.org>	[5.0+]
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2019-08-13 16:06:53 -07:00
Yang Shi
fa1e512fac mm: vmscan: check if mem cgroup is disabled or not before calling memcg slab shrinker
Shakeel Butt reported premature oom on kernel with
"cgroup_disable=memory" since mem_cgroup_is_root() returns false even
though memcg is actually NULL.  The drop_caches is also broken.

It is because commit aeed1d325d ("mm/vmscan.c: generalize
shrink_slab() calls in shrink_node()") removed the !memcg check before
!mem_cgroup_is_root().  And, surprisingly root memcg is allocated even
though memory cgroup is disabled by kernel boot parameter.

Add mem_cgroup_disabled() check to make reclaimer work as expected.

Link: http://lkml.kernel.org/r/1563385526-20805-1-git-send-email-yang.shi@linux.alibaba.com
Fixes: aeed1d325d ("mm/vmscan.c: generalize shrink_slab() calls in shrink_node()")
Signed-off-by: Yang Shi <yang.shi@linux.alibaba.com>
Reported-by: Shakeel Butt <shakeelb@google.com>
Reviewed-by: Shakeel Butt <shakeelb@google.com>
Reviewed-by: Kirill Tkhai <ktkhai@virtuozzo.com>
Acked-by: Michal Hocko <mhocko@suse.com>
Cc: Jan Hadrava <had@kam.mff.cuni.cz>
Cc: Vladimir Davydov <vdavydov.dev@gmail.com>
Cc: Johannes Weiner <hannes@cmpxchg.org>
Cc: Roman Gushchin <guro@fb.com>
Cc: Hugh Dickins <hughd@google.com>
Cc: Qian Cai <cai@lca.pw>
Cc: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
Cc: <stable@vger.kernel.org>	[4.19+]
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2019-08-03 07:02:00 -07:00
Andrew Morton
1732d2b011 mm/vmscan.c: add checks for incorrect handling of current->reclaim_state
Six sites are presently altering current->reclaim_state.  There is a
risk that one function stomps on a caller's value.  Use a helper
function to catch such errors.

Cc: Yafang Shao <laoar.shao@gmail.com>
Cc: Kirill Tkhai <ktkhai@virtuozzo.com>
Cc: Michal Hocko <mhocko@suse.com>
Cc: Johannes Weiner <hannes@cmpxchg.org>
Cc: Vladimir Davydov <vdavydov.dev@gmail.com>
Cc: Mel Gorman <mgorman@techsingularity.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2019-07-16 19:23:21 -07:00
Yafang Shao
0308f7cf19 mm/vmscan.c: calculate reclaimed slab caches in all reclaim paths
There are six different reclaim paths by now:

 - kswapd reclaim path
 - node reclaim path
 - hibernate preallocate memory reclaim path
 - direct reclaim path
 - memcg reclaim path
 - memcg softlimit reclaim path

The slab caches reclaimed in these paths are only calculated in the
above three paths.

There're some drawbacks if we don't calculate the reclaimed slab caches.

 - The sc->nr_reclaimed isn't correct if there're some slab caches
   relcaimed in this path.

 - The slab caches may be reclaimed thoroughly if there're lots of
   reclaimable slab caches and few page caches.

   Let's take an easy example for this case. If one memcg is full of
   slab caches and the limit of it is 512M, in other words there're
   approximately 512M slab caches in this memcg. Then the limit of the
   memcg is reached and the memcg reclaim begins, and then in this memcg
   reclaim path it will continuesly reclaim the slab caches until the
   sc->priority drops to 0. After this reclaim stops, you will find
   there're few slab caches left, which is less than 20M in my test
   case. While after this patch applied the number is greater than 300M
   and the sc->priority only drops to 3.

Link: http://lkml.kernel.org/r/1561112086-6169-3-git-send-email-laoar.shao@gmail.com
Signed-off-by: Yafang Shao <laoar.shao@gmail.com>
Reviewed-by: Kirill Tkhai <ktkhai@virtuozzo.com>
Reviewed-by: Andrew Morton <akpm@linux-foundation.org>
Cc: Kirill Tkhai <ktkhai@virtuozzo.com>
Cc: Michal Hocko <mhocko@suse.com>
Cc: Johannes Weiner <hannes@cmpxchg.org>
Cc: Vladimir Davydov <vdavydov.dev@gmail.com>
Cc: Mel Gorman <mgorman@techsingularity.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2019-07-16 19:23:21 -07:00
Yafang Shao
e5ca8071fe mm/vmscan.c: add a new member reclaim_state in struct shrink_control
Patch series "mm/vmscan: calculate reclaimed slab in all reclaim paths".

This patchset is to fix the issues in doing shrink slab.

There're six different reclaim paths by now,
 - kswapd reclaim path
 - node reclaim path
 - hibernate preallocate memory reclaim path
 - direct reclaim path
 - memcg reclaim path
 - memcg softlimit reclaim path

The slab caches reclaimed in these paths are only calculated in the
above three paths.  The issues are detailed explained in patch #2.  We
should calculate the reclaimed slab caches in every reclaim path.  In
order to do it, the struct reclaim_state is placed into the struct
shrink_control.

In node reclaim path, there'is another issue about shrinking slab, which
is adressed in "mm/vmscan: shrink slab in node reclaim"
(https://lore.kernel.org/linux-mm/1559874946-22960-1-git-send-email-laoar.shao@gmail.com/).

This patch (of 2):

The struct reclaim_state is used to record how many slab caches are
reclaimed in one reclaim path.  The struct shrink_control is used to
control one reclaim path.  So we'd better put reclaim_state into
shrink_control.

[laoar.shao@gmail.com: remove reclaim_state assignment from __perform_reclaim()]
Link: http://lkml.kernel.org/r/1561381582-13697-1-git-send-email-laoar.shao@gmail.com
Link: http://lkml.kernel.org/r/1561112086-6169-2-git-send-email-laoar.shao@gmail.com
Signed-off-by: Yafang Shao <laoar.shao@gmail.com>
Reviewed-by: Andrew Morton <akpm@linux-foundation.org>
Reviewed-by: Kirill Tkhai <ktkhai@virtuozzo.com>
Cc: Michal Hocko <mhocko@suse.com>
Cc: Johannes Weiner <hannes@cmpxchg.org>
Cc: Vladimir Davydov <vdavydov.dev@gmail.com>
Cc: Mel Gorman <mgorman@techsingularity.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2019-07-16 19:23:21 -07:00
Yang Shi
98879b3b9e mm: vmscan: correct some vmscan counters for THP swapout
Commit bd4c82c22c ("mm, THP, swap: delay splitting THP after swapped
out"), THP can be swapped out in a whole.  But, nr_reclaimed and some
other vm counters still get inc'ed by one even though a whole THP (512
pages) gets swapped out.

This doesn't make too much sense to memory reclaim.

For example, direct reclaim may just need reclaim SWAP_CLUSTER_MAX
pages, reclaiming one THP could fulfill it.  But, if nr_reclaimed is not
increased correctly, direct reclaim may just waste time to reclaim more
pages, SWAP_CLUSTER_MAX * 512 pages in worst case.

And, it may cause pgsteal_{kswapd|direct} is greater than
pgscan_{kswapd|direct}, like the below:

pgsteal_kswapd 122933
pgsteal_direct 26600225
pgscan_kswapd 174153
pgscan_direct 14678312

nr_reclaimed and nr_scanned must be fixed in parallel otherwise it would
break some page reclaim logic, e.g.

vmpressure: this looks at the scanned/reclaimed ratio so it won't change
semantics as long as scanned & reclaimed are fixed in parallel.

compaction/reclaim: compaction wants a certain number of physical pages
freed up before going back to compacting.

kswapd priority raising: kswapd raises priority if we scan fewer pages
than the reclaim target (which itself is obviously expressed in order-0
pages).  As a result, kswapd can falsely raise its aggressiveness even
when it's making great progress.

Other than nr_scanned and nr_reclaimed, some other counters, e.g.
pgactivate, nr_skipped, nr_ref_keep and nr_unmap_fail need to be fixed too
since they are user visible via cgroup, /proc/vmstat or trace points,
otherwise they would be underreported.

When isolating pages from LRUs, nr_taken has been accounted in base page,
but nr_scanned and nr_skipped are still accounted in THP.  It doesn't make
too much sense too since this may cause trace point underreport the
numbers as well.

So accounting those counters in base page instead of accounting THP as one
page.

nr_dirty, nr_unqueued_dirty, nr_congested and nr_writeback are used by
file cache, so they are not impacted by THP swap.

This change may result in lower steal/scan ratio in some cases since THP
may get split during page reclaim, then a part of tail pages get reclaimed
instead of the whole 512 pages, but nr_scanned is accounted by 512,
particularly for direct reclaim.  But, this should be not a significant
issue.

Link: http://lkml.kernel.org/r/1559025859-72759-2-git-send-email-yang.shi@linux.alibaba.com
Signed-off-by: Yang Shi <yang.shi@linux.alibaba.com>
Reviewed-by: "Huang, Ying" <ying.huang@intel.com>
Cc: Johannes Weiner <hannes@cmpxchg.org>
Cc: Michal Hocko <mhocko@suse.com>
Cc: Mel Gorman <mgorman@techsingularity.net>
Cc: "Kirill A . Shutemov" <kirill.shutemov@linux.intel.com>
Cc: Hugh Dickins <hughd@google.com>
Cc: Shakeel Butt <shakeelb@google.com>
Cc: Hillf Danton <hdanton@sina.com>
Cc: Josef Bacik <josef@toxicpanda.com>
Cc: Michal Hocko <mhocko@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2019-07-12 11:05:46 -07:00
Yang Shi
af5d440365 mm: vmscan: remove double slab pressure by inc'ing sc->nr_scanned
Commit 9092c71bb7 ("mm: use sc->priority for slab shrink targets") has
broken up the relationship between sc->nr_scanned and slab pressure.
The sc->nr_scanned can't double slab pressure anymore.  So, it sounds no
sense to still keep sc->nr_scanned inc'ed.  Actually, it would prevent
from adding pressure on slab shrink since excessive sc->nr_scanned would
prevent from scan->priority raise.

The bonnie test doesn't show this would change the behavior of slab
shrinkers.

				w/		w/o
			  /sec    %CP      /sec      %CP
Sequential delete: 	3960.6    94.6    3997.6     96.2
Random delete: 		2518      63.8    2561.6     64.6

The slight increase of "/sec" without the patch would be caused by the
slight increase of CPU usage.

Link: http://lkml.kernel.org/r/1559025859-72759-1-git-send-email-yang.shi@linux.alibaba.com
Signed-off-by: Yang Shi <yang.shi@linux.alibaba.com>
Acked-by: Johannes Weiner <hannes@cmpxchg.org>
Cc: Josef Bacik <josef@toxicpanda.com>
Cc: Michal Hocko <mhocko@kernel.org>
Cc: Mel Gorman <mgorman@techsingularity.net>
Cc: "Kirill A . Shutemov" <kirill.shutemov@linux.intel.com>
Cc: Hugh Dickins <hughd@google.com>
Cc: Shakeel Butt <shakeelb@google.com>
Cc: Hillf Danton <hdanton@sina.com>
Cc: "Huang, Ying" <ying.huang@intel.com>
Cc: Michal Hocko <mhocko@suse.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2019-07-12 11:05:46 -07:00
Kuo-Hsin Yang
2c012a4ad1 mm: vmscan: scan anonymous pages on file refaults
When file refaults are detected and there are many inactive file pages,
the system never reclaim anonymous pages, the file pages are dropped
aggressively when there are still a lot of cold anonymous pages and
system thrashes.  This issue impacts the performance of applications
with large executable, e.g.  chrome.

With this patch, when file refault is detected, inactive_list_is_low()
always returns true for file pages in get_scan_count() to enable
scanning anonymous pages.

The problem can be reproduced by the following test program.

---8<---
void fallocate_file(const char *filename, off_t size)
{
	struct stat st;
	int fd;

	if (!stat(filename, &st) && st.st_size >= size)
		return;

	fd = open(filename, O_WRONLY | O_CREAT, 0600);
	if (fd < 0) {
		perror("create file");
		exit(1);
	}
	if (posix_fallocate(fd, 0, size)) {
		perror("fallocate");
		exit(1);
	}
	close(fd);
}

long *alloc_anon(long size)
{
	long *start = malloc(size);
	memset(start, 1, size);
	return start;
}

long access_file(const char *filename, long size, long rounds)
{
	int fd, i;
	volatile char *start1, *end1, *start2;
	const int page_size = getpagesize();
	long sum = 0;

	fd = open(filename, O_RDONLY);
	if (fd == -1) {
		perror("open");
		exit(1);
	}

	/*
	 * Some applications, e.g. chrome, use a lot of executable file
	 * pages, map some of the pages with PROT_EXEC flag to simulate
	 * the behavior.
	 */
	start1 = mmap(NULL, size / 2, PROT_READ | PROT_EXEC, MAP_SHARED,
		      fd, 0);
	if (start1 == MAP_FAILED) {
		perror("mmap");
		exit(1);
	}
	end1 = start1 + size / 2;

	start2 = mmap(NULL, size / 2, PROT_READ, MAP_SHARED, fd, size / 2);
	if (start2 == MAP_FAILED) {
		perror("mmap");
		exit(1);
	}

	for (i = 0; i < rounds; ++i) {
		struct timeval before, after;
		volatile char *ptr1 = start1, *ptr2 = start2;
		gettimeofday(&before, NULL);
		for (; ptr1 < end1; ptr1 += page_size, ptr2 += page_size)
			sum += *ptr1 + *ptr2;
		gettimeofday(&after, NULL);
		printf("File access time, round %d: %f (sec)
", i,
		       (after.tv_sec - before.tv_sec) +
		       (after.tv_usec - before.tv_usec) / 1000000.0);
	}
	return sum;
}

int main(int argc, char *argv[])
{
	const long MB = 1024 * 1024;
	long anon_mb, file_mb, file_rounds;
	const char filename[] = "large";
	long *ret1;
	long ret2;

	if (argc != 4) {
		printf("usage: thrash ANON_MB FILE_MB FILE_ROUNDS
");
		exit(0);
	}
	anon_mb = atoi(argv[1]);
	file_mb = atoi(argv[2]);
	file_rounds = atoi(argv[3]);

	fallocate_file(filename, file_mb * MB);
	printf("Allocate %ld MB anonymous pages
", anon_mb);
	ret1 = alloc_anon(anon_mb * MB);
	printf("Access %ld MB file pages
", file_mb);
	ret2 = access_file(filename, file_mb * MB, file_rounds);
	printf("Print result to prevent optimization: %ld
",
	       *ret1 + ret2);
	return 0;
}
---8<---

Running the test program on 2GB RAM VM with kernel 5.2.0-rc5, the program
fills ram with 2048 MB memory, access a 200 MB file for 10 times.  Without
this patch, the file cache is dropped aggresively and every access to the
file is from disk.

  $ ./thrash 2048 200 10
  Allocate 2048 MB anonymous pages
  Access 200 MB file pages
  File access time, round 0: 2.489316 (sec)
  File access time, round 1: 2.581277 (sec)
  File access time, round 2: 2.487624 (sec)
  File access time, round 3: 2.449100 (sec)
  File access time, round 4: 2.420423 (sec)
  File access time, round 5: 2.343411 (sec)
  File access time, round 6: 2.454833 (sec)
  File access time, round 7: 2.483398 (sec)
  File access time, round 8: 2.572701 (sec)
  File access time, round 9: 2.493014 (sec)

With this patch, these file pages can be cached.

  $ ./thrash 2048 200 10
  Allocate 2048 MB anonymous pages
  Access 200 MB file pages
  File access time, round 0: 2.475189 (sec)
  File access time, round 1: 2.440777 (sec)
  File access time, round 2: 2.411671 (sec)
  File access time, round 3: 1.955267 (sec)
  File access time, round 4: 0.029924 (sec)
  File access time, round 5: 0.000808 (sec)
  File access time, round 6: 0.000771 (sec)
  File access time, round 7: 0.000746 (sec)
  File access time, round 8: 0.000738 (sec)
  File access time, round 9: 0.000747 (sec)

Checked the swap out stats during the test [1], 19006 pages swapped out
with this patch, 3418 pages swapped out without this patch. There are
more swap out, but I think it's within reasonable range when file backed
data set doesn't fit into the memory.

$ ./thrash 2000 100 2100 5 1 # ANON_MB FILE_EXEC FILE_NOEXEC ROUNDS
PROCESSES Allocate 2000 MB anonymous pages active_anon: 1613644,
inactive_anon: 348656, active_file: 892, inactive_file: 1384 (kB)
pswpout: 7972443, pgpgin: 478615246 Access 100 MB executable file pages
Access 2100 MB regular file pages File access time, round 0: 12.165,
(sec) active_anon: 1433788, inactive_anon: 478116, active_file: 17896,
inactive_file: 24328 (kB) File access time, round 1: 11.493, (sec)
active_anon: 1430576, inactive_anon: 477144, active_file: 25440,
inactive_file: 26172 (kB) File access time, round 2: 11.455, (sec)
active_anon: 1427436, inactive_anon: 476060, active_file: 21112,
inactive_file: 28808 (kB) File access time, round 3: 11.454, (sec)
active_anon: 1420444, inactive_anon: 473632, active_file: 23216,
inactive_file: 35036 (kB) File access time, round 4: 11.479, (sec)
active_anon: 1413964, inactive_anon: 471460, active_file: 31728,
inactive_file: 32224 (kB) pswpout: 7991449 (+ 19006), pgpgin: 489924366
(+ 11309120)

With 4 processes accessing non-overlapping parts of a large file, 30316
pages swapped out with this patch, 5152 pages swapped out without this
patch.  The swapout number is small comparing to pgpgin.

[1]: https://github.com/vovo/testing/blob/master/mem_thrash.c

Link: http://lkml.kernel.org/r/20190701081038.GA83398@google.com
Fixes: e986850598 ("mm,vmscan: only evict file pages when we have plenty")
Fixes: 7c5bd705d8 ("mm: memcg: only evict file pages when we have plenty")
Signed-off-by: Kuo-Hsin Yang <vovoy@chromium.org>
Acked-by: Johannes Weiner <hannes@cmpxchg.org>
Cc: Michal Hocko <mhocko@suse.com>
Cc: Sonny Rao <sonnyrao@chromium.org>
Cc: Mel Gorman <mgorman@techsingularity.net>
Cc: Rik van Riel <riel@redhat.com>
Cc: Vladimir Davydov <vdavydov.dev@gmail.com>
Cc: Minchan Kim <minchan@kernel.org>
Cc: <stable@vger.kernel.org>	[4.12+]
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2019-07-12 11:05:39 -07:00
Shakeel Butt
dffcac2cb8 mm/vmscan.c: prevent useless kswapd loops
In production we have noticed hard lockups on large machines running
large jobs due to kswaps hoarding lru lock within isolate_lru_pages when
sc->reclaim_idx is 0 which is a small zone.  The lru was couple hundred
GiBs and the condition (page_zonenum(page) > sc->reclaim_idx) in
isolate_lru_pages() was basically skipping GiBs of pages while holding
the LRU spinlock with interrupt disabled.

On further inspection, it seems like there are two issues:

(1) If kswapd on the return from balance_pgdat() could not sleep (i.e.
    node is still unbalanced), the classzone_idx is unintentionally set
    to 0 and the whole reclaim cycle of kswapd will try to reclaim only
    the lowest and smallest zone while traversing the whole memory.

(2) Fundamentally isolate_lru_pages() is really bad when the
    allocation has woken kswapd for a smaller zone on a very large machine
    running very large jobs.  It can hoard the LRU spinlock while skipping
    over 100s of GiBs of pages.

This patch only fixes (1).  (2) needs a more fundamental solution.  To
fix (1), in the kswapd context, if pgdat->kswapd_classzone_idx is
invalid use the classzone_idx of the previous kswapd loop otherwise use
the one the waker has requested.

Link: http://lkml.kernel.org/r/20190701201847.251028-1-shakeelb@google.com
Fixes: e716f2eb24 ("mm, vmscan: prevent kswapd sleeping prematurely due to mismatched classzone_idx")
Signed-off-by: Shakeel Butt <shakeelb@google.com>
Reviewed-by: Yang Shi <yang.shi@linux.alibaba.com>
Acked-by: Mel Gorman <mgorman@techsingularity.net>
Cc: Johannes Weiner <hannes@cmpxchg.org>
Cc: Michal Hocko <mhocko@suse.com>
Cc: Vlastimil Babka <vbabka@suse.cz>
Cc: Hillf Danton <hdanton@sina.com>
Cc: Roman Gushchin <guro@fb.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2019-07-05 11:12:07 +09:00
Minchan Kim
a58f2cef26 mm/vmscan.c: fix trying to reclaim unevictable LRU page
There was the below bug report from Wu Fangsuo.

On the CMA allocation path, isolate_migratepages_range() could isolate
unevictable LRU pages and reclaim_clean_page_from_list() can try to
reclaim them if they are clean file-backed pages.

  page:ffffffbf02f33b40 count:86 mapcount:84 mapping:ffffffc08fa7a810 index:0x24
  flags: 0x19040c(referenced|uptodate|arch_1|mappedtodisk|unevictable|mlocked)
  raw: 000000000019040c ffffffc08fa7a810 0000000000000024 0000005600000053
  raw: ffffffc009b05b20 ffffffc009b05b20 0000000000000000 ffffffc09bf3ee80
  page dumped because: VM_BUG_ON_PAGE(PageLRU(page) || PageUnevictable(page))
  page->mem_cgroup:ffffffc09bf3ee80
  ------------[ cut here ]------------
  kernel BUG at /home/build/farmland/adroid9.0/kernel/linux/mm/vmscan.c:1350!
  Internal error: Oops - BUG: 0 [#1] PREEMPT SMP
  Modules linked in:
  CPU: 0 PID: 7125 Comm: syz-executor Tainted: G S              4.14.81 #3
  Hardware name: ASR AQUILAC EVB (DT)
  task: ffffffc00a54cd00 task.stack: ffffffc009b00000
  PC is at shrink_page_list+0x1998/0x3240
  LR is at shrink_page_list+0x1998/0x3240
  pc : [<ffffff90083a2158>] lr : [<ffffff90083a2158>] pstate: 60400045
  sp : ffffffc009b05940
  ..
     shrink_page_list+0x1998/0x3240
     reclaim_clean_pages_from_list+0x3c0/0x4f0
     alloc_contig_range+0x3bc/0x650
     cma_alloc+0x214/0x668
     ion_cma_allocate+0x98/0x1d8
     ion_alloc+0x200/0x7e0
     ion_ioctl+0x18c/0x378
     do_vfs_ioctl+0x17c/0x1780
     SyS_ioctl+0xac/0xc0

Wu found it's due to commit ad6b67041a ("mm: remove SWAP_MLOCK in
ttu").  Before that, unevictable pages go to cull_mlocked so that we
can't reach the VM_BUG_ON_PAGE line.

To fix the issue, this patch filters out unevictable LRU pages from the
reclaim_clean_pages_from_list in CMA.

Link: http://lkml.kernel.org/r/20190524071114.74202-1-minchan@kernel.org
Fixes: ad6b67041a ("mm: remove SWAP_MLOCK in ttu")
Signed-off-by: Minchan Kim <minchan@kernel.org>
Reported-by: Wu Fangsuo <fangsuowu@asrmicro.com>
Debugged-by: Wu Fangsuo <fangsuowu@asrmicro.com>
Tested-by: Wu Fangsuo <fangsuowu@asrmicro.com>
Reviewed-by: Andrew Morton <akpm@linux-foundation.org>
Acked-by: Michal Hocko <mhocko@suse.com>
Cc: Pankaj Suryawanshi <pankaj.suryawanshi@einfochips.com>
Cc: <stable@vger.kernel.org>	[4.12+]
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2019-06-13 17:34:56 -10:00
Kirill Tkhai
b17f18aff2 mm/vmscan.c: fix recent_rotated history
Johannes pointed out that after commit 886cf1901d ("mm: move
recent_rotated pages calculation to shrink_inactive_list()") we lost all
zone_reclaim_stat::recent_rotated history.

This fixes it.

Link: http://lkml.kernel.org/r/155905972210.26456.11178359431724024112.stgit@localhost.localdomain
Fixes: 886cf1901d ("mm: move recent_rotated pages calculation to shrink_inactive_list()")
Signed-off-by: Kirill Tkhai <ktkhai@virtuozzo.com>
Reported-by: Johannes Weiner <hannes@cmpxchg.org>
Acked-by: Michal Hocko <mhocko@suse.com>
Acked-by: Johannes Weiner <hannes@cmpxchg.org>
Cc: Daniel Jordan <daniel.m.jordan@oracle.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2019-06-13 17:34:56 -10:00