Commit Graph

1187 Commits

Author SHA1 Message Date
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
Raghavendra Rao Ananta
e5ac623a25 perf: Satisfy the kernel's request to request PMU counters
The SELinux policy on Android doesn't provide the kernel-space
with CAP_SYS_ADMIN capability. The perf-core checks for this
capability before giving access to the callers to read the PMU
counters. Hence, when the kernel drivers try to gain access
to the PMU (via perf_event_create_kernel_counter()), it fails
with -EACCES.

To get past this, add another condition to check if the request
is coming from kernel-space or user-space. If kernel-space,
don't check for the capability any further and move on.

Change-Id: Ie2ddc6b619fa0d60d4752994ea0c9cedf5b96b5c
Signed-off-by: Raghavendra Rao Ananta <rananta@codeaurora.org>
2020-03-19 06:43:39 -07:00
Greg Kroah-Hartman
87acfa0267 This is the 5.4.19 stable release
-----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAl5Cn6wACgkQONu9yGCS
 aT789BAAkpzYCCHEL2aqDpnZQdu1kVua2nywEJCY0WqSM1lWLeU1Lk9EvS6uu99B
 nHnIgoAGXR1zQy9rlhpKKt62LvCCM94QWlQRDYYeJxbFPn1ogT2/0vmwN7rqNz4M
 Jdszd6gfNKtB3zpZZLJ0KXG8q6YRp5kXOHEzOXNjcVsfKRuNTWWIBV0dMmkCzduQ
 Y5e62+d1FnnRFj28R7wjJfXiZSRnIGcMHohcQGXsWZsh2rktYOYsL6G37I9lCBwx
 RO7/+qVOT+BImqB5fIxB98JOzOlo6uEVqPgXjMHAAZUzzA4KpOkDBn55m5hA9axf
 EG67Ft4vZJc6Q3FTtHdSZZ/x6TBAJ2DUzatpKhCTDB3vlWJ6a+CsTFq3dXj4+bFr
 hFuyi0u91VeudmWR8IH5Er8QaNaOq8m72XAwK22fZptZz0ZHl+Bf1QZyEY0L0P2Q
 DpT/kmZVgSSDusvMtJOwI8Vr4Ibb8o46kFTQN+PCSs0pbPchEJmInHz0mIypK89N
 4YIjcDZZu3WUS13pEsgNAi2FEpwZdn32LYxZg8xTYBtovzuvT1pJUEppiVSMXgKS
 8vF6oCAd7pX9Fal5fYklA7gyQENnHBFI+LE+bHwMR/qwreH/3wBTLnhRPsGOxyZI
 oj57YDdxZCAwEfXGoWA3Le+60lj6bGuRfmCc4VkodaOxMLb1WrE=
 =rUtE
 -----END PGP SIGNATURE-----

Merge 5.4.19 into android-5.4

Changes in 5.4.19
	sparc32: fix struct ipc64_perm type definition
	bnxt_en: Move devlink_register before registering netdev
	cls_rsvp: fix rsvp_policy
	gtp: use __GFP_NOWARN to avoid memalloc warning
	l2tp: Allow duplicate session creation with UDP
	net: hsr: fix possible NULL deref in hsr_handle_frame()
	net_sched: fix an OOB access in cls_tcindex
	net: stmmac: Delete txtimer in suspend()
	bnxt_en: Fix TC queue mapping.
	rxrpc: Fix use-after-free in rxrpc_put_local()
	rxrpc: Fix insufficient receive notification generation
	rxrpc: Fix missing active use pinning of rxrpc_local object
	rxrpc: Fix NULL pointer deref due to call->conn being cleared on disconnect
	tcp: clear tp->total_retrans in tcp_disconnect()
	tcp: clear tp->delivered in tcp_disconnect()
	tcp: clear tp->data_segs{in|out} in tcp_disconnect()
	tcp: clear tp->segs_{in|out} in tcp_disconnect()
	ionic: fix rxq comp packet type mask
	MAINTAINERS: correct entries for ISDN/mISDN section
	netdevsim: fix stack-out-of-bounds in nsim_dev_debugfs_init()
	bnxt_en: Fix logic that disables Bus Master during firmware reset.
	media: uvcvideo: Avoid cyclic entity chains due to malformed USB descriptors
	mfd: dln2: More sanity checking for endpoints
	netfilter: ipset: fix suspicious RCU usage in find_set_and_id
	ipc/msg.c: consolidate all xxxctl_down() functions
	tracing/kprobes: Have uname use __get_str() in print_fmt
	tracing: Fix sched switch start/stop refcount racy updates
	rcu: Use *_ONCE() to protect lockless ->expmask accesses
	rcu: Avoid data-race in rcu_gp_fqs_check_wake()
	srcu: Apply *_ONCE() to ->srcu_last_gp_end
	rcu: Use READ_ONCE() for ->expmask in rcu_read_unlock_special()
	nvmet: Fix error print message at nvmet_install_queue function
	nvmet: Fix controller use after free
	Bluetooth: btusb: fix memory leak on fw
	Bluetooth: btusb: Disable runtime suspend on Realtek devices
	brcmfmac: Fix memory leak in brcmf_usbdev_qinit
	usb: dwc3: gadget: Check END_TRANSFER completion
	usb: dwc3: gadget: Delay starting transfer
	usb: typec: tcpci: mask event interrupts when remove driver
	objtool: Silence build output
	usb: gadget: f_fs: set req->num_sgs as 0 for non-sg transfer
	usb: gadget: legacy: set max_speed to super-speed
	usb: gadget: f_ncm: Use atomic_t to track in-flight request
	usb: gadget: f_ecm: Use atomic_t to track in-flight request
	ALSA: usb-audio: Fix endianess in descriptor validation
	ALSA: usb-audio: Annotate endianess in Scarlett gen2 quirk
	ALSA: dummy: Fix PCM format loop in proc output
	memcg: fix a crash in wb_workfn when a device disappears
	mm/sparse.c: reset section's mem_map when fully deactivated
	mmc: sdhci-pci: Make function amd_sdhci_reset static
	utimes: Clamp the timestamps in notify_change()
	mm/memory_hotplug: fix remove_memory() lockdep splat
	mm: thp: don't need care deferred split queue in memcg charge move path
	mm: move_pages: report the number of non-attempted pages
	media/v4l2-core: set pages dirty upon releasing DMA buffers
	media: v4l2-core: compat: ignore native command codes
	media: v4l2-rect.h: fix v4l2_rect_map_inside() top/left adjustments
	lib/test_kasan.c: fix memory leak in kmalloc_oob_krealloc_more()
	irqdomain: Fix a memory leak in irq_domain_push_irq()
	x86/cpu: Update cached HLE state on write to TSX_CTRL_CPUID_CLEAR
	platform/x86: intel_scu_ipc: Fix interrupt support
	ALSA: hda: Apply aligned MMIO access only conditionally
	ALSA: hda: Add Clevo W65_67SB the power_save blacklist
	ALSA: hda: Add JasperLake PCI ID and codec vid
	arm64: acpi: fix DAIF manipulation with pNMI
	KVM: arm64: Correct PSTATE on exception entry
	KVM: arm/arm64: Correct CPSR on exception entry
	KVM: arm/arm64: Correct AArch32 SPSR on exception entry
	KVM: arm64: Only sign-extend MMIO up to register width
	MIPS: syscalls: fix indentation of the 'SYSNR' message
	MIPS: fix indentation of the 'RELOCS' message
	MIPS: boot: fix typo in 'vmlinux.lzma.its' target
	s390/mm: fix dynamic pagetable upgrade for hugetlbfs
	powerpc/mmu_gather: enable RCU_TABLE_FREE even for !SMP case
	powerpc/ptdump: Fix W+X verification
	powerpc/xmon: don't access ASDR in VMs
	powerpc/pseries: Advance pfn if section is not present in lmb_is_removable()
	powerpc/32s: Fix bad_kuap_fault()
	powerpc/32s: Fix CPU wake-up from sleep mode
	tracing: Fix now invalid var_ref_vals assumption in trace action
	PCI: tegra: Fix return value check of pm_runtime_get_sync()
	PCI: keystone: Fix outbound region mapping
	PCI: keystone: Fix link training retries initiation
	PCI: keystone: Fix error handling when "num-viewport" DT property is not populated
	mmc: spi: Toggle SPI polarity, do not hardcode it
	ACPI: video: Do not export a non working backlight interface on MSI MS-7721 boards
	ACPI / battery: Deal with design or full capacity being reported as -1
	ACPI / battery: Use design-cap for capacity calculations if full-cap is not available
	ACPI / battery: Deal better with neither design nor full capacity not being reported
	alarmtimer: Unregister wakeup source when module get fails
	fscrypt: don't print name of busy file when removing key
	ubifs: don't trigger assertion on invalid no-key filename
	ubifs: Fix wrong memory allocation
	ubifs: Fix FS_IOC_SETFLAGS unexpectedly clearing encrypt flag
	ubifs: Fix deadlock in concurrent bulk-read and writepage
	mmc: sdhci-of-at91: fix memleak on clk_get failure
	ASoC: SOF: core: free trace on errors
	hv_balloon: Balloon up according to request page number
	mfd: axp20x: Mark AXP20X_VBUS_IPSOUT_MGMT as volatile
	nvmem: core: fix memory abort in cleanup path
	crypto: api - Check spawn->alg under lock in crypto_drop_spawn
	crypto: ccree - fix backlog memory leak
	crypto: ccree - fix AEAD decrypt auth fail
	crypto: ccree - fix pm wrongful error reporting
	crypto: ccree - fix FDE descriptor sequence
	crypto: ccree - fix PM race condition
	padata: Remove broken queue flushing
	fs: allow deduplication of eof block into the end of the destination file
	scripts/find-unused-docs: Fix massive false positives
	erofs: fix out-of-bound read for shifted uncompressed block
	scsi: megaraid_sas: Do not initiate OCR if controller is not in ready state
	scsi: qla2xxx: Fix mtcp dump collection failure
	cpupower: Revert library ABI changes from commit ae2917093f
	power: supply: axp20x_ac_power: Fix reporting online status
	power: supply: ltc2941-battery-gauge: fix use-after-free
	ovl: fix wrong WARN_ON() in ovl_cache_update_ino()
	ovl: fix lseek overflow on 32bit
	f2fs: choose hardlimit when softlimit is larger than hardlimit in f2fs_statfs_project()
	f2fs: fix miscounted block limit in f2fs_statfs_project()
	f2fs: code cleanup for f2fs_statfs_project()
	f2fs: fix dcache lookup of !casefolded directories
	f2fs: fix race conditions in ->d_compare() and ->d_hash()
	PM: core: Fix handling of devices deleted during system-wide resume
	cpufreq: Avoid creating excessively large stack frames
	of: Add OF_DMA_DEFAULT_COHERENT & select it on powerpc
	ARM: dma-api: fix max_pfn off-by-one error in __dma_supported()
	dm zoned: support zone sizes smaller than 128MiB
	dm space map common: fix to ensure new block isn't already in use
	dm writecache: fix incorrect flush sequence when doing SSD mode commit
	dm crypt: fix GFP flags passed to skcipher_request_alloc()
	dm crypt: fix benbi IV constructor crash if used in authenticated mode
	dm thin metadata: use pool locking at end of dm_pool_metadata_close
	dm: fix potential for q->make_request_fn NULL pointer
	scsi: qla2xxx: Fix stuck login session using prli_pend_timer
	ASoC: SOF: Introduce state machine for FW boot
	ASoC: SOF: core: release resources on errors in probe_continue
	tracing: Annotate ftrace_graph_hash pointer with __rcu
	tracing: Annotate ftrace_graph_notrace_hash pointer with __rcu
	ftrace: Add comment to why rcu_dereference_sched() is open coded
	ftrace: Protect ftrace_graph_hash with ftrace_sync
	crypto: pcrypt - Avoid deadlock by using per-instance padata queues
	btrfs: fix improper setting of scanned for range cyclic write cache pages
	btrfs: Handle another split brain scenario with metadata uuid feature
	riscv, bpf: Fix broken BPF tail calls
	selftests/bpf: Fix perf_buffer test on systems w/ offline CPUs
	bpf, devmap: Pass lockdep expression to RCU lists
	libbpf: Fix realloc usage in bpf_core_find_cands
	tc-testing: fix eBPF tests failure on linux fresh clones
	samples/bpf: Don't try to remove user's homedir on clean
	samples/bpf: Xdp_redirect_cpu fix missing tracepoint attach
	selftests/bpf: Fix test_attach_probe
	selftests/bpf: Skip perf hw events test if the setup disabled it
	selftests: bpf: Use a temporary file in test_sockmap
	selftests: bpf: Ignore FIN packets for reuseport tests
	crypto: api - fix unexpectedly getting generic implementation
	crypto: hisilicon - Use the offset fields in sqe to avoid need to split scatterlists
	crypto: ccp - set max RSA modulus size for v3 platform devices as well
	crypto: arm64/ghash-neon - bump priority to 150
	crypto: pcrypt - Do not clear MAY_SLEEP flag in original request
	crypto: atmel-aes - Fix counter overflow in CTR mode
	crypto: api - Fix race condition in crypto_spawn_alg
	crypto: picoxcell - adjust the position of tasklet_init and fix missed tasklet_kill
	powerpc/futex: Fix incorrect user access blocking
	scsi: qla2xxx: Fix unbound NVME response length
	NFS: Fix memory leaks and corruption in readdir
	NFS: Directory page cache pages need to be locked when read
	nfsd: fix filecache lookup
	jbd2_seq_info_next should increase position index
	ext4: fix deadlock allocating crypto bounce page from mempool
	ext4: fix race conditions in ->d_compare() and ->d_hash()
	Btrfs: fix missing hole after hole punching and fsync when using NO_HOLES
	Btrfs: make deduplication with range including the last block work
	Btrfs: fix infinite loop during fsync after rename operations
	btrfs: set trans->drity in btrfs_commit_transaction
	btrfs: drop log root for dropped roots
	Btrfs: fix race between adding and putting tree mod seq elements and nodes
	btrfs: flush write bio if we loop in extent_write_cache_pages
	btrfs: Correctly handle empty trees in find_first_clear_extent_bit
	ARM: tegra: Enable PLLP bypass during Tegra124 LP1
	iwlwifi: don't throw error when trying to remove IGTK
	mwifiex: fix unbalanced locking in mwifiex_process_country_ie()
	sunrpc: expiry_time should be seconds not timeval
	gfs2: fix gfs2_find_jhead that returns uninitialized jhead with seq 0
	gfs2: move setting current->backing_dev_info
	gfs2: fix O_SYNC write handling
	drm: atmel-hlcdc: use double rate for pixel clock only if supported
	drm: atmel-hlcdc: enable clock before configuring timing engine
	drm: atmel-hlcdc: prefer a lower pixel-clock than requested
	drm/rect: Avoid division by zero
	media: iguanair: fix endpoint sanity check
	media: rc: ensure lirc is initialized before registering input device
	tools/kvm_stat: Fix kvm_exit filter name
	xen/balloon: Support xend-based toolstack take two
	watchdog: fix UAF in reboot notifier handling in watchdog core code
	bcache: add readahead cache policy options via sysfs interface
	eventfd: track eventfd_signal() recursion depth
	aio: prevent potential eventfd recursion on poll
	KVM: x86: Refactor picdev_write() to prevent Spectre-v1/L1TF attacks
	KVM: x86: Refactor prefix decoding to prevent Spectre-v1/L1TF attacks
	KVM: x86: Protect pmu_intel.c from Spectre-v1/L1TF attacks
	KVM: x86: Protect DR-based index computations from Spectre-v1/L1TF attacks
	KVM: x86: Protect kvm_lapic_reg_write() from Spectre-v1/L1TF attacks
	KVM: x86: Protect kvm_hv_msr_[get|set]_crash_data() from Spectre-v1/L1TF attacks
	KVM: x86: Protect ioapic_write_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_read_indirect() from Spectre-v1/L1TF attacks
	KVM: x86: Protect MSR-based index computations from Spectre-v1/L1TF attacks in x86.c
	KVM: x86: Protect x86_decode_insn from Spectre-v1/L1TF attacks
	KVM: x86: Protect MSR-based index computations in fixed_msr_to_seg_unit() from Spectre-v1/L1TF attacks
	KVM: x86: Fix potential put_fpu() w/o load_fpu() on MPX platform
	KVM: PPC: Book3S HV: Uninit vCPU if vcore creation fails
	KVM: PPC: Book3S PR: Free shared page if mmu initialization fails
	kvm/svm: PKU not currently supported
	x86/kvm: Be careful not to clear KVM_VCPU_FLUSH_TLB bit
	x86/kvm: Introduce kvm_(un)map_gfn()
	x86/KVM: Make sure KVM_VCPU_FLUSH_TLB flag is not missed
	x86/kvm: Cache gfn to pfn translation
	x86/KVM: Clean up host's steal time structure
	KVM: VMX: Add non-canonical check on writes to RTIT address MSRs
	KVM: x86: Don't let userspace set host-reserved cr4 bits
	KVM: x86: Free wbinvd_dirty_mask if vCPU creation fails
	KVM: x86: Handle TIF_NEED_FPU_LOAD in kvm_{load,put}_guest_fpu()
	KVM: x86: Ensure guest's FPU state is loaded when accessing for emulation
	KVM: x86: Revert "KVM: X86: Fix fpu state crash in kvm guest"
	KVM: s390: do not clobber registers during guest reset/store status
	ocfs2: fix oops when writing cloned file
	mm/page_alloc.c: fix uninitialized memmaps on a partially populated last section
	arm64: dts: qcom: qcs404-evb: Set vdd_apc regulator in high power mode
	mm/mmu_gather: invalidate TLB correctly on batch allocation failure and flush
	clk: tegra: Mark fuse clock as critical
	drm/amd/dm/mst: Ignore payload update failures
	virtio-balloon: initialize all vq callbacks
	virtio-pci: check name when counting MSI-X vectors
	fix up iter on short count in fuse_direct_io()
	broken ping to ipv6 linklocal addresses on debian buster
	percpu: Separate decrypted varaibles anytime encryption can be enabled
	ASoC: meson: axg-fifo: fix fifo threshold setup
	scsi: qla2xxx: Fix the endianness of the qla82xx_get_fw_size() return type
	scsi: csiostor: Adjust indentation in csio_device_reset
	scsi: qla4xxx: Adjust indentation in qla4xxx_mem_free
	scsi: ufs: Recheck bkops level if bkops is disabled
	mtd: spi-nor: Split mt25qu512a (n25q512a) entry into two
	phy: qualcomm: Adjust indentation in read_poll_timeout
	ext2: Adjust indentation in ext2_fill_super
	powerpc/44x: Adjust indentation in ibm4xx_denali_fixup_memsize
	drm: msm: mdp4: Adjust indentation in mdp4_dsi_encoder_enable
	NFC: pn544: Adjust indentation in pn544_hci_check_presence
	ppp: Adjust indentation into ppp_async_input
	net: smc911x: Adjust indentation in smc911x_phy_configure
	net: tulip: Adjust indentation in {dmfe, uli526x}_init_module
	IB/mlx5: Fix outstanding_pi index for GSI qps
	IB/core: Fix ODP get user pages flow
	nfsd: fix delay timer on 32-bit architectures
	nfsd: fix jiffies/time_t mixup in LRU list
	nfsd: Return the correct number of bytes written to the file
	virtio-balloon: Fix memory leak when unloading while hinting is in progress
	virtio_balloon: Fix memory leaks on errors in virtballoon_probe()
	ubi: fastmap: Fix inverted logic in seen selfcheck
	ubi: Fix an error pointer dereference in error handling code
	ubifs: Fix memory leak from c->sup_node
	regulator: core: Add regulator_is_equal() helper
	ASoC: sgtl5000: Fix VDDA and VDDIO comparison
	bonding/alb: properly access headers in bond_alb_xmit()
	devlink: report 0 after hitting end in region read
	dpaa_eth: support all modes with rate adapting PHYs
	net: dsa: b53: Always use dev->vlan_enabled in b53_configure_vlan()
	net: dsa: bcm_sf2: Only 7278 supports 2Gb/sec IMP port
	net: dsa: microchip: enable module autoprobe
	net: mvneta: move rx_dropped and rx_errors in per-cpu stats
	net_sched: fix a resource leak in tcindex_set_parms()
	net: stmmac: fix a possible endless loop
	net: systemport: Avoid RBUF stuck in Wake-on-LAN mode
	net/mlx5: IPsec, Fix esp modify function attribute
	net/mlx5: IPsec, fix memory leak at mlx5_fpga_ipsec_delete_sa_ctx
	net: macb: Remove unnecessary alignment check for TSO
	net: macb: Limit maximum GEM TX length in TSO
	taprio: Fix enabling offload with wrong number of traffic classes
	taprio: Fix still allowing changing the flags during runtime
	taprio: Add missing policy validation for flags
	taprio: Use taprio_reset_tc() to reset Traffic Classes configuration
	taprio: Fix dropping packets when using taprio + ETF offloading
	ipv6/addrconf: fix potential NULL deref in inet6_set_link_af()
	qed: Fix timestamping issue for L2 unicast ptp packets.
	drop_monitor: Do not cancel uninitialized work item
	net/mlx5: Fix deadlock in fs_core
	net/mlx5: Deprecate usage of generic TLS HW capability bit
	ASoC: Intel: skl_hda_dsp_common: Fix global-out-of-bounds bug
	mfd: da9062: Fix watchdog compatible string
	mfd: rn5t618: Mark ADC control register volatile
	mfd: bd70528: Fix hour register mask
	x86/timer: Don't skip PIT setup when APIC is disabled or in legacy mode
	btrfs: use bool argument in free_root_pointers()
	btrfs: free block groups after free'ing fs trees
	drm/dp_mst: Remove VCPI while disabling topology mgr
	KVM: x86/mmu: Apply max PA check for MMIO sptes to 32-bit KVM
	KVM: x86: use CPUID to locate host page table reserved bits
	KVM: x86: Use gpa_t for cr2/gpa to fix TDP support on 32-bit KVM
	KVM: x86: fix overlap between SPTE_MMIO_MASK and generation
	KVM: nVMX: vmread should not set rflags to specify success in case of #PF
	KVM: Use vcpu-specific gva->hva translation when querying host page size
	KVM: Play nice with read-only memslots when querying host page size
	cifs: fail i/o on soft mounts if sessionsetup errors out
	x86/apic/msi: Plug non-maskable MSI affinity race
	clocksource: Prevent double add_timer_on() for watchdog_timer
	perf/core: Fix mlock accounting in perf_mmap()
	rxrpc: Fix service call disconnection
	regulator fix for "regulator: core: Add regulator_is_equal() helper"
	powerpc/kuap: Fix set direction in allow/prevent_user_access()
	Linux 5.4.19

Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: Ief6bae336b8e6931810e5b357c0d5e16fbf1c13e
2020-02-11 14:09:41 -08:00
Song Liu
7438239690 perf/core: Fix mlock accounting in perf_mmap()
commit 003461559e upstream.

Decreasing sysctl_perf_event_mlock between two consecutive perf_mmap()s of
a perf ring buffer may lead to an integer underflow in locked memory
accounting. This may lead to the undesired behaviors, such as failures in
BPF map creation.

Address this by adjusting the accounting logic to take into account the
possibility that the amount of already locked memory may exceed the
current limit.

Fixes: c4b7547974 ("perf/core: Make the mlock accounting simple again")
Suggested-by: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Signed-off-by: Song Liu <songliubraving@fb.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Cc: <stable@vger.kernel.org>
Acked-by: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Link: https://lkml.kernel.org/r/20200123181146.2238074-1-songliubraving@fb.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2020-02-11 04:35:54 -08:00
Jeff Vander Stoep
020b443d55 Revert "ANDROID: security,perf: Allow further restriction of perf_event_open"
Unfork Android.

This reverts commit 5dbd8df7b3.

Perf_event_paranoid=3 is no longer needed on Android. Access control
of perf events is now done by selinux. See:
https://patchwork.kernel.org/patch/11185793/

IGNORE_MERGE_CONFLICT_CHECK==kernel.rst documentation uses "====".

Bug: 120445712
Bug: 137092007
Signed-off-by: Jeff Vander Stoep <jeffv@google.com>
Change-Id: Iba493424174b30baff460caaa25a54a472c87bd4
2020-01-23 22:02:32 +00:00
Greg Kroah-Hartman
ea962facf5 This is the 5.4.14 stable release
-----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAl4pSdUACgkQONu9yGCS
 aT7wnRAAqw7JuC+cQMI29GiTfX/+V6BHFUGp0b7EoFWg1VVqiFqEHOf4QETS2Qy1
 3ZAMIBCICMgJD03WUK95tju4byNhpAVc5HDy3ir4E0ZGE6VprgbkzmVWsJhdVd0E
 y0whXgRj2mM0eXwCLcLz2qcruE/AxmL84rlnwZ5BwgxbOPq/xRzQQV8R3XUu2bos
 1felFUzOLhfJKtZ5ig9ToJGCorc7jOU+cXrvUSvntOFGFqsEdmIfcQMoqE2cXExC
 WQIk/JDNGnyHlX7I55P0/OBuSv4SV5JzGZjGkkS/Orqg5/KtaOMh0dAcvp25L3jY
 b2bNDDnKvDEd2eb3GQNb4X7pqy8SFD5WLQH2otJjpZl6nHqOG2xCZCnrVtvf7toC
 kJ0ocNIeGU6OsFzAwXATh3hk6ZFlJYkQarHjvgpETkx+WBcw9yw7DFW9Pa9khkMV
 OWKqfGrqVyV1bTXTfZPHOHm+eBVmqTLPeoK4XeholrnBrPa50pBjexv+uN+UsQnT
 QQxTkDpdfFv4KIkH/qgwDh/gIJ/xtjsI9JTK+70aFbSq1HrXNeoZTYof8iLOggY8
 wh/aWQGf0PVC3ffgqxd7TF6CxiVn4vaP3/FfcBQVMuTnYK03BScdAEOqBCRLvLK6
 509VzsCc1N7qa3vwRTTWxr0u1aCDDgDx5iqmTXW46sYxzjfwnY4=
 =qNcT
 -----END PGP SIGNATURE-----

Merge 5.4.14 into android-5.4

Changes in 5.4.14
	ARM: dts: meson8: fix the size of the PMU registers
	clk: qcom: gcc-sdm845: Add missing flag to votable GDSCs
	soc: amlogic: meson-ee-pwrc: propagate PD provider registration errors
	soc: amlogic: meson-ee-pwrc: propagate errors from pm_genpd_init()
	dt-bindings: reset: meson8b: fix duplicate reset IDs
	ARM: dts: imx6q-dhcom: fix rtc compatible
	arm64: dts: ls1028a: fix endian setting for dcfg
	arm64: dts: imx8mm: Change SDMA1 ahb clock for imx8mm
	bus: ti-sysc: Fix iterating over clocks
	clk: Don't try to enable critical clocks if prepare failed
	Revert "gpio: thunderx: Switch to GPIOLIB_IRQCHIP"
	arm64: dts: imx8mq-librem5-devkit: use correct interrupt for the magnetometer
	ASoC: msm8916-wcd-digital: Reset RX interpolation path after use
	ASoC: stm32: sai: fix possible circular locking
	ASoC: stm32: dfsdm: fix 16 bits record
	ASoC: msm8916-wcd-analog: Fix selected events for MIC BIAS External1
	ASoC: msm8916-wcd-analog: Fix MIC BIAS Internal1
	ARM: OMAP2+: Fix ti_sysc_find_one_clockdomain to check for to_clk_hw_omap
	ARM: dts: imx7ulp: fix reg of cpu node
	ARM: dts: imx6q-dhcom: Fix SGTL5000 VDDIO regulator connection
	ASoC: Intel: bytcht_es8316: Fix Irbis NB41 netbook quirk
	ALSA: dice: fix fallback from protocol extension into limited functionality
	ALSA: seq: Fix racy access for queue timer in proc read
	ALSA: firewire-tascam: fix corruption due to spin lock without restoration in SoftIRQ context
	ALSA: usb-audio: fix sync-ep altsetting sanity check
	arm64: dts: allwinner: a64: olinuxino: Fix SDIO supply regulator
	arm64: dts: allwinner: a64: olinuxino: Fix eMMC supply regulator
	arm64: dts: agilex/stratix10: fix pmu interrupt numbers
	Fix built-in early-load Intel microcode alignment
	clk: sunxi-ng: r40: Allow setting parent rate for external clock outputs
	block: fix an integer overflow in logical block size
	fuse: fix fuse_send_readpages() in the syncronous read case
	io_uring: only allow submit from owning task
	cpuidle: teo: Fix intervals[] array indexing bug
	ARM: dts: am571x-idk: Fix gpios property to have the correct gpio number
	ARM: davinci: select CONFIG_RESET_CONTROLLER
	perf: Correctly handle failed perf_get_aux_event()
	iio: adc: ad7124: Fix DT channel configuration
	iio: imu: st_lsm6dsx: Fix selection of ST_LSM6DS3_ID
	iio: light: vcnl4000: Fix scale for vcnl4040
	iio: chemical: pms7003: fix unmet triggered buffer dependency
	iio: buffer: align the size of scan bytes to size of the largest element
	USB: serial: simple: Add Motorola Solutions TETRA MTP3xxx and MTP85xx
	USB: serial: option: Add support for Quectel RM500Q
	USB: serial: opticon: fix control-message timeouts
	USB: serial: option: add support for Quectel RM500Q in QDL mode
	USB: serial: suppress driver bind attributes
	USB: serial: ch341: handle unbound port at reset_resume
	USB: serial: io_edgeport: handle unbound ports on URB completion
	USB: serial: io_edgeport: add missing active-port sanity check
	USB: serial: keyspan: handle unbound ports
	USB: serial: quatech2: handle unbound ports
	staging: comedi: ni_routes: fix null dereference in ni_find_route_source()
	staging: comedi: ni_routes: allow partial routing information
	scsi: fnic: fix invalid stack access
	scsi: mptfusion: Fix double fetch bug in ioctl
	ptrace: reintroduce usage of subjective credentials in ptrace_has_cap()
	mtd: rawnand: gpmi: Fix suspend/resume problem
	mtd: rawnand: gpmi: Restore nfc timing setup after suspend/resume
	usb: core: hub: Improved device recognition on remote wakeup
	cpu/SMT: Fix x86 link error without CONFIG_SYSFS
	x86/resctrl: Fix an imbalance in domain_remove_cpu()
	x86/CPU/AMD: Ensure clearing of SME/SEV features is maintained
	locking/rwsem: Fix kernel crash when spinning on RWSEM_OWNER_UNKNOWN
	perf/x86/intel/uncore: Fix missing marker for snr_uncore_imc_freerunning_events
	x86/efistub: Disable paging at mixed mode entry
	s390/zcrypt: Fix CCA cipher key gen with clear key value function
	scsi: storvsc: Correctly set number of hardware queues for IDE disk
	mtd: spi-nor: Fix selection of 4-byte addressing opcodes on Spansion
	drm/i915: Add missing include file <linux/math64.h>
	x86/resctrl: Fix potential memory leak
	efi/earlycon: Fix write-combine mapping on x86
	s390/setup: Fix secure ipl message
	clk: samsung: exynos5420: Keep top G3D clocks enabled
	perf hists: Fix variable name's inconsistency in hists__for_each() macro
	locking/lockdep: Fix buffer overrun problem in stack_trace[]
	perf report: Fix incorrectly added dimensions as switch perf data file
	mm/shmem.c: thp, shmem: fix conflict of above-47bit hint address and PMD alignment
	mm/huge_memory.c: thp: fix conflict of above-47bit hint address and PMD alignment
	mm: memcg/slab: fix percpu slab vmstats flushing
	mm: memcg/slab: call flush_memcg_workqueue() only if memcg workqueue is valid
	mm, debug_pagealloc: don't rely on static keys too early
	btrfs: rework arguments of btrfs_unlink_subvol
	btrfs: fix invalid removal of root ref
	btrfs: do not delete mismatched root refs
	btrfs: relocation: fix reloc_root lifespan and access
	btrfs: fix memory leak in qgroup accounting
	btrfs: check rw_devices, not num_devices for balance
	Btrfs: always copy scrub arguments back to user space
	mm/memory_hotplug: don't free usage map when removing a re-added early section
	mm/page-writeback.c: avoid potential division by zero in wb_min_max_ratio()
	mm: khugepaged: add trace status description for SCAN_PAGE_HAS_PRIVATE
	ARM: dts: imx6qdl-sabresd: Remove incorrect power supply assignment
	ARM: dts: imx6sx-sdb: Remove incorrect power supply assignment
	ARM: dts: imx6sl-evk: Remove incorrect power supply assignment
	ARM: dts: imx6sll-evk: Remove incorrect power supply assignment
	ARM: dts: imx6q-icore-mipi: Use 1.5 version of i.Core MX6DL
	ARM: dts: imx7: Fix Toradex Colibri iMX7S 256MB NAND flash support
	net: stmmac: 16KB buffer must be 16 byte aligned
	net: stmmac: Enable 16KB buffer size
	reset: Fix {of,devm}_reset_control_array_get kerneldoc return types
	tipc: fix potential hanging after b/rcast changing
	tipc: fix retrans failure due to wrong destination
	net: fix kernel-doc warning in <linux/netdevice.h>
	block: Fix the type of 'sts' in bsg_queue_rq()
	drm/amd/display: Reorder detect_edp_sink_caps before link settings read.
	bpf: Fix incorrect verifier simulation of ARSH under ALU32
	bpf: Sockmap/tls, during free we may call tcp_bpf_unhash() in loop
	bpf: Sockmap, ensure sock lock held during tear down
	bpf: Sockmap/tls, push write_space updates through ulp updates
	bpf: Sockmap, skmsg helper overestimates push, pull, and pop bounds
	bpf: Sockmap/tls, msg_push_data may leave end mark in place
	bpf: Sockmap/tls, tls_sw can create a plaintext buf > encrypt buf
	bpf: Sockmap/tls, skmsg can have wrapped skmsg that needs extra chaining
	bpf: Sockmap/tls, fix pop data with SK_DROP return code
	i2c: tegra: Fix suspending in active runtime PM state
	i2c: tegra: Properly disable runtime PM on driver's probe error
	cfg80211: fix deadlocks in autodisconnect work
	cfg80211: fix memory leak in nl80211_probe_mesh_link
	cfg80211: fix memory leak in cfg80211_cqm_rssi_update
	cfg80211: fix page refcount issue in A-MSDU decap
	bpf/sockmap: Read psock ingress_msg before sk_receive_queue
	i2c: iop3xx: Fix memory leak in probe error path
	netfilter: fix a use-after-free in mtype_destroy()
	netfilter: arp_tables: init netns pointer in xt_tgdtor_param struct
	netfilter: nat: fix ICMP header corruption on ICMP errors
	netfilter: nft_tunnel: fix null-attribute check
	netfilter: nft_tunnel: ERSPAN_VERSION must not be null
	netfilter: nf_tables: remove WARN and add NLA_STRING upper limits
	netfilter: nf_tables: store transaction list locally while requesting module
	netfilter: nf_tables: fix flowtable list del corruption
	NFC: pn533: fix bulk-message timeout
	net: bpf: Don't leak time wait and request sockets
	bpftool: Fix printing incorrect pointer in btf_dump_ptr
	batman-adv: Fix DAT candidate selection on little endian systems
	macvlan: use skb_reset_mac_header() in macvlan_queue_xmit()
	hv_netvsc: Fix memory leak when removing rndis device
	net: avoid updating qdisc_xmit_lock_key in netdev_update_lockdep_key()
	net: dsa: tag_qca: fix doubled Tx statistics
	net: hns3: pad the short frame before sending to the hardware
	net: hns: fix soft lockup when there is not enough memory
	net: phy: dp83867: Set FORCE_LINK_GOOD to default after reset
	net/sched: act_ife: initalize ife->metalist earlier
	net: usb: lan78xx: limit size of local TSO packets
	net/wan/fsl_ucc_hdlc: fix out of bounds write on array utdm_info
	ptp: free ptp device pin descriptors properly
	r8152: add missing endpoint sanity check
	tcp: fix marked lost packets not being retransmitted
	bnxt_en: Fix NTUPLE firmware command failures.
	bnxt_en: Fix ipv6 RFS filter matching logic.
	bnxt_en: Do not treat DSN (Digital Serial Number) read failure as fatal.
	net: ethernet: ave: Avoid lockdep warning
	net: systemport: Fixed queue mapping in internal ring map
	net: dsa: sja1105: Don't error out on disabled ports with no phy-mode
	net: dsa: tag_gswip: fix typo in tagger name
	net: sched: act_ctinfo: fix memory leak
	net: dsa: bcm_sf2: Configure IMP port for 2Gb/sec
	i40e: prevent memory leak in i40e_setup_macvlans
	drm/amdgpu: allow direct upload save restore list for raven2
	sh_eth: check sh_eth_cpu_data::dual_port when dumping registers
	mlxsw: spectrum: Do not modify cloned SKBs during xmit
	mlxsw: spectrum: Wipe xstats.backlog of down ports
	mlxsw: spectrum_qdisc: Include MC TCs in Qdisc counters
	net: stmmac: selftests: Make it work in Synopsys AXS101 boards
	net: stmmac: selftests: Mark as fail when received VLAN ID != expected
	selftests: mlxsw: qos_mc_aware: Fix mausezahn invocation
	net: stmmac: selftests: Update status when disabling RSS
	net: stmmac: tc: Do not setup flower filtering if RSS is enabled
	devlink: Wait longer before warning about unset port type
	xen/blkfront: Adjust indentation in xlvbd_alloc_gendisk
	dt-bindings: Add missing 'properties' keyword enclosing 'snps,tso'
	tcp: refine rule to allow EPOLLOUT generation under mem pressure
	irqchip: Place CONFIG_SIFIVE_PLIC into the menu
	arm64: dts: qcom: msm8998: Disable coresight by default
	cw1200: Fix a signedness bug in cw1200_load_firmware()
	arm64: dts: meson: axg: fix audio fifo reg size
	arm64: dts: meson: g12: fix audio fifo reg size
	arm64: dts: meson-gxl-s905x-khadas-vim: fix gpio-keys-polled node
	arm64: dts: renesas: r8a77970: Fix PWM3
	arm64: dts: marvell: Add AP806-dual missing CPU clocks
	cfg80211: check for set_wiphy_params
	tick/sched: Annotate lockless access to last_jiffies_update
	arm64: dts: marvell: Fix CP110 NAND controller node multi-line comment alignment
	arm64: dts: renesas: r8a774a1: Remove audio port node
	arm64: dts: imx8mm-evk: Assigned clocks for audio plls
	arm64: dts: qcom: sdm845-cheza: delete zap-shader
	ARM: dts: imx6ul-kontron-n6310-s: Disable the snvs-poweroff driver
	arm64: dts: allwinner: a64: Re-add PMU node
	ARM: dts: dra7: fix cpsw mdio fck clock
	arm64: dts: juno: Fix UART frequency
	ARM: dts: Fix sgx sysconfig register for omap4
	Revert "arm64: dts: juno: add dma-ranges property"
	mtd: devices: fix mchp23k256 read and write
	mtd: cfi_cmdset_0002: only check errors when ready in cfi_check_err_status()
	mtd: cfi_cmdset_0002: fix delayed error detection on HyperFlash
	um: Don't trace irqflags during shutdown
	um: virtio_uml: Disallow modular build
	reiserfs: fix handling of -EOPNOTSUPP in reiserfs_for_each_xattr
	scsi: esas2r: unlock on error in esas2r_nvram_read_direct()
	scsi: hisi_sas: Don't create debugfs dump folder twice
	scsi: hisi_sas: Set the BIST init value before enabling BIST
	scsi: qla4xxx: fix double free bug
	scsi: bnx2i: fix potential use after free
	scsi: target: core: Fix a pr_debug() argument
	scsi: lpfc: fix: Coverity: lpfc_get_scsi_buf_s3(): Null pointer dereferences
	scsi: hisi_sas: Return directly if init hardware failed
	scsi: scsi_transport_sas: Fix memory leak when removing devices
	scsi: qla2xxx: Fix qla2x00_request_irqs() for MSI
	scsi: qla2xxx: fix rports not being mark as lost in sync fabric scan
	scsi: core: scsi_trace: Use get_unaligned_be*()
	scsi: lpfc: Fix list corruption detected in lpfc_put_sgl_per_hdwq
	scsi: lpfc: Fix hdwq sgl locks and irq handling
	scsi: lpfc: Fix a kernel warning triggered by lpfc_get_sgl_per_hdwq()
	rtw88: fix potential read outside array boundary
	perf probe: Fix wrong address verification
	perf script: Allow --time with --reltime
	clk: sprd: Use IS_ERR() to validate the return value of syscon_regmap_lookup_by_phandle()
	clk: imx7ulp: Correct system clock source option #7
	clk: imx7ulp: Correct DDR clock mux options
	regulator: ab8500: Remove SYSCLKREQ from enum ab8505_regulator_id
	hwmon: (pmbus/ibm-cffps) Switch LEDs to blocking brightness call
	hwmon: (pmbus/ibm-cffps) Fix LED blink behavior
	perf script: Fix --reltime with --time
	scsi: lpfc: use hdwq assigned cpu for allocation
	Linux 5.4.14

Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I400bdf3be682df698c2477fbf869d5ad8ce300b5
2020-01-23 08:37:43 +01:00
Mark Rutland
9d7f2619b0 perf: Correctly handle failed perf_get_aux_event()
commit da9ec3d3dd upstream.

Vince reports a worrying issue:

| so I was tracking down some odd behavior in the perf_fuzzer which turns
| out to be because perf_even_open() sometimes returns 0 (indicating a file
| descriptor of 0) even though as far as I can tell stdin is still open.

... and further the cause:

| error is triggered if aux_sample_size has non-zero value.
|
| seems to be this line in kernel/events/core.c:
|
| if (perf_need_aux_event(event) && !perf_get_aux_event(event, group_leader))
|                goto err_locked;
|
| (note, err is never set)

This seems to be a thinko in commit:

  ab43762ef0 ("perf: Allow normal events to output AUX data")

... and we should probably return -EINVAL here, as this should only
happen when the new event is mis-configured or does not have a
compatible aux_event group leader.

Fixes: ab43762ef0 ("perf: Allow normal events to output AUX data")
Reported-by: Vince Weaver <vincent.weaver@maine.edu>
Signed-off-by: Mark Rutland <mark.rutland@arm.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Acked-by: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Tested-by: Vince Weaver <vincent.weaver@maine.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2020-01-23 08:22:33 +01:00
Joel Fernandes (Google)
ad70668a3d BACKPORT: perf_event: Add support for LSM and SELinux checks
In current mainline, the degree of access to perf_event_open(2) system
call depends on the perf_event_paranoid sysctl.  This has a number of
limitations:

1. The sysctl is only a single value. Many types of accesses are controlled
   based on the single value thus making the control very limited and
   coarse grained.
2. The sysctl is global, so if the sysctl is changed, then that means
   all processes get access to perf_event_open(2) opening the door to
   security issues.

This patch adds LSM and SELinux access checking which will be used in
Android to access perf_event_open(2) for the purposes of attaching BPF
programs to tracepoints, perf profiling and other operations from
userspace. These operations are intended for production systems.

5 new LSM hooks are added:
1. perf_event_open: This controls access during the perf_event_open(2)
   syscall itself. The hook is called from all the places that the
   perf_event_paranoid sysctl is checked to keep it consistent with the
   systctl. The hook gets passed a 'type' argument which controls CPU,
   kernel and tracepoint accesses (in this context, CPU, kernel and
   tracepoint have the same semantics as the perf_event_paranoid sysctl).
   Additionally, I added an 'open' type which is similar to
   perf_event_paranoid sysctl == 3 patch carried in Android and several other
   distros but was rejected in mainline [1] in 2016.

2. perf_event_alloc: This allocates a new security object for the event
   which stores the current SID within the event. It will be useful when
   the perf event's FD is passed through IPC to another process which may
   try to read the FD. Appropriate security checks will limit access.

3. perf_event_free: Called when the event is closed.

4. perf_event_read: Called from the read(2) and mmap(2) syscalls for the event.

5. perf_event_write: Called from the ioctl(2) syscalls for the event.

[1] https://lwn.net/Articles/696240/

Since Peter had suggest LSM hooks in 2016 [1], I am adding his
Suggested-by tag below.

To use this patch, we set the perf_event_paranoid sysctl to -1 and then
apply selinux checking as appropriate (default deny everything, and then
add policy rules to give access to domains that need it). In the future
we can remove the perf_event_paranoid sysctl altogether.

Suggested-by: Peter Zijlstra <peterz@infradead.org>
Co-developed-by: Peter Zijlstra <peterz@infradead.org>
Signed-off-by: Joel Fernandes (Google) <joel@joelfernandes.org>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Acked-by: James Morris <jmorris@namei.org>
Cc: Arnaldo Carvalho de Melo <acme@kernel.org>
Cc: rostedt@goodmis.org
Cc: Yonghong Song <yhs@fb.com>
Cc: Kees Cook <keescook@chromium.org>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Alexei Starovoitov <ast@kernel.org>
Cc: jeffv@google.com
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Daniel Borkmann <daniel@iogearbox.net>
Cc: primiano@google.com
Cc: Song Liu <songliubraving@fb.com>
Cc: rsavitski@google.com
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Matthew Garrett <matthewgarrett@google.com>
Link: https://lkml.kernel.org/r/20191014170308.70668-1-joel@joelfernandes.org

Bug: 137092007
(cherry picked from commit da97e18458)
[ Ryan Savitski: resolved merge conflicts with perf_event_paranoid=3 code ]
Signed-off-by: Ryan Savitski <rsavitski@google.com>

[ Ryan Savitski: Folded in upstream ae79d5588a (perf/core: Fix
  !CONFIG_PERF_EVENTS build warnings and failures). This should fix the
  build errors from the previous backport attempt, where certain
  configurations would end up with functions referring to the perf_event
  struct prior to its declaration (and therefore declaring it with a
  different scope). ]
Signed-off-by: Ryan Savitski <rsavitski@google.com>
Change-Id: I50769ede23fbfd8996657c6dae99cab98a3042bc
2020-01-09 21:25:09 +00:00
Greg Kroah-Hartman
49a04248ba Revert "BACKPORT: perf_event: Add support for LSM and SELinux checks"
This reverts commit 3605586e90 as it
breaks the build :(

Cc: Ryan Savitski <rsavitski@google.com>
Cc: Joel Fernandes (Google) <joel@joelfernandes.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2020-01-09 10:57:30 +01:00
Joel Fernandes (Google)
3605586e90 BACKPORT: perf_event: Add support for LSM and SELinux checks
In current mainline, the degree of access to perf_event_open(2) system
call depends on the perf_event_paranoid sysctl.  This has a number of
limitations:

1. The sysctl is only a single value. Many types of accesses are controlled
   based on the single value thus making the control very limited and
   coarse grained.
2. The sysctl is global, so if the sysctl is changed, then that means
   all processes get access to perf_event_open(2) opening the door to
   security issues.

This patch adds LSM and SELinux access checking which will be used in
Android to access perf_event_open(2) for the purposes of attaching BPF
programs to tracepoints, perf profiling and other operations from
userspace. These operations are intended for production systems.

5 new LSM hooks are added:
1. perf_event_open: This controls access during the perf_event_open(2)
   syscall itself. The hook is called from all the places that the
   perf_event_paranoid sysctl is checked to keep it consistent with the
   systctl. The hook gets passed a 'type' argument which controls CPU,
   kernel and tracepoint accesses (in this context, CPU, kernel and
   tracepoint have the same semantics as the perf_event_paranoid sysctl).
   Additionally, I added an 'open' type which is similar to
   perf_event_paranoid sysctl == 3 patch carried in Android and several other
   distros but was rejected in mainline [1] in 2016.

2. perf_event_alloc: This allocates a new security object for the event
   which stores the current SID within the event. It will be useful when
   the perf event's FD is passed through IPC to another process which may
   try to read the FD. Appropriate security checks will limit access.

3. perf_event_free: Called when the event is closed.

4. perf_event_read: Called from the read(2) and mmap(2) syscalls for the event.

5. perf_event_write: Called from the ioctl(2) syscalls for the event.

[1] https://lwn.net/Articles/696240/

Since Peter had suggest LSM hooks in 2016 [1], I am adding his
Suggested-by tag below.

To use this patch, we set the perf_event_paranoid sysctl to -1 and then
apply selinux checking as appropriate (default deny everything, and then
add policy rules to give access to domains that need it). In the future
we can remove the perf_event_paranoid sysctl altogether.

Suggested-by: Peter Zijlstra <peterz@infradead.org>
Co-developed-by: Peter Zijlstra <peterz@infradead.org>
Signed-off-by: Joel Fernandes (Google) <joel@joelfernandes.org>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Acked-by: James Morris <jmorris@namei.org>
Cc: Arnaldo Carvalho de Melo <acme@kernel.org>
Cc: rostedt@goodmis.org
Cc: Yonghong Song <yhs@fb.com>
Cc: Kees Cook <keescook@chromium.org>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Alexei Starovoitov <ast@kernel.org>
Cc: jeffv@google.com
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Daniel Borkmann <daniel@iogearbox.net>
Cc: primiano@google.com
Cc: Song Liu <songliubraving@fb.com>
Cc: rsavitski@google.com
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Matthew Garrett <matthewgarrett@google.com>
Link: https://lkml.kernel.org/r/20191014170308.70668-1-joel@joelfernandes.org

Bug: 137092007
Change-Id: I5df32b668e2dd5f2dd3ab472dfc74f533bc4d8db
(cherry picked from commit da97e18458)
[ Ryan Savitski: resolved merge conflicts with perf_event_paranoid=3 code ]
Signed-off-by: Ryan Savitski <rsavitski@google.com>
2020-01-08 13:41:18 +00:00
Greg Kroah-Hartman
861433ef01 This is the 5.4.7 stable release
-----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAl4LbVwACgkQONu9yGCS
 aT6zdhAAkTwLWNfzyk1cSPKzWdguZWoqAuddmIeCUaDmyPwI6TE5a2J8IfZ7upYU
 4U2J4nO4I9WxVuTUgJpE0wnDidkvL6U7YfbMbqjVkxAfbFboxN8dJYDNTISehK2A
 WgpIpJadhj1M8Akxq0MLxuCMg11UJU2PP5Tc7K5aKgiVVneDodupjY8Ddksuw8SZ
 5Mus33uOjpCvtxt3GZIRgAdduhL3s3h2Vp+dyAzV2eBvSGwd9Rz4/p0OGZytH780
 oywFYzIU7CxtI7pxIQKBxegb4incjWnlRpP3Dk80CNXHzcuU6WGXARoHjgXmWYcu
 b9hX+/fM76qxbxojM1vI9QVuwy5uB++4NMVsX3e0xFxdvkTo2+Y/vbO3sBMmAy5i
 L0S0sftTuE6bg1XCWoeFbLUaXIWF7g0Xbc91VP7Wv5VolpIrwZsVHJNT4Nf8KHM4
 DuRLmrANhU7ax2E26Bbt17/otCFvjyeQj5fggw/1rkEN8fJSY1YU/SWOxizDY6GZ
 S3ovivhqhLIaDPzW+qmphYRGnBDkTq7HxHal8eJoy/cgvFxBOYAbfXiHuPuNP4Kj
 zbIThujSlbI0gNGymoHH8EoVOJeNcK8L2PsilIZdlPDWi45v5tqYIgiYIA7mqqu+
 6O2plNGWbYK2+ARPkCJ08XTdDFSm+B6Cm0+KFvsdjuQ6xNkhMwc=
 =HvEl
 -----END PGP SIGNATURE-----

Merge 5.4.7 into android-5.4

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

Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I3585238149235bf73bb453e25861d9a6b9193dfa
2019-12-31 17:56:13 +01:00
Alexander Shishkin
83e561d6cc perf/core: Fix the mlock accounting, again
[ Upstream commit 36b3db03b4 ]

Commit:

  5e6c3c7b1e ("perf/aux: Fix tracking of auxiliary trace buffer allocation")

tried to guess the correct combination of arithmetic operations that would
undo the AUX buffer's mlock accounting, and failed, leaking the bottom part
when an allocation needs to be charged partially to both user->locked_vm
and mm->pinned_vm, eventually leaving the user with no locked bonus:

  $ perf record -e intel_pt//u -m1,128 uname
  [ perf record: Woken up 1 times to write data ]
  [ perf record: Captured and wrote 0.061 MB perf.data ]

  $ perf record -e intel_pt//u -m1,128 uname
  Permission error mapping pages.
  Consider increasing /proc/sys/kernel/perf_event_mlock_kb,
  or try again with a smaller value of -m/--mmap_pages.
  (current value: 1,128)

Fix this by subtracting both locked and pinned counts when AUX buffer is
unmapped.

Reported-by: Thomas Richter <tmricht@linux.ibm.com>
Tested-by: Thomas Richter <tmricht@linux.ibm.com>
Signed-off-by: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Acked-by: Peter Zijlstra <peterz@infradead.org>
Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Stephane Eranian <eranian@google.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Vince Weaver <vincent.weaver@maine.edu>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-12-31 16:45:38 +01:00
Greg Kroah-Hartman
ad5859c6ae Linux 5.4-rc8
-----BEGIN PGP SIGNATURE-----
 
 iQFSBAABCAA8FiEEq68RxlopcLEwq+PEeb4+QwBBGIYFAl3RzgkeHHRvcnZhbGRz
 QGxpbnV4LWZvdW5kYXRpb24ub3JnAAoJEHm+PkMAQRiGN18H/0JZbfIpy8/4Irol
 0va7Aj2fBi1a5oxfqYsMKN0u3GKbN3OV9tQ+7w1eBNGvL72TGadgVTzTY+Im7A9U
 UjboAc7jDPCG+YhIwXFufMiIAq5jDIj6h0LDas7ALsMfsnI/RhTwgNtLTAkyI3dH
 YV/6ljFULwueJHCxzmrYbd1x39PScj3kCNL2pOe6On7rXMKOemY/nbbYYISxY30E
 GMgKApSS+li7VuSqgrKoq5Qaox26LyR2wrXB1ij4pqEJ9xgbnKRLdHuvXZnE+/5p
 46EMirt+yeSkltW3d2/9MoCHaA76ESzWMMDijLx7tPgoTc3RB3/3ZLsm3rYVH+cR
 cRlNNSk=
 =0+Cg
 -----END PGP SIGNATURE-----

Merge 5.4-rc8 into android-mainline

Linux 5.4-rc8

Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I1f55e5d34dc78ddb064910ce1e1b7a7b5b39aaba
2019-11-18 08:31:11 +01:00
Ben Dooks (Codethink)
d00dbd2981 perf/core: Fix missing static inline on perf_cgroup_switch()
It looks like a "static inline" has been missed in front
of the empty definition of perf_cgroup_switch() under
certain configurations.

Fixes the following sparse warning:

  kernel/events/core.c:1035:1: warning: symbol 'perf_cgroup_switch' was not declared. Should it be static?

Signed-off-by: Ben Dooks (Codethink) <ben.dooks@codethink.co.uk>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Acked-by: Mark Rutland <mark.rutland@arm.com>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Arnaldo Carvalho de Melo <acme@kernel.org>
Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: David Ahern <dsahern@gmail.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Stephane Eranian <eranian@google.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Vince Weaver <vincent.weaver@maine.edu>
Link: https://lkml.kernel.org/r/20191106132527.19977-1-ben.dooks@codethink.co.uk
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2019-11-13 08:16:44 +01:00
Alexander Shishkin
697d877849 perf/core: Consistently fail fork on allocation failures
Commit:

  313ccb9615 ("perf: Allocate context task_ctx_data for child event")

makes the inherit path skip over the current event in case of task_ctx_data
allocation failure. This, however, is inconsistent with allocation failures
in perf_event_alloc(), which would abort the fork.

Correct this by returning an error code on task_ctx_data allocation
failure and failing the fork in that case.

Signed-off-by: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: David Ahern <dsahern@gmail.com>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Stephane Eranian <eranian@google.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Vince Weaver <vincent.weaver@maine.edu>
Link: https://lkml.kernel.org/r/20191105075702.60319-1-alexander.shishkin@linux.intel.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2019-11-13 08:16:43 +01:00
Alexander Shishkin
dce5affb94 perf/aux: Disallow aux_output for kernel events
Commit

  ab43762ef0 ("perf: Allow normal events to output AUX data")

added 'aux_output' bit to the attribute structure, which relies on AUX
events and grouping, neither of which is supported for the kernel events.
This notwithstanding, attempts have been made to use it in the kernel
code, suggesting the necessity of an explicit hard -EINVAL.

Fix this by rejecting attributes with aux_output set for kernel events.

Signed-off-by: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: David Ahern <dsahern@gmail.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Stephane Eranian <eranian@google.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Vince Weaver <vincent.weaver@maine.edu>
Link: https://lkml.kernel.org/r/20191030134731.5437-3-alexander.shishkin@linux.intel.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2019-11-13 08:16:42 +01:00
Alexander Shishkin
f25d8ba9e1 perf/core: Reattach a misplaced comment
A comment is in a wrong place in perf_event_create_kernel_counter().
Fix that.

Signed-off-by: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: David Ahern <dsahern@gmail.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Stephane Eranian <eranian@google.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Vince Weaver <vincent.weaver@maine.edu>
Link: https://lkml.kernel.org/r/20191030134731.5437-2-alexander.shishkin@linux.intel.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2019-11-13 08:16:41 +01:00
Alexander Shishkin
00496fe5e0 perf/aux: Fix the aux_output group inheritance fix
Commit

  f733c6b508 ("perf/core: Fix inheritance of aux_output groups")

adds a NULL pointer dereference in case inherit_group() races with
perf_release(), which causes the below crash:

 > BUG: kernel NULL pointer dereference, address: 000000000000010b
 > #PF: supervisor read access in kernel mode
 > #PF: error_code(0x0000) - not-present page
 > PGD 3b203b067 P4D 3b203b067 PUD 3b2040067 PMD 0
 > Oops: 0000 [#1] SMP KASAN
 > CPU: 0 PID: 315 Comm: exclusive-group Tainted: G B 5.4.0-rc3-00181-g72e1839403cb-dirty #878
 > RIP: 0010:perf_get_aux_event+0x86/0x270
 > Call Trace:
 >  ? __perf_read_group_add+0x3b0/0x3b0
 >  ? __kasan_check_write+0x14/0x20
 >  ? __perf_event_init_context+0x154/0x170
 >  inherit_task_group.isra.0.part.0+0x14b/0x170
 >  perf_event_init_task+0x296/0x4b0

Fix this by skipping over events that are getting closed, in the
inheritance path.

Signed-off-by: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: David Ahern <dsahern@gmail.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Stephane Eranian <eranian@google.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Vince Weaver <vincent.weaver@maine.edu>
Fixes: f733c6b508 ("perf/core: Fix inheritance of aux_output groups")
Link: https://lkml.kernel.org/r/20191101151248.47327-1-alexander.shishkin@linux.intel.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2019-11-13 08:16:40 +01:00
Peter Zijlstra
09f4e8f05d perf/core: Disallow uncore-cgroup events
While discussing uncore event scheduling, I noticed we do not in fact
seem to dis-allow making uncore-cgroup events. Such events make no
sense what so ever because the cgroup is a CPU local state where
uncore counts across a number of CPUs.

Disallow them.

Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: David Ahern <dsahern@gmail.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Stephane Eranian <eranian@google.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Vince Weaver <vincent.weaver@maine.edu>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2019-11-13 08:16:39 +01:00
Greg Kroah-Hartman
2a71bdee3f Linux 5.4-rc6
-----BEGIN PGP SIGNATURE-----
 
 iQFSBAABCAA8FiEEq68RxlopcLEwq+PEeb4+QwBBGIYFAl2/T6oeHHRvcnZhbGRz
 QGxpbnV4LWZvdW5kYXRpb24ub3JnAAoJEHm+PkMAQRiGB7kH/2asrl7RylHPQfsI
 pkjPPq32MHLq6Zmr8y0N0hyJCm1Dxu8qCIktqrEV5vsbKdv5pb8EMdQRlhJUtR8e
 TZdYDGHiL0sFb2HYiEvL0qD9BNeI+Kftw/kUffVXRzyMWex/f5S6mW5QNTuv9SQT
 Zfa+sXreFPCCyd3jhQFRyguogaCXBmTYvO6glmc96Yi4nA1URtIxNXhXumoklElF
 8Ka7UqtoJk2nPns+oV9I5xohghgJHHjA3A96WURku1UdO9dRoHiyS05RjnijBxsk
 ffenk09qbGvnvvgP93Q23CoTO8ndIm12ZL8C9jX49CS21j5SVG0PLPhS08f70vEf
 h5K/OtE=
 =nmDP
 -----END PGP SIGNATURE-----

Merge 5.4-rc6 into android-mainline

Linux 5.4-rc6

Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I211f7159a46cf2a3dbb18afe56777cae1c13ac73
2019-11-04 06:51:47 +01:00
Greg Kroah-Hartman
444da424c1 Linux 5.4-rc5
-----BEGIN PGP SIGNATURE-----
 
 iQFSBAABCAA8FiEEq68RxlopcLEwq+PEeb4+QwBBGIYFAl210Z8eHHRvcnZhbGRz
 QGxpbnV4LWZvdW5kYXRpb24ub3JnAAoJEHm+PkMAQRiGv+kIAKRpO7EuDokQL4qp
 hxEEaCMJA1T055EMlNU6FVAq/ZbmapzreUyNYiRMpPWKGTWNMkhIcZQfysYeGZz5
 y/KRxAiVxlcB+3v3yRmoZd/XoQmhgvJmqD4zhaGI2Utonow4f/SGSEFFZqqs9WND
 4HJROjZHgQ4JBxg9Z+QMo0FxbV/DCZpEOUq51N9WJywyyDRb18zotE83stpU+pE2
 fjqT7mk0NLrnYXuDRAbFC1Aau9ed4H6LlwLmxaqxq/Pt5Rz7wIKwKL9HIT4Dm/0a
 qpani6phhHWL7MwUpa2wkEonFCD03rJFl3DUVJo64Ijh4up5D/jyXQ+GKV2P4WKJ
 275Rb5Q=
 =WiZZ
 -----END PGP SIGNATURE-----

Merge 5.4-rc5 into android-common

Linux 5.4-rc5

Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: Ib61881c64a2725c6229c26d2ce63f107b7215c47
2019-10-28 13:11:46 +01:00
Alexander Shishkin
8c7e975667 perf/core: Start rejecting the syscall with attr.__reserved_2 set
Commit:

  1a59413124 ("perf: Add wakeup watermark control to the AUX area")

added attr.__reserved_2 padding, but forgot to add an ABI check to reject
attributes with this field set. Fix that.

Signed-off-by: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Stephane Eranian <eranian@google.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Vince Weaver <vincent.weaver@maine.edu>
Cc: adrian.hunter@intel.com
Cc: mathieu.poirier@linaro.org
Link: https://lkml.kernel.org/r/20191025121636.75182-1-alexander.shishkin@linux.intel.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2019-10-28 11:01:59 +01:00
Linus Torvalds
a8a31fdcca Merge branch 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
Pull perf fixes from Thomas Gleixner:
 "A set of perf fixes:

  kernel:

   - Unbreak the tracking of auxiliary buffer allocations which got
     imbalanced causing recource limit failures.

   - Fix the fallout of splitting of ToPA entries which missed to shift
     the base entry PA correctly.

   - Use the correct context to lookup the AUX event when unmapping the
     associated AUX buffer so the event can be stopped and the buffer
     reference dropped.

  tools:

   - Fix buildiid-cache mode setting in copyfile_mode_ns() when copying
     /proc/kcore

   - Fix freeing id arrays in the event list so the correct event is
     closed.

   - Sync sched.h anc kvm.h headers with the kernel sources.

   - Link jvmti against tools/lib/ctype.o to have weak strlcpy().

   - Fix multiple memory and file descriptor leaks, found by coverity in
     perf annotate.

   - Fix leaks in error handling paths in 'perf c2c', 'perf kmem', found
     by a static analysis tool"

* 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  perf/aux: Fix AUX output stopping
  perf/aux: Fix tracking of auxiliary trace buffer allocation
  perf/x86/intel/pt: Fix base for single entry topa
  perf kmem: Fix memory leak in compact_gfp_flags()
  tools headers UAPI: Sync sched.h with the kernel
  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
  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()
2019-10-27 06:59:34 -04:00
Greg Kroah-Hartman
9be46ff3b6 Linux 5.4-rc4
-----BEGIN PGP SIGNATURE-----
 
 iQFSBAABCAA8FiEEq68RxlopcLEwq+PEeb4+QwBBGIYFAl2su/AeHHRvcnZhbGRz
 QGxpbnV4LWZvdW5kYXRpb24ub3JnAAoJEHm+PkMAQRiGvm4H/1jkheCrvB/GJS69
 wd18vizAg+eFmNCzxlGVhpQTKGymNRy+g6clnoli3cNJ3pSVKcYgVyB3oXaONIhp
 g/ANudnBjTdjqYgJzfLij5AGecrGwDpF3YL0kuKrCB63s2I/HwQGYy/aPrYY8emy
 gAYdaf1DGRu5/DIIB6soTo/TnpKoAyTE+XY5MaPSug++t/Flov19tlU40IZxXW94
 bjTXbm0yklrsIx+LL5mYYGGnygSTCF66JjFg1qhDCBQaS2MZ21h1ZgaOtGZTwZcc
 WgEiqLC5S1Iyj96zir1t78RcVQ4RzgvDbhUOgIqUFsYAO2wOicvxyFE3Hj8rPOKd
 uGgVPRM=
 =xgZa
 -----END PGP SIGNATURE-----

Merge 5.4-rc4 into android-mainline

Linux 5.4-rc4

Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I0edccd72fad8b6443b24c8c1005b66d6b8f532ce
2019-10-26 19:24:41 +02:00
Alexander Shishkin
f3a519e4ad perf/aux: Fix AUX output stopping
Commit:

  8a58ddae23 ("perf/core: Fix exclusive events' grouping")

allows CAP_EXCLUSIVE events to be grouped with other events. Since all
of those also happen to be AUX events (which is not the case the other
way around, because arch/s390), this changes the rules for stopping the
output: the AUX event may not be on its PMU's context any more, if it's
grouped with a HW event, in which case it will be on that HW event's
context instead. If that's the case, munmap() of the AUX buffer can't
find and stop the AUX event, potentially leaving the last reference with
the atomic context, which will then end up freeing the AUX buffer. This
will then trip warnings:

Fix this by using the context's PMU context when looking for events
to stop, instead of the event's PMU context.

Signed-off-by: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Stephane Eranian <eranian@google.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Vince Weaver <vincent.weaver@maine.edu>
Cc: stable@vger.kernel.org
Link: https://lkml.kernel.org/r/20191022073940.61814-1-alexander.shishkin@linux.intel.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2019-10-22 14:39:37 +02:00
Thomas Richter
5e6c3c7b1e perf/aux: Fix tracking of auxiliary trace buffer allocation
The following commit from the v5.4 merge window:

  d44248a413 ("perf/core: Rework memory accounting in perf_mmap()")

... breaks auxiliary trace buffer tracking.

If I run command 'perf record -e rbd000' to record samples and saving
them in the **auxiliary** trace buffer then the value of 'locked_vm' becomes
negative after all trace buffers have been allocated and released:

During allocation the values increase:

  [52.250027] perf_mmap user->locked_vm:0x87 pinned_vm:0x0 ret:0
  [52.250115] perf_mmap user->locked_vm:0x107 pinned_vm:0x0 ret:0
  [52.250251] perf_mmap user->locked_vm:0x188 pinned_vm:0x0 ret:0
  [52.250326] perf_mmap user->locked_vm:0x208 pinned_vm:0x0 ret:0
  [52.250441] perf_mmap user->locked_vm:0x289 pinned_vm:0x0 ret:0
  [52.250498] perf_mmap user->locked_vm:0x309 pinned_vm:0x0 ret:0
  [52.250613] perf_mmap user->locked_vm:0x38a pinned_vm:0x0 ret:0
  [52.250715] perf_mmap user->locked_vm:0x408 pinned_vm:0x2 ret:0
  [52.250834] perf_mmap user->locked_vm:0x408 pinned_vm:0x83 ret:0
  [52.250915] perf_mmap user->locked_vm:0x408 pinned_vm:0x103 ret:0
  [52.251061] perf_mmap user->locked_vm:0x408 pinned_vm:0x184 ret:0
  [52.251146] perf_mmap user->locked_vm:0x408 pinned_vm:0x204 ret:0
  [52.251299] perf_mmap user->locked_vm:0x408 pinned_vm:0x285 ret:0
  [52.251383] perf_mmap user->locked_vm:0x408 pinned_vm:0x305 ret:0
  [52.251544] perf_mmap user->locked_vm:0x408 pinned_vm:0x386 ret:0
  [52.251634] perf_mmap user->locked_vm:0x408 pinned_vm:0x406 ret:0
  [52.253018] perf_mmap user->locked_vm:0x408 pinned_vm:0x487 ret:0
  [52.253197] perf_mmap user->locked_vm:0x408 pinned_vm:0x508 ret:0
  [52.253374] perf_mmap user->locked_vm:0x408 pinned_vm:0x589 ret:0
  [52.253550] perf_mmap user->locked_vm:0x408 pinned_vm:0x60a ret:0
  [52.253726] perf_mmap user->locked_vm:0x408 pinned_vm:0x68b ret:0
  [52.253903] perf_mmap user->locked_vm:0x408 pinned_vm:0x70c ret:0
  [52.254084] perf_mmap user->locked_vm:0x408 pinned_vm:0x78d ret:0
  [52.254263] perf_mmap user->locked_vm:0x408 pinned_vm:0x80e ret:0

The value of user->locked_vm increases to a limit then the memory
is tracked by pinned_vm.

During deallocation the size is subtracted from pinned_vm until
it hits a limit. Then a larger value is subtracted from locked_vm
leading to a large number (because of type unsigned):

  [64.267797] perf_mmap_close mmap_user->locked_vm:0x408 pinned_vm:0x78d
  [64.267826] perf_mmap_close mmap_user->locked_vm:0x408 pinned_vm:0x70c
  [64.267848] perf_mmap_close mmap_user->locked_vm:0x408 pinned_vm:0x68b
  [64.267869] perf_mmap_close mmap_user->locked_vm:0x408 pinned_vm:0x60a
  [64.267891] perf_mmap_close mmap_user->locked_vm:0x408 pinned_vm:0x589
  [64.267911] perf_mmap_close mmap_user->locked_vm:0x408 pinned_vm:0x508
  [64.267933] perf_mmap_close mmap_user->locked_vm:0x408 pinned_vm:0x487
  [64.267952] perf_mmap_close mmap_user->locked_vm:0x408 pinned_vm:0x406
  [64.268883] perf_mmap_close mmap_user->locked_vm:0x307 pinned_vm:0x406
  [64.269117] perf_mmap_close mmap_user->locked_vm:0x206 pinned_vm:0x406
  [64.269433] perf_mmap_close mmap_user->locked_vm:0x105 pinned_vm:0x406
  [64.269536] perf_mmap_close mmap_user->locked_vm:0x4 pinned_vm:0x404
  [64.269797] perf_mmap_close mmap_user->locked_vm:0xffffffffffffff84 pinned_vm:0x303
  [64.270105] perf_mmap_close mmap_user->locked_vm:0xffffffffffffff04 pinned_vm:0x202
  [64.270374] perf_mmap_close mmap_user->locked_vm:0xfffffffffffffe84 pinned_vm:0x101
  [64.270628] perf_mmap_close mmap_user->locked_vm:0xfffffffffffffe04 pinned_vm:0x0

This value sticks for the user until system is rebooted, causing
follow-on system calls using locked_vm resource limit to fail.

Note: There is no issue using the normal trace buffer.

In fact the issue is in perf_mmap_close(). During allocation auxiliary
trace buffer memory is either traced as 'extra' and added to 'pinned_vm'
or trace as 'user_extra' and added to 'locked_vm'. This applies for
normal trace buffers and auxiliary trace buffer.

However in function perf_mmap_close() all auxiliary trace buffer is
subtraced from 'locked_vm' and never from 'pinned_vm'. This breaks the
ballance.

Signed-off-by: Thomas Richter <tmricht@linux.ibm.com>
Acked-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: acme@kernel.org
Cc: gor@linux.ibm.com
Cc: hechaol@fb.com
Cc: heiko.carstens@de.ibm.com
Cc: linux-perf-users@vger.kernel.org
Cc: songliubraving@fb.com
Fixes: d44248a413 ("perf/core: Rework memory accounting in perf_mmap()")
Link: https://lkml.kernel.org/r/20191021083354.67868-1-tmricht@linux.ibm.com
[ Minor readability edits. ]
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2019-10-21 11:31:24 +02:00
Song Liu
aa5de305c9 kernel/events/uprobes.c: only do FOLL_SPLIT_PMD for uprobe register
Attaching uprobe to text section in THP splits the PMD mapped page table
into PTE mapped entries.  On uprobe detach, we would like to regroup PMD
mapped page table entry to regain performance benefit of THP.

However, the regroup is broken For perf_event based trace_uprobe.  This
is because perf_event based trace_uprobe calls uprobe_unregister twice
on close: first in TRACE_REG_PERF_CLOSE, then in
TRACE_REG_PERF_UNREGISTER.  The second call will split the PMD mapped
page table entry, which is not the desired behavior.

Fix this by only use FOLL_SPLIT_PMD for uprobe register case.

Add a WARN() to confirm uprobe unregister never work on huge pages, and
abort the operation when this WARN() triggers.

Link: http://lkml.kernel.org/r/20191017164223.2762148-6-songliubraving@fb.com
Fixes: 5a52c9df62 ("uprobe: use FOLL_SPLIT_PMD instead of FOLL_SPLIT")
Signed-off-by: Song Liu <songliubraving@fb.com>
Reviewed-by: Srikar Dronamraju <srikar@linux.vnet.ibm.com>
Cc: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
Cc: Oleg Nesterov <oleg@redhat.com>
Cc: Matthew Wilcox (Oracle) <willy@infradead.org>
Cc: William Kucharski <william.kucharski@oracle.com>
Cc: Yang Shi <yang.shi@linux.alibaba.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2019-10-19 06:32:33 -04:00
Greg Kroah-Hartman
630839ac24 Linux 5.4-rc3
-----BEGIN PGP SIGNATURE-----
 
 iQFSBAABCAA8FiEEq68RxlopcLEwq+PEeb4+QwBBGIYFAl2jtUYeHHRvcnZhbGRz
 QGxpbnV4LWZvdW5kYXRpb24ub3JnAAoJEHm+PkMAQRiGL28H/Akb3JEXNKHCv3MI
 89dzKlLgf/W/e0qJirb9/YdcUL462NUFoC0Bg0qLgLFYdhT94Zp5J68C4oZPJfxA
 /LrTDsHWrbUtTvhxJqMueVT3JTpkF36ZTvTGwLTHzTqexM/o3kuDWjWTTxZlMGbX
 Uais/ywmmCVCmaX8IJ3GJFGCJse+T1W73VOSo7bm6C+Ruy6Euwasa9kc40uHiPpD
 6Xew9j9AJ0xIV96sLzDFOYAXYFQBZnAbFLA+Ho53TiuG78J6MP4Pm9+1VhMyF1uH
 mgeA5GAfKpqq/QXf32iMU7s7HTdoF5r1UaQJtu+p6BFTGhd7LrDrh4gA/9Wyv7+t
 9stS20U=
 =ima3
 -----END PGP SIGNATURE-----

Merge 5.4-rc3 into android-mainline

Linux 5.4-rc3

Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: Ia87ba662738dd58ddb917e32c1fbd812861e7a46
2019-10-17 05:28:13 -07:00
Song Liu
7fa343b7fd perf/core: Fix corner case in perf_rotate_context()
In perf_rotate_context(), when the first cpu flexible event fail to
schedule, cpu_rotate is 1, while cpu_event is NULL. Since cpu_event is
NULL, perf_rotate_context will _NOT_ call cpu_ctx_sched_out(), thus
cpuctx->ctx.is_active will have EVENT_FLEXIBLE set. Then, the next
perf_event_sched_in() will skip all cpu flexible events because of the
EVENT_FLEXIBLE bit.

In the next call of perf_rotate_context(), cpu_rotate stays 1, and
cpu_event stays NULL, so this process repeats. The end result is, flexible
events on this cpu will not be scheduled (until another event being added
to the cpuctx).

Here is an easy repro of this issue. On Intel CPUs, where ref-cycles
could only use one counter, run one pinned event for ref-cycles, one
flexible event for ref-cycles, and one flexible event for cycles. The
flexible ref-cycles is never scheduled, which is expected. However,
because of this issue, the cycles event is never scheduled either.

 $ perf stat -e ref-cycles:D,ref-cycles,cycles -C 5 -I 1000

           time             counts unit events
    1.000152973         15,412,480      ref-cycles:D
    1.000152973      <not counted>      ref-cycles     (0.00%)
    1.000152973      <not counted>      cycles         (0.00%)
    2.000486957         18,263,120      ref-cycles:D
    2.000486957      <not counted>      ref-cycles     (0.00%)
    2.000486957      <not counted>      cycles         (0.00%)

To fix this, when the flexible_active list is empty, try rotate the
first event in the flexible_groups. Also, rename ctx_first_active() to
ctx_event_to_rotate(), which is more accurate.

Signed-off-by: Song Liu <songliubraving@fb.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: <kernel-team@fb.com>
Cc: Arnaldo Carvalho de Melo <acme@kernel.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Sasha Levin <sashal@kernel.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Fixes: 8d5bce0c37 ("perf/core: Optimize perf_rotate_context() event scheduling")
Link: https://lkml.kernel.org/r/20191008165949.920548-1-songliubraving@fb.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2019-10-09 12:44:13 +02:00
Song Liu
d44248a413 perf/core: Rework memory accounting in perf_mmap()
perf_mmap() always increases user->locked_vm. As a result, "extra" could
grow bigger than "user_extra", which doesn't make sense. Here is an
example case:

(Note: Assume "user_lock_limit" is very small.)

  | # of perf_mmap calls |vma->vm_mm->pinned_vm|user->locked_vm|
  | 0                    | 0                   | 0             |
  | 1                    | user_extra          | user_extra    |
  | 2                    | 3 * user_extra      | 2 * user_extra|
  | 3                    | 6 * user_extra      | 3 * user_extra|
  | 4                    | 10 * user_extra     | 4 * user_extra|

Fix this by maintaining proper user_extra and extra.

Reviewed-By: Hechao Li <hechaol@fb.com>
Reported-by: Hechao Li <hechaol@fb.com>
Signed-off-by: Song Liu <songliubraving@fb.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: <kernel-team@fb.com>
Cc: Jie Meng <jmeng@fb.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Link: https://lkml.kernel.org/r/20190904214618.3795672-1-songliubraving@fb.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2019-10-09 12:44:12 +02:00
Alexander Shishkin
f733c6b508 perf/core: Fix inheritance of aux_output groups
Commit:

  ab43762ef0 ("perf: Allow normal events to output AUX data")

forgets to configure aux_output relation in the inherited groups, which
results in child PEBS events forever failing to schedule.

Fix this by setting up the AUX output link in the inheritance path.

Signed-off-by: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Link: https://lkml.kernel.org/r/20191004125729.32397-1-alexander.shishkin@linux.intel.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2019-10-07 16:50:42 +02:00
Greg Kroah-Hartman
8e9e0abf99 Linux 5.4-rc2
-----BEGIN PGP SIGNATURE-----
 
 iQFSBAABCAA8FiEEq68RxlopcLEwq+PEeb4+QwBBGIYFAl2aXEoeHHRvcnZhbGRz
 QGxpbnV4LWZvdW5kYXRpb24ub3JnAAoJEHm+PkMAQRiGZKUH/1S+unzPxmXwraBl
 ORnOSMCaoepaCS2kc4nFim3hpnwzuFLn8NHPSARPPBO7Jy9Shtku0om66rF6R4DD
 zoe/QSLvtUqiVU6xuPR8ymjeizN+qj+9RT8tDftCs2QCBqZ/jr/kKiiA32aipnrz
 IBC+I6eKFN0WqBep5NwAkIAok+JiUBMIEuEXjkF2q0Vw9fnmmNRMm6rPDk1dHgQi
 K6mr8N3Vbsdadn/XBt4DRje2c593cfOnryPUwyIIBGw5W6EECX6k9CeD+CNNxLYb
 mPNC34wQsqvbAOsP6Y+2lBLZw+0AG5uLytDrwNNO1JKSEYMSG6wH4t7C6w0IlTQt
 OkYK3S0=
 =0ny6
 -----END PGP SIGNATURE-----

Merge 5.4-rc2 into android-mainline

Linux 5.4-rc2

Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: Idfe13500feef5c1095d06c419fa121f751daa459
2019-10-07 07:09:37 +02:00
Greg Kroah-Hartman
cb33d78781 Linux 5.4-rc1
-----BEGIN PGP SIGNATURE-----
 
 iQFSBAABCAA8FiEEq68RxlopcLEwq+PEeb4+QwBBGIYFAl2SPPkeHHRvcnZhbGRz
 QGxpbnV4LWZvdW5kYXRpb24ub3JnAAoJEHm+PkMAQRiG3dcH/2iCaNvD0Ify+Ke/
 d0Ncf7KhBejfW1pjGjfpfbAQkdaY/gSLsWPJmQ2HT00SmnTJ4y3zvr/HmEE8mIBA
 fMzY4TFHMRNNEOrCugoNxzjU5ycgIMq5doontDdHeS7Pfa8mgDLLwH/dzoORA0+b
 T1ZZT3yDsQ92/jW97LEhTv7UcKqgBdVT5PauU/pe6LHpqmzn8XwdiKaNTM1uY8vw
 U9rIrYnfxCuLfxyK7xUp6bRUlqluZrY4U+pqEnGOVlFYX1xMjjPIE9sDHJ/z5WvY
 JSH4/aOqVxRII2oU0+uITsO658tS912iUsa8++F6Z5R1gZSqQD1FqrvW7Z0S58Ay
 vjXIX3Q=
 =epsM
 -----END PGP SIGNATURE-----

Merge 5.4-rc1 into android-mainline

Linux 5.4-rc1

Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I15eec52df70f829acf81ff614a1c2a5fb443a4e0
2019-10-02 19:10:07 +02:00
Greg Kroah-Hartman
2cddf747e1 Merge 5.4-rc1-prerelease into android-mainline
To make the 5.4-rc1 merge easier, merge at a prerelease point in time
before the final release happens.

Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I052c6a28528e10cdda89b6a20d320ac7562266b8
2019-10-02 18:36:47 +02:00
Greg Kroah-Hartman
94139142d9 Merge 5.4-rc1-prelrease into android-mainline
To make the 5.4-rc1 merge easier, merge at a prerelease point in time
before the final release happens.

Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: If613d657fd0abf9910c5bf3435a745f01b89765e
2019-10-02 17:58:47 +02:00
Aleksa Sarai
c2ba8f41ad perf_event_open: switch to copy_struct_from_user()
Switch perf_event_open() syscall from it's own copying
struct perf_event_attr from userspace to the new dedicated
copy_struct_from_user() helper.

The change is very straightforward, and helps unify the syscall
interface for struct-from-userspace syscalls.

Signed-off-by: Aleksa Sarai <cyphar@cyphar.com>
Reviewed-by: Kees Cook <keescook@chromium.org>
Reviewed-by: Christian Brauner <christian.brauner@ubuntu.com>
[christian.brauner@ubuntu.com: improve commit message]
Link: https://lore.kernel.org/r/20191001011055.19283-5-cyphar@cyphar.com
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2019-10-01 15:45:22 +02:00
Linus Torvalds
aefcf2f4b5 Merge branch 'next-lockdown' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security
Pull kernel lockdown mode from James Morris:
 "This is the latest iteration of the kernel lockdown patchset, from
  Matthew Garrett, David Howells and others.

  From the original description:

    This patchset introduces an optional kernel lockdown feature,
    intended to strengthen the boundary between UID 0 and the kernel.
    When enabled, various pieces of kernel functionality are restricted.
    Applications that rely on low-level access to either hardware or the
    kernel may cease working as a result - therefore this should not be
    enabled without appropriate evaluation beforehand.

    The majority of mainstream distributions have been carrying variants
    of this patchset for many years now, so there's value in providing a
    doesn't meet every distribution requirement, but gets us much closer
    to not requiring external patches.

  There are two major changes since this was last proposed for mainline:

   - Separating lockdown from EFI secure boot. Background discussion is
     covered here: https://lwn.net/Articles/751061/

   -  Implementation as an LSM, with a default stackable lockdown LSM
      module. This allows the lockdown feature to be policy-driven,
      rather than encoding an implicit policy within the mechanism.

  The new locked_down LSM hook is provided to allow LSMs to make a
  policy decision around whether kernel functionality that would allow
  tampering with or examining the runtime state of the kernel should be
  permitted.

  The included lockdown LSM provides an implementation with a simple
  policy intended for general purpose use. This policy provides a coarse
  level of granularity, controllable via the kernel command line:

    lockdown={integrity|confidentiality}

  Enable the kernel lockdown feature. If set to integrity, kernel features
  that allow userland to modify the running kernel are disabled. If set to
  confidentiality, kernel features that allow userland to extract
  confidential information from the kernel are also disabled.

  This may also be controlled via /sys/kernel/security/lockdown and
  overriden by kernel configuration.

  New or existing LSMs may implement finer-grained controls of the
  lockdown features. Refer to the lockdown_reason documentation in
  include/linux/security.h for details.

  The lockdown feature has had signficant design feedback and review
  across many subsystems. This code has been in linux-next for some
  weeks, with a few fixes applied along the way.

  Stephen Rothwell noted that commit 9d1f8be5cf ("bpf: Restrict bpf
  when kernel lockdown is in confidentiality mode") is missing a
  Signed-off-by from its author. Matthew responded that he is providing
  this under category (c) of the DCO"

* 'next-lockdown' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security: (31 commits)
  kexec: Fix file verification on S390
  security: constify some arrays in lockdown LSM
  lockdown: Print current->comm in restriction messages
  efi: Restrict efivar_ssdt_load when the kernel is locked down
  tracefs: Restrict tracefs when the kernel is locked down
  debugfs: Restrict debugfs when the kernel is locked down
  kexec: Allow kexec_file() with appropriate IMA policy when locked down
  lockdown: Lock down perf when in confidentiality mode
  bpf: Restrict bpf when kernel lockdown is in confidentiality mode
  lockdown: Lock down tracing and perf kprobes when in confidentiality mode
  lockdown: Lock down /proc/kcore
  x86/mmiotrace: Lock down the testmmiotrace module
  lockdown: Lock down module params that specify hardware parameters (eg. ioport)
  lockdown: Lock down TIOCSSERIAL
  lockdown: Prohibit PCMCIA CIS storage when the kernel is locked down
  acpi: Disable ACPI table override if the kernel is locked down
  acpi: Ignore acpi_rsdp kernel param when the kernel has been locked down
  ACPI: Limit access to custom_method when the kernel is locked down
  x86/msr: Restrict MSR access when the kernel is locked down
  x86: Lock down IO port access when the kernel is locked down
  ...
2019-09-28 08:14:15 -07:00
Linus Torvalds
a7b7b772bb Merge branch 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
Pull more perf updates from Ingo Molnar:
 "The only kernel change is comment typo fixes.

  The rest is mostly tooling fixes, but also new vendor event additions
  and updates, a bigger libperf/libtraceevent library and a header files
  reorganization that came in a bit late"

* 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (108 commits)
  perf unwind: Fix libunwind build failure on i386 systems
  perf parser: Remove needless include directives
  perf build: Add detection of java-11-openjdk-devel package
  perf jvmti: Include JVMTI support for s390
  perf vendor events: Remove P8 HW events which are not supported
  perf evlist: Fix access of freed id arrays
  perf stat: Fix free memory access / memory leaks in metrics
  perf tools: Replace needless mmap.h with what is needed, event.h
  perf evsel: Move config terms to a separate header
  perf evlist: Remove unused perf_evlist__fprintf() method
  perf evsel: Introduce evsel_fprintf.h
  perf evsel: Remove need for symbol_conf in evsel_fprintf.c
  perf copyfile: Move copyfile routines to separate files
  libperf: Add perf_evlist__poll() function
  libperf: Add perf_evlist__add_pollfd() function
  libperf: Add perf_evlist__alloc_pollfd() function
  libperf: Add libperf_init() call to the tests
  libperf: Merge libperf_set_print() into libperf_init()
  libperf: Add libperf dependency for tests targets
  libperf: Use sys/types.h to get ssize_t, not unistd.h
  ...
2019-09-26 15:38:07 -07:00
Song Liu
f385cb85a4 uprobe: collapse THP pmd after removing all uprobes
After all uprobes are removed from the huge page (with PTE pgtable), it is
possible to collapse the pmd and benefit from THP again.  This patch does
the collapse by calling collapse_pte_mapped_thp().

Link: http://lkml.kernel.org/r/20190815164525.1848545-7-songliubraving@fb.com
Signed-off-by: Song Liu <songliubraving@fb.com>
Acked-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
Reported-by: kbuild test robot <lkp@intel.com>
Reviewed-by: Oleg Nesterov <oleg@redhat.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
Song Liu
5a52c9df62 uprobe: use FOLL_SPLIT_PMD instead of FOLL_SPLIT
Use the newly added FOLL_SPLIT_PMD in uprobe.  This preserves the huge
page when the uprobe is enabled.  When the uprobe is disabled, newer
instances of the same application could still benefit from huge page.

For the next step, we will enable khugepaged to regroup the pmd, so that
existing instances of the application could also benefit from huge page
after the uprobe is disabled.

Link: http://lkml.kernel.org/r/20190815164525.1848545-5-songliubraving@fb.com
Signed-off-by: Song Liu <songliubraving@fb.com>
Acked-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
Reviewed-by: Srikar Dronamraju <srikar@linux.vnet.ibm.com>
Reviewed-by: Oleg Nesterov <oleg@redhat.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
Song Liu
fb4fb04ff4 uprobe: use original page when all uprobes are removed
Currently, uprobe swaps the target page with a anonymous page in both
install_breakpoint() and remove_breakpoint().  When all uprobes on a page
are removed, the given mm is still using an anonymous page (not the
original page).

This patch allows uprobe to use original page when possible (all uprobes
on the page are already removed, and the original page is in page cache
and uptodate).

As suggested by Oleg, we unmap the old_page and let the original page
fault in.

Link: http://lkml.kernel.org/r/20190815164525.1848545-3-songliubraving@fb.com
Signed-off-by: Song Liu <songliubraving@fb.com>
Suggested-by: Oleg Nesterov <oleg@redhat.com>
Reviewed-by: Oleg Nesterov <oleg@redhat.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
Greg Kroah-Hartman
bfa0399bc8 Merge Linus's 5.4-rc1-prerelease branch into android-mainline
This merges Linus's tree as of commit b41dae061b ("Merge tag
'xfs-5.4-merge-7' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux")
into android-mainline.

This "early" merge makes it easier to test and handle merge conflicts
instead of having to wait until the "end" of the merge window and handle
all 10000+ commits at once.

Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I6bebf55e5e2353f814e3c87f5033607b1ae5d812
2019-09-20 16:07:54 -07:00
Roy Ben Shlomo
9f014e3a66 perf/core: Fix several typos in comments
Fix typos in a few functions' documentation comments.

Signed-off-by: Roy Ben Shlomo <royb@sentinelone.com>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: royb@sentinelone.com
Link: http://lore.kernel.org/lkml/20190920171254.31373-1-royb@sentinelone.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
2019-09-20 16:05:20 -03:00
Linus Torvalds
7f2444d38f Merge branch 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
Pull core timer updates from Thomas Gleixner:
 "Timers and timekeeping updates:

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

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

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

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

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

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

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

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

   - The usual small improvements all over the place"

* 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (101 commits)
  posix-cpu-timers: Fix permission check regression
  posix-cpu-timers: Always clear head pointer on dequeue
  hrtimer: Add a missing bracket and hide `migration_base' on !SMP
  posix-cpu-timers: Make expiry_active check actually work correctly
  posix-timers: Unbreak CONFIG_POSIX_TIMERS=n build
  tick: Mark sched_timer to expire in hard interrupt context
  hrtimer: Add kernel doc annotation for HRTIMER_MODE_HARD
  x86/hyperv: Hide pv_ops access for CONFIG_PARAVIRT=n
  posix-cpu-timers: Utilize timerqueue for storage
  posix-cpu-timers: Move state tracking to struct posix_cputimers
  posix-cpu-timers: Deduplicate rlimit handling
  posix-cpu-timers: Remove pointless comparisons
  posix-cpu-timers: Get rid of 64bit divisions
  posix-cpu-timers: Consolidate timer expiry further
  posix-cpu-timers: Get rid of zero checks
  rlimit: Rewrite non-sensical RLIMIT_CPU comment
  posix-cpu-timers: Respect INFINITY for hard RTTIME limit
  posix-cpu-timers: Switch thread group sampling to array
  posix-cpu-timers: Restructure expiry array
  posix-cpu-timers: Remove cputime_expires
  ...
2019-09-17 12:35:15 -07:00
Linus Torvalds
7e67a85999 Merge branch 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
Pull scheduler updates from Ingo Molnar:

 - MAINTAINERS: Add Mark Rutland as perf submaintainer, Juri Lelli and
   Vincent Guittot as scheduler submaintainers. Add Dietmar Eggemann,
   Steven Rostedt, Ben Segall and Mel Gorman as scheduler reviewers.

   As perf and the scheduler is getting bigger and more complex,
   document the status quo of current responsibilities and interests,
   and spread the review pain^H^H^H^H fun via an increase in the Cc:
   linecount generated by scripts/get_maintainer.pl. :-)

 - Add another series of patches that brings the -rt (PREEMPT_RT) tree
   closer to mainline: split the monolithic CONFIG_PREEMPT dependencies
   into a new CONFIG_PREEMPTION category that will allow the eventual
   introduction of CONFIG_PREEMPT_RT. Still a few more hundred patches
   to go though.

 - Extend the CPU cgroup controller with uclamp.min and uclamp.max to
   allow the finer shaping of CPU bandwidth usage.

 - Micro-optimize energy-aware wake-ups from O(CPUS^2) to O(CPUS).

 - Improve the behavior of high CPU count, high thread count
   applications running under cpu.cfs_quota_us constraints.

 - Improve balancing with SCHED_IDLE (SCHED_BATCH) tasks present.

 - Improve CPU isolation housekeeping CPU allocation NUMA locality.

 - Fix deadline scheduler bandwidth calculations and logic when cpusets
   rebuilds the topology, or when it gets deadline-throttled while it's
   being offlined.

 - Convert the cpuset_mutex to percpu_rwsem, to allow it to be used from
   setscheduler() system calls without creating global serialization.
   Add new synchronization between cpuset topology-changing events and
   the deadline acceptance tests in setscheduler(), which were broken
   before.

 - Rework the active_mm state machine to be less confusing and more
   optimal.

 - Rework (simplify) the pick_next_task() slowpath.

 - Improve load-balancing on AMD EPYC systems.

 - ... and misc cleanups, smaller fixes and improvements - please see
   the Git log for more details.

* 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (53 commits)
  sched/psi: Correct overly pessimistic size calculation
  sched/fair: Speed-up energy-aware wake-ups
  sched/uclamp: Always use 'enum uclamp_id' for clamp_id values
  sched/uclamp: Update CPU's refcount on TG's clamp changes
  sched/uclamp: Use TG's clamps to restrict TASK's clamps
  sched/uclamp: Propagate system defaults to the root group
  sched/uclamp: Propagate parent clamps
  sched/uclamp: Extend CPU's cgroup controller
  sched/topology: Improve load balancing on AMD EPYC systems
  arch, ia64: Make NUMA select SMP
  sched, perf: MAINTAINERS update, add submaintainers and reviewers
  sched/fair: Use rq_lock/unlock in online_fair_sched_group
  cpufreq: schedutil: fix equation in comment
  sched: Rework pick_next_task() slow-path
  sched: Allow put_prev_task() to drop rq->lock
  sched/fair: Expose newidle_balance()
  sched: Add task_struct pointer to sched_class::set_curr_task
  sched: Rework CPU hotplug task selection
  sched/{rt,deadline}: Fix set_next_task vs pick_next_task
  sched: Fix kerneldoc comment for ia64_set_curr_task
  ...
2019-09-16 17:25:49 -07:00
Linus Torvalds
772c1d06bd Merge branch 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
Pull perf updates from Ingo Molnar:
 "Kernel side changes:

   - Improved kbprobes robustness

   - Intel PEBS support for PT hardware tracing

   - Other Intel PT improvements: high order pages memory footprint
     reduction and various related cleanups

   - Misc cleanups

  The perf tooling side has been very busy in this cycle, with over 300
  commits. This is an incomplete high-level summary of the many
  improvements done by over 30 developers:

   - Lots of updates to the following tools:

      'perf c2c'
      'perf config'
      'perf record'
      'perf report'
      'perf script'
      'perf test'
      'perf top'
      'perf trace'

   - Updates to libperf and libtraceevent, and a consolidation of the
     proliferation of x86 instruction decoder libraries.

   - Vendor event updates for Intel and PowerPC CPUs,

   - Updates to hardware tracing tooling for ARM and Intel CPUs,

   - ... and lots of other changes and cleanups - see the shortlog and
     Git log for details"

* 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (322 commits)
  kprobes: Prohibit probing on BUG() and WARN() address
  perf/x86: Make more stuff static
  x86, perf: Fix the dependency of the x86 insn decoder selftest
  objtool: Ignore intentional differences for the x86 insn decoder
  objtool: Update sync-check.sh from perf's check-headers.sh
  perf build: Ignore intentional differences for the x86 insn decoder
  perf intel-pt: Use shared x86 insn decoder
  perf intel-pt: Remove inat.c from build dependency list
  perf: Update .gitignore file
  objtool: Move x86 insn decoder to a common location
  perf metricgroup: Support multiple events for metricgroup
  perf metricgroup: Scale the metric result
  perf pmu: Change convert_scale from static to global
  perf symbols: Move mem_info and branch_info out of symbol.h
  perf auxtrace: Uninline functions that touch perf_session
  perf tools: Remove needless evlist.h include directives
  perf tools: Remove needless evlist.h include directives
  perf tools: Remove needless thread_map.h include directives
  perf tools: Remove needless thread.h include directives
  perf tools: Remove needless map.h include directives
  ...
2019-09-16 17:06:21 -07:00
Ingo Molnar
563c4f85f9 Merge branch 'sched/rt' into sched/core, to pick up -rt changes
Pick up the first couple of patches working towards PREEMPT_RT.

Signed-off-by: Ingo Molnar <mingo@kernel.org>
2019-09-16 14:05:04 +02:00
Greg Kroah-Hartman
bc378eba65 Linux 5.3
-----BEGIN PGP SIGNATURE-----
 
 iQFSBAABCAA8FiEEq68RxlopcLEwq+PEeb4+QwBBGIYFAl1+quweHHRvcnZhbGRz
 QGxpbnV4LWZvdW5kYXRpb24ub3JnAAoJEHm+PkMAQRiGOOQH/Rg797V5t1rHK5VD
 iQMRner3IzGFroTBfFzlPSzjYFpBKJMAOjzaXqVDIsMOip9BuwEMHCapXMeJTYXN
 NrWv3m/J6DWDW9tTlHc9PErNcOkMaB8TZGjFfmQHwtyWgK5XghW3D1j8mzDvQi4N
 VIu4ZEWWgCW3hJ4pPUJ737UTbMMuCJlPNVg98DtKysJ8IOjniA8QICmKFlM6TrGg
 4SzxWYIN3zH4l1QA1nFOfKE1WsJdaOj0X4Xtv8qlMCtON1q5SGHJRnDdONeRmOQA
 2Ui/18Q5JJmogUyWitGcEgxB9gk/AG2XW5wvlEKeS8eZ0xpM0NsXu5gPLH0ROWON
 dnt75Lo=
 =imIe
 -----END PGP SIGNATURE-----

Merge 5.3 into android-mainline

Linux 5.3

Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I2d3f5eea4589c23da4dec57af3f9e9d74b151eca
2019-09-16 08:26:05 +02:00
Mark-PK Tsai
310aa0a25b perf/hw_breakpoint: Fix arch_hw_breakpoint use-before-initialization
If we disable the compiler's auto-initialization feature, if
-fplugin-arg-structleak_plugin-byref or -ftrivial-auto-var-init=pattern
are disabled, arch_hw_breakpoint may be used before initialization after:

  9a4903dde2 ("perf/hw_breakpoint: Split attribute parse and commit")

On our ARM platform, the struct step_ctrl in arch_hw_breakpoint, which
used to be zero-initialized by kzalloc(), may be used in
arch_install_hw_breakpoint() without initialization.

Signed-off-by: Mark-PK Tsai <mark-pk.tsai@mediatek.com>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Alix Wu <alix.wu@mediatek.com>
Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: YJ Chiang <yj.chiang@mediatek.com>
Link: https://lkml.kernel.org/r/20190906060115.9460-1-mark-pk.tsai@mediatek.com
[ Minor edits. ]
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2019-09-06 08:24:01 +02:00
Alexander Shishkin
ab43762ef0 perf: Allow normal events to output AUX data
In some cases, ordinary (non-AUX) events can generate data for AUX events.
For example, PEBS events can come out as records in the Intel PT stream
instead of their usual DS records, if configured to do so.

One requirement for such events is to consistently schedule together, to
ensure that the data from the "AUX output" events isn't lost while their
corresponding AUX event is not scheduled. We use grouping to provide this
guarantee: an "AUX output" event can be added to a group where an AUX event
is a group leader, and provided that the former supports writing to the
latter.

Signed-off-by: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: kan.liang@linux.intel.com
Link: https://lkml.kernel.org/r/20190806084606.4021-2-alexander.shishkin@linux.intel.com
2019-08-28 11:29:38 +02:00