Commit Graph

6789 Commits

Author SHA1 Message Date
Ivaylo Georgiev
ad2bc093ef Merge android12-5.10.26 (99941e2) into msm-5.10
* refs/heads/tmp-99941e2:
  ANDROID: gki_defconfig: Enable NET_CLS_{BASIC,TCINDEX,MATCHALL} & NET_ACT_{GACT,MIRRED}
  FROMLIST: selftests: Add a MREMAP_DONTUNMAP selftest for shmem
  FROMLIST: mm: Extend MREMAP_DONTUNMAP to non-anonymous mappings
  ANDROID: GKI: enable CONFIG_CMA_SYSFS
  ANDROID: make cma_sysfs experimental
  FROMLIST: mm: cma: support sysfs
  ANDROID: cpuidle: Move vendor hook to enter proper state
  ANDROID: fix up ext4 build from 5.10.26
  ANDROID: GKI: Enable DETECT_HUNG_TASK
  ANDROID: refresh ABI XML to new version
  ANDROID: GKI: refresh ABI XML
  Linux 5.10.26
  cifs: Fix preauth hash corruption
  x86/apic/of: Fix CPU devicetree-node lookups
  genirq: Disable interrupts for force threaded handlers
  firmware/efi: Fix a use after bug in efi_mem_reserve_persistent
  efi: use 32-bit alignment for efi_guid_t literals
  static_call: Fix static_call_update() sanity check
  MAINTAINERS: move the staging subsystem to lists.linux.dev
  MAINTAINERS: move some real subsystems off of the staging mailing list
  ext4: fix rename whiteout with fast commit
  ext4: fix potential error in ext4_do_update_inode
  ext4: do not try to set xattr into ea_inode if value is empty
  ext4: stop inode update before return
  ext4: find old entry again if failed to rename whiteout
  ext4: fix error handling in ext4_end_enable_verity()
  efivars: respect EFI_UNSUPPORTED return from firmware
  x86: Introduce TS_COMPAT_RESTART to fix get_nr_restart_syscall()
  x86: Move TS_COMPAT back to asm/thread_info.h
  kernel, fs: Introduce and use set_restart_fn() and arch_set_restart_data()
  x86/ioapic: Ignore IRQ2 again
  perf/x86/intel: Fix unchecked MSR access error caused by VLBR_EVENT
  perf/x86/intel: Fix a crash caused by zero PEBS status
  PCI: rpadlpar: Fix potential drc_name corruption in store functions
  counter: stm32-timer-cnt: fix ceiling miss-alignment with reload register
  counter: stm32-timer-cnt: fix ceiling write max value
  iio: hid-sensor-temperature: Fix issues of timestamp channel
  iio: hid-sensor-prox: Fix scale not correct issue
  iio: hid-sensor-humidity: Fix alignment issue of timestamp channel
  iio: adc: adi-axi-adc: add proper Kconfig dependencies
  iio: adc: ad7949: fix wrong ADC result due to incorrect bit mask
  iio: adc: ab8500-gpadc: Fix off by 10 to 3
  iio: gyro: mpu3050: Fix error handling in mpu3050_trigger_handler
  iio: adis16400: Fix an error code in adis16400_initial_setup()
  iio:adc:qcom-spmi-vadc: add default scale to LR_MUX2_BAT_ID channel
  iio:adc:stm32-adc: Add HAS_IOMEM dependency
  thunderbolt: Increase runtime PM reference count on DP tunnel discovery
  thunderbolt: Initialize HopID IDAs in tb_switch_alloc()
  usb: dwc3: gadget: Prevent EP queuing while stopping transfers
  usb: dwc3: gadget: Allow runtime suspend if UDC unbinded
  usb: typec: tcpm: Invoke power_supply_changed for tcpm-source-psy-
  usb: typec: Remove vdo[3] part of tps6598x_rx_identity_reg struct
  usb: gadget: configfs: Fix KASAN use-after-free
  usbip: Fix incorrect double assignment to udc->ud.tcp_rx
  usb-storage: Add quirk to defeat Kindle's automatic unload
  powerpc: Force inlining of cpu_has_feature() to avoid build failure
  gfs2: bypass signal_our_withdraw if no journal
  gfs2: move freeze glock outside the make_fs_rw and _ro functions
  gfs2: Add common helper for holding and releasing the freeze glock
  regulator: pca9450: Clear PRESET_EN bit to fix BUCK1/2/3 voltage setting
  regulator: pca9450: Enable system reset on WDOG_B assertion
  regulator: pca9450: Add SD_VSEL GPIO for LDO5
  net: bonding: fix error return code of bond_neigh_init()
  io_uring: clear IOCB_WAITQ for non -EIOCBQUEUED return
  io_uring: don't attempt IO reissue from the ring exit path
  drm/amd/pm: fulfill the Polaris implementation for get_clock_by_type_with_latency()
  s390/qeth: schedule TX NAPI on QAOB completion
  ibmvnic: remove excessive irqsave
  media: cedrus: h264: Support profile controls
  io_uring: fix inconsistent lock state
  iwlwifi: Add a new card for MA family
  drm/amd/display: turn DPMS off on connector unplug
  MIPS: compressed: fix build with enabled UBSAN
  net: phy: micrel: set soft_reset callback to genphy_soft_reset for KSZ8081
  i40e: Fix endianness conversions
  powerpc/sstep: Fix darn emulation
  powerpc/sstep: Fix load-store and update emulation
  RDMA/mlx5: Allow creating all QPs even when non RDMA profile is used
  scsi: isci: Pass gfp_t flags in isci_port_bc_change_received()
  scsi: isci: Pass gfp_t flags in isci_port_link_up()
  scsi: isci: Pass gfp_t flags in isci_port_link_down()
  scsi: mvsas: Pass gfp_t flags to libsas event notifiers
  scsi: libsas: Introduce a _gfp() variant of event notifiers
  scsi: libsas: Remove notifier indirection
  scsi: pm8001: Neaten debug logging macros and uses
  scsi: pm80xx: Fix pm8001_mpi_get_nvmd_resp() race condition
  scsi: pm80xx: Make running_req atomic
  scsi: pm80xx: Make mpi_build_cmd locking consistent
  module: harden ELF info handling
  module: avoid *goto*s in module_sig_check()
  module: merge repetitive strings in module_sig_check()
  RDMA/rtrs: Fix KASAN: stack-out-of-bounds bug
  RDMA/rtrs: Introduce rtrs_post_send
  RDMA/rtrs-srv: Jump to dereg_mr label if allocate iu fails
  RDMA/rtrs: Remove unnecessary argument dir of rtrs_iu_free
  bpf: Declare __bpf_free_used_maps() unconditionally
  serial: stm32: fix DMA initialization error handling
  tty: serial: stm32-usart: Remove set but unused 'cookie' variables
  ibmvnic: serialize access to work queue on remove
  ibmvnic: add some debugs
  nvme-rdma: fix possible hang when failing to set io queues
  gpiolib: Assign fwnode to parent's if no primary one provided
  counter: stm32-timer-cnt: Report count function when SLAVE_MODE_DISABLED
  RISC-V: correct enum sbi_ext_rfence_fid
  scsi: ufs: ufs-mediatek: Correct operator & -> &&
  scsi: myrs: Fix a double free in myrs_cleanup()
  scsi: lpfc: Fix some error codes in debugfs
  riscv: Correct SPARSEMEM configuration
  cifs: fix allocation size on newly created files
  kbuild: Fix <linux/version.h> for empty SUBLEVEL or PATCHLEVEL again
  net/qrtr: fix __netdev_alloc_skb call
  io_uring: ensure that SQPOLL thread is started for exit
  pstore: Fix warning in pstore_kill_sb()
  i915/perf: Start hrtimer only if sampling the OA buffer
  sunrpc: fix refcount leak for rpc auth modules
  vhost_vdpa: fix the missing irq_bypass_unregister_producer() invocation
  vfio: IOMMU_API should be selected
  svcrdma: disable timeouts on rdma backchannel
  NFSD: fix dest to src mount in inter-server COPY
  NFSD: Repair misuse of sv_lock in 5.10.16-rt30.
  nfsd: don't abort copies early
  nfsd: Don't keep looking up unhashed files in the nfsd file cache
  nvmet: don't check iosqes,iocqes for discovery controllers
  nvme-tcp: fix a NULL deref when receiving a 0-length r2t PDU
  nvme-tcp: fix possible hang when failing to set io queues
  nvme-tcp: fix misuse of __smp_processor_id with preemption enabled
  nvme: fix Write Zeroes limitations
  ALSA: usb-audio: Fix unintentional sign extension issue
  afs: Stop listxattr() from listing "afs.*" attributes
  afs: Fix accessing YFS xattrs on a non-YFS server
  ASoC: simple-card-utils: Do not handle device clock
  ASoC: qcom: lpass-cpu: Fix lpass dai ids parse
  ASoC: codecs: wcd934x: add a sanity check in set channel map
  ASoC: qcom: sdm845: Fix array out of range on rx slim channels
  ASoC: qcom: sdm845: Fix array out of bounds access
  ASoC: SOF: intel: fix wrong poll bits in dsp power down
  ASoC: SOF: Intel: unregister DMIC device on probe error
  ASoC: Intel: bytcr_rt5640: Fix HP Pavilion x2 10-p0XX OVCD current threshold
  ASoC: fsl_ssi: Fix TDM slot setup for I2S mode
  drm/amd/display: Correct algorithm for reversed gamma
  vhost-vdpa: set v->config_ctx to NULL if eventfd_ctx_fdget() fails
  vhost-vdpa: fix use-after-free of v->config_ctx
  btrfs: fix slab cache flags for free space tree bitmap
  btrfs: fix race when cloning extent buffer during rewind of an old root
  zonefs: fix to update .i_wr_refcnt correctly in zonefs_open_zone()
  zonefs: prevent use of seq files as swap file
  zonefs: Fix O_APPEND async write handling
  s390/pci: fix leak of PCI device structure
  s390/pci: remove superfluous zdev->zbus check
  s390/pci: refactor zpci_create_device()
  s390/vtime: fix increased steal time accounting
  Revert "PM: runtime: Update device status before letting suppliers suspend"
  ALSA: hda/realtek: fix mute/micmute LEDs for HP 850 G8
  ALSA: hda/realtek: fix mute/micmute LEDs for HP 440 G8
  ALSA: hda/realtek: fix mute/micmute LEDs for HP 840 G8
  ALSA: hda/realtek: Apply headset-mic quirks for Xiaomi Redmibook Air
  ALSA: hda: generic: Fix the micmute led init state
  ALSA: hda/realtek: apply pin quirk for XiaomiNotebook Pro
  ALSA: dice: fix null pointer dereference when node is disconnected
  spi: cadence: set cqspi to the driver_data field of struct device
  ASoC: ak5558: Add MODULE_DEVICE_TABLE
  ASoC: ak4458: Add MODULE_DEVICE_TABLE
  ANDROID: refresh ABI XML to new version
  ANDROID: refresh ABI
  Linux 5.10.25
  net: dsa: b53: Support setting learning on port
  ALSA: usb-audio: Don't avoid stopping the stream at disconnection
  Revert "nfsd4: a client's own opens needn't prevent delegations"
  Revert "nfsd4: remove check_conflicting_opens warning"
  fuse: fix live lock in fuse_iget()
  RDMA/srp: Fix support for unpopulated and unbalanced NUMA nodes
  bpf, selftests: Fix up some test_verifier cases for unprivileged
  bpf: Add sanity check for upper ptr_limit
  bpf: Simplify alu_limit masking for pointer arithmetic
  bpf: Fix off-by-one for area size in creating mask to left
  bpf: Prohibit alu ops for pointer types not defining ptr_limit
  crypto: x86/aes-ni-xts - use direct calls to and 4-way stride
  crypto: aesni - Use TEST %reg,%reg instead of CMP $0,%reg
  Linux 5.10.24
  RDMA/umem: Use ib_dma_max_seg_size instead of dma_get_max_seg_size
  KVM: arm64: Fix nVHE hyp panic host context restore
  xen/events: avoid handling the same event on two cpus at the same time
  xen/events: don't unmask an event channel when an eoi is pending
  mm/page_alloc.c: refactor initialization of struct page for holes in memory layout
  KVM: arm64: Ensure I-cache isolation between vcpus of a same VM
  mm/madvise: replace ptrace attach requirement for process_madvise
  mm/userfaultfd: fix memory corruption due to writeprotect
  KVM: arm64: Fix exclusive limit for IPA size
  KVM: arm64: Reject VM creation when the default IPA size is unsupported
  KVM: arm64: nvhe: Save the SPE context early
  KVM: arm64: Avoid corrupting vCPU context register in guest exit
  KVM: arm64: Fix range alignment when walking page tables
  KVM: kvmclock: Fix vCPUs > 64 can't be online/hotpluged
  KVM: x86: Ensure deadline timer has truly expired before posting its IRQ
  x86/entry: Fix entry/exit mismatch on failed fast 32-bit syscalls
  x86/sev-es: Use __copy_from_user_inatomic()
  x86/sev-es: Correctly track IRQ states in runtime #VC handler
  x86/entry: Move nmi entry/exit into common code
  x86/sev-es: Check regs->sp is trusted before adjusting #VC IST stack
  x86/sev-es: Introduce ip_within_syscall_gap() helper
  x86/unwind/orc: Disable KASAN checking in the ORC unwinder, part 2
  binfmt_misc: fix possible deadlock in bm_register_write
  powerpc: Fix missing declaration of [en/dis]able_kernel_vsx()
  powerpc: Fix inverted SET_FULL_REGS bitop
  powerpc/64s: Fix instruction encoding for lis in ppc_function_entry()
  efi: stub: omit SetVirtualAddressMap() if marked unsupported in RT_PROP table
  sched/membarrier: fix missing local execution of ipi_sync_rq_state()
  linux/compiler-clang.h: define HAVE_BUILTIN_BSWAP*
  zram: fix return value on writeback_store
  include/linux/sched/mm.h: use rcu_dereference in in_vfork()
  stop_machine: mark helpers __always_inline
  seqlock,lockdep: Fix seqcount_latch_init()
  powerpc/64s/exception: Clean up a missed SRR specifier
  hrtimer: Update softirq_expires_next correctly after __hrtimer_get_next_event()
  perf/x86/intel: Set PERF_ATTACH_SCHED_CB for large PEBS and LBR
  perf/core: Flush PMU internal buffers for per-CPU events
  arm64: mm: use a 48-bit ID map when possible on 52-bit VA builds
  configfs: fix a use-after-free in __configfs_open_file
  nvme-fc: fix racing controller reset and create association
  block: rsxx: fix error return code of rsxx_pci_probe()
  NFSv4.2: fix return value of _nfs4_get_security_label()
  NFS: Don't gratuitously clear the inode cache when lookup failed
  NFS: Don't revalidate the directory permissions on a lookup failure
  SUNRPC: Set memalloc_nofs_save() for sync tasks
  arm64/mm: Fix pfn_valid() for ZONE_DEVICE based memory
  cpufreq: qcom-hw: Fix return value check in qcom_cpufreq_hw_cpu_init()
  cpufreq: qcom-hw: fix dereferencing freed memory 'data'
  sh_eth: fix TRSCER mask for R7S72100
  staging: comedi: pcl818: Fix endian problem for AI command data
  staging: comedi: pcl711: Fix endian problem for AI command data
  staging: comedi: me4000: Fix endian problem for AI command data
  staging: comedi: dmm32at: Fix endian problem for AI command data
  staging: comedi: das800: Fix endian problem for AI command data
  staging: comedi: das6402: Fix endian problem for AI command data
  staging: comedi: adv_pci1710: Fix endian problem for AI command data
  staging: comedi: addi_apci_1500: Fix endian problem for command sample
  staging: comedi: addi_apci_1032: Fix endian problem for COS sample
  staging: rtl8192e: Fix possible buffer overflow in _rtl92e_wx_set_scan
  staging: rtl8712: Fix possible buffer overflow in r8712_sitesurvey_cmd
  staging: ks7010: prevent buffer overflow in ks_wlan_set_scan()
  staging: rtl8188eu: fix potential memory corruption in rtw_check_beacon_data()
  staging: rtl8712: unterminated string leads to read overflow
  staging: rtl8188eu: prevent ->ssid overflow in rtw_wx_set_scan()
  staging: rtl8192u: fix ->ssid overflow in r8192_wx_set_scan()
  misc: fastrpc: restrict user apps from sending kernel RPC messages
  misc/pvpanic: Export module FDT device table
  Revert "serial: max310x: rework RX interrupt handling"
  usbip: fix vudc usbip_sockfd_store races leading to gpf
  usbip: fix vhci_hcd attach_store() races leading to gpf
  usbip: fix stub_dev usbip_sockfd_store() races leading to gpf
  usbip: fix vudc to check for stream socket
  usbip: fix vhci_hcd to check for stream socket
  usbip: fix stub_dev to check for stream socket
  USB: serial: cp210x: add some more GE USB IDs
  USB: serial: cp210x: add ID for Acuity Brands nLight Air Adapter
  USB: serial: ch341: add new Product ID
  USB: serial: io_edgeport: fix memory leak in edge_startup
  xhci: Fix repeated xhci wake after suspend due to uncleared internal wake state
  usb: xhci: Fix ASMedia ASM1042A and ASM3242 DMA addressing
  xhci: Improve detection of device initiated wake signal.
  usb: xhci: do not perform Soft Retry for some xHCI hosts
  usb: renesas_usbhs: Clear PIPECFG for re-enabling pipe with other EPNUM
  USB: usblp: fix a hang in poll() if disconnected
  usb: dwc3: qcom: Honor wakeup enabled/disabled state
  usb: dwc3: qcom: add ACPI device id for sc8180x
  usb: dwc3: qcom: add URS Host support for sdm845 ACPI boot
  usb: dwc3: qcom: Add missing DWC3 OF node refcount decrement
  usb: gadget: f_uac1: stop playback on function disable
  usb: gadget: f_uac2: always increase endpoint max_packet_size by one audio slot
  USB: gadget: u_ether: Fix a configfs return code
  USB: gadget: udc: s3c2410_udc: fix return value check in s3c2410_udc_probe()
  Goodix Fingerprint device is not a modem
  cifs: do not send close in compound create+close requests
  mmc: cqhci: Fix random crash when remove mmc module/card
  mmc: core: Fix partition switch time for eMMC
  mmc: mmci: Add MMC_CAP_NEED_RSP_BUSY for the stm32 variants
  xen/events: reset affinity of 2-level event when tearing it down
  software node: Fix node registration
  s390/dasd: fix hanging IO request during DASD driver unbind
  s390/dasd: fix hanging DASD driver unbind
  arm64: perf: Fix 64-bit event counter read truncation
  arm64: mte: Map hotplugged memory as Normal Tagged
  arm64: kasan: fix page_alloc tagging with DEBUG_VIRTUAL
  block: Try to handle busy underlying device on discard
  block: Discard page cache of zone reset target range
  Revert 95ebabde382c ("capabilities: Don't allow writing ambiguous v3 file capabilities")
  ALSA: usb-audio: fix use after free in usb_audio_disconnect
  ALSA: usb-audio: fix NULL ptr dereference in usb_audio_probe
  ALSA: usb-audio: Disable USB autosuspend properly in setup_disable_autosuspend()
  ALSA: usb-audio: Apply the control quirk to Plantronics headsets
  ALSA: usb-audio: Fix "cannot get freq eq" errors on Dell AE515 sound bar
  ALSA: hda: Avoid spurious unsol event handling during S3/S4
  ALSA: hda: Flush pending unsolicited events before suspend
  ALSA: hda: Drop the BATCH workaround for AMD controllers
  ALSA: hda/ca0132: Add Sound BlasterX AE-5 Plus support
  ALSA: hda/conexant: Add quirk for mute LED control on HP ZBook G5
  ALSA: hda/hdmi: Cancel pending works before suspend
  ALSA: usb: Add Plantronics C320-M USB ctrl msg delay quirk
  ARM: efistub: replace adrl pseudo-op with adr_l macro invocation
  ARM: assembler: introduce adr_l, ldr_l and str_l macros
  ARM: 9029/1: Make iwmmxt.S support Clang's integrated assembler
  mmc: sdhci: Update firmware interface API
  clk: qcom: gpucc-msm8998: Add resets, cxc, fix flags on gpu_gx_gdsc
  scsi: target: core: Prevent underflow for service actions
  scsi: target: core: Add cmd length set before cmd complete
  scsi: libiscsi: Fix iscsi_prep_scsi_cmd_pdu() error handling
  sysctl.c: fix underflow value setting risk in vm_table
  drivers/base/memory: don't store phys_device in memory blocks
  s390/smp: __smp_rescan_cpus() - move cpumask away from stack
  kasan: fix memory corruption in kasan_bitops_tags test
  i40e: Fix memory leak in i40e_probe
  PCI: Fix pci_register_io_range() memory leak
  kbuild: clamp SUBLEVEL to 255
  ext4: don't try to processed freed blocks until mballoc is initialized
  PCI/LINK: Remove bandwidth notification
  drivers/base: build kunit tests without structleak plugin
  PCI: mediatek: Add missing of_node_put() to fix reference leak
  PCI: xgene-msi: Fix race in installing chained irq handler
  Input: applespi - don't wait for responses to commands indefinitely.
  sparc64: Use arch_validate_flags() to validate ADI flag
  sparc32: Limit memblock allocation to low memory
  clk: qcom: gdsc: Implement NO_RET_PERIPH flag
  iommu/amd: Fix performance counter initialization
  powerpc/64: Fix stack trace not displaying final frame
  HID: logitech-dj: add support for the new lightspeed connection iteration
  powerpc/perf: Record counter overflow always if SAMPLE_IP is unset
  powerpc: improve handling of unrecoverable system reset
  spi: stm32: make spurious and overrun interrupts visible
  powerpc/pci: Add ppc_md.discover_phbs()
  Platform: OLPC: Fix probe error handling
  mmc: sdhci-iproc: Add ACPI bindings for the RPi
  mmc: mediatek: fix race condition between msdc_request_timeout and irq
  mmc: mxs-mmc: Fix a resource leak in an error handling path in 'mxs_mmc_probe()'
  iommu/vt-d: Clear PRQ overflow only when PRQ is empty
  udf: fix silent AED tagLocation corruption
  scsi: ufs: WB is only available on LUN #0 to #7
  i2c: rcar: optimize cacheline to minimize HW race condition
  i2c: rcar: faster irq code to minimize HW race condition
  ath11k: fix AP mode for QCA6390
  ath11k: start vdev if a bss peer is already created
  ath11k: peer delete synchronization with firmware
  net: enetc: initialize RFS/RSS memories for unused ports too
  enetc: Fix unused var build warning for CONFIG_OF
  net: dsa: tag_mtk: fix 802.1ad VLAN egress
  net: dsa: tag_ar9331: let DSA core deal with TX reallocation
  net: dsa: tag_gswip: let DSA core deal with TX reallocation
  net: dsa: tag_dsa: let DSA core deal with TX reallocation
  net: dsa: tag_brcm: let DSA core deal with TX reallocation
  net: dsa: tag_edsa: let DSA core deal with TX reallocation
  net: dsa: tag_lan9303: let DSA core deal with TX reallocation
  net: dsa: tag_mtk: let DSA core deal with TX reallocation
  net: dsa: tag_ocelot: let DSA core deal with TX reallocation
  net: dsa: tag_qca: let DSA core deal with TX reallocation
  net: dsa: trailer: don't allocate additional memory for padding/tagging
  net: dsa: tag_ksz: don't allocate additional memory for padding/tagging
  net: dsa: implement a central TX reallocation procedure
  s390/qeth: fix notification for pending buffers during teardown
  s390/qeth: improve completion of pending TX buffers
  s390/qeth: remove QETH_QDIO_BUF_HANDLED_DELAYED state
  s390/qeth: don't replace a fully completed async TX buffer
  net: hns3: fix error mask definition of flow director
  cifs: fix credit accounting for extra channel
  media: rc: compile rc-cec.c into rc-core
  media: v4l: vsp1: Fix bru null pointer access
  media: v4l: vsp1: Fix uif null pointer access
  media: rkisp1: params: fix wrong bits settings
  media: usbtv: Fix deadlock on suspend
  sh_eth: fix TRSCER mask for R7S9210
  qxl: Fix uninitialised struct field head.surface_id
  s390/crypto: return -EFAULT if copy_to_user() fails
  s390/cio: return -EFAULT if copy_to_user() fails
  drm/i915: Wedge the GPU if command parser setup fails
  drm/shmem-helpers: vunmap: Don't put pages for dma-buf
  drm: meson_drv add shutdown function
  drm: Use USB controller's DMA mask when importing dmabufs
  drm/shmem-helper: Don't remove the offset in vm_area_struct pgoff
  drm/shmem-helper: Check for purged buffers in fault handler
  drm/amdgpu/display: handle aux backlight in backlight_get_brightness
  drm/amdgpu/display: don't assert in set backlight function
  drm/amdgpu/display: simplify backlight setting
  drm/amd/pm: bug fix for pcie dpm
  drm/amd/display: Fix nested FPU context in dcn21_validate_bandwidth()
  drm/amdgpu/display: use GFP_ATOMIC in dcn21_validate_bandwidth_fp()
  drm/amd/display: Add a backlight module option
  drm/compat: Clear bounce structures
  gpio: fix gpio-device list corruption
  gpio: pca953x: Set IRQ type when handle Intel Galileo Gen 2
  gpiolib: acpi: Allow to find GpioInt() resource by name and index
  gpiolib: acpi: Add ACPI_GPIO_QUIRK_ABSOLUTE_NUMBER quirk
  bnxt_en: reliably allocate IRQ table on reset to avoid crash
  s390/cio: return -EFAULT if copy_to_user() fails again
  net: hns3: fix bug when calculating the TCAM table info
  net: hns3: fix query vlan mask value error for flow director
  perf report: Fix -F for branch & mem modes
  perf traceevent: Ensure read cmdlines are null terminated.
  mlxsw: spectrum_ethtool: Add an external speed to PTYS register
  selftests: forwarding: Fix race condition in mirror installation
  net: phy: make mdio_bus_phy_suspend/resume as __maybe_unused
  ethtool: fix the check logic of at least one channel for RX/TX
  net: stmmac: fix wrongly set buffer2 valid when sph unsupport
  net: stmmac: fix watchdog timeout during suspend/resume stress test
  net: stmmac: stop each tx channel independently
  perf build: Fix ccache usage in $(CC) when generating arch errno table
  tools/resolve_btfids: Fix build error with older host toolchains
  ixgbe: fail to create xfrm offload of IPsec tunnel mode SA
  r8169: fix r8168fp_adjust_ocp_cmd function
  s390/qeth: fix memory leak after failed TX Buffer allocation
  net: qrtr: fix error return code of qrtr_sendmsg()
  net: enetc: allow hardware timestamping on TX queues with tc-etf enabled
  net: davicom: Fix regulator not turned off on driver removal
  net: davicom: Fix regulator not turned off on failed probe
  net: lapbether: Remove netif_start_queue / netif_stop_queue
  stmmac: intel: Fixes clock registration error seen for multiple interfaces
  net: stmmac: Fix VLAN filter delete timeout issue in Intel mGBE SGMII
  cipso,calipso: resolve a number of problems with the DOI refcounts
  netdevsim: init u64 stats for 32bit hardware
  net: usb: qmi_wwan: allow qmimux add/del with master up
  net: dsa: sja1105: fix SGMII PCS being forced to SPEED_UNKNOWN instead of SPEED_10
  net: mscc: ocelot: properly reject destination IP keys in VCAP IS1
  net: sched: avoid duplicates in classes dump
  nexthop: Do not flush blackhole nexthops when loopback goes down
  net: stmmac: fix incorrect DMA channel intr enable setting of EQoS v4.10
  net/mlx4_en: update moderation when config reset
  net: ethernet: mtk-star-emac: fix wrong unmap in RX handling
  net: enetc: keep RX ring consumer index in sync with hardware
  net: enetc: remove bogus write to SIRXIDR from enetc_setup_rxbdr
  net: enetc: force the RGMII speed and duplex instead of operating in inband mode
  net: enetc: don't disable VLAN filtering in IFF_PROMISC mode
  net: enetc: fix incorrect TPID when receiving 802.1ad tagged packets
  net: enetc: take the MDIO lock only once per NAPI poll cycle
  net: enetc: don't overwrite the RSS indirection table when initializing
  sh_eth: fix TRSCER mask for SH771x
  net: dsa: tag_rtl4_a: fix egress tags
  docs: networking: drop special stable handling
  Revert "mm, slub: consider rest of partial list if acquire_slab() fails"
  cifs: return proper error code in statfs(2)
  mount: fix mounting of detached mounts onto targets that reside on shared mounts
  powerpc/603: Fix protection of user pages mapped with PROT_NONE
  mt76: dma: do not report truncated frames to mac80211
  ibmvnic: always store valid MAC address
  ibmvnic: Fix possibly uninitialized old_num_tx_queues variable warning.
  libbpf: Clear map_info before each bpf_obj_get_info_by_fd
  samples, bpf: Add missing munmap in xdpsock
  selftests/bpf: Mask bpf_csum_diff() return value to 16 bits in test_verifier
  selftests/bpf: No need to drop the packet when there is no geneve opt
  selftests/bpf: Use the last page in test_snprintf_btf on s390
  net: phy: fix save wrong speed and duplex problem if autoneg is on
  net: always use icmp{,v6}_ndo_send from ndo_start_xmit
  netfilter: x_tables: gpf inside xt_find_revision()
  netfilter: nf_nat: undo erroneous tcp edemux lookup
  tcp: add sanity tests to TCP_QUEUE_SEQ
  tcp: Fix sign comparison bug in getsockopt(TCP_ZEROCOPY_RECEIVE)
  can: tcan4x5x: tcan4x5x_init(): fix initialization - clear MRAM before entering Normal Mode
  can: flexcan: invoke flexcan_chip_freeze() to enter freeze mode
  can: flexcan: enable RX FIFO after FRZ/HALT valid
  can: flexcan: assert FRZ bit in flexcan_chip_freeze()
  can: skb: can_skb_set_owner(): fix ref counting if socket was closed before setting skb ownership
  net: l2tp: reduce log level of messages in receive path, add counter instead
  net: avoid infinite loop in mpls_gso_segment when mpls_hlen == 0
  net: check if protocol extracted by virtio_net_hdr_set_proto is correct
  net: Fix gro aggregation for udp encaps with zero csum
  ath9k: fix transmitting to stations in dynamic SMPS mode
  crypto: mips/poly1305 - enable for all MIPS processors
  ethernet: alx: fix order of calls on resume
  powerpc/pseries: Don't enforce MSI affinity with kdump
  powerpc/perf: Fix handling of privilege level checks in perf interrupt context
  uapi: nfnetlink_cthelper.h: fix userspace compilation error
  Linux 5.10.23
  nvme-pci: add quirks for Lexar 256GB SSD
  nvme-pci: mark Seagate Nytro XM1440 as QUIRK_NO_NS_DESC_LIST.
  KVM: SVM: Clear the CR4 register on reset
  scsi: ufs: Fix a duplicate dev quirk number
  ASoC: Intel: sof_sdw: add quirk for HP Spectre x360 convertible
  ASoC: Intel: sof_sdw: reorganize quirks by generation
  PCI: cadence: Retrain Link to work around Gen2 training defect
  ALSA: usb-audio: add mixer quirks for Pioneer DJM-900NXS2
  ALSA: usb-audio: Add DJM750 to Pioneer mixer quirk
  HID: i2c-hid: Add I2C_HID_QUIRK_NO_IRQ_AFTER_RESET for ITE8568 EC on Voyo Winpad A15
  mmc: sdhci-of-dwcmshc: set SDHCI_QUIRK2_PRESET_VALUE_BROKEN
  drm/msm/a5xx: Remove overwriting A5XX_PC_DBG_ECO_CNTL register
  scsi: ufs: ufs-exynos: Use UFSHCD_QUIRK_ALIGN_SG_WITH_PAGE_SIZE
  scsi: ufs: ufs-exynos: Apply vendor-specific values for three timeouts
  scsi: ufs: Introduce a quirk to allow only page-aligned sg entries
  misc: eeprom_93xx46: Add quirk to support Microchip 93LC46B eeprom
  scsi: ufs: Add a quirk to permit overriding UniPro defaults
  scsi: ufs-mediatek: Enable UFSHCI_QUIRK_SKIP_MANUAL_WB_FLUSH_CTRL
  ASoC: Intel: sof_sdw: add missing TGL_HDMI quirk for Dell SKU 0A32
  KVM: x86: Supplement __cr4_reserved_bits() with X86_FEATURE_PCID check
  PCI: Add function 1 DMA alias quirk for Marvell 9215 SATA controller
  usb: cdns3: fix NULL pointer dereference on no platform data
  usb: cdns3: add quirk for enable runtime pm by default
  usb: cdns3: host: add xhci_plat_priv quirk XHCI_SKIP_PHY_INIT
  usb: cdns3: host: add .suspend_quirk for xhci-plat.c
  ASoC: Intel: bytcr_rt5640: Add quirk for ARCHOS Cesium 140
  ACPI: video: Add DMI quirk for GIGABYTE GB-BXBT-2807
  media: cx23885: add more quirks for reset DMA on some AMD IOMMU
  HID: mf: add support for 0079:1846 Mayflash/Dragonrise USB Gamecube Adapter
  platform/x86: acer-wmi: Add ACER_CAP_KBD_DOCK quirk for the Aspire Switch 10E SW3-016
  platform/x86: acer-wmi: Add support for SW_TABLET_MODE on Switch devices
  platform/x86: acer-wmi: Add ACER_CAP_SET_FUNCTION_MODE capability flag
  platform/x86: acer-wmi: Add new force_caps module parameter
  platform/x86: acer-wmi: Cleanup accelerometer device handling
  platform/x86: acer-wmi: Cleanup ACER_CAP_FOO defines
  bus: ti-sysc: Implement GPMC debug quirk to drop platform data
  ASoC: Intel: sof_sdw: add quirk for new TigerLake-SDCA device
  mwifiex: pcie: skip cancel_work_sync() on reset failure path
  Bluetooth: btqca: Add valid le states quirk
  iommu/amd: Fix sleeping in atomic in increase_address_space()
  btrfs: don't flush from btrfs_delayed_inode_reserve_metadata
  btrfs: export and rename qgroup_reserve_meta
  arm64: Make CPU_BIG_ENDIAN depend on ld.bfd or ld.lld 13.0.0+
  parisc: Enable -mlong-calls gcc option with CONFIG_COMPILE_TEST
  nvme-pci: mark Kingston SKC2000 as not supporting the deepest power state
  ASoC: SOF: Intel: broadwell: fix mutual exclusion with catpt driver
  ACPICA: Fix race in generic_serial_bus (I2C) and GPIO op_region parameter handling
  Linux 5.10.22
  r8169: fix resuming from suspend on RTL8105e if machine runs on battery
  tomoyo: recognize kernel threads correctly
  of: unittest: Fix build on architectures without CONFIG_OF_ADDRESS
  Revert "arm64: dts: amlogic: add missing ethernet reset ID"
  iommu/vt-d: Fix status code for Allocate/Free PASID command
  rsxx: Return -EFAULT if copy_to_user() fails
  ftrace: Have recordmcount use w8 to read relp->r_info in arm64_is_fake_mcount
  ALSA: hda: intel-nhlt: verify config type
  IB/mlx5: Add missing error code
  RDMA/rxe: Fix missing kconfig dependency on CRYPTO
  RDMA/cm: Fix IRQ restore in ib_send_cm_sidr_rep
  ALSA: ctxfi: cthw20k2: fix mask on conf to allow 4 bits
  mm: Remove examples from enum zone_type comment
  arm64: mm: Set ZONE_DMA size based on early IORT scan
  arm64: mm: Set ZONE_DMA size based on devicetree's dma-ranges
  of: unittest: Add test for of_dma_get_max_cpu_address()
  of/address: Introduce of_dma_get_max_cpu_address()
  arm64: mm: Move zone_dma_bits initialization into zone_sizes_init()
  arm64: mm: Move reserve_crashkernel() into mem_init()
  crypto - shash: reduce minimum alignment of shash_desc structure
  drm/amdgpu: fix parameter error of RREG32_PCIE() in amdgpu_regs_pcie
  drm/amdgpu:disable VCN for Navi12 SKU
  dm verity: fix FEC for RS roots unaligned to block size
  dm bufio: subtract the number of initial sectors in dm_bufio_get_device_size
  io_uring: ignore double poll add on the same waitqueue head
  ring-buffer: Force before_stamp and write_stamp to be different on discard
  PM: runtime: Update device status before letting suppliers suspend
  btrfs: fix warning when creating a directory with smack enabled
  btrfs: unlock extents in btrfs_zero_range in case of quota reservation errors
  btrfs: free correct amount of space in btrfs_delayed_inode_reserve_metadata
  btrfs: validate qgroup inherit for SNAP_CREATE_V2 ioctl
  btrfs: fix race between extent freeing/allocation when using bitmaps
  btrfs: fix stale data exposure after cloning a hole with NO_HOLES enabled
  btrfs: fix race between swap file activation and snapshot creation
  btrfs: fix race between writes to swap files and scrub
  btrfs: fix raid6 qstripe kmap
  btrfs: avoid double put of block group when emptying cluster
  tpm, tpm_tis: Decorate tpm_get_timeouts() with request_locality()
  tpm, tpm_tis: Decorate tpm_tis_gen_interrupt() with request_locality()
  ALSA: usb-audio: Drop bogus dB range in too low level
  ALSA: usb-audio: use Corsair Virtuoso mapping for Corsair Virtuoso SE
  ALSA: hda/realtek: Enable headset mic of Acer SWIFT with ALC256

Conflicts:
	drivers/cpufreq/qcom-cpufreq-hw.c
	drivers/vfio/Kconfig
	net/qrtr/qrtr.c

Change-Id: Ib622ea353c1c1db4b1cce31729d224df47902a57
Signed-off-by: Ivaylo Georgiev <irgeorgiev@codeaurora.org>
2021-03-27 22:31:47 -07:00
Greg Kroah-Hartman
99941e23f7 Merge branch 'android12-5.10-lts' into 'android12-5.10'
Updates the branch to the 5.10.26 upstream kernel version.

Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I84aa29bf4e4e809051eb346830c4c4b5acb78c8c
2021-03-26 08:25:46 +01:00
Ivaylo Georgiev
86e90c034c Merge android12-5.10.21+ (44f812e) into msm-5.10
* refs/heads/tmp-44f812e:
  ANDROID: sched/core: Move en/dequeue hooks before related callbacks
  FROMGIT: kasan: record task_work_add() call stack
  FROMGIT: kasan, mm: integrate slab init_on_free with HW_TAGS
  FROMGIT: kasan, mm: integrate slab init_on_alloc with HW_TAGS
  FROMGIT: kasan, mm: integrate page_alloc init with HW_TAGS
  FROMGIT: mm: introduce debug_pagealloc_{map,unmap}_pages() helpers
  FROMGIT: mm, page_poison: remove CONFIG_PAGE_POISONING_ZERO
  FROMGIT: mm/page_alloc: clear all pages in post_alloc_hook() with init_on_alloc=1
  FROMGIT: mm, page_poison: remove CONFIG_PAGE_POISONING_NO_SANITY
  FROMGIT: kernel/power: allow hibernation with page_poison sanity checking
  FROMGIT: mm, page_poison: use static key more efficiently
  BACKPORT: mm, page_alloc: do not rely on the order of page_poison and init_on_alloc/free parameters
  FROMGIT: kasan: init memory in kasan_(un)poison for HW_TAGS
  FROMGIT: arm64: kasan: allow to init memory when setting tags
  FROMGIT: mm, kasan: don't poison boot memory with tag-based modes
  FROMGIT: kasan: initialize shadow to TAG_INVALID for SW_TAGS
  FROMGIT: mm/kasan: switch from strlcpy to strscpy
  BACKPORT: kasan: remove redundant config option
  FROMGIT: kasan: fix per-page tags for non-page_alloc pages
  FROMGIT: kasan: fix KASAN_STACK dependency for HW_TAGS
  FROMGIT: kasan, mm: fix crash with HW_TAGS and DEBUG_PAGEALLOC
  FROMGIT: arm64: kasan: fix page_alloc tagging with DEBUG_VIRTUAL
  FROMLIST: configfs: make directories inherit uid/gid from creator
  ANDROID: GKI: add some padding to some driver core structures
  ANDROID: Initial Android 12 OWNERS for abi metafiles
  UPSTREAM: iommu/msm: Hook up iotlb_sync_map
  UPSTREAM: memory: mtk-smi: Allow building as module
  UPSTREAM: memory: mtk-smi: Use platform_register_drivers
  UPSTREAM: iommu/mediatek: Fix error code in probe()
  UPSTREAM: iommu/mediatek: Fix unsigned domid comparison with less than zero
  UPSTREAM: iommu/mediatek: Add mt8192 support
  UPSTREAM: memory: mtk-smi: Add mt8192 support
  UPSTREAM: iommu/mediatek: Remove unnecessary check in attach_device
  UPSTREAM: iommu/mediatek: Support master use iova over 32bit
  UPSTREAM: iommu/mediatek: Add iova reserved function
  UPSTREAM: iommu/mediatek: Support for multi domains
  UPSTREAM: iommu/mediatek: Add get_domain_id from dev->dma_range_map
  UPSTREAM: iommu/mediatek: Add iova_region structure
  UPSTREAM: iommu/mediatek: Move geometry.aperture updating into domain_finalise
  UPSTREAM: iommu/mediatek: Move domain_finalise into attach_device
  UPSTREAM: iommu/mediatek: Adjust the structure
  UPSTREAM: iommu/mediatek: Support report iova 34bit translation fault in ISR
  UPSTREAM: iommu/mediatek: Support up to 34bit iova in tlb flush
  UPSTREAM: iommu/mediatek: Add power-domain operation
  UPSTREAM: iommu/mediatek: Add pm runtime callback
  UPSTREAM: iommu/mediatek: Add device link for smi-common and m4u
  UPSTREAM: iommu/mediatek: Add error handle for mtk_iommu_probe
  UPSTREAM: iommu/mediatek: Move hw_init into attach_device
  UPSTREAM: iommu/mediatek: Update oas for v7s
  UPSTREAM: iommu/mediatek: Add a flag for iova 34bits case
  UPSTREAM: iommu/io-pgtable-arm-v7s: Quad lvl1 pgtable for MediaTek
  UPSTREAM: iommu/io-pgtable-arm-v7s: Add cfg as a param in some macros
  UPSTREAM: iommu/io-pgtable-arm-v7s: Clarify LVL_SHIFT/BITS macro
  UPSTREAM: iommu/io-pgtable-arm-v7s: Use ias to check the valid iova in unmap
  UPSTREAM: iommu/io-pgtable-arm-v7s: Extend PA34 for MediaTek
  UPSTREAM: iommu/mediatek: Use the common mtk-memory-port.h
  UPSTREAM: dt-bindings: mediatek: Add binding for mt8192 IOMMU
  UPSTREAM: dt-bindings: memory: mediatek: Rename header guard for SMI header file
  UPSTREAM: dt-bindings: memory: mediatek: Extend LARB_NR_MAX to 32
  UPSTREAM: dt-bindings: memory: mediatek: Add a common memory header file
  UPSTREAM: dt-bindings: memory: mediatek: Convert SMI to DT schema
  UPSTREAM: dt-bindings: iommu: mediatek: Convert IOMMU to DT schema
  UPSTREAM: iommu/mediatek: Remove the tlb-ops for v7s
  UPSTREAM: iommu/io-pgtable: Remove TLBI_ON_MAP quirk
  UPSTREAM: iommu/io-pgtable: Allow io_pgtable_tlb ops optional
  UPSTREAM: iommu/mediatek: Gather iova in iommu_unmap to achieve tlb sync once
  UPSTREAM: iommu/mediatek: Add iotlb_sync_map to sync whole the iova range
  BACKPORT: UPSTREAM: iommu: Add iova and size as parameters in iotlb_sync_map
  UPSTREAM: iommu/io-pgtable: Remove tlb_flush_leaf
  ANDROID: abi_gki_aarch64_qcom: Add symbols to allow list
  ANDROID: Add vendor hook to binder.
  ANDROID: fs: Add vendor hooks for ep_create_wakeup_source & timerfd_create
  Revert "FROMLIST: fs/buffer.c: Revoke LRU when trying to drop buffers"
  ANDROID: enable LLVM_IAS=1 for clang's integrated assembler for arm
  FROMLIST: ARM: kprobes: rewrite test-arm.c in UAL
  FROMLIST: ARM: kprobes: fix UNPREDICTABLE warnings
  UPSTREAM: ARM: efistub: replace adrl pseudo-op with adr_l macro invocation
  UPSTREAM: ARM: assembler: introduce adr_l, ldr_l and str_l macros
  UPSTREAM: ARM: 9029/1: Make iwmmxt.S support Clang's integrated assembler
  FROMGIT: binder: BINDER_GET_FROZEN_INFO ioctl
  FROMGIT: binder: use EINTR for interrupted wait for work
  BACKPORT: FROMGIT: binder: BINDER_FREEZE ioctl
  ANDROID: qcom: Add pci_dev_present to ABI
  ANDROID: GKI: Add sysfs_emit to symbol list
  ANDROID: gki_defconfig: Enable IFB, NET_SCH_TBF, NET_ACT_POLICE
  ANDROID: gki_defconfig: Enable USB_NET_CDC_NCM
  ANDROID: gki_defconfig: Enable USB_NET_AQC111
  UPSTREAM: usb: dwc3: gadget: Use max speed if unspecified
  UPSTREAM: usb: dwc3: gadget: Set gadget_max_speed when set ssp_rate
  ANDROID: freezer: export the freezer_cgrp_subsys for GKI purpose.
  UPSTREAM: usb: dwc3: qcom: skip interconnect init for ACPI probe
  FROMGIT: usb: dwc3: gadget: Ignore EP queue requests during bus reset
  FROMGIT: usb: dwc3: gadget: Avoid continuing preparing TRBs during teardown
  ANDROID: gpiolib: Add vendor hook for gpio read
  ANDROID: abi_gki_aarch64_qcom: Whitelist sched_setattr
  ANDROID: GKI: sched: add Android ABI padding to some structures
  ANDROID: GKI: mm: add Android ABI padding to some structures
  ANDROID: GKI: mount.h: add Android ABI padding to some structures
  FROMLIST: mm: fs: Invalidate BH LRU during page migration
  FROMLIST: mm: replace migrate_[prep|finish] with lru_cache_[disable|enable]
  BACKPORT: FROMLIST: mm: disable LRU pagevec during the migration temporarily
  Revert "FROMLIST: mm: replace migrate_prep with lru_add_drain_all"
  Revert "BACKPORT: FROMLIST: mm: disable LRU pagevec during the migration temporarily"
  Revert "FROMLIST: mm: fs: Invalidate BH LRU during page migration"
  ANDROID: vendor_hooks: Add hooks for account process tick
  ANDROID: usb: dwc3: gadget: Export dwc3_stop_active_transfer, dwc3_send_gadget_ep_cmd
  ANDROID: clang: update to 12.0.4
  ANDROID: vendor_hooks: Add hooks for improving binder trans
  ANDROID: GKI: Disable DTPM CPU device
  UPSTREAM: powercap/drivers/dtpm: Add the experimental label to the option description
  UPSTREAM: powercap/drivers/dtpm: Fix root node initialization
  ANDROID: GKI: sched.h: add Android ABI padding to some structures
  ANDROID: GKI: module.h: add Android ABI padding to some structures
  ANDROID: GKI: sock.h: add Android ABI padding to some structures
  ANDROID: sched/fair: Do not sync task util with SD_BALANCE_FORK
  FROMGIT: selinux: vsock: Set SID for socket returned by accept()
  ANDROID: usb: typec: tcpci: Migrate restricted vendor hook
  ANDROID: qcom: Add is_dma_buf_file to ABI
  ANDROID: GKI: update .xml file
  ANDROID: GKI: enable KFENCE by setting the sample interval to 500ms
  ANDROID: abi_gki_aarch64_qcom: Add xhci symbols to list
  ANDROID: vmlinux.lds.h: Define SANITIZER_DISCARDS with CONFIG_CFI_CLANG
  ANDROID: usb: typec: tcpci: Add vendor hook to mask vbus present
  ANDROID: usb: typce: tcpci: Add vendor hook for chip specific features
  ANDROID: usb: typec: tcpci: Add vendor hooks for tcpci interface
  FROMGIT: f2fs: add sysfs nodes to get runtime compression stat
  ANDROID: dma-buf: Fix error path on system heaps use of the page pool
  ANDROID: usb: typec: tcpm: Fix event storm caused by error in backport
  ANDROID: GKI: USB: XHCI: add Android ABI padding to lots of xhci structures
  FROMGIT: KVM: arm64: Fix host's ZCR_EL2 restore on nVHE
  FROMGIT: KVM: arm64: Force SCTLR_EL2.WXN when running nVHE
  FROMGIT: KVM: arm64: Turn SCTLR_ELx_FLAGS into INIT_SCTLR_EL2_MMU_ON
  FROMGIT: KVM: arm64: Use INIT_SCTLR_EL2_MMU_OFF to disable the MMU on KVM teardown
  FROMGIT: arm64: Use INIT_SCTLR_EL1_MMU_OFF to disable the MMU on CPU restart
  FROMGIT: KVM: arm64: Enable SVE support for nVHE
  FROMGIT: KVM: arm64: Save/restore SVE state for nVHE
  BACKPORT: FROMGIT: KVM: arm64: Trap host SVE accesses when the FPSIMD state is dirty
  FROMGIT: KVM: arm64: Save guest's ZCR_EL1 before saving the FPSIMD state
  FROMGIT: KVM: arm64: Map SVE context at EL2 when available
  BACKPORT: FROMGIT: KVM: arm64: Rework SVE host-save/guest-restore
  FROMGIT: arm64: sve: Provide a conditional update accessor for ZCR_ELx
  FROMGIT: KVM: arm64: Introduce vcpu_sve_vq() helper
  FROMGIT: KVM: arm64: Let vcpu_sve_pffr() handle HYP VAs
  FROMGIT: KVM: arm64: Use {read,write}_sysreg_el1 to access ZCR_EL1
  FROMGIT: KVM: arm64: Provide KVM's own save/restore SVE primitives
  ANDROID: GKI: USB: Gadget: add Android ABI padding to struct usb_gadget
  ANDROID: vendor_hooks: Add hooks for memory when debug
  ANDROID: vendor_hooks: Add hooks for ufs scheduler
  ANDROID: GKI: sound/usb/card.h: add Android ABI padding to struct snd_usb_endpoint
  ANDROID: GKI: user_namespace.h: add Android ABI padding to a structure
  ANDROID: GKI: timer.h: add Android ABI padding to a structure
  ANDROID: GKI: quota.h: add Android ABI padding to some structures
  ANDROID: GKI: mmu_notifier.h: add Android ABI padding to some structures
  ANDROID: GKI: mm.h: add Android ABI padding to a structure
  ANDROID: GKI: kobject.h: add Android ABI padding to some structures
  ANDROID: GKI: kernfs.h: add Android ABI padding to some structures
  ANDROID: GKI: irqdomain.h: add Android ABI padding to a structure
  ANDROID: GKI: ioport.h: add Android ABI padding to a structure
  ANDROID: GKI: iomap.h: add Android ABI padding to a structure
  ANDROID: GKI: hrtimer.h: add Android ABI padding to a structure
  ANDROID: GKI: genhd.h: add Android ABI padding to some structures
  ANDROID: GKI: ethtool.h: add Android ABI padding to a structure
  ANDROID: GKI: dma-mapping.h: add Android ABI padding to a structure
  ANDROID: GKI: networking: add Android ABI padding to a lot of networking structures
  ANDROID: GKI: blk_types.h: add Android ABI padding to a structure
  ANDROID: GKI: scsi.h: add Android ABI padding to a structure
  ANDROID: GKI: pci: add Android ABI padding to some structures
  ANDROID: GKI: add Android ABI padding to struct nf_conn

Conflicts:
	Documentation/devicetree/bindings
	include/linux/usb/gadget.h

Change-Id: Id08dc5a5299b4a780553a44a402d18e9b5b096cb
Signed-off-by: Ivaylo Georgiev <irgeorgiev@codeaurora.org>
2021-03-25 04:30:56 -07:00
Andrey Konovalov
7186ac0c43 FROMGIT: kasan: init memory in kasan_(un)poison for HW_TAGS
This change adds an argument to kasan_poison() and kasan_unpoison() that
allows initializing memory along with setting the tags for HW_TAGS.

Combining setting allocation tags with memory initialization will improve
HW_TAGS KASAN performance when init_on_alloc/free is enabled.

This change doesn't integrate memory initialization with KASAN, this is
done is subsequent patches in this series.

Link: https://lkml.kernel.org/r/3054314039fa64510947e674180d675cab1b4c41.1615296150.git.andreyknvl@google.com
Signed-off-by: Andrey Konovalov <andreyknvl@google.com>
Reviewed-by: Marco Elver <elver@google.com>
Cc: Alexander Potapenko <glider@google.com>
Cc: Andrey Ryabinin <aryabinin@virtuozzo.com>
Cc: Branislav Rankov <Branislav.Rankov@arm.com>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Christoph Lameter <cl@linux.com>
Cc: David Rientjes <rientjes@google.com>
Cc: Dmitry Vyukov <dvyukov@google.com>
Cc: Evgenii Stepanov <eugenis@google.com>
Cc: Joonsoo Kim <iamjoonsoo.kim@lge.com>
Cc: Kevin Brodsky <kevin.brodsky@arm.com>
Cc: Pekka Enberg <penberg@kernel.org>
Cc: Peter Collingbourne <pcc@google.com>
Cc: Vincenzo Frascino <vincenzo.frascino@arm.com>
Cc: Vlastimil Babka <vbabka@suse.cz>
Cc: Will Deacon <will.deacon@arm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>

(cherry picked from commit b5feba92b2290c2216281d2863891d587d131d06
 https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git akpm)
Bug: 182930667
Signed-off-by: Alexander Potapenko <glider@google.com>
Change-Id: Ie28bfd789f67a02901c2dd42b115a1c24d89e9da
2021-03-24 15:09:16 -07:00
Walter Wu
86a1ff2750 BACKPORT: kasan: remove redundant config option
CONFIG_KASAN_STACK and CONFIG_KASAN_STACK_ENABLE both enable KASAN stack
instrumentation, but we should only need one config, so that we remove
CONFIG_KASAN_STACK_ENABLE and make CONFIG_KASAN_STACK workable.  see [1].

When enable KASAN stack instrumentation, then for gcc we could do no
prompt and default value y, and for clang prompt and default value n.

[1]: https://bugzilla.kernel.org/show_bug.cgi?id=210221

Link: https://lkml.kernel.org/r/20210226012531.29231-1-walter-zh.wu@mediatek.com
Signed-off-by: Walter Wu <walter-zh.wu@mediatek.com>
Suggested-by: Dmitry Vyukov <dvyukov@google.com>
Reviewed-by: Nathan Chancellor <natechancellor@gmail.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Reviewed-by: Andrey Konovalov <andreyknvl@google.com>
Cc: Andrey Ryabinin <ryabinin.a.a@gmail.com>
Cc: Dmitry Vyukov <dvyukov@google.com>
Cc: Alexander Potapenko <glider@google.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>

(cherry picked from commit 3bc29a8e251a9469ce69e62118d70eaf0caa5acb
 https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git akpm)
(cherry picked from commit 0d9e60b66271414a18a1d4f1fe2c923245f1e3a8
 https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git akpm)
[glider: resolved a minor merge conflict, squashed two patches together]

Bug: 182930667
Signed-off-by: Alexander Potapenko <glider@google.com>
Change-Id: I1b3d2cdcf45727a25d36ac7f417a4f026152d6a8
2021-03-24 15:09:15 -07:00
Andrey Konovalov
cfcec8bc2a FROMGIT: kasan: fix KASAN_STACK dependency for HW_TAGS
There's a runtime failure when running HW_TAGS-enabled kernel built with
GCC on hardware that doesn't support MTE.  GCC-built kernels always have
CONFIG_KASAN_STACK enabled, even though stack instrumentation isn't
supported by HW_TAGS.  Having that config enabled causes KASAN to issue
MTE-only instructions to unpoison kernel stacks, which causes the failure.

Fix the issue by disallowing CONFIG_KASAN_STACK when HW_TAGS is used.

(The commit that introduced CONFIG_KASAN_HW_TAGS specified proper
 dependency for CONFIG_KASAN_STACK_ENABLE but not for CONFIG_KASAN_STACK.)

Link: https://lkml.kernel.org/r/59e75426241dbb5611277758c8d4d6f5f9298dac.1615215441.git.andreyknvl@google.com
Fixes: 6a63a63ff1ac ("kasan: introduce CONFIG_KASAN_HW_TAGS")
Signed-off-by: Andrey Konovalov <andreyknvl@google.com>
Reported-by: Catalin Marinas <catalin.marinas@arm.com>
Cc: <stable@vger.kernel.org>
Cc: Will Deacon <will.deacon@arm.com>
Cc: Vincenzo Frascino <vincenzo.frascino@arm.com>
Cc: Dmitry Vyukov <dvyukov@google.com>
Cc: Andrey Ryabinin <aryabinin@virtuozzo.com>
Cc: Alexander Potapenko <glider@google.com>
Cc: Marco Elver <elver@google.com>
Cc: Peter Collingbourne <pcc@google.com>
Cc: Evgenii Stepanov <eugenis@google.com>
Cc: Branislav Rankov <Branislav.Rankov@arm.com>
Cc: Kevin Brodsky <kevin.brodsky@arm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

(cherry picked from commit d9b571c885a8974fbb7d4ee639dbc643fd000f9e
 https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git akpm)
Bug: 182930667
Signed-off-by: Alexander Potapenko <glider@google.com>
Change-Id: I35c6446be4c7193007c1b96eeddaab3923500c61
2021-03-24 15:09:14 -07:00
Greg Kroah-Hartman
e8f79d9cbb Merge branch 'android12-5.10' into branch 'android12-5.10-lts'
Sync up with the android12-5.10 branch for the following commit:

c4bd1c03ba ANDROID: qcom: Add is_dma_buf_file to ABI
268088c42e ANDROID: GKI: update .xml file
a7f3a36529 ANDROID: GKI: enable KFENCE by setting the sample interval to 500ms
9d1c78d623 ANDROID: abi_gki_aarch64_qcom: Add xhci symbols to list
5896d00f9c ANDROID: vmlinux.lds.h: Define SANITIZER_DISCARDS with CONFIG_CFI_CLANG
ffacd097fc ANDROID: usb: typec: tcpci: Add vendor hook to mask vbus present
1a93d556d7 ANDROID: usb: typce: tcpci: Add vendor hook for chip specific features
08879ea0d6 ANDROID: usb: typec: tcpci: Add vendor hooks for tcpci interface
892e618852 FROMGIT: f2fs: add sysfs nodes to get runtime compression stat
58f0e25d0d ANDROID: dma-buf: Fix error path on system heaps use of the page pool
958c19b19b ANDROID: usb: typec: tcpm: Fix event storm caused by error in backport
0b6fadd02e ANDROID: GKI: USB: XHCI: add Android ABI padding to lots of xhci structures
6f00446c76 FROMGIT: KVM: arm64: Fix host's ZCR_EL2 restore on nVHE
b0671cd753 FROMGIT: KVM: arm64: Force SCTLR_EL2.WXN when running nVHE
8f25c7432f FROMGIT: KVM: arm64: Turn SCTLR_ELx_FLAGS into INIT_SCTLR_EL2_MMU_ON
f47a4d91e5 FROMGIT: KVM: arm64: Use INIT_SCTLR_EL2_MMU_OFF to disable the MMU on KVM teardown
3ff7250562 FROMGIT: arm64: Use INIT_SCTLR_EL1_MMU_OFF to disable the MMU on CPU restart
a8a9fadaf8 FROMGIT: KVM: arm64: Enable SVE support for nVHE
b0e15c8c44 FROMGIT: KVM: arm64: Save/restore SVE state for nVHE
194fd166b5 BACKPORT: FROMGIT: KVM: arm64: Trap host SVE accesses when the FPSIMD state is dirty
507e10616c FROMGIT: KVM: arm64: Save guest's ZCR_EL1 before saving the FPSIMD state
4cb78b26ea FROMGIT: KVM: arm64: Map SVE context at EL2 when available
1105b4d1ce BACKPORT: FROMGIT: KVM: arm64: Rework SVE host-save/guest-restore
57171b3636 FROMGIT: arm64: sve: Provide a conditional update accessor for ZCR_ELx
ac5f5708bb FROMGIT: KVM: arm64: Introduce vcpu_sve_vq() helper
f9bab75599 FROMGIT: KVM: arm64: Let vcpu_sve_pffr() handle HYP VAs
c2469fa4b4 FROMGIT: KVM: arm64: Use {read,write}_sysreg_el1 to access ZCR_EL1
f5e060d65e FROMGIT: KVM: arm64: Provide KVM's own save/restore SVE primitives
af855ca1c9 ANDROID: GKI: USB: Gadget: add Android ABI padding to struct usb_gadget
24149445ad ANDROID: vendor_hooks: Add hooks for memory when debug
00185a421a ANDROID: vendor_hooks: Add hooks for ufs scheduler
b8981993c2 ANDROID: GKI: sound/usb/card.h: add Android ABI padding to struct snd_usb_endpoint
5a56f5119e ANDROID: GKI: user_namespace.h: add Android ABI padding to a structure
599e75fcfd ANDROID: GKI: timer.h: add Android ABI padding to a structure
303a28f485 ANDROID: GKI: quota.h: add Android ABI padding to some structures
a06d91262a ANDROID: GKI: mmu_notifier.h: add Android ABI padding to some structures
8faaa07702 ANDROID: GKI: mm.h: add Android ABI padding to a structure
f21777c57f ANDROID: GKI: kobject.h: add Android ABI padding to some structures
31f6b7a1ae ANDROID: GKI: kernfs.h: add Android ABI padding to some structures
1a517d8668 ANDROID: GKI: irqdomain.h: add Android ABI padding to a structure
c6adf0c7b9 ANDROID: GKI: ioport.h: add Android ABI padding to a structure
c469de24a1 ANDROID: GKI: iomap.h: add Android ABI padding to a structure
3cb5c28964 ANDROID: GKI: hrtimer.h: add Android ABI padding to a structure
eff6517b1e ANDROID: GKI: genhd.h: add Android ABI padding to some structures
9a92773dc8 ANDROID: GKI: ethtool.h: add Android ABI padding to a structure
774168de67 ANDROID: GKI: dma-mapping.h: add Android ABI padding to a structure
73ff58b01f ANDROID: GKI: networking: add Android ABI padding to a lot of networking structures
f0688df6b5 ANDROID: GKI: blk_types.h: add Android ABI padding to a structure
4a895f1f2b ANDROID: GKI: scsi.h: add Android ABI padding to a structure
48691266ca ANDROID: GKI: pci: add Android ABI padding to some structures
4c95a92b84 ANDROID: GKI: add Android ABI padding to struct nf_conn
e6f5502bc3 UPSTREAM: usb: typec: tcpm: Skip sink_cap query only when VDM sm is busy
36547f2f6d FROMGIT: usb: typec: tcpm: PD3.0 sinks can send Discover Identity even in device mode
3f7ada406d UPSTREAM: usb: gadget: configfs: Fix KASAN use-after-free
9bd96584f4 UPSTREAM: usb: typec: Remove vdo[3] part of tps6598x_rx_identity_reg struct
f2e7bdcdfa UPSTREAM: usb: dwc3: gadget: Prevent EP queuing while stopping transfers
462c92e8f2 FROMGIT: usb: typec: tcpci: Added few missing TCPCI register definitions
6f85b7e0f8 UPSTREAM: usb: typec: tcpm: Invoke power_supply_changed for tcpm-source-psy-
8cf94785bb Revert "ANDROID: GKI: Enable bounds sanitizer"
0eecc2aa30 ANDROID: GKI: temporarily disable LTO/CFI
3520187422 ANDROID: Revert "f2fs: fix to tag FIEMAP_EXTENT_MERGED in f2fs_fiemap()"
16982b6a18 FROMLIST: KVM: arm64: Disable FWB in host stage-2
3a16a9e7be FROMLIST: KVM: arm64: Introduce KVM_PGTABLE_S2_NOFWB Stage-2 flag
bcdcab0253 FROMLIST: KVM: arm64: Protect the .hyp sections from the host
317d5a5030 FROMLIST: KVM: arm64: Disable PMU support in protected mode
6697310c08 FROMLIST: KVM: arm64: Page-align the .hyp sections
68bd98a28a FROMLIST: KVM: arm64: Wrap the host with a stage 2
5a128f0626 FROMLIST: KVM: arm64: Provide sanitized mmfr* registers at EL2
0af83133e3 FROMLIST: KVM: arm64: Add kvm_pgtable_stage2_find_range()
c3f49047ca FROMLIST: KVM: arm64: Refactor the *_map_set_prot_attr() helpers
9349978462 FROMLIST: KVM: arm64: Use page-table to track page ownership
845457f549 FROMLIST: KVM: arm64: Always zero invalid PTEs
1d349d64ba FROMLIST: KVM: arm64: Sort the hypervisor memblocks
1e798d4121 FROMLIST: KVM: arm64: Reserve memory for host stage 2
6fddc52e50 FROMLIST: KVM: arm64: Make memcache anonymous in pgtable allocator
a20c8e1c48 FROMLIST: KVM: arm64: Refactor __populate_fault_info()
21a1f89953 FROMLIST: KVM: arm64: Refactor __load_guest_stage2()
1a9bba9121 FROMLIST: KVM: arm64: Refactor kvm_arm_setup_stage2()
6d3f5c07aa FROMLIST: KVM: arm64: Set host stage 2 using kvm_nvhe_init_params
eef107d42a FROMLIST: KVM: arm64: Use kvm_arch in kvm_s2_mmu
1a76f891e1 FROMLIST: KVM: arm64: Use kvm_arch for stage 2 pgtable
d8eb170aa9 FROMLIST: KVM: arm64: Elevate hypervisor mappings creation at EL2
ae1ed8a984 FROMLIST: KVM: arm64: Prepare the creation of s1 mappings at EL2
364f0639db FROMLIST: arm64: asm: Provide set_sctlr_el2 macro
ca52b29511 FROMLIST: KVM: arm64: Factor out vector address calculation
a1180dd384 FROMLIST: KVM: arm64: Provide __flush_dcache_area at EL2
37b5552dfb FROMLIST: KVM: arm64: Enable access to sanitized CPU features at EL2
75fba96057 FROMLIST: KVM: arm64: Introduce a Hyp buddy page allocator
f6e834486a FROMLIST: KVM: arm64: Stub CONFIG_DEBUG_LIST at Hyp
01253f8e2c FROMLIST: KVM: arm64: Introduce an early Hyp page allocator
a3aad4cf4a FROMLIST: KVM: arm64: Allow using kvm_nvhe_sym() in hyp code
81181250ba FROMLIST: KVM: arm64: Make kvm_call_hyp() a function call at Hyp
542dace0bc FROMLIST: KVM: arm64: Introduce a BSS section for use at Hyp
4a4beb1005 FROMLIST: KVM: arm64: Factor memory allocation out of pgtable.c
620bb5f9c9 FROMLIST: KVM: arm64: Avoid free_page() in page-table allocator
c758e8e4b1 FROMLIST: KVM: arm64: Initialize kvm_nvhe_init_params early
ce5e848201 FROMLIST: arm64: kvm: Add standalone ticket spinlock implementation for use at hyp
9833905e2d FROMLIST: KVM: arm64: Link position-independent string routines into .hyp.text
0f63237470 FROMLIST: arm64: lib: Annotate {clear, copy}_page() as position-independent
edab6a7245 Revert "ANDROID: sched: cpufreq_schedutil: add sugov tracepoints"
187306ab1a ANDROID: Partial revert of 06881e01b5 ("ANDROID: sched: Add vendor hooks for override sugov behavior")
b542f4c389 Revert "ANDROID: sched: Add vendor hooks for skipping sugov update"
27d6dac0df Revert "ANDROID: sched: cpufreq_schedutil: move sugov traces to sched"
cc574f0d36 ANDROID: thermal: Add logic for filter on-die tz genl event.
6c6fac8f39 ANDROID: mmc: support hardware that takes key directly
e4636b47ef UPSTREAM: zram: fix broken page writeback
542d1937ba UPSTREAM: zram: fix return value on writeback_store
475aea007d ANDROID: sched: Add vendor hook for util_est_update
89ea2f1eca ANDROID: GKI: Enable DTPM framework
a3a580961b ANDROID: GKI: Add remoteproc framework symbols to symbol list
53e8099784 ANDROID: vendor_hooks: Add hooks for scheduler
7e2c33ac0e FROMGIT: configfs: fix a use-after-free in __configfs_open_file
7656aa0f48 ANDROID: lib/plist.c: Export plist-related APIs
4d63efb9ae ANDROID: module: Add vendor hook
2ff446fc4d ANDROID: bpf: Add vendor hook
dccee128b7 ANDROID: kernel: Add vendor hook in creds
0a3b407463 ANDROID: security: selinux: Add vendor hook in avc
a128ec2b2e UPSTREAM: KVM: arm64: Fix exclusive limit for IPA size
ac821b6257 UPSTREAM: KVM: arm64: Reject VM creation when the default IPA size is unsupported
d2eb8b0028 ANDROID: GKI: add android_kabi.h
45021f7679 UPSTREAM: MAINTAINERS: add entry for KFENCE
90d03f6fcf ANDROID: Clang LTO: Comment on symbol visibility workaround
169ddec367 FROMLIST: mm: fs: Invalidate BH LRU during page migration
3039d8580c BACKPORT: FROMLIST: mm: disable LRU pagevec during the migration temporarily
134ac2d4dc FROMLIST: mm: replace migrate_prep with lru_add_drain_all
a71a3e1ce6 UPSTREAM: mm: migrate: initialize err in do_migrate_pages
059eaf82c0 UPSTREAM: mm: migrate: clean up migrate_prep{_local}
be409db652 ANDROID: Clang LTO: Only set -fvisibility=hidden for x86
02efd18b77 UPSTREAM: usb: typec: tcpci: Refactor tcpc_presenting_cc1_rd macro
8d03e49505 ANDROID: mm: build alloc_contig_dump_pages in page_alloc.o
28f6641041 FROMLIST: mm: page_alloc: dump migrate-failed pages
cc1f93cb20 ANDROID: sched: Add vendor hook for uclamp_eff_get
5e1e3e9387 ANDROID: cpu/hotplug: failure to offline 2nd to last cpu
2c728929c1 ANDROID: qcom: Add devm_blk_ksm_init to ABI
9108e9ba66 ANDROID: arm64: add vendor hooks for unusal abort cases
5f1e1f42a5 UPSTREAM: powercap/drivers/dtpm: Fix size of object being allocated
fd2c659694 UPSTREAM: powercap/drivers/dtpm: Fix an IS_ERR() vs NULL check
2a1cd71862 UPSTREAM: powercap/drivers/dtpm: Fix some missing unlock bugs
7112d4320f UPSTREAM: powercap/drivers/dtpm: Fix a double shift bug
578572c48c UPSTREAM: powercap/drivers/dtpm: Fix __udivdi3 and __aeabi_uldivmod unresolved symbols
7f17016dc8 UPSTREAM: powercap/drivers/dtpm: Add CPU energy model based support
082e8dcea9 UPSTREAM: powercap/drivers/dtpm: Add API for dynamic thermal power management

Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: If05a0d9902893cd29e8bb5eb175bd4ce30250697
2021-03-21 15:02:08 +01:00
Greg Kroah-Hartman
3ccfc59f82 This is the 5.10.24 stable release
-----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAmBSKS0ACgkQONu9yGCS
 aT7Ngg//c4C1WnWC0sNWzP3xT2paCkLnUUyjQTmrkbPvLtr2DvehW5Bvp/32pGiS
 8mDMoTLq3QxNrfrU6SY3KavZRC9Pa+migAsVmuujygQwNphqv95/XxnFemFEAYTl
 b8b5OJPyomzMMEwHzx1Tr+7/d58czrqXo97QI0lmaDlHl+9JKTg2SMX9AkHkU8pK
 zYjbtzdhd9UZCTdVYY1ZFkQ1ik1iAWo3Xv0G2aMeQQpuGcZIh/Y66xBuyH+8g+Yz
 3mInhPQvhkb+c+m4ZJ9NhOUVEW4Fl0fq0mVrrYkfHqXe0D36Vj/yYvO/yTSBqb4+
 XQ5PLXX3KFVDFl1id94unXGgP3c0zBe30JZPqKdpSET+PzOlGiZTxMCfjPeTgu/Z
 7xc2qSX1zn273HMTRrT1daO4/NXQ85kE04mZMzq7cqDpum7ltfKrEMum/Gma+dJz
 Knn47oZHbSW4Er/WcAwHSeZpxvD7AahG/GlsQRy+IVPu/jMXJHmo2/Nv1fLJWp+G
 7VVWRXug69hywGr7hFiT3USG2C5g5cV3/dEO8NFFjGKRa5CbLbQD6B3+Dz3dXyBH
 jE3MGIoqoNk+SvJOAf2ogu7SS6wLynZWOchmAVvIQ4QEzcP2jroeFHKD49MYxDUE
 dKcq0dtfMc4nUaUZ/XRfWtS9fSm+T4XonmvEY4yXnAyfZ0aeEM8=
 =FdFm
 -----END PGP SIGNATURE-----

Merge 5.10.24 into android12-5.10-lts

Changes in 5.10.24
	uapi: nfnetlink_cthelper.h: fix userspace compilation error
	powerpc/perf: Fix handling of privilege level checks in perf interrupt context
	powerpc/pseries: Don't enforce MSI affinity with kdump
	ethernet: alx: fix order of calls on resume
	crypto: mips/poly1305 - enable for all MIPS processors
	ath9k: fix transmitting to stations in dynamic SMPS mode
	net: Fix gro aggregation for udp encaps with zero csum
	net: check if protocol extracted by virtio_net_hdr_set_proto is correct
	net: avoid infinite loop in mpls_gso_segment when mpls_hlen == 0
	net: l2tp: reduce log level of messages in receive path, add counter instead
	can: skb: can_skb_set_owner(): fix ref counting if socket was closed before setting skb ownership
	can: flexcan: assert FRZ bit in flexcan_chip_freeze()
	can: flexcan: enable RX FIFO after FRZ/HALT valid
	can: flexcan: invoke flexcan_chip_freeze() to enter freeze mode
	can: tcan4x5x: tcan4x5x_init(): fix initialization - clear MRAM before entering Normal Mode
	tcp: Fix sign comparison bug in getsockopt(TCP_ZEROCOPY_RECEIVE)
	tcp: add sanity tests to TCP_QUEUE_SEQ
	netfilter: nf_nat: undo erroneous tcp edemux lookup
	netfilter: x_tables: gpf inside xt_find_revision()
	net: always use icmp{,v6}_ndo_send from ndo_start_xmit
	net: phy: fix save wrong speed and duplex problem if autoneg is on
	selftests/bpf: Use the last page in test_snprintf_btf on s390
	selftests/bpf: No need to drop the packet when there is no geneve opt
	selftests/bpf: Mask bpf_csum_diff() return value to 16 bits in test_verifier
	samples, bpf: Add missing munmap in xdpsock
	libbpf: Clear map_info before each bpf_obj_get_info_by_fd
	ibmvnic: Fix possibly uninitialized old_num_tx_queues variable warning.
	ibmvnic: always store valid MAC address
	mt76: dma: do not report truncated frames to mac80211
	powerpc/603: Fix protection of user pages mapped with PROT_NONE
	mount: fix mounting of detached mounts onto targets that reside on shared mounts
	cifs: return proper error code in statfs(2)
	Revert "mm, slub: consider rest of partial list if acquire_slab() fails"
	docs: networking: drop special stable handling
	net: dsa: tag_rtl4_a: fix egress tags
	sh_eth: fix TRSCER mask for SH771x
	net: enetc: don't overwrite the RSS indirection table when initializing
	net: enetc: take the MDIO lock only once per NAPI poll cycle
	net: enetc: fix incorrect TPID when receiving 802.1ad tagged packets
	net: enetc: don't disable VLAN filtering in IFF_PROMISC mode
	net: enetc: force the RGMII speed and duplex instead of operating in inband mode
	net: enetc: remove bogus write to SIRXIDR from enetc_setup_rxbdr
	net: enetc: keep RX ring consumer index in sync with hardware
	net: ethernet: mtk-star-emac: fix wrong unmap in RX handling
	net/mlx4_en: update moderation when config reset
	net: stmmac: fix incorrect DMA channel intr enable setting of EQoS v4.10
	nexthop: Do not flush blackhole nexthops when loopback goes down
	net: sched: avoid duplicates in classes dump
	net: mscc: ocelot: properly reject destination IP keys in VCAP IS1
	net: dsa: sja1105: fix SGMII PCS being forced to SPEED_UNKNOWN instead of SPEED_10
	net: usb: qmi_wwan: allow qmimux add/del with master up
	netdevsim: init u64 stats for 32bit hardware
	cipso,calipso: resolve a number of problems with the DOI refcounts
	net: stmmac: Fix VLAN filter delete timeout issue in Intel mGBE SGMII
	stmmac: intel: Fixes clock registration error seen for multiple interfaces
	net: lapbether: Remove netif_start_queue / netif_stop_queue
	net: davicom: Fix regulator not turned off on failed probe
	net: davicom: Fix regulator not turned off on driver removal
	net: enetc: allow hardware timestamping on TX queues with tc-etf enabled
	net: qrtr: fix error return code of qrtr_sendmsg()
	s390/qeth: fix memory leak after failed TX Buffer allocation
	r8169: fix r8168fp_adjust_ocp_cmd function
	ixgbe: fail to create xfrm offload of IPsec tunnel mode SA
	tools/resolve_btfids: Fix build error with older host toolchains
	perf build: Fix ccache usage in $(CC) when generating arch errno table
	net: stmmac: stop each tx channel independently
	net: stmmac: fix watchdog timeout during suspend/resume stress test
	net: stmmac: fix wrongly set buffer2 valid when sph unsupport
	ethtool: fix the check logic of at least one channel for RX/TX
	net: phy: make mdio_bus_phy_suspend/resume as __maybe_unused
	selftests: forwarding: Fix race condition in mirror installation
	mlxsw: spectrum_ethtool: Add an external speed to PTYS register
	perf traceevent: Ensure read cmdlines are null terminated.
	perf report: Fix -F for branch & mem modes
	net: hns3: fix query vlan mask value error for flow director
	net: hns3: fix bug when calculating the TCAM table info
	s390/cio: return -EFAULT if copy_to_user() fails again
	bnxt_en: reliably allocate IRQ table on reset to avoid crash
	gpiolib: acpi: Add ACPI_GPIO_QUIRK_ABSOLUTE_NUMBER quirk
	gpiolib: acpi: Allow to find GpioInt() resource by name and index
	gpio: pca953x: Set IRQ type when handle Intel Galileo Gen 2
	gpio: fix gpio-device list corruption
	drm/compat: Clear bounce structures
	drm/amd/display: Add a backlight module option
	drm/amdgpu/display: use GFP_ATOMIC in dcn21_validate_bandwidth_fp()
	drm/amd/display: Fix nested FPU context in dcn21_validate_bandwidth()
	drm/amd/pm: bug fix for pcie dpm
	drm/amdgpu/display: simplify backlight setting
	drm/amdgpu/display: don't assert in set backlight function
	drm/amdgpu/display: handle aux backlight in backlight_get_brightness
	drm/shmem-helper: Check for purged buffers in fault handler
	drm/shmem-helper: Don't remove the offset in vm_area_struct pgoff
	drm: Use USB controller's DMA mask when importing dmabufs
	drm: meson_drv add shutdown function
	drm/shmem-helpers: vunmap: Don't put pages for dma-buf
	drm/i915: Wedge the GPU if command parser setup fails
	s390/cio: return -EFAULT if copy_to_user() fails
	s390/crypto: return -EFAULT if copy_to_user() fails
	qxl: Fix uninitialised struct field head.surface_id
	sh_eth: fix TRSCER mask for R7S9210
	media: usbtv: Fix deadlock on suspend
	media: rkisp1: params: fix wrong bits settings
	media: v4l: vsp1: Fix uif null pointer access
	media: v4l: vsp1: Fix bru null pointer access
	media: rc: compile rc-cec.c into rc-core
	cifs: fix credit accounting for extra channel
	net: hns3: fix error mask definition of flow director
	s390/qeth: don't replace a fully completed async TX buffer
	s390/qeth: remove QETH_QDIO_BUF_HANDLED_DELAYED state
	s390/qeth: improve completion of pending TX buffers
	s390/qeth: fix notification for pending buffers during teardown
	net: dsa: implement a central TX reallocation procedure
	net: dsa: tag_ksz: don't allocate additional memory for padding/tagging
	net: dsa: trailer: don't allocate additional memory for padding/tagging
	net: dsa: tag_qca: let DSA core deal with TX reallocation
	net: dsa: tag_ocelot: let DSA core deal with TX reallocation
	net: dsa: tag_mtk: let DSA core deal with TX reallocation
	net: dsa: tag_lan9303: let DSA core deal with TX reallocation
	net: dsa: tag_edsa: let DSA core deal with TX reallocation
	net: dsa: tag_brcm: let DSA core deal with TX reallocation
	net: dsa: tag_dsa: let DSA core deal with TX reallocation
	net: dsa: tag_gswip: let DSA core deal with TX reallocation
	net: dsa: tag_ar9331: let DSA core deal with TX reallocation
	net: dsa: tag_mtk: fix 802.1ad VLAN egress
	enetc: Fix unused var build warning for CONFIG_OF
	net: enetc: initialize RFS/RSS memories for unused ports too
	ath11k: peer delete synchronization with firmware
	ath11k: start vdev if a bss peer is already created
	ath11k: fix AP mode for QCA6390
	i2c: rcar: faster irq code to minimize HW race condition
	i2c: rcar: optimize cacheline to minimize HW race condition
	scsi: ufs: WB is only available on LUN #0 to #7
	udf: fix silent AED tagLocation corruption
	iommu/vt-d: Clear PRQ overflow only when PRQ is empty
	mmc: mxs-mmc: Fix a resource leak in an error handling path in 'mxs_mmc_probe()'
	mmc: mediatek: fix race condition between msdc_request_timeout and irq
	mmc: sdhci-iproc: Add ACPI bindings for the RPi
	Platform: OLPC: Fix probe error handling
	powerpc/pci: Add ppc_md.discover_phbs()
	spi: stm32: make spurious and overrun interrupts visible
	powerpc: improve handling of unrecoverable system reset
	powerpc/perf: Record counter overflow always if SAMPLE_IP is unset
	HID: logitech-dj: add support for the new lightspeed connection iteration
	powerpc/64: Fix stack trace not displaying final frame
	iommu/amd: Fix performance counter initialization
	clk: qcom: gdsc: Implement NO_RET_PERIPH flag
	sparc32: Limit memblock allocation to low memory
	sparc64: Use arch_validate_flags() to validate ADI flag
	Input: applespi - don't wait for responses to commands indefinitely.
	PCI: xgene-msi: Fix race in installing chained irq handler
	PCI: mediatek: Add missing of_node_put() to fix reference leak
	drivers/base: build kunit tests without structleak plugin
	PCI/LINK: Remove bandwidth notification
	ext4: don't try to processed freed blocks until mballoc is initialized
	kbuild: clamp SUBLEVEL to 255
	PCI: Fix pci_register_io_range() memory leak
	i40e: Fix memory leak in i40e_probe
	kasan: fix memory corruption in kasan_bitops_tags test
	s390/smp: __smp_rescan_cpus() - move cpumask away from stack
	drivers/base/memory: don't store phys_device in memory blocks
	sysctl.c: fix underflow value setting risk in vm_table
	scsi: libiscsi: Fix iscsi_prep_scsi_cmd_pdu() error handling
	scsi: target: core: Add cmd length set before cmd complete
	scsi: target: core: Prevent underflow for service actions
	clk: qcom: gpucc-msm8998: Add resets, cxc, fix flags on gpu_gx_gdsc
	mmc: sdhci: Update firmware interface API
	ARM: 9029/1: Make iwmmxt.S support Clang's integrated assembler
	ARM: assembler: introduce adr_l, ldr_l and str_l macros
	ARM: efistub: replace adrl pseudo-op with adr_l macro invocation
	ALSA: usb: Add Plantronics C320-M USB ctrl msg delay quirk
	ALSA: hda/hdmi: Cancel pending works before suspend
	ALSA: hda/conexant: Add quirk for mute LED control on HP ZBook G5
	ALSA: hda/ca0132: Add Sound BlasterX AE-5 Plus support
	ALSA: hda: Drop the BATCH workaround for AMD controllers
	ALSA: hda: Flush pending unsolicited events before suspend
	ALSA: hda: Avoid spurious unsol event handling during S3/S4
	ALSA: usb-audio: Fix "cannot get freq eq" errors on Dell AE515 sound bar
	ALSA: usb-audio: Apply the control quirk to Plantronics headsets
	ALSA: usb-audio: Disable USB autosuspend properly in setup_disable_autosuspend()
	ALSA: usb-audio: fix NULL ptr dereference in usb_audio_probe
	ALSA: usb-audio: fix use after free in usb_audio_disconnect
	Revert 95ebabde382c ("capabilities: Don't allow writing ambiguous v3 file capabilities")
	block: Discard page cache of zone reset target range
	block: Try to handle busy underlying device on discard
	arm64: kasan: fix page_alloc tagging with DEBUG_VIRTUAL
	arm64: mte: Map hotplugged memory as Normal Tagged
	arm64: perf: Fix 64-bit event counter read truncation
	s390/dasd: fix hanging DASD driver unbind
	s390/dasd: fix hanging IO request during DASD driver unbind
	software node: Fix node registration
	xen/events: reset affinity of 2-level event when tearing it down
	mmc: mmci: Add MMC_CAP_NEED_RSP_BUSY for the stm32 variants
	mmc: core: Fix partition switch time for eMMC
	mmc: cqhci: Fix random crash when remove mmc module/card
	cifs: do not send close in compound create+close requests
	Goodix Fingerprint device is not a modem
	USB: gadget: udc: s3c2410_udc: fix return value check in s3c2410_udc_probe()
	USB: gadget: u_ether: Fix a configfs return code
	usb: gadget: f_uac2: always increase endpoint max_packet_size by one audio slot
	usb: gadget: f_uac1: stop playback on function disable
	usb: dwc3: qcom: Add missing DWC3 OF node refcount decrement
	usb: dwc3: qcom: add URS Host support for sdm845 ACPI boot
	usb: dwc3: qcom: add ACPI device id for sc8180x
	usb: dwc3: qcom: Honor wakeup enabled/disabled state
	USB: usblp: fix a hang in poll() if disconnected
	usb: renesas_usbhs: Clear PIPECFG for re-enabling pipe with other EPNUM
	usb: xhci: do not perform Soft Retry for some xHCI hosts
	xhci: Improve detection of device initiated wake signal.
	usb: xhci: Fix ASMedia ASM1042A and ASM3242 DMA addressing
	xhci: Fix repeated xhci wake after suspend due to uncleared internal wake state
	USB: serial: io_edgeport: fix memory leak in edge_startup
	USB: serial: ch341: add new Product ID
	USB: serial: cp210x: add ID for Acuity Brands nLight Air Adapter
	USB: serial: cp210x: add some more GE USB IDs
	usbip: fix stub_dev to check for stream socket
	usbip: fix vhci_hcd to check for stream socket
	usbip: fix vudc to check for stream socket
	usbip: fix stub_dev usbip_sockfd_store() races leading to gpf
	usbip: fix vhci_hcd attach_store() races leading to gpf
	usbip: fix vudc usbip_sockfd_store races leading to gpf
	Revert "serial: max310x: rework RX interrupt handling"
	misc/pvpanic: Export module FDT device table
	misc: fastrpc: restrict user apps from sending kernel RPC messages
	staging: rtl8192u: fix ->ssid overflow in r8192_wx_set_scan()
	staging: rtl8188eu: prevent ->ssid overflow in rtw_wx_set_scan()
	staging: rtl8712: unterminated string leads to read overflow
	staging: rtl8188eu: fix potential memory corruption in rtw_check_beacon_data()
	staging: ks7010: prevent buffer overflow in ks_wlan_set_scan()
	staging: rtl8712: Fix possible buffer overflow in r8712_sitesurvey_cmd
	staging: rtl8192e: Fix possible buffer overflow in _rtl92e_wx_set_scan
	staging: comedi: addi_apci_1032: Fix endian problem for COS sample
	staging: comedi: addi_apci_1500: Fix endian problem for command sample
	staging: comedi: adv_pci1710: Fix endian problem for AI command data
	staging: comedi: das6402: Fix endian problem for AI command data
	staging: comedi: das800: Fix endian problem for AI command data
	staging: comedi: dmm32at: Fix endian problem for AI command data
	staging: comedi: me4000: Fix endian problem for AI command data
	staging: comedi: pcl711: Fix endian problem for AI command data
	staging: comedi: pcl818: Fix endian problem for AI command data
	sh_eth: fix TRSCER mask for R7S72100
	cpufreq: qcom-hw: fix dereferencing freed memory 'data'
	cpufreq: qcom-hw: Fix return value check in qcom_cpufreq_hw_cpu_init()
	arm64/mm: Fix pfn_valid() for ZONE_DEVICE based memory
	SUNRPC: Set memalloc_nofs_save() for sync tasks
	NFS: Don't revalidate the directory permissions on a lookup failure
	NFS: Don't gratuitously clear the inode cache when lookup failed
	NFSv4.2: fix return value of _nfs4_get_security_label()
	block: rsxx: fix error return code of rsxx_pci_probe()
	nvme-fc: fix racing controller reset and create association
	configfs: fix a use-after-free in __configfs_open_file
	arm64: mm: use a 48-bit ID map when possible on 52-bit VA builds
	perf/core: Flush PMU internal buffers for per-CPU events
	perf/x86/intel: Set PERF_ATTACH_SCHED_CB for large PEBS and LBR
	hrtimer: Update softirq_expires_next correctly after __hrtimer_get_next_event()
	powerpc/64s/exception: Clean up a missed SRR specifier
	seqlock,lockdep: Fix seqcount_latch_init()
	stop_machine: mark helpers __always_inline
	include/linux/sched/mm.h: use rcu_dereference in in_vfork()
	zram: fix return value on writeback_store
	linux/compiler-clang.h: define HAVE_BUILTIN_BSWAP*
	sched/membarrier: fix missing local execution of ipi_sync_rq_state()
	efi: stub: omit SetVirtualAddressMap() if marked unsupported in RT_PROP table
	powerpc/64s: Fix instruction encoding for lis in ppc_function_entry()
	powerpc: Fix inverted SET_FULL_REGS bitop
	powerpc: Fix missing declaration of [en/dis]able_kernel_vsx()
	binfmt_misc: fix possible deadlock in bm_register_write
	x86/unwind/orc: Disable KASAN checking in the ORC unwinder, part 2
	x86/sev-es: Introduce ip_within_syscall_gap() helper
	x86/sev-es: Check regs->sp is trusted before adjusting #VC IST stack
	x86/entry: Move nmi entry/exit into common code
	x86/sev-es: Correctly track IRQ states in runtime #VC handler
	x86/sev-es: Use __copy_from_user_inatomic()
	x86/entry: Fix entry/exit mismatch on failed fast 32-bit syscalls
	KVM: x86: Ensure deadline timer has truly expired before posting its IRQ
	KVM: kvmclock: Fix vCPUs > 64 can't be online/hotpluged
	KVM: arm64: Fix range alignment when walking page tables
	KVM: arm64: Avoid corrupting vCPU context register in guest exit
	KVM: arm64: nvhe: Save the SPE context early
	KVM: arm64: Reject VM creation when the default IPA size is unsupported
	KVM: arm64: Fix exclusive limit for IPA size
	mm/userfaultfd: fix memory corruption due to writeprotect
	mm/madvise: replace ptrace attach requirement for process_madvise
	KVM: arm64: Ensure I-cache isolation between vcpus of a same VM
	mm/page_alloc.c: refactor initialization of struct page for holes in memory layout
	xen/events: don't unmask an event channel when an eoi is pending
	xen/events: avoid handling the same event on two cpus at the same time
	KVM: arm64: Fix nVHE hyp panic host context restore
	RDMA/umem: Use ib_dma_max_seg_size instead of dma_get_max_seg_size
	Linux 5.10.24

Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: Ie53a3c1963066a18d41357b6be41cff00690bd40
2021-03-19 09:42:56 +01:00
Liujie Xie
24149445ad ANDROID: vendor_hooks: Add hooks for memory when debug
Add vendors hooks for recording memory used

Bug: 182443489
Signed-off-by: Liujie Xie <xieliujie@oppo.com>
Change-Id: I62d8bb2b6650d8b187b433f97eb833ef0b784df1
2021-03-19 04:54:07 +00:00
Blagovest Kolenichev
d82a67cbef Merge android12-5.10.21+ (8cf9478) into msm-5.10
* refs/heads/tmp-8cf9478:
  Revert "ANDROID: GKI: Enable bounds sanitizer"
  ANDROID: GKI: temporarily disable LTO/CFI
  ANDROID: Revert "f2fs: fix to tag FIEMAP_EXTENT_MERGED in f2fs_fiemap()"
  FROMLIST: KVM: arm64: Disable FWB in host stage-2
  FROMLIST: KVM: arm64: Introduce KVM_PGTABLE_S2_NOFWB Stage-2 flag
  FROMLIST: KVM: arm64: Protect the .hyp sections from the host
  FROMLIST: KVM: arm64: Disable PMU support in protected mode
  FROMLIST: KVM: arm64: Page-align the .hyp sections
  FROMLIST: KVM: arm64: Wrap the host with a stage 2
  FROMLIST: KVM: arm64: Provide sanitized mmfr* registers at EL2
  FROMLIST: KVM: arm64: Add kvm_pgtable_stage2_find_range()
  FROMLIST: KVM: arm64: Refactor the *_map_set_prot_attr() helpers
  FROMLIST: KVM: arm64: Use page-table to track page ownership
  FROMLIST: KVM: arm64: Always zero invalid PTEs
  FROMLIST: KVM: arm64: Sort the hypervisor memblocks
  FROMLIST: KVM: arm64: Reserve memory for host stage 2
  FROMLIST: KVM: arm64: Make memcache anonymous in pgtable allocator
  FROMLIST: KVM: arm64: Refactor __populate_fault_info()
  FROMLIST: KVM: arm64: Refactor __load_guest_stage2()
  FROMLIST: KVM: arm64: Refactor kvm_arm_setup_stage2()
  FROMLIST: KVM: arm64: Set host stage 2 using kvm_nvhe_init_params
  FROMLIST: KVM: arm64: Use kvm_arch in kvm_s2_mmu
  FROMLIST: KVM: arm64: Use kvm_arch for stage 2 pgtable
  FROMLIST: KVM: arm64: Elevate hypervisor mappings creation at EL2
  FROMLIST: KVM: arm64: Prepare the creation of s1 mappings at EL2
  FROMLIST: arm64: asm: Provide set_sctlr_el2 macro
  FROMLIST: KVM: arm64: Factor out vector address calculation
  FROMLIST: KVM: arm64: Provide __flush_dcache_area at EL2
  FROMLIST: KVM: arm64: Enable access to sanitized CPU features at EL2
  FROMLIST: KVM: arm64: Introduce a Hyp buddy page allocator
  FROMLIST: KVM: arm64: Stub CONFIG_DEBUG_LIST at Hyp
  FROMLIST: KVM: arm64: Introduce an early Hyp page allocator
  FROMLIST: KVM: arm64: Allow using kvm_nvhe_sym() in hyp code
  FROMLIST: KVM: arm64: Make kvm_call_hyp() a function call at Hyp
  FROMLIST: KVM: arm64: Introduce a BSS section for use at Hyp
  FROMLIST: KVM: arm64: Factor memory allocation out of pgtable.c
  FROMLIST: KVM: arm64: Avoid free_page() in page-table allocator
  FROMLIST: KVM: arm64: Initialize kvm_nvhe_init_params early
  FROMLIST: arm64: kvm: Add standalone ticket spinlock implementation for use at hyp
  FROMLIST: KVM: arm64: Link position-independent string routines into .hyp.text
  FROMLIST: arm64: lib: Annotate {clear, copy}_page() as position-independent
  Revert "ANDROID: sched: cpufreq_schedutil: add sugov tracepoints"
  ANDROID: Partial revert of 06881e01b5 ("ANDROID: sched: Add vendor hooks for override sugov behavior")
  Revert "ANDROID: sched: Add vendor hooks for skipping sugov update"
  Revert "ANDROID: sched: cpufreq_schedutil: move sugov traces to sched"
  ANDROID: thermal: Add logic for filter on-die tz genl event.
  ANDROID: mmc: support hardware that takes key directly
  UPSTREAM: zram: fix broken page writeback
  UPSTREAM: zram: fix return value on writeback_store
  ANDROID: sched: Add vendor hook for util_est_update
  ANDROID: GKI: Enable DTPM framework
  ANDROID: GKI: Add remoteproc framework symbols to symbol list
  ANDROID: vendor_hooks: Add hooks for scheduler
  FROMGIT: configfs: fix a use-after-free in __configfs_open_file
  ANDROID: lib/plist.c: Export plist-related APIs
  ANDROID: module: Add vendor hook
  ANDROID: bpf: Add vendor hook
  ANDROID: kernel: Add vendor hook in creds
  ANDROID: security: selinux: Add vendor hook in avc
  UPSTREAM: KVM: arm64: Fix exclusive limit for IPA size
  UPSTREAM: KVM: arm64: Reject VM creation when the default IPA size is unsupported
  ANDROID: GKI: add android_kabi.h
  UPSTREAM: MAINTAINERS: add entry for KFENCE
  ANDROID: Clang LTO: Comment on symbol visibility workaround
  FROMLIST: mm: fs: Invalidate BH LRU during page migration
  BACKPORT: FROMLIST: mm: disable LRU pagevec during the migration temporarily
  FROMLIST: mm: replace migrate_prep with lru_add_drain_all
  UPSTREAM: mm: migrate: initialize err in do_migrate_pages
  UPSTREAM: mm: migrate: clean up migrate_prep{_local}
  ANDROID: Clang LTO: Only set -fvisibility=hidden for x86
  UPSTREAM: usb: typec: tcpci: Refactor tcpc_presenting_cc1_rd macro
  ANDROID: mm: build alloc_contig_dump_pages in page_alloc.o
  FROMLIST: mm: page_alloc: dump migrate-failed pages
  ANDROID: sched: Add vendor hook for uclamp_eff_get
  ANDROID: cpu/hotplug: failure to offline 2nd to last cpu
  ANDROID: qcom: Add devm_blk_ksm_init to ABI
  ANDROID: arm64: add vendor hooks for unusal abort cases
  UPSTREAM: powercap/drivers/dtpm: Fix size of object being allocated
  UPSTREAM: powercap/drivers/dtpm: Fix an IS_ERR() vs NULL check
  UPSTREAM: powercap/drivers/dtpm: Fix some missing unlock bugs
  UPSTREAM: powercap/drivers/dtpm: Fix a double shift bug
  UPSTREAM: powercap/drivers/dtpm: Fix __udivdi3 and __aeabi_uldivmod unresolved symbols
  UPSTREAM: powercap/drivers/dtpm: Add CPU energy model based support
  UPSTREAM: powercap/drivers/dtpm: Add API for dynamic thermal power management
  UPSTREAM: units: Add Watt units
  UPSTREAM: Documentation/powercap/dtpm: Add documentation for dtpm
  UPSTREAM: xhci: Fix repeated xhci wake after suspend due to uncleared internal wake state
  UPSTREAM: usb: xhci: Fix ASMedia ASM1042A and ASM3242 DMA addressing
  UPSTREAM: xhci: Improve detection of device initiated wake signal.
  UPSTREAM: usb: xhci: do not perform Soft Retry for some xHCI hosts
  FROMGIT: rcu/tree: Add a trace event for RCU CPU stall warnings
  ANDROID: GKI: Update virtual_device symbol list
  ANDROID: usb: host: export additional xhci symbols for ring management
  ANDROID: GKI: add fields required to enable CONFIG_READ_ONLY_THP_FOR_FS
  ANDROID: vendor_hooks: Add hooks for rwsem and mutex
  BACKPORT: usb: dwc3: gadget: Allow runtime suspend if UDC unbinded
  FROMGIT: ASoC: codecs: wcd934x: add a sanity check in set channel map
  FROMGIT: ASoC: qcom: sdm845: Fix array out of range on rx slim channels
  FROMGIT: ASoC: qcom: sdm845: Fix array out of bounds access
  FROMGIT: arm64: mte: Map hotplugged memory as Normal Tagged
  ANDROID: KVM: arm64: Disable CFI only for nVHE hyp object
  FROMGIT: KVM: arm64: Ensure I-cache isolation between vcpus of a same VM
  FROMGIT: KVM: arm64: Don't use cbz/adr with external symbols
  FROMGIT: KVM: arm64: Fix range alignment when walking page tables
  BACKPORT: binder: move structs from core file to header file
  ANDROID: dma-buf: add get_each_dmabuf function
  FROMLIST: drivers: thermal: Add NULL pointer check before using cooling device stats
  ANDROID: GKI: Switch to LTO_FULL
  ANDROID: gki_defconfig: set CONFIG_STACK_HASH_ORDER to 12
  ANDROID: sched: move vendor hook to check scheduling nice value
  ANDROID: qcom: Add __cfi_slowpath
  FROMGIT: usb: dwc3: qcom: Honor wakeup enabled/disabled state
  FROMGIT: usb: typec: stusb160x: fix return value check in stusb160x_probe()
  FROMGIT: usb: typec: tps6598x: Fix return value check in tps6598x_probe()
  FROMGIT: usb: typec: tcpm: turn tcpm_ams_finish into void function
  FROMGIT: usb: typec: tcpci: Check ROLE_CONTROL while interpreting CC_STATUS
  ANDROID: GKI: Update abi_gki_aarch64_qcom for timer hook
  ANDROID: Add vendor hooks when syscall prctl finished
  ANDROID: cgroup: Add vendor hook to the cgroup
  FROMGIT: usb: common: move function's kerneldoc next to its definition
  FROMGIT: usb: xhci-mtk: print debug info of endpoint interval
  FROMGIT: usb: common: add function to get interval expressed in us unit
  FROMGIT: usb: xhci-mtk: support to build xhci-mtk-hcd.ko
  FROMGIT: usb: xhci-mtk: remove declaration of xhci_mtk_setup()
  FROMGIT: usb: xhci-mtk: add some schedule error number
  FROMGIT: usb: xhci-mtk: rebuild the way to get bandwidth domain
  FROMGIT: usb: xhci-mtk: use @tt_info to check the FS/LS device is under a HS hub
  FROMGIT: usb: xhci-mtk: add a member @speed in mu3h_sch_ep_info struct
  FROMGIT: usb: xhci-mtk: use clear type instead of void
  FROMGIT: usb: xhci-mtk: remove unnecessary members of mu3h_sch_tt struct
  FROMGIT: usb: xhci-mtk: add a function to get bandwidth boundary
  FROMGIT: usb: xhci-mtk: add a function to (un)load bandwidth info
  FROMGIT: usb: xhci-mtk: use @sch_tt to check whether need do TT schedule
  FROMGIT: usb: xhci-mtk: add only one extra CS for FS/LS INTR
  FROMGIT: usb: xhci-mtk: get the microframe boundary for ESIT
  FROMGIT: usb: xhci-mtk: improve bandwidth scheduling with TT
  FROMGIT: usb: xhci-mtk: remove or operator for setting schedule parameters
  ANDROID: abi_gki_aarch64_qcom: Add __tracepoint_cpu_frequency_limits
  ANDROID: cpufreq: Export cpu_frequency_limits tracepoint
  ANDROID: kbuild: Copy out-of-tree kernel headers to INSTALL_HDR_PATH
  ANDROID: build.config: Disable LTO for KASAN and Kprobes builds
  ANDROID: GKI: arm64: Enable LTO+CFI
  Linux 5.10.21
  net: sfp: add workaround for Realtek RTL8672 and RTL9601C chips
  net: sfp: VSOL V2801F / CarlitoxxPro CPGOS03-0490 v2.0 workaround
  ALSA: hda/realtek: Apply dual codec quirks for MSI Godlike X570 board
  ALSA: hda/realtek: Add quirk for Intel NUC 10
  ALSA: hda/realtek: Add quirk for Clevo NH55RZQ
  media: v4l: ioctl: Fix memory leak in video_usercopy
  tty: teach the n_tty ICANON case about the new "cookie continuations" too
  tty: teach n_tty line discipline about the new "cookie continuations"
  tty: clean up legacy leftovers from n_tty line discipline
  tty: fix up hung_up_tty_read() conversion
  tty: fix up iterate_tty_read() EOVERFLOW handling
  powerpc/sstep: Fix incorrect return from analyze_instr()
  powerpc/sstep: Check instruction validity against ISA version before emulation
  swap: fix swapfile read/write offset
  remoteproc/mediatek: Fix kernel test robot warning
  zsmalloc: account the number of compacted pages correctly
  xen: fix p2m size in dom0 for disabled memory hotplug case
  xen-netback: respect gnttab_map_refs()'s return value
  Xen/gnttab: handle p2m update errors on a per-slot basis
  scsi: iscsi: Verify lengths on passthrough PDUs
  scsi: iscsi: Ensure sysfs attributes are limited to PAGE_SIZE
  scsi: iscsi: Restrict sessions and handles to admin capabilities
  ASoC: Intel: bytcr_rt5640: Add quirk for the Acer One S1002 tablet
  ASoC: Intel: bytcr_rt5651: Add quirk for the Jumper EZpad 7 tablet
  ASoC: Intel: bytcr_rt5640: Add quirk for the Voyo Winpad A15 tablet
  ASoC: Intel: bytcr_rt5640: Add quirk for the Estar Beauty HD MID 7316R tablet
  sched/features: Fix hrtick reprogramming
  parisc: Bump 64-bit IRQ stack size to 64 KB
  ASoC: Intel: sof_sdw: detect DMIC number based on mach params
  ASoC: Intel: sof-sdw: indent and add quirks consistently
  perf/x86/kvm: Add Cascade Lake Xeon steppings to isolation_ucodes[]
  btrfs: fix error handling in commit_fs_roots
  ASoC: Intel: Add DMI quirk table to soc_intel_is_byt_cr()
  nvme-tcp: add clean action for failed reconnection
  nvme-rdma: add clean action for failed reconnection
  nvme-core: add cancel tagset helpers
  f2fs: fix to set/clear I_LINKABLE under i_lock
  f2fs: handle unallocated section and zone on pinned/atgc
  media: uvcvideo: Allow entities with no pads
  drm/amd/amdgpu: add error handling to amdgpu_virt_read_pf2vf_data
  drm/amd/display: Guard against NULL pointer deref when get_i2c_info fails
  ASoC: Intel: bytcr_rt5640: Add new BYT_RT5640_NO_SPEAKERS quirk-flag
  PCI: Add a REBAR size quirk for Sapphire RX 5600 XT Pulse
  drm/amdgpu: Add check to prevent IH overflow
  fs: make unlazy_walk() error handling consistent
  crypto: tcrypt - avoid signed overflow in byte count
  drm/hisilicon: Fix use-after-free
  brcmfmac: Add DMI nvram filename quirk for Voyo winpad A15 tablet
  brcmfmac: Add DMI nvram filename quirk for Predia Basic tablet
  staging: bcm2835-audio: Replace unsafe strcpy() with strscpy()
  staging: most: sound: add sanity check for function argument
  Bluetooth: Fix null pointer dereference in amp_read_loc_assoc_final_data
  Bluetooth: Add new HCI_QUIRK_NO_SUSPEND_NOTIFIER quirk
  net: sfp: add mode quirk for GPON module Ubiquiti U-Fiber Instant
  ath10k: fix wmi mgmt tx queue full due to race condition
  pktgen: fix misuse of BUG_ON() in pktgen_thread_worker()
  mt76: mt7615: reset token when mac_reset happens
  Bluetooth: btusb: fix memory leak on suspend and resume
  Bluetooth: hci_h5: Set HCI_QUIRK_SIMULTANEOUS_DISCOVERY for btrtl
  wlcore: Fix command execute failure 19 for wl12xx
  vt/consolemap: do font sum unsigned
  x86/reboot: Add Zotac ZBOX CI327 nano PCI reboot quirk
  staging: fwserial: Fix error handling in fwserial_create
  EDAC/amd64: Do not load on family 0x15, model 0x13
  rsi: Move card interrupt handling to RX thread
  rsi: Fix TX EAPOL packet handling against iwlwifi AP
  ASoC: qcom: Remove useless debug print
  dt-bindings: net: btusb: DT fix s/interrupt-name/interrupt-names/
  dt-bindings: ethernet-controller: fix fixed-link specification
  net: fix dev_ifsioc_locked() race condition
  net: psample: Fix netlink skb length with tunnel info
  net: hsr: add support for EntryForgetTime
  net: ag71xx: remove unnecessary MTU reservation
  net: dsa: tag_rtl4_a: Support also egress tags
  net/sched: cls_flower: Reject invalid ct_state flags rules
  net: bridge: use switchdev for port flags set through sysfs too
  mptcp: do not wakeup listener for MPJ subflows
  tcp: fix tcp_rmem documentation
  RDMA/rtrs-srv: Do not signal REG_MR
  RDMA/rtrs-clt: Use bitmask to check sess->flags
  RDMA/rtrs: Do not signal for heatbeat
  mm/hugetlb.c: fix unnecessary address expansion of pmd sharing
  nbd: handle device refs for DESTROY_ON_DISCONNECT properly
  riscv: Get rid of MAX_EARLY_MAPPING_SIZE
  net: fix up truesize of cloned skb in skb_prepare_for_shift()
  tomoyo: ignore data race while checking quota
  smackfs: restrict bytes count in smackfs write functions
  net/af_iucv: remove WARN_ONCE on malformed RX packets
  xfs: Fix assert failure in xfs_setattr_size()
  media: v4l2-ctrls.c: fix shift-out-of-bounds in std_validate
  erofs: fix shift-out-of-bounds of blkszbits
  media: mceusb: sanity check for prescaler value
  udlfb: Fix memory leak in dlfb_usb_probe
  sched/core: Allow try_invoke_on_locked_down_task() with irqs disabled
  JFS: more checks for invalid superblock
  x86/build: Treat R_386_PLT32 relocation as R_386_PC32
  drm/virtio: use kvmalloc for large allocations
  Input: elan_i2c - add new trackpoint report type 0x5F
  Input: elantech - fix protocol errors for some trackpoints in SMBus mode
  net: usb: qmi_wwan: support ZTE P685M modem
  ANDROID: GKI: Enable bounds sanitizer
  ANDROID: Allow HAS_LTO_CLANG with KASAN_HW_TAGS
  ANDROID: abi_gki_aarch64_qcom: Add cpufreq related symbols
  ANDROID: cpufreq: Add a restricted vendor hook for freq transition
  ANDROID: scsi: ufs: add hooks to track ufs commands
  ANDROID: Fix compilation error when CPU_FREQ is disabled
  BACKPORT: kasan, arm64: allow using KUnit tests with HW_TAGS mode
  Revert "FROMGIT: kasan, arm64: allow using KUnit tests with HW_TAGS mode"
  Revert "BACKPORT: kasan: remove redundant config option"
  UPSTREAM: arm/kasan: fix the array size of kasan_early_shadow_pte[]
  FROMGIT: KVM: arm64: Workaround firmware wrongly advertising GICv2-on-v3 compatibility
  FROMGIT: KVM: arm64: Rename __vgic_v3_get_ich_vtr_el2() to __vgic_v3_get_gic_config()
  FROMGIT: KVM: arm64: Don't access PMSELR_EL0/PMUSERENR_EL0 when no PMU is available
  FROMGIT: KVM: arm64: Turn kvm_arm_support_pmu_v3() into a static key
  FROMGIT: KVM: arm64: Fix nVHE hyp panic host context restore
  FROMGIT: KVM: arm64: Avoid corrupting vCPU context register in guest exit
  FROMLIST: arm64: cpufeatures: Fix handling of CONFIG_CMDLINE for idreg overrides
  Linux 5.10.20
  ARM: dts: aspeed: Add LCLK to lpc-snoop
  net_sched: fix RTNL deadlock again caused by request_module()
  net: qrtr: Fix memory leak in qrtr_tun_open
  net: sched: fix police ext initialization
  wireguard: queueing: get rid of per-peer ring buffers
  wireguard: selftests: test multiple parallel streams
  net: icmp: pass zeroed opts from icmp{,v6}_ndo_send before sending
  ipv6: silence compilation warning for non-IPV6 builds
  kgdb: fix to kill breakpoints on initmem after boot
  drm/i915: Reject 446-480MHz HDMI clock on GLK
  dm era: only resize metadata in preresume
  dm era: Reinitialize bitset cache before digesting a new writeset
  dm era: Use correct value size in equality function of writeset tree
  dm era: Fix bitset memory leaks
  dm era: Verify the data block size hasn't changed
  dm era: Update in-core bitset after committing the metadata
  dm era: Recover committed writeset after crash
  dm writecache: fix writing beyond end of underlying device when shrinking
  dm writecache: return the exact table values that were set
  dm writecache: fix performance degradation in ssd mode
  dm table: fix zoned iterate_devices based device capability checks
  dm table: fix DAX iterate_devices based device capability checks
  dm table: fix iterate_devices based device capability checks
  dm: fix deadlock when swapping to encrypted device
  gfs2: Recursive gfs2_quota_hold in gfs2_iomap_end
  gfs2: Lock imbalance on error path in gfs2_recover_one
  gfs2: Don't skip dlm unlock if glock has an lvb
  gfs2: fix glock confusion in function signal_our_withdraw
  spi: spi-synquacer: fix set_cs handling
  spi: fsl: invert spisel_boot signal on MPC8309
  sparc32: fix a user-triggerable oops in clear_user()
  f2fs: flush data when enabling checkpoint back
  f2fs: enforce the immutable flag on open files
  f2fs: fix out-of-repair __setattr_copy()
  irqchip/loongson-pch-msi: Use bitmap_zalloc() to allocate bitmap
  um: defer killing userspace on page table update failures
  um: mm: check more comprehensively for stub changes
  virtio/s390: implement virtio-ccw revision 2 correctly
  s390/vtime: fix inline assembly clobber list
  proc: don't allow async path resolution of /proc/thread-self components
  cpufreq: intel_pstate: Get per-CPU max freq via MSR_HWP_CAPABILITIES if available
  cpufreq: intel_pstate: Change intel_pstate_get_hwp_max() argument
  cpufreq: qcom-hw: drop devm_xxx() calls from init/exit hooks
  thermal: cpufreq_cooling: freq_qos_update_request() returns < 0 on error
  kcmp: Support selection of SYS_kcmp without CHECKPOINT_RESTORE
  zonefs: Fix file size of zones in full condition
  exfat: fix shift-out-of-bounds in exfat_fill_super()
  printk: fix deadlock when kernel panic
  mfd: gateworks-gsc: Fix interrupt type
  gpio: pcf857x: Fix missing first interrupt
  mei: me: add adler lake point LP DID
  mei: me: add adler lake point S DID
  mei: me: emmitsburg workstation DID
  mei: fix transfer over dma with extended header
  spmi: spmi-pmic-arb: Fix hw_irq overflow
  powerpc/32s: Add missing call to kuep_lock on syscall entry
  powerpc/kexec_file: fix FDT size estimation for kdump kernel
  powerpc/32: Preserve cr1 in exception prolog stack check to fix build error
  mmc: sdhci-pci-o2micro: Bug fix for SDR104 HW tuning failure
  mmc: sdhci-esdhc-imx: fix kernel panic when remove module
  module: Ignore _GLOBAL_OFFSET_TABLE_ when warning for undefined symbols
  nvmem: qcom-spmi-sdam: Fix uninitialized pdev pointer
  KVM: nSVM: fix running nested guests when npt=0
  mm, compaction: make fast_isolate_freepages() stay within zone
  mm/vmscan: restore zone_reclaim_mode ABI
  hugetlb: fix copy_huge_page_from_user contig page struct assumption
  hugetlb: fix update_and_free_page contig page struct assumption
  mm: memcontrol: fix get_active_memcg return value
  mm: memcontrol: fix swap undercounting in cgroup2
  x86: fix seq_file iteration for pat/memtype.c
  seq_file: document how per-entry resources are managed.
  fs/affs: release old buffer head on error path
  mtd: spi-nor: hisi-sfc: Put child node np on error path
  mtd: spi-nor: core: Add erase size check for erase command initialization
  mtd: spi-nor: core: Fix erase type discovery for overlaid region
  mtd: spi-nor: sfdp: Fix wrong erase type bitmask for overlaid region
  mtd: spi-nor: sfdp: Fix last erase region marking
  coresight: etm4x: Handle accesses to TRCSTALLCTLR
  watchdog: mei_wdt: request stop on unregister
  watchdog: qcom: Remove incorrect usage of QCOM_WDT_ENABLE_IRQ
  riscv: Disable KSAN_SANITIZE for vDSO
  arm64: spectre: Prevent lockdep splat on v4 mitigation enable path
  arm64 module: set plt* section addresses to 0x0
  arm64: uprobe: Return EOPNOTSUPP for AARCH32 instruction probing
  arm64: kexec_file: fix memory leakage in create_dtb() when fdt_open_into() fails
  iommu/arm-smmu-qcom: Fix mask extraction for bootloader programmed SMRs
  arm64: Extend workaround for erratum 1024718 to all versions of Cortex-A55
  kprobes: Fix to delay the kprobes jump optimization
  rcu/nocb: Perform deferred wake up before last idle's need_resched() check
  rcu: Pull deferred rcuog wake up to rcu_eqs_enter() callers
  powerpc/prom: Fix "ibm,arch-vec-5-platform-support" scan
  x86/entry: Fix instrumentation annotation
  x86/fault: Fix AMD erratum #91 errata fixup for user code
  x86/reboot: Force all cpus to exit VMX root if VMX is supported
  x86/virt: Eat faults on VMXOFF in reboot flows
  media: smipcie: fix interrupt handling and IR timeout
  media: marvell-ccic: power up the device on mclk enable
  media: ipu3-cio2: Fix mbus_code processing in cio2_subdev_set_fmt()
  media: ir_toy: add another IR Droid device
  media: i2c: max9286: fix access to unallocated memory
  floppy: reintroduce O_NDELAY fix
  staging: rtl8188eu: Add Edimax EW-7811UN V2 to device table
  staging: gdm724x: Fix DMA from stack
  staging/mt7621-dma: mtk-hsdma.c->hsdma-mt7621.c
  arm64: dts: agilex: fix phy interface bit shift for gmac1 and gmac2
  dts64: mt7622: fix slow sd card access
  pstore: Fix typo in compression option name
  drivers/misc/vmw_vmci: restrict too big queue size in qp_host_alloc_queue
  misc: rtsx: init of rts522a add OCP power off when no card is present
  arm64: ptrace: Fix seccomp of traced syscall -1 (NO_SYSCALL)
  seccomp: Add missing return in non-void function
  soc: samsung: exynos-asv: handle reading revision register error
  soc: samsung: exynos-asv: don't defer early on not-supported SoCs
  crypto: sun4i-ss - initialize need_fallback
  crypto: sun4i-ss - handle BigEndian for cipher
  crypto: sun4i-ss - IV register does not work on A10 and A13
  crypto: sun4i-ss - checking sg length is not sufficient
  crypto: michael_mic - fix broken misalignment handling
  crypto: aesni - prevent misaligned buffers on the stack
  crypto: arm64/sha - add missing module aliases
  drm/i915/gt: Correct surface base address for renderclear
  drm/i915/gt: Flush before changing register state
  btrfs: fix extent buffer leak on failure to copy root
  btrfs: account for new extents being deleted in total_bytes_pinned
  btrfs: handle space_info::total_bytes_pinned inside the delayed ref itself
  btrfs: splice remaining dirty_bg's onto the transaction dirty bg list
  btrfs: fix reloc root leak with 0 ref reloc roots on recovery
  btrfs: abort the transaction if we fail to inc ref in btrfs_copy_root
  btrfs: add asserts for deleting backref cache nodes
  btrfs: do not warn if we can't find the reloc root when looking up backref
  btrfs: do not cleanup upper nodes in btrfs_backref_cleanup_node
  KEYS: trusted: Reserve TPM for seal and unseal operations
  KEYS: trusted: Fix migratable=1 failing
  KEYS: trusted: Fix incorrect handling of tpm_get_random()
  tpm_tis: Clean up locality release
  tpm_tis: Fix check_locality for correct locality acquisition
  erofs: initialized fields can only be observed after bit is set
  selinux: fix inconsistency between inode_getxattr and inode_listsecurity
  ASoC: siu: Fix build error by a wrong const prefix
  drm/rockchip: Require the YTR modifier for AFBC
  drm/panel: kd35t133: allow using non-continuous dsi clock
  drm/sched: Cancel and flush all outstanding jobs before finish.
  drm/modes: Switch to 64bit maths to avoid integer overflow
  drm/nouveau/kms: handle mDP connectors
  drm/amdgpu: Set reference clock to 100Mhz on Renoir (v2)
  drm/amdkfd: Fix recursive lock warnings
  drm/amd/display: Add vupdate_no_lock interrupts for DCN2.1
  drm/amd/display: Remove Assert from dcn10_get_dig_frontend
  drm/amd/display: Add FPU wrappers to dcn21_validate_bandwidth()
  Revert "drm/amd/display: Update NV1x SR latency values"
  bcache: Move journal work to new flush wq
  bcache: Give btree_io_wq correct semantics again
  Revert "bcache: Kill btree_io_wq"
  Revert "MIPS: Octeon: Remove special handling of CONFIG_MIPS_ELF_APPENDED_DTB=y"
  MIPS: VDSO: Use CLANG_FLAGS instead of filtering out '--target='
  MIPS: Support binutils configured with --enable-mips-fix-loongson3-llsc=yes
  MIPS: Ingenic: Disable HPTLB for D0 XBurst CPUs too
  ALSA: hda/realtek: Quirk for HP Spectre x360 14 amp setup
  ALSA: hda/realtek: modify EAPD in the ALC886
  ALSA: hda/hdmi: Drop bogus check at closing a stream
  ALSA: hda: Add another CometLake-H PCI ID
  ALSA: fireface: fix to parse sync status register of latter protocol
  phy: lantiq: rcu-usb2: wait after clock enable
  USB: serial: mos7720: fix error code in mos7720_write()
  USB: serial: mos7840: fix error code in mos7840_write()
  USB: serial: pl2303: fix line-speed handling on newer chips
  USB: serial: ftdi_sio: fix FTX sub-integer prescaler
  usb: dwc3: gadget: Fix dep->interval for fullspeed interrupt
  usb: dwc3: gadget: Fix setting of DEPCFG.bInterval_m1
  usb: musb: Fix runtime PM race in musb_queue_resume_work
  USB: serial: option: update interface mapping for ZTE P685M
  media: mceusb: Fix potential out-of-bounds shift
  Input: i8042 - add ASUS Zenbook Flip to noselftest list
  Input: joydev - prevent potential read overflow in ioctl
  Input: xpad - add support for PowerA Enhanced Wired Controller for Xbox Series X|S
  Input: raydium_ts_i2c - do not send zero length
  HID: wacom: Ignore attempts to overwrite the touch_max value from HID
  HID: logitech-dj: add support for keyboard events in eQUAD step 4 Gaming
  cpufreq: ACPI: Set cpuinfo.max_freq directly if max boost is known
  ACPI: configfs: add missing check after configfs_register_default_group()
  ACPI: property: Fix fwnode string properties matching
  soundwire: intel: fix possible crash when no device is detected
  blk-settings: align max_sectors on "logical_block_size" boundary
  scsi: sd: Fix Opal support
  ide/falconide: Fix module unload
  block: reopen the device in blkdev_reread_part
  scsi: sd: sd_zbc: Don't pass GFP_NOIO to kvcalloc
  scsi: bnx2fc: Fix Kconfig warning & CNIC build errors
  csky: Fix a size determination in gpr_get()
  proc: use kvzalloc for our kernel buffer
  mm/rmap: fix potential pte_unmap on an not mapped pte
  mm: fix memory_failure() handling of dax-namespace metadata
  mm,thp,shmem: make khugepaged obey tmpfs mount flags
  i2c: exynos5: Preserve high speed master code
  i2c: brcmstb: Fix brcmstd_send_i2c_cmd condition
  arm64: Add missing ISB after invalidating TLB in __primary_switch
  KVM: x86/mmu: Expand collapsible SPTE zap for TDP MMU to ZONE_DEVICE and HugeTLB pages
  KVM: SVM: Intercept INVPCID when it's disabled to inject #UD
  NFSv4: Fixes for nfs4_bitmask_adjust()
  r8169: fix jumbo packet handling on RTL8168e
  mm/compaction: fix misbehaviors of fast_find_migrateblock()
  mm/hugetlb: suppress wrong warning info when alloc gigantic page
  mm/hugetlb: fix potential double free in hugetlb_register_node() error path
  mm/memory.c: fix potential pte_unmap_unlock pte error
  mm: memcontrol: fix slub memory accounting
  mm: memcontrol: fix NR_ANON_THPS accounting in charge moving
  ocfs2: fix a use after free on error
  wireguard: kconfig: use arm chacha even with no neon
  wireguard: device: do not generate ICMP for non-IP packets
  vxlan: move debug check after netdev unregister
  PCI: rockchip: Make 'ep-gpios' DT property optional
  net/mlx4_core: Add missed mlx4_free_cmd_mailbox()
  net: stmmac: fix CBS idleslope and sendslope calculation
  ice: update the number of available RSS queues
  ice: Fix state bits on LLDP mode switch
  ice: Account for port VLAN in VF max packet size calculation
  ice: report correct max number of TCs
  vfio/type1: Use follow_pte()
  pwm: iqs620a: Fix overflow and optimize calculations
  octeontx2-af: Fix an off by one in rvu_dbg_qsize_write()
  i40e: Fix add TC filter for IPv6
  nios2: fixed broken sys_clone syscall
  Take mmap lock in cacheflush syscall
  i40e: Fix VFs not created
  i40e: Fix addition of RX filters after enabling FW LLDP agent
  i40e: Fix overwriting flow control settings during driver loading
  i40e: Add zero-initialization of AQ command structures
  i40e: Fix flow for IPv6 next header (extension header)
  PCI: cadence: Fix DMA range mapping early return error
  PCI: pci-bridge-emul: Fix array overruns, improve safety
  device-dax: Fix default return code of range_parse()
  mailbox: sprd: correct definition of SPRD_OUTBOX_FIFO_FULL
  ext: EXT4_KUNIT_TESTS should depend on EXT4_FS instead of selecting it
  regmap: sdw: use _no_pm functions in regmap_read/write
  remoteproc/mediatek: acknowledge watchdog IRQ after handled
  misc: fastrpc: fix incorrect usage of dma_map_sgtable
  soundwire: bus: fix confusion on device used by pm_runtime
  soundwire: export sdw_write/read_no_pm functions
  soundwire: bus: use sdw_write_no_pm when setting the bus scale registers
  soundwire: bus: use sdw_update_no_pm when initializing a device
  nvmem: core: skip child nodes not matching binding
  nvmem: core: Fix a resource leak on error in nvmem_add_cells_from_of()
  coresight: etm4x: Skip accessing TRCPDCR in save/restore
  phy: USB_LGM_PHY should depend on X86
  ext4: fix potential htree index checksum corruption
  vfio-pci/zdev: fix possible segmentation fault issue
  vfio/iommu_type1: Fix some sanity checks in detach group
  vfio/iommu_type1: Populate full dirty when detach non-pinned group
  drm/msm/dp: trigger unplug event in msm_dp_display_disable
  drm/msm: Fix races managing the OOB state for timestamp vs timestamps.
  drm/msm: Fix race of GPU init vs timestamp power management.
  drm/msm/mdp5: Fix wait-for-commit for cmd panels
  drm/msm/dsi: Correct io_start for MSM8994 (20nm PHY)
  drm/msm: Fix MSM_INFO_GET_IOVA with carveout
  mei: hbm: call mei_set_devstate() on hbm stop response
  PCI: Align checking of syscall user config accessors
  VMCI: Use set_page_dirty_lock() when unregistering guest memory
  PCI: xilinx-cpm: Fix reference count leak on error path
  pwm: rockchip: Eliminate potential race condition when probing
  pwm: rockchip: rockchip_pwm_probe(): Remove superfluous clk_unprepare()
  pwm: rockchip: Enable APB clock during register access while probing
  soundwire: cadence: fix ACK/NAK handling
  PCI: rcar: Always allocate MSI addresses in 32bit space
  misc: eeprom_93xx46: Add module alias to avoid breaking support for non device tree users
  phy: cadence-torrent: Fix error code in cdns_torrent_phy_probe()
  phy: rockchip-emmc: emmc_phy_init() always return 0
  misc: eeprom_93xx46: Fix module alias to enable module autoprobe
  ARM: 9065/1: OABI compat: fix build when EPOLL is not enabled
  Input: zinitix - fix return type of zinitix_init_touch()
  sparc: fix led.c driver when PROC_FS is not enabled
  sparc64: only select COMPAT_BINFMT_ELF if BINFMT_ELF is set
  Input: elo - fix an error code in elo_connect()
  perf test: Fix unaligned access in sample parsing test
  perf intel-pt: Fix IPC with CYC threshold
  perf intel-pt: Fix premature IPC
  perf intel-pt: Fix missing CYC processing in PSB
  perf record: Fix continue profiling after draining the buffer
  Input: sur40 - fix an error code in sur40_probe()
  RDMA/rtrs-srv: Do not pass a valid pointer to PTR_ERR()
  RDMA/rtrs-srv-sysfs: fix missing put_device
  RDMA/rtrs-srv: fix memory leak by missing kobject free
  RDMA/rtrs: Only allow addition of path to an already established session
  RDMA/rtrs-srv: Fix stack-out-of-bounds
  RDMA/ucma: Fix use-after-free bug in ucma_create_uevent
  RDMA/hns: Fixes missing error code of CMDQ
  ceph: fix flush_snap logic after putting caps
  svcrdma: Hold private mutex while invoking rdma_accept()
  nfsd: register pernet ops last, unregister first
  perf symbols: Fix return value when loading PE DSO
  printk: avoid prb_first_valid_seq() where possible
  spi: Skip zero-length transfers in spi_transfer_one_message()
  spi: dw: Avoid stack content exposure
  regulator: bd718x7, bd71828, Fix dvs voltage levels
  perf symbols: Use (long) for iterator for bfd symbols
  selftests/ftrace: Update synthetic event syntax errors
  clk: aspeed: Fix APLL calculate formula from ast2600-A2
  regulator: qcom-rpmh: fix pm8009 ldo7
  powerpc/kuap: Restore AMR after replaying soft interrupts
  powerpc/uaccess: Avoid might_fault() when user access is enabled
  spi: pxa2xx: Fix the controller numbering for Wildcat Point
  clk: divider: fix initialization with parent_hw
  RDMA/hns: Disable RQ inline by default
  RDMA/hns: Fix type of sq_signal_bits
  RDMA/siw: Fix calculation of tx_valid_cpus size
  RDMA/hns: Fixed wrong judgments in the goto branch
  kselftests: dmabuf-heaps: Fix Makefile's inclusion of the kernel's usr/include dir
  kunit: tool: fix unit test cleanup handling
  clk: qcom: gcc-msm8998: Fix Alpha PLL type for all GPLLs
  powerpc/8xx: Fix software emulation interrupt
  powerpc/pseries/dlpar: handle ibm, configure-connector delay status
  mfd: wm831x-auxadc: Prevent use after free in wm831x_auxadc_read_irq()
  mfd: altera-sysmgr: Fix physical address storing more
  spi: stm32: properly handle 0 byte transfer
  RDMA/rxe: Correct skb on loopback path
  RDMA/rxe: Fix coding error in rxe_rcv_mcast_pkt
  RDMA/rxe: Fix coding error in rxe_recv.c
  perf vendor events arm64: Fix Ampere eMag event typo
  perf tools: Fix DSO filtering when not finding a map for a sampled address
  rtc: zynqmp: depend on HAS_IOMEM
  tracepoint: Do not fail unregistering a probe due to memory failure
  IB/cm: Avoid a loop when device has 255 ports
  IB/mlx5: Return appropriate error code instead of ENOMEM
  iommu: Properly pass gfp_t in _iommu_map() to avoid atomic sleeping
  iommu: Move iotlb_sync_map out from __iommu_map
  amba: Fix resource leak for drivers without .remove
  i2c: qcom-geni: Store DMA mapping data in geni_i2c_dev struct
  ARM: 9046/1: decompressor: Do not clear SCTLR.nTLSMD for ARMv7+ cores
  mmc: renesas_sdhi_internal_dmac: Fix DMA buffer alignment from 8 to 128-bytes
  mmc: usdhi6rol0: Fix a resource leak in the error handling path of the probe
  mmc: sdhci-sprd: Fix some resource leaks in the remove function
  mmc: owl-mmc: Fix a resource leak in an error handling path and in the remove function
  powerpc/time: Enable sched clock for irqtime
  powerpc/47x: Disable 256k page size
  KVM: PPC: Make the VMX instruction emulation routines static
  IB/umad: Return EPOLLERR in case of when device disassociated
  IB/umad: Return EIO in case of when device disassociated
  iommu: Switch gather->end to the inclusive end
  scsi: lpfc: Fix ancient double free
  objtool: Fix ".cold" section suffix check for newer versions of GCC
  objtool: Fix retpoline detection in asm code
  objtool: Fix error handling for STD/CLD warnings
  auxdisplay: ht16k33: Fix refresh rate handling
  watchdog: intel-mid_wdt: Postpone IRQ handler registration till SCU is ready
  isofs: release buffer head before return
  regulator: core: Avoid debugfs: Directory ... already present! error
  power: supply: smb347-charger: Fix interrupt usage if interrupt is unavailable
  power: supply: axp20x_usb_power: Init work before enabling IRQs
  regulator: s5m8767: Drop regulators OF node reference
  spi: atmel: Put allocated master before return
  regulator: s5m8767: Fix reference count leak
  certs: Fix blacklist flag type confusion
  watch_queue: Drop references to /dev/watch_queue
  regulator: axp20x: Fix reference cout leak
  platform/chrome: cros_ec_proto: Add LID and BATTERY to default mask
  platform/chrome: cros_ec_proto: Use EC_HOST_EVENT_MASK not BIT
  clk: sunxi-ng: h6: Fix clock divider range on some clocks
  IB/mlx5: Add mutex destroy call to cap_mask_mutex mutex
  RDMA/mlx5: Use the correct obj_id upon DEVX TIR creation
  spi: imx: Don't print error on -EPROBEDEFER
  clocksource/drivers/mxs_timer: Add missing semicolon when DEBUG is defined
  clocksource/drivers/ixp4xx: Select TIMER_OF when needed
  power: supply: fix sbs-charger build, needs REGMAP_I2C
  dmaengine: idxd: set DMA channel to be private
  rtc: s5m: select REGMAP_I2C
  power: reset: at91-sama5d2_shdwc: fix wkupdbc mask
  RDMA/rtrs-srv: Init wr_cnt as 1
  RDMA/rtrs-clt: Refactor the failure cases in alloc_clt
  RDMA/rtrs-srv: Fix missing wr_cqe
  RDMA/rtrs: Call kobject_put in the failure path
  RDMA/rtrs-clt: Set mininum limit when create QP
  RDMA/rtrs-srv: Use sysfs_remove_file_self for disconnect
  RDMA/rtrs-srv: Release lock before call into close_sess
  RDMA/rtrs: Extend ibtrs_cq_qp_create
  of/fdt: Make sure no-map does not remove already reserved regions
  fdt: Properly handle "no-map" field in the memory region
  power: supply: cpcap-charger: Fix power_supply_put on null battery pointer
  power: supply: cpcap-battery: Fix missing power_supply_put()
  power: supply: cpcap-charger: Fix missing power_supply_put()
  mfd: bd9571mwv: Use devm_mfd_add_devices()
  dmaengine: hsu: disable spurious interrupt
  dmaengine: owl-dma: Fix a resource leak in the remove function
  dmaengine: fsldma: Fix a resource leak in an error handling path of the probe function
  dmaengine: fsldma: Fix a resource leak in the remove function
  RDMA/siw: Fix handling of zero-sized Read and Receive Queues.
  HID: core: detect and skip invalid inputs to snto32()
  clk: renesas: r8a779a0: Fix parent of CBFUSA clock
  clk: renesas: r8a779a0: Remove non-existent S2 clock
  clk: sunxi-ng: h6: Fix CEC clock
  spi: cadence-quadspi: Abort read if dummy cycles required are too many
  i2c: iproc: handle master read request
  i2c: iproc: update slave isr mask (ISR_MASK_SLAVE)
  i2c: iproc: handle only slave interrupts which are enabled
  quota: Fix memory leak when handling corrupted quota file
  arm64: dts: qcom: qrb5165-rb5: fix pm8009 regulators
  regulator: qcom-rpmh-regulator: add pm8009-1 chip revision
  selftests/powerpc: Make the test check in eeh-basic.sh posix compliant
  clk: meson: clk-pll: propagate the error from meson_clk_pll_set_rate()
  clk: meson: clk-pll: make "ret" a signed integer
  clk: meson: clk-pll: fix initializing the old rate (fallback) for a PLL
  power: supply: cpcap: Add missing IRQF_ONESHOT to fix regression
  HSI: Fix PM usage counter unbalance in ssi_hw_init
  capabilities: Don't allow writing ambiguous v3 file capabilities
  drm/amdgpu/display: remove hdcp_srm sysfs on device removal
  smp: Process pending softirqs in flush_smp_call_function_from_idle()
  irqchip/imx: IMX_INTMUX should not default to y, unconditionally
  ubifs: Fix error return code in alloc_wbufs()
  ubifs: replay: Fix high stack usage, again
  ubifs: Fix memleak in ubifs_init_authentication
  jffs2: fix use after free in jffs2_sum_write_data()
  fs/jfs: fix potential integer overflow on shift of a int
  ASoC: simple-card-utils: Fix device module clock
  ima: Free IMA measurement buffer after kexec syscall
  ima: Free IMA measurement buffer on error
  ASoC: SOF: sof-pci-dev: add missing Up-Extreme quirk
  nvmet: set status to 0 in case for invalid nsid
  nvmet: remove extra variable in identify ns
  nvme-multipath: set nr_zones for zoned namespaces
  nvmet-tcp: fix potential race of tcp socket closing accept_work
  nvmet-tcp: fix receive data digest calculation for multiple h2cdata PDUs
  io_uring: fix possible deadlock in io_uring_poll
  crypto: ecdh_helper - Ensure 'len >= secret.len' in decode_key()
  hwrng: timeriomem - Fix cooldown period calculation
  drm/dp_mst: Don't cache EDIDs for physical ports
  drm/lima: fix reference leak in lima_pm_busy
  drm/vc4: hdmi: Update the CEC clock divider on HSM rate change
  drm/vc4: hdmi: Compute the CEC clock divider from the clock rate
  drm/vc4: hdmi: Restore cec physical address on reconnect
  drm/vc4: hdmi: Fix up CEC registers
  drm/vc4: hdmi: Fix register offset with longer CEC messages
  drm/vc4: hdmi: Move hdmi reset to bind
  s390/zcrypt: return EIO when msg retry limit reached
  KVM: x86: Restore all 64 bits of DR6 and DR7 during RSM on x86-64
  btrfs: fix double accounting of ordered extent for subpage case in btrfs_invalidapge
  btrfs: clarify error returns values in __load_free_space_cache
  ASoC: SOF: debug: Fix a potential issue on string buffer termination
  ASoC: rt5682: Fix panic in rt5682_jack_detect_handler happening during system shutdown
  ASoC: qcom: lpass: Fix i2s ctl register bit map
  locking/lockdep: Avoid unmatched unlock
  ASoC: Intel: sof_sdw: add missing TGL_HDMI quirk for Dell SKU 0A3E
  ASoC: Intel: sof_sdw: add missing TGL_HDMI quirk for Dell SKU 0A5E
  Drivers: hv: vmbus: Avoid use-after-free in vmbus_onoffer_rescind()
  drm/mediatek: Check if fb is null
  KVM: nSVM: Don't strip host's C-bit from guest's CR3 when reading PDPTRs
  ASoC: qcom: Fix typo error in HDMI regmap config callbacks
  f2fs: fix a wrong condition in __submit_bio
  drm/amdgpu: Prevent shift wrapping in amdgpu_read_mask()
  f2fs: fix to avoid inconsistent quota data
  mtd: parsers: afs: Fix freeing the part name memory in failure
  ASoC: codecs: add missing max_register in regmap config
  ASoC: cpcap: fix microphone timeslot mask
  ata: ahci_brcm: Add back regulators management
  mm: proc: Invalidate TLB after clearing soft-dirty page state
  drm/nouveau: bail out of nouveau_channel_new if channel init fails
  crypto: talitos - Fix ctr(aes) on SEC1
  crypto: talitos - Work around SEC6 ERRATA (AES-CTR mode data size error)
  mtd: parser: imagetag: fix error codes in bcm963xx_parse_imagetag_partitions()
  perf/arm-cmn: Move IRQs when migrating context
  perf/arm-cmn: Fix PMU instance naming
  ASoC: SOF: Intel: hda: cancel D0i3 work during runtime suspend
  ASoC: qcom: lpass-cpu: Remove bit clock state check
  f2fs: compress: fix potential deadlock
  sched/eas: Don't update misfit status if the task is pinned
  media: uvcvideo: Accept invalid bFormatIndex and bFrameIndex values
  media: pxa_camera: declare variable when DEBUG is defined
  media: mtk-vcodec: fix argument used when DEBUG is defined
  media: cx25821: Fix a bug when reallocating some dma memory
  media: qm1d1c0042: fix error return code in qm1d1c0042_init()
  media: atomisp: Fix a buffer overflow in debug code
  media: vidtv: psi: fix missing crc for PMT
  media: lmedm04: Fix misuse of comma
  media: software_node: Fix refcounts in software_node_get_next_child()
  drm/amd/display: Fix HDMI deep color output for DCE 6-11.
  drm/amd/display: Fix 10/12 bpc setup in DCE output bit depth reduction.
  macintosh/adb-iop: Use big-endian autopoll mask
  bsg: free the request before return error code
  drm/amdgpu: toggle on DF Cstate after finishing xgmi injection
  drm/tegra: Fix reference leak when pm_runtime_get_sync() fails
  MIPS: Compare __SYNC_loongson3_war against 0
  MIPS: properly stop .eh_frame generation
  media: ti-vpe: cal: fix write to unallocated memory
  media: imx7: csi: Fix pad link validation
  media: imx7: csi: Fix regression for parallel cameras on i.MX6UL
  drm/sun4i: tcon: fix inverted DCLK polarity
  sched/fair: Avoid stale CPU util_est value for schedutil in task dequeue
  crypto: bcm - Rename struct device_private to bcm_device_private
  evm: Fix memleak in init_desc
  ASoC: qcom: qdsp6: Move frontend AIFs to q6asm-dai
  ASoC: cs42l56: fix up error handling in probe
  media: aspeed: fix error return code in aspeed_video_setup_video()
  media: tm6000: Fix memleak in tm6000_start_stream
  media: media/pci: Fix memleak in empress_init
  media: em28xx: Fix use-after-free in em28xx_alloc_urbs
  media: vsp1: Fix an error handling path in the probe function
  media: camss: missing error code in msm_video_register()
  media: mtk-vcodec: fix error return code in vdec_vp9_decode()
  media: imx: Fix csc/scaler unregister
  media: imx: Unregister csc/scaler only if registered
  media: i2c: ov5670: Fix PIXEL_RATE minimum value
  media: ipu3-cio2: Build only for x86
  drm/fourcc: fix Amlogic format modifier masks
  drm/virtio: make sure context is created in gem open
  MIPS: lantiq: Explicitly compare LTQ_EBU_PCC_ISTAT against 0
  MIPS: c-r4k: Fix section mismatch for loongson2_sc_init
  drm/amdgpu: Fix macro name _AMDGPU_TRACE_H_ in preprocessor if condition
  drm: rcar-du: Fix the return check of of_parse_phandle and of_find_device_by_node
  drm: rcar-du: Fix crash when using LVDS1 clock for CRTC
  drm: rcar-du: Fix PM reference leak in rcar_cmm_enable()
  kcsan: Rewrite kcsan_prandom_u32_max() without prandom_u32_state()
  media: allegro: Fix use after free on error
  hwrng: ingenic - Fix a resource leak in an error handling path
  crypto: arm64/aes-ce - really hide slower algos when faster ones are enabled
  crypto: sun4i-ss - fix kmap usage
  crypto: sun4i-ss - linearize buffers content must be kept
  drm/vc4: hdmi: Take into account the clock doubling flag in atomic_check
  drm/panel: mantix: Tweak init sequence
  drm/fb-helper: Add missed unlocks in setcmap_legacy()
  gma500: clean up error handling in init
  drm/gma500: Fix error return code in psb_driver_load()
  fbdev: aty: SPARC64 requires FB_ATY_CT
  tty: implement read_iter
  tty: convert tty_ldisc_ops 'read()' function to take a kernel pointer
  net: enetc: fix destroyed phylink dereference during unbind
  net: mvneta: Remove per-cpu queue mapping for Armada 3700
  net: amd-xgbe: Fix network fluctuations when using 1G BELFUSE SFP
  net: amd-xgbe: Reset link when the link never comes back
  net: amd-xgbe: Fix NETDEV WATCHDOG transmit queue timeout warning
  net: amd-xgbe: Reset the PHY rx data path when mailbox command timeout
  net: phy: mscc: adding LCPLL reset to VSC8514
  net: dsa: felix: don't deinitialize unused ports
  net: dsa: felix: perform teardown in reverse order of setup
  ibmvnic: skip send_request_unmap for timeout reset
  ibmvnic: add memory barrier to protect long term buffer
  bpf: Clear subreg_def for global function return values
  b43: N-PHY: Fix the update of coef for the PHY revision >= 3case
  cxgb4/chtls/cxgbit: Keeping the max ofld immediate data size same in cxgb4 and ulds
  net: axienet: Handle deferred probe on clock properly
  tcp: fix SO_RCVLOWAT related hangs under mem pressure
  selftests: mptcp: fix ACKRX debug message
  bpf: Fix bpf_fib_lookup helper MTU check for SKB ctx
  bpf, devmap: Use GFP_KERNEL for xdp bulk queue allocation
  bpf: Fix an unitialized value in bpf_iter
  libbpf: Ignore non function pointer member in struct_ops
  mac80211: fix potential overflow when multiplying to u32 integers
  net/mlx5e: Check tunnel offload is required before setting SWP
  net/mlx5e: CT: manage the lifetime of the ct entry object
  net/mlx5: Disable devlink reload for lag devices
  net/mlx5: Disallow RoCE on lag device
  net/mlx5: Disallow RoCE on multi port slave device
  net/mlx5: Disable devlink reload for multi port slave device
  net/mlx5e: kTLS, Use refcounts to free kTLS RX priv context
  net/mlx5e: Replace synchronize_rcu with synchronize_net
  net/mlx5: Fix health error state handling
  net/mlx5e: Change interrupt moderation channel params also when channels are closed
  net/mlx5e: Don't change interrupt moderation params when DIM is enabled
  net: phy: consider that suspend2ram may cut off PHY power
  dpaa2-eth: fix memory leak in XDP_REDIRECT
  xen/netback: fix spurious event detection for common event case
  bnxt_en: Fix devlink info's stored fw.psid version format.
  bnxt_en: reverse order of TX disable and carrier off
  ibmvnic: Set to CLOSED state even on error
  selftests/bpf: Convert test_xdp_redirect.sh to bash
  ath9k: fix data bus crash when setting nf_override via debugfs
  iwlwifi: pnvm: increment the pointer before checking the TLV
  iwlwifi: pnvm: set the PNVM again if it was already loaded
  bpf_lru_list: Read double-checked variable once without lock
  iwlwifi: mvm: don't check if CSA event is running before removing
  iwlwifi: mvm: assign SAR table revision to the command later
  iwlwifi: mvm: send stored PPAG command instead of local
  iwlwifi: mvm: store PPAG enabled/disabled flag properly
  iwlwifi: mvm: fix the type we use in the PPAG table validity checks
  soc: aspeed: snoop: Add clock control logic
  ath11k: fix a locking bug in ath11k_mac_op_start()
  ath10k: Fix lockdep assertion warning in ath10k_sta_statistics
  ath10k: Fix suspicious RCU usage warning in ath10k_wmi_tlv_parse_peer_stats_info()
  ARM: at91: use proper asm syntax in pm_suspend
  staging: wfx: fix possible panic with re-queued frames
  optee: simplify i2c access
  ARM: s3c: fix fiq for clang IAS
  iwlwifi: mvm: set enabled in the PPAG command properly
  arm64: dts: meson: fix broken wifi node for Khadas VIM3L
  arm64: dts: msm8916: Fix reserved and rfsa nodes unit address
  soc: qcom: ocmem: don't return NULL in of_get_ocmem
  Bluetooth: btusb: Fix memory leak in btusb_mtk_wmt_recv
  opp: Correct debug message in _opp_add_static_v2()
  arm64: dts: armada-3720-turris-mox: rename u-boot mtd partition to a53-firmware
  ARM: dts: armada388-helios4: assign pinctrl to each fan
  ARM: dts: armada388-helios4: assign pinctrl to LEDs
  can: mcp251xfd: mcp251xfd_probe(): fix errata reference
  arm64: dts: renesas: beacon: Fix EEPROM compatible value
  x86/MSR: Filter MSR writes through X86_IOC_WRMSR_REGS ioctl too
  staging: rtl8723bs: wifi_regd.c: Fix incorrect number of regulatory rules
  usb: dwc2: Make "trimming xfer length" a debug message
  usb: dwc2: Abort transaction after errors with unknown reason
  usb: dwc2: Do not update data length if it is 0 on inbound transfers
  ARM: dts: Configure missing thermal interrupt for 4430
  memory: ti-aemif: Drop child node when jumping out loop
  Bluetooth: Put HCI device if inquiry procedure interrupts
  Bluetooth: drop HCI device reference before return
  staging: media: atomisp: Fix size_t format specifier in hmm_alloc() debug statemenet
  soc: ti: pm33xx: Fix some resource leak in the error handling paths of the probe function
  soc: qcom: socinfo: Fix an off by one in qcom_show_pmic_model()
  arm64: dts: qcom: sdm845-db845c: Fix reset-pin of ov8856 node
  usb: gadget: u_audio: Free requests only after callback
  ACPICA: Fix exception code class checks
  arm64: dts: rockchip: rk3328: Add clock_in_out property to gmac2phy node
  cpufreq: brcmstb-avs-cpufreq: Fix resource leaks in ->remove()
  cpufreq: brcmstb-avs-cpufreq: Free resources in error path
  arm64: dts: qcom: msm8916-samsung-a2015: Fix sensors
  arm64: dts: allwinner: A64: Limit MMC2 bus frequency to 150 MHz
  arm64: dts: allwinner: H6: Allow up to 150 MHz MMC bus frequency
  arm64: dts: allwinner: Drop non-removable from SoPine/LTS SD card
  arm64: dts: allwinner: H6: properly connect USB PHY to port 0
  arm64: dts: allwinner: A64: properly connect USB PHY to port 0
  firmware: arm_scmi: Fix call site of scmi_notification_exit
  bpf: Avoid warning when re-casting __bpf_call_base into __bpf_call_base_args
  bpf: Add bpf_patch_call_args prototype to include/linux/bpf.h
  net: stmmac: dwmac-meson8b: fix enabling the timing-adjustment clock
  arm64: dts: qcom: msm8916-samsung-a5u: Fix iris compatible
  staging: vchiq: Fix bulk transfers on 64-bit builds
  staging: vchiq: Fix bulk userdata handling
  Bluetooth: hci_qca: Fix memleak in qca_controller_memdump
  memory: mtk-smi: Fix PM usage counter unbalance in mtk_smi ops
  arm64: dts: exynos: correct PMIC interrupt trigger level on Espresso
  arm64: dts: exynos: correct PMIC interrupt trigger level on TM2
  ARM: dts: exynos: correct PMIC interrupt trigger level on Odroid XU3 family
  ARM: dts: exynos: correct PMIC interrupt trigger level on Arndale Octa
  ARM: dts: exynos: correct PMIC interrupt trigger level on Spring
  ARM: dts: exynos: correct PMIC interrupt trigger level on Rinato
  ARM: dts: exynos: correct PMIC interrupt trigger level on Monk
  ARM: dts: exynos: correct PMIC interrupt trigger level on Artik 5
  arm64: dts: renesas: beacon: Fix audio-1.8V pin enable
  arm64: dts: renesas: beacon kit: Fix choppy Bluetooth Audio
  Bluetooth: Fix initializing response id after clearing struct
  Bluetooth: hci_uart: Fix a race for write_work scheduling
  Bluetooth: btqcomsmd: Fix a resource leak in error handling paths in the probe function
  ath10k: Fix error handling in case of CE pipe init failure
  drm/i915/gt: One more flush for Baytrail clear residuals
  ALSA: pcm: Don't call sync_stop if it hasn't been stopped
  ALSA: pcm: Assure sync with the pending stop operation at suspend
  ALSA: pcm: Call sync_stop at disconnection
  random: fix the RNDRESEEDCRNG ioctl
  vmlinux.lds.h: Define SANTIZER_DISCARDS with CONFIG_GCOV_KERNEL=y
  MIPS: vmlinux.lds.S: add missing PAGE_ALIGNED_DATA() section
  ALSA: usb-audio: Fix PCM buffer allocation in non-vmalloc mode
  bfq: Avoid false bfq queue merging
  virt: vbox: Do not use wait_event_interruptible when called from kernel context
  PCI: Decline to resize resources if boot config must be preserved
  PCI: qcom: Use PHY_REFCLK_USE_PAD only for ipq8064
  w1: w1_therm: Fix conversion result for negative temperatures
  kdb: Make memory allocations more robust
  scsi: qla2xxx: Fix mailbox Ch erroneous error
  scsi: libsas: docs: Remove notify_ha_event()
  debugfs: do not attempt to create a new file before the filesystem is initalized
  debugfs: be more robust at handling improper input in debugfs_lookup()
  vdpa/mlx5: fix param validation in mlx5_vdpa_get_config()
  vmlinux.lds.h: add DWARF v5 sections

 Conflicts:
	Documentation/devicetree/bindings
	Documentation/devicetree/bindings/net/btusb.txt
	Documentation/devicetree/bindings/net/ethernet-controller.yaml
	drivers/cpufreq/qcom-cpufreq-hw.c
	drivers/nvmem/qcom-spmi-sdam.c
	drivers/soc/qcom/socinfo.c
	drivers/spmi/spmi-pmic-arb.c
	net/qrtr/tun.c

Change-Id: I5a14e8d8d00a40af0a0e022ad85996f1351704f4
Signed-off-by: Ivaylo Georgiev <irgeorgiev@codeaurora.org>
Signed-off-by: Blagovest Kolenichev <bkolenichev@codeaurora.org>
2021-03-18 02:00:06 -07:00
Andrey Konovalov
219fc4b300 kasan: fix memory corruption in kasan_bitops_tags test
[ Upstream commit e66e1799a76621003e5b04c9c057826a2152e103 ]

Since the hardware tag-based KASAN mode might not have a redzone that
comes after an allocated object (when kasan.mode=prod is enabled), the
kasan_bitops_tags() test ends up corrupting the next object in memory.

Change the test so it always accesses the redzone that lies within the
allocated object's boundaries.

Link: https://linux-review.googlesource.com/id/I67f51d1ee48f0a8d0fe2658c2a39e4879fe0832a
Link: https://lkml.kernel.org/r/7d452ce4ae35bb1988d2c9244dfea56cf2cc9315.1610733117.git.andreyknvl@google.com
Signed-off-by: Andrey Konovalov <andreyknvl@google.com>
Reviewed-by: Marco Elver <elver@google.com>
Reviewed-by: Alexander Potapenko <glider@google.com>
Cc: Andrey Ryabinin <aryabinin@virtuozzo.com>
Cc: Branislav Rankov <Branislav.Rankov@arm.com>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Dmitry Vyukov <dvyukov@google.com>
Cc: Evgenii Stepanov <eugenis@google.com>
Cc: Kevin Brodsky <kevin.brodsky@arm.com>
Cc: Peter Collingbourne <pcc@google.com>
Cc: Vincenzo Frascino <vincenzo.frascino@arm.com>
Cc: Will Deacon <will.deacon@arm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2021-03-17 17:06:25 +01:00
Geert Uytterhoeven
6d4fabc6c7 PCI: Fix pci_register_io_range() memory leak
[ Upstream commit f6bda644fa3a7070621c3bf12cd657f69a42f170 ]

Kmemleak reports:

  unreferenced object 0xc328de40 (size 64):
    comm "kworker/1:1", pid 21, jiffies 4294938212 (age 1484.670s)
    hex dump (first 32 bytes):
      00 00 00 00 00 00 00 00 e0 d8 fc eb 00 00 00 00  ................
      00 00 10 fe 00 00 00 00 00 00 00 00 00 00 00 00  ................

  backtrace:
    [<ad758d10>] pci_register_io_range+0x3c/0x80
    [<2c7f139e>] of_pci_range_to_resource+0x48/0xc0
    [<f079ecc8>] devm_of_pci_get_host_bridge_resources.constprop.0+0x2ac/0x3ac
    [<e999753b>] devm_of_pci_bridge_init+0x60/0x1b8
    [<a895b229>] devm_pci_alloc_host_bridge+0x54/0x64
    [<e451ddb0>] rcar_pcie_probe+0x2c/0x644

In case a PCI host driver's probe is deferred, the same I/O range may be
allocated again, and be ignored, causing a memory leak.

Fix this by (a) letting logic_pio_register_range() return -EEXIST if the
passed range already exists, so pci_register_io_range() will free it, and
by (b) making pci_register_io_range() not consider -EEXIST an error
condition.

Link: https://lore.kernel.org/r/20210202100332.829047-1-geert+renesas@glider.be
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2021-03-17 17:06:25 +01:00
Choonghoon Park
7656aa0f48 ANDROID: lib/plist.c: Export plist-related APIs
Export plist_add(), plist_del() and plist_requeue() for vendor modules.

Bug: 180865128

Signed-off-by: Choonghoon Park <choong.park@samsung.com>
Change-Id: I0b6fd9becd04428d998c2ce031804bec6ff87be5
2021-03-16 01:19:21 +00:00
Andrey Konovalov
c7d68c4502 BACKPORT: kasan, arm64: allow using KUnit tests with HW_TAGS mode
[ Conflicts due to conflicts when reverting the FROMGIT version. ]

On a high level, this patch allows running KUnit KASAN tests with the
hardware tag-based KASAN mode.

Internally, this change reenables tag checking at the end of each KASAN
test that triggers a tag fault and leads to tag checking being disabled.

Also simplify is_write calculation in report_tag_fault.

With this patch KASAN tests are still failing for the hardware tag-based
mode; fixes come in the next few patches.

[andreyknvl@google.com: export HW_TAGS symbols for KUnit tests]
  Link: https://lkml.kernel.org/r/e7eeb252da408b08f0c81b950a55fb852f92000b.1613155970.git.andreyknvl@google.com

Link: https://linux-review.googlesource.com/id/Id94dc9eccd33b23cda4950be408c27f879e474c8
Link: https://lkml.kernel.org/r/51b23112cf3fd62b8f8e9df81026fa2b15870501.1610733117.git.andreyknvl@google.com
Signed-off-by: Andrey Konovalov <andreyknvl@google.com>
Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
Reviewed-by: Vincenzo Frascino <vincenzo.frascino@arm.com>
Cc: Alexander Potapenko <glider@google.com>
Cc: Andrey Ryabinin <aryabinin@virtuozzo.com>
Cc: Branislav Rankov <Branislav.Rankov@arm.com>
Cc: Dmitry Vyukov <dvyukov@google.com>
Cc: Evgenii Stepanov <eugenis@google.com>
Cc: Kevin Brodsky <kevin.brodsky@arm.com>
Cc: Marco Elver <elver@google.com>
Cc: Peter Collingbourne <pcc@google.com>
Cc: Will Deacon <will.deacon@arm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
(cherry picked from commit f05842cfb9ae25b5e78c618429c4716d9e4d5fc8)
Bug: 172318110
Signed-off-by: Andrey Konovalov <andreyknvl@google.com>
Change-Id: I56c2fb669b1440b6bb3cd5e41e514a6179ea3b81
2021-03-05 19:34:00 +00:00
Andrey Konovalov
9f925b293d Revert "FROMGIT: kasan, arm64: allow using KUnit tests with HW_TAGS mode"
This reverts commit a599a4e3b9.

The upstream version of this patch has been updated. Revert the FROMGIT
version before applying the UPSTREAM one.

Bug: 172318110
Signed-off-by: Andrey Konovalov <andreyknvl@google.com>
Change-Id: I423a68e2a3e55b97b04180fedd7160c704ae0972
2021-03-05 19:33:13 +00:00
Andrey Konovalov
c0a166c983 Revert "BACKPORT: kasan: remove redundant config option"
This reverts commit 13aefe4bf8.

That commit might lead to stack overflows with x86 KASAN with stack
instrumentation enabled and has been dropped from the mm tree.
Revert the change for now.

Bug: 172318110
Signed-off-by: Andrey Konovalov <andreyknvl@google.com>
Change-Id: I5020ec2361d5f9976d0666e0c1ed6925e29fa5b2
2021-03-05 19:33:02 +00:00
Blagovest Kolenichev
385aa081f1 Merge android12-5.10.19 (e1a763a) into msm-5.10
* refs/heads/tmp-e1a763a
  Linux 5.10.19
  scripts/recordmcount.pl: support big endian for ARCH sh
  kbuild: fix CONFIG_TRIM_UNUSED_KSYMS build for ppc64
  cifs: Set CIFS_MOUNT_USE_PREFIX_PATH flag on setting cifs_sb->prepath.
  cxgb4: Add new T6 PCI device id 0x6092
  NET: usb: qmi_wwan: Adding support for Cinterion MV31
  drm/xlnx: fix kmemleak by sending vblank_event in atomic_disable
  KVM: Use kvm_pfn_t for local PFN variable in hva_to_pfn_remapped()
  mm: provide a saner PTE walking API for modules
  KVM: do not assume PTE is writable after follow_pfn
  mm: simplify follow_pte{,pmd}
  mm: unexport follow_pte_pmd
  KVM: x86: Zap the oldest MMU pages, not the newest
  hwmon: (dell-smm) Add XPS 15 L502X to fan control blacklist
  arm64: tegra: Add power-domain for Tegra210 HDA
  Bluetooth: btusb: Some Qualcomm Bluetooth adapters stop working
  ntfs: check for valid standard information attribute
  ceph: downgrade warning from mdsmap decode to debug
  usb: quirks: add quirk to start video capture on ELMO L-12F document camera reliable
  USB: quirks: sort quirk entries
  nvme-rdma: Use ibdev_to_node instead of dereferencing ->dma_device
  RDMA: Lift ibdev_to_node from rds to common code
  HID: make arrays usage and value to be the same
  bpf: Fix truncation handling for mod32 dst reg wrt zero
  FROMLIST: f2fs: support direct I/O with fscrypt using blk-crypto
  FROMLIST: ext4: support direct I/O with fscrypt using blk-crypto
  FROMLIST: iomap: support direct I/O with fscrypt using blk-crypto
  FROMLIST: direct-io: add support for fscrypt using blk-crypto
  ANDROID: export fscrypt_limit_io_blocks()
  FROMLIST: fscrypt: Add functions for direct I/O support
  ANDROID: revert fscrypt direct I/O support
  ANDROID: driver core: Set fw_devlink.strict=true by default
  UPSTREAM: of: property: fw_devlink: Ignore interrupts property for some configs
  UPSTREAM: of: irq: Fix the return value for of_irq_parse_one() stub
  UPSTREAM: of: irq: make a stub for of_irq_parse_one()
  UPSTREAM: clk: Mark fwnodes when their clock provider is added/removed
  UPSTREAM: PM: domains: Mark fwnodes when their powerdomain is added/removed
  UPSTREAM: irqdomain: Mark fwnodes when their irqdomain is added/removed
  UPSTREAM: driver core: fw_devlink: Handle suppliers that don't use driver core
  UPSTREAM: of: property: Add fw_devlink support for optional properties
  UPSTREAM: driver core: Add fw_devlink.strict kernel param
  UPSTREAM: of: property: Don't add links to absent suppliers
  UPSTREAM: driver core: fw_devlink: Detect supplier devices that will never be added
  UPSTREAM: of: property: Fix fw_devlink handling of interrupts/interrupts-extended
  UPSTREAM: gpiolib: Don't probe gpio_device if it's not the primary device
  UPSTREAM: gpiolib: Bind gpio_device to a driver to enable fw_devlink=on by default
  UPSTREAM: of: property: Add fw_devlink support for interrupts
  UPSTREAM: of: property: Add fw_devlink support for "gpio" and "gpios" binding
  UPSTREAM: driver core: Handle cycles in device links created by fw_devlink
  UPSTREAM: driver core: Have fw_devlink use DL_FLAG_INFERRED
  UPSTREAM: driver core: Add device link support for INFERRED flag
  UPSTREAM: driver core: Add debug logs for device link related probe deferrals
  ANDROID: GKI: add fields required to enable CONFIG_TRANSPARENT_HUGEPAGE
  UPSTREAM: lib/vsprintf: no_hash_pointers prints all addresses as unhashed
  UPSTREAM: kselftest: add support for skipped tests
  UPSTREAM: lib: use KSTM_MODULE_GLOBALS macro in kselftest drivers
  ANDROID: dma-buf: Export is_dma_buf_file
  ANDROID: mm: export zone_watermark_ok
  UPSTREAM: HID: playstation: add DualSense player LED support.
  UPSTREAM: HID: playstation: add microphone mute support for DualSense.
  UPSTREAM: HID: playstation: add initial DualSense lightbar support.
  UPSTREAM: HID: playstation: fix array size comparison (off-by-one)
  UPSTREAM: HID: playstation: fix unused variable in ps_battery_get_property.
  UPSTREAM: HID: playstation: report DualSense hardware and firmware version.
  UPSTREAM: HID: playstation: add DualSense classic rumble support.
  UPSTREAM: HID: playstation: add DualSense Bluetooth support.
  UPSTREAM: HID: playstation: track devices in list.
  UPSTREAM: HID: playstation: add DualSense accelerometer and gyroscope support.
  UPSTREAM: HID: playstation: add DualSense touchpad support.
  UPSTREAM: HID: playstation: add DualSense battery support.
  UPSTREAM: HID: playstation: use DualSense MAC address as unique identifier.
  UPSTREAM: HID: playstation: initial DualSense USB support.
  ANDROID: sched/rt: Add support for rt sync wakeups
  ANDROID: abi_gki_aarch64_qcom: Add strncpy_from_user to symbol list
  ANDROID: gki_defconfig: Ensure KVM is configured in "protected" mode
  FROMGIT: arm64: VHE: Enable EL2 MMU from the idmap
  FROMGIT: KVM: arm64: make the hyp vector table entries local
  UPSTREAM: printk: avoid prb_first_valid_seq() where possible

Change-Id: I7587948a3bc8564fc342789a51752a453008c1a6
Signed-off-by: Blagovest Kolenichev <bkolenichev@codeaurora.org>
2021-02-26 21:03:16 -08:00
qctecmdr
0e9d39f01b Merge "dma-mapping-fast: Add support for IOMMU mapping MSI registers" 2021-02-26 16:25:05 -08:00
Ivaylo Georgiev
1339b0e87a Merge android12-5.10.18 (59e0bda) into msm-5.10
* refs/heads/tmp-59e0bda:
  Revert "UPSTREAM: mmc: sdhci-msm: add Inline Crypto Engine support"
  ANDROID: GKI: Update abi_gki_aarch64_qcom for bitmap parsing
  ANDROID: mm, oom: Prevent extra put_task when oom_evaluate_task is aborted
  ANDROID: Update the ABI
  ANDROID: modpost: update nits from late review
  ANDROID: GKI: Enable CONFIG_MODULE_SCMVERSION=y
  ANDROID: modpost: Support relative paths for module_srcpath
  ANDROID: modules: introduce the MODULE_SCMVERSION config
  ANDROID: scripts/setlocalversion: allow running in a subdir
  ANDROID: abi_gki_aarch64_qcom: Update symbol list
  ANDROID: GKI: Add iommu_get_msi_cookie() to the symbol list
  UPSTREAM: zram: support page writeback
  ANDROID: sched/pause: migrate_tasks crash
  Linux 5.10.18
  media: pwc: Use correct device for DMA
  btrfs: fix crash after non-aligned direct IO write with O_DSYNC
  btrfs: fix backport of 2175bf57dc in 5.10.13
  Bluetooth: btusb: Always fallback to alt 1 for WBS
  tty: protect tty_write from odd low-level tty disciplines
  xen-blkback: fix error handling in xen_blkbk_map()
  xen-scsiback: don't "handle" error by BUG()
  xen-netback: don't "handle" error by BUG()
  xen-blkback: don't "handle" error by BUG()
  xen/arm: don't ignore return errors from set_phys_to_machine
  Xen/gntdev: correct error checking in gntdev_map_grant_pages()
  Xen/gntdev: correct dev_bus_addr handling in gntdev_map_grant_pages()
  Xen/x86: also check kernel mapping in set_foreign_p2m_mapping()
  Xen/x86: don't bail early from clear_foreign_p2m_mapping()
  net: fix proc_fs init handling in af_packet and tls
  net: bridge: Fix a warning when del bridge sysfs
  net: openvswitch: fix TTL decrement exception action execution
  net: sched: incorrect Kconfig dependencies on Netfilter modules
  mt76: mt7615: fix rdd mcu cmd endianness
  mt76: mt7915: fix endian issues
  net/sched: fix miss init the mru in qdisc_skb_cb
  mptcp: skip to next candidate if subflow has unacked data
  net: qrtr: Fix port ID for control messages
  IB/isert: add module param to set sg_tablesize for IO cmd
  vdpa_sim: add get_config callback in vdpasim_dev_attr
  vdpa_sim: make 'config' generic and usable for any device type
  vdpa_sim: store parsed MAC address in a buffer
  vdpa_sim: add struct vdpasim_dev_attr for device attributes
  vdpa_sim: remove hard-coded virtq count
  ANDROID: sched: Exempt paused CPU from nohz idle balance
  ANDROID: Update QCOM symbol list
  ANDROID: gki_defconfig: enable CONFIG_MMC_CRYPTO
  ANDROID: mmc: cqhci: set blk_keyslot_manager::features
  UPSTREAM: mmc: sdhci-msm: add Inline Crypto Engine support
  UPSTREAM: dt-bindings: mmc: sdhci-msm: add ICE registers and clock
  UPSTREAM: firmware: qcom_scm: update comment for ICE-related functions
  UPSTREAM: mmc: cqhci: add cqhci_host_ops::program_key
  UPSTREAM: mmc: cqhci: add support for inline encryption
  UPSTREAM: mmc: cqhci: initialize upper 64 bits of 128-bit task descriptors
  UPSTREAM: mmc: cqhci: rename cqhci.c to cqhci-core.c
  UPSTREAM: mmc: core: Add basic support for inline encryption
  UPSTREAM: scsi: ufs: use devm_blk_ksm_init()
  UPSTREAM: block/keyslot-manager: introduce devm_blk_ksm_init()
  ANDROID: gki_defconfig: enable BLAKE2b support
  UPSTREAM: crypto: arm/blake2b - add NEON-accelerated BLAKE2b
  UPSTREAM: crypto: blake2b - update file comment
  UPSTREAM: crypto: blake2b - sync with blake2s implementation
  UPSTREAM: wireguard: Kconfig: select CRYPTO_BLAKE2S_ARM
  UPSTREAM: crypto: arm/blake2s - add ARM scalar optimized BLAKE2s
  UPSTREAM: crypto: blake2s - include <linux/bug.h> instead of <asm/bug.h>
  UPSTREAM: crypto: blake2s - adjust include guard naming
  UPSTREAM: crypto: blake2s - add comment for blake2s_state fields
  UPSTREAM: crypto: blake2s - optimize blake2s initialization
  UPSTREAM: crypto: blake2s - share the "shash" API boilerplate code
  UPSTREAM: crypto: blake2s - move update and final logic to internal/blake2s.h
  UPSTREAM: crypto: blake2s - remove unneeded includes
  UPSTREAM: crypto: x86/blake2s - define shash_alg structs using macros
  UPSTREAM: crypto: blake2s - define shash_alg structs using macros
  UPSTREAM: crypto: lib/blake2s - Move selftest prototype into header file
  ANDROID: vmscan: Fix sparse warnings for kswapd_threads
  ANDROID: mm: hide get_each_object_track declaration when CONFIG_SLUB=n
  FROMGIT: mm, compaction: make fast_isolate_freepages() stay within zone
  ANDROID: sched: time: Export symbols needed for schedutil module
  ANDROID: vmscan: Support multiple kswapd threads per node
  ANDROID: mm: add get_each_object_track function
  ANDROID: mm: Add vendor hook in pagecache_get_page()
  ANDROID: mm: Add vendor hook in rmqueue()
  ANDROID: GKI: Build in VIRTIO_FS
  ANDROID: dm: sync inline crypto support with patches going upstream
  ANDROID: sched: Add restricted vendor hooks in CFS scheduler
  ANDROID: drm: kirin: Remove dead code that was causing build failures
  ANDROID: adv7511: Add poweron delay to allow for EDID probing to work
  ANDROID: Add hikey960 build infrastructure file
  ANDROID: Add hikey960 GKI config fragment
  ANDROID: arm64: dts: hi3660-hikey960: Add i2s & sound device
  ANDROID: ASoC: add hikey960-i2s DT bindings
  ANDROID: sound: Add hikey960 i2s audio driver
  ANDROID: arm64: dts: hi3660: enable gpu
  ANDROID: arm64: dts: hi3660: add display driver dts
  ANDROID: arm64: dts: hikey960: Add CMA entry for DMA-BUF Heap/framebuffers
  ANDROID: drm: kirin960: Remove one mode-line that seems to be causing trouble
  ANDROID: drm: kirin: remove wait for VACTIVE IRQ
  ANDROID: drm: kirin: Add kirin960 dpe driver support
  ANDROID: drm: kirin: Introduce kirin960
  ANDROID: dts: hi3660-hikey960: Add usb mux hub for hikey960
  ANDROID: dt-bindings: misc: Add bindings for HiSilicon usb hub and data role switch functionality on HiKey960
  UPSTREAM: remoteproc: coredump: Add minidump functionality
  UPSTREAM: remoteproc: core: Add ops to enable custom coredump functionality
  ANDROID: gic-v3: Update vendor hook to set affinity in GIC v3
  ANDROID: cpuhp/aarch32: keep last 32bit cpu active

Conflicts:
	Documentation/devicetree/bindings
	Documentation/devicetree/bindings/mmc/sdhci-msm.txt
	android/abi_gki_aarch64_qcom
	net/qrtr/qrtr.c

Change-Id: I66803e82c640c2d190a03f21dc3ccf6c000d4937
Signed-off-by: Ivaylo Georgiev <irgeorgiev@codeaurora.org>
2021-02-26 08:52:59 -08:00
Timur Tabi
fc461a19b0 UPSTREAM: lib/vsprintf: no_hash_pointers prints all addresses as unhashed
If the no_hash_pointers command line parameter is set, then
printk("%p") will print pointers as unhashed, which is useful for
debugging purposes.  This change applies to any function that uses
vsprintf, such as print_hex_dump() and seq_buf_printf().

A large warning message is displayed if this option is enabled.
Unhashed pointers expose kernel addresses, which can be a security
risk.

Also update test_printf to skip the hashed pointer tests if the
command-line option is set.

Signed-off-by: Timur Tabi <timur@kernel.org>
Acked-by: Petr Mladek <pmladek@suse.com>
Acked-by: Randy Dunlap <rdunlap@infradead.org>
Acked-by: Sergey Senozhatsky <sergey.senozhatsky@gmail.com>
Acked-by: Vlastimil Babka <vbabka@suse.cz>
Acked-by: Marco Elver <elver@google.com>
Signed-off-by: Petr Mladek <pmladek@suse.com>
Link: https://lore.kernel.org/r/20210214161348.369023-4-timur@kernel.org

(cherry picked from commit 5ead723a20e0447bc7db33dc3070b420e5f80aa6)
Bug: 181049978
Change-Id: I06c5cfdc0b4c12f38c9109179f27bf2b54ac57e8
Signed-off-by: Chris Goldsworthy <cgoldswo@codeaurora.org>
2021-02-25 21:37:05 +00:00
Timur Tabi
6b2db01255 UPSTREAM: lib: use KSTM_MODULE_GLOBALS macro in kselftest drivers
Instead of defining the total/failed test counters manually,
test drivers that are clients of kselftest should use the
macro created for this purpose.

Signed-off-by: Timur Tabi <timur@kernel.org>
Reviewed-by: Petr Mladek <pmladek@suse.com>
Acked-by: Marco Elver <elver@google.com>
Signed-off-by: Petr Mladek <pmladek@suse.com>
Link: https://lore.kernel.org/r/20210214161348.369023-2-timur@kernel.org

(cherry picked from commit 4e89a78779647ca7ee2967551c599633fe9d3647)
Bug: 181049978
Change-Id: I8f5fc8ba3bcfd60be11a302955bd375a64eedcd4
Signed-off-by: Chris Goldsworthy <cgoldswo@codeaurora.org>
2021-02-25 21:36:45 +00:00
Chris Goldsworthy
c2348bebbe gki: Restore files to their android12-5.10 version
Remove memory-related additions to the core kernel by restoring files
to their android12-5.10 equivalents as of commit b129c98dc6 ("Merge
5.10.17 into android12-5.10").

Additionally, move out DMA-mapping and IOMMU macros into local files.

Change-Id: Ice6aacd8cca6bc4019ac913f50b3b722d4035e46
Signed-off-by: Chris Goldsworthy <cgoldswo@codeaurora.org>
2021-02-23 17:49:27 -08:00
Eric Biggers
f411897ead UPSTREAM: crypto: blake2s - move update and final logic to internal/blake2s.h
Move most of blake2s_update() and blake2s_final() into new inline
functions __blake2s_update() and __blake2s_final() in
include/crypto/internal/blake2s.h so that this logic can be shared by
the shash helper functions.  This will avoid duplicating this logic
between the library and shash implementations.

Signed-off-by: Eric Biggers <ebiggers@google.com>
Acked-by: Ard Biesheuvel <ardb@kernel.org>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>

(cherry picked from commit 057edc9c8bb2d5ff5b058b521792c392428a0714)
Bug: 152722841
Bug: 178411248
Change-Id: Idedf8147914839d5280e5d8eec9013264fbb45f9
Signed-off-by: Eric Biggers <ebiggers@google.com>
2021-02-23 08:06:19 +01:00
Herbert Xu
d0a59f9532 UPSTREAM: crypto: lib/blake2s - Move selftest prototype into header file
This patch fixes a missing prototype warning on blake2s_selftest.

Reported-by: kernel test robot <lkp@intel.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>

(cherry picked from commit ce0d5d63e897cc7c3a8fd043c7942fc6a78ec6f4)
Bug: 152722841
Change-Id: Ieb19048d60f6c9dc36cefda8b09b3d5c95e9118e
Signed-off-by: Eric Biggers <ebiggers@google.com>
2021-02-23 08:06:19 +01:00
Ivaylo Georgiev
28da9c212b Merge android12-5.10.17 (b129c98) into msm-5.10
* refs/heads/tmp-b129c98:
  ANDROID: mm: avoid writing to read-only elements
  Linux 5.10.17
  kcov, usb: only collect coverage from __usb_hcd_giveback_urb in softirq
  ovl: expand warning in ovl_d_real()
  net/qrtr: restrict user-controlled length in qrtr_tun_write_iter()
  net/rds: restrict iovecs length for RDS_CMSG_RDMA_ARGS
  vsock: fix locking in vsock_shutdown()
  vsock/virtio: update credit only if socket is not closed
  switchdev: mrp: Remove SWITCHDEV_ATTR_ID_MRP_PORT_STAT
  bridge: mrp: Fix the usage of br_mrp_port_switchdev_set_state
  net: watchdog: hold device global xmit lock during tx disable
  net/vmw_vsock: improve locking in vsock_connect_timeout()
  net/vmw_vsock: fix NULL pointer dereference
  net: fix iteration for sctp transport seq_files
  net: gro: do not keep too many GRO packets in napi->rx_list
  cpufreq: ACPI: Update arch scale-invariance max perf ratio if CPPC is not there
  cpufreq: ACPI: Extend frequency tables to cover boost frequencies
  net: dsa: call teardown method on probe failure
  udp: fix skb_copy_and_csum_datagram with odd segment sizes
  rxrpc: Fix clearance of Tx/Rx ring when releasing a call
  arm64: mte: Allow PTRACE_PEEKMTETAGS access to the zero page
  x86/pci: Create PCI/MSI irqdomain after x86_init.pci.arch_init()
  scripts: set proper OpenSSL include dir also for sign-file
  h8300: fix PREEMPTION build, TI_PRE_COUNT undefined
  i2c: stm32f7: fix configuration of the digital filter
  clk: sunxi-ng: mp: fix parent rate change flag check
  drm/sun4i: dw-hdmi: Fix max. frequency for H6
  drm/sun4i: Fix H6 HDMI PHY configuration
  drm/sun4i: dw-hdmi: always set clock rate
  drm/sun4i: tcon: set sync polarity for tcon1 channel
  firmware_loader: align .builtin_fw to 8
  net: hns3: add a check for index in hclge_get_rss_key()
  net: hns3: add a check for tqp_index in hclge_get_ring_chain_from_mbx()
  net: hns3: add a check for queue_id in hclge_reset_vf_queue()
  net: dsa: felix: implement port flushing on .phylink_mac_link_down
  x86/build: Disable CET instrumentation in the kernel for 32-bit too
  scsi: scsi_debug: Fix a memory leak
  netfilter: conntrack: skip identical origin tuple in same zone only
  ibmvnic: Clear failover_pending if unable to schedule
  net: stmmac: set TxQ mode back to DCB after disabling CBS
  selftests: txtimestamp: fix compilation issue
  net: enetc: initialize the RFS and RSS memories
  hv_netvsc: Reset the RSC count if NVSP_STAT_FAIL in netvsc_receive()
  net: ipa: set error code in gsi_channel_setup()
  net: hdlc_x25: Return meaningful error code in x25_open
  xen/netback: avoid race in xenvif_rx_ring_slots_available()
  netfilter: flowtable: fix tcp and udp header checksum update
  netfilter: nftables: fix possible UAF over chains from packet path in netns
  selftests: netfilter: fix current year
  netfilter: xt_recent: Fix attempt to update deleted entry
  bpf: Check for integer overflow when using roundup_pow_of_two()
  bpf: Unbreak BPF_PROG_TYPE_KPROBE when kprobe is called via do_int3
  dmaengine: idxd: check device state before issue command
  drm/vc4: hvs: Fix buffer overflow with the dlist handling
  mt76: dma: fix a possible memory leak in mt76_add_fragment()
  ath9k: fix build error with LEDS_CLASS=m
  dmaengine: idxd: fix misc interrupt completion
  cgroup-v1: add disabled controller check in cgroup1_parse_param()
  KVM: x86: cleanup CR3 reserved bits checks
  lkdtm: don't move ctors to .rodata
  x86/efi: Remove EFI PGD build time checks
  Revert "lib: Restrict cpumask_local_spread to houskeeping CPUs"
  ubsan: implement __ubsan_handle_alignment_assumption
  ARM: kexec: fix oops after TLB are invalidated
  ARM: ensure the signal page contains defined contents
  kallsyms: fix nonconverging kallsyms table with lld
  ARM: dts: lpc32xx: Revert set default clock rate of HCLK PLL
  bfq-iosched: Revert "bfq: Fix computation of shallow depth"
  riscv: virt_addr_valid must check the address belongs to linear mapping
  drm/amd/display: Decrement refcount of dc_sink before reassignment
  drm/amd/display: Free atomic state after drm_atomic_commit
  drm/amd/display: Fix dc_sink kref count in emulated_link_detect
  drm/amd/display: Release DSC before acquiring
  drm/amd/display: Add more Clock Sources to DCN2.1
  drm/amd/display: Fix DPCD translation for LTTPR AUX_RD_INTERVAL
  nvme-pci: ignore the subsysem NQN on Phison E16
  x86/split_lock: Enable the split lock feature on another Alder Lake CPU
  scsi: lpfc: Fix EEH encountering oops with NVMe traffic
  ovl: skip getxattr of security labels
  cap: fix conversions on getxattr
  ovl: perform vfs_getxattr() with mounter creds
  arm64: dts: rockchip: Disable display for NanoPi R2S
  platform/x86: hp-wmi: Disable tablet-mode reporting by default
  arm64: dts: rockchip: remove interrupt-names property from rk3399 vdec node
  ARM: OMAP2+: Fix suspcious RCU usage splats for omap_enter_idle_coupled
  arm64: dts: qcom: sdm845: Reserve LPASS clocks in gcc
  arm64: dts: rockchip: Fix PCIe DT properties on rk3399
  soc: ti: omap-prm: Fix boot time errors for rst_map_012 bits 0 and 1
  tmpfs: disallow CONFIG_TMPFS_INODE64 on alpha
  tmpfs: disallow CONFIG_TMPFS_INODE64 on s390
  dmaengine: move channel device_node deletion to driver
  drm/dp_mst: Don't report ports connected if nothing is attached to them
  drm/i915/tgl+: Make sure TypeC FIA is powered up when initializing it
  Revert "drm/amd/display: Update NV1x SR latency values"
  cgroup: fix psi monitor for root cgroup
  arm/xen: Don't probe xenbus as part of an early initcall
  drm/i915: Fix overlay frontbuffer tracking
  tracing: Check length before giving out the filter buffer
  tracing: Do not count ftrace events in top level enable output
  gpio: ep93xx: Fix single irqchip with multi gpiochips
  gpio: ep93xx: fix BUG_ON port F usage
  gpio: mxs: GPIO_MXS should not default to y unconditionally
  Revert "dts: phy: add GPIO number and active state used for phy reset"
  objtool: Fix seg fault with Clang non-section symbols
  ANDROID: dma-buf: heaps: fix a warning in dmabuf page pools
  ANDROID: cfi: switch to synchronize_rcu_expedited()
  FROMGIT: kasan: clarify that only first bug is reported in HW_TAGS
  FROMGIT: kasan: inline HW_TAGS helper functions
  FROMGIT: arm64: fix warning in mte_get_random_tag()
  FROMGIT: arm64: kasan: simplify and inline MTE functions
  FROMGIT: kasan: ensure poisoning size alignment
  FROMGIT: kasan, mm: optimize krealloc poisoning
  FROMGIT: kasan, mm: fail krealloc on freed objects
  FROMGIT: kasan: rework krealloc tests
  FROMGIT: kasan: unify large kfree checks
  FROMGIT: kasan: clean up setting free info in kasan_slab_free
  FROMGIT: kasan: optimize large kmalloc poisoning
  FROMGIT: kasan, mm: optimize kmalloc poisoning
  FROMGIT: kasan, mm: don't save alloc stacks twice
  UPSTREAM: kasan: fix stack traces dependency for HW_TAGS
  UPSTREAM: kasan: make addr_has_metadata() return true for valid addresses
  UPSTREAM: kasan: add explicit preconditions to kasan_report()
  ANDROID: gki_defconfig: Enable CONFIG_PAGE_OWNER
  ANDROID: gki_defconfig: enable CONFIG_KASAN_HW_TAGS
  FROMGIT: lib: stackdepot: fix ignoring return value warning
  FROMGIT: lib: stackdepot: add support to disable stack depot
  FROMGIT: lib: stackdepot: add support to configure STACK_HASH_SIZE
  UPSTREAM: lib/stackdepot.c: use array_size() helper in jhash2()
  UPSTREAM: lib/stackdepot.c: use flex_array_size() helper in memcpy()
  UPSTREAM: lib/stackdepot.c: replace one-element array with flexible-array member
  ANDROID: build_config: drop CONFIG_KASAN_PANIC_ON_WARN
  ANDROID: sched: Export max_load_balance_interval

Conflicts:
	lib/Kconfig
	lib/stackdepot.c

Change-Id: Ie00619c0594aeaf0656f41ec94d38683372a4863
Signed-off-by: Ivaylo Georgiev <irgeorgiev@codeaurora.org>
2021-02-18 10:43:59 -08:00
Greg Kroah-Hartman
b129c98dc6 Merge 5.10.17 into android12-5.10
Changes in 5.10.17
	objtool: Fix seg fault with Clang non-section symbols
	Revert "dts: phy: add GPIO number and active state used for phy reset"
	gpio: mxs: GPIO_MXS should not default to y unconditionally
	gpio: ep93xx: fix BUG_ON port F usage
	gpio: ep93xx: Fix single irqchip with multi gpiochips
	tracing: Do not count ftrace events in top level enable output
	tracing: Check length before giving out the filter buffer
	drm/i915: Fix overlay frontbuffer tracking
	arm/xen: Don't probe xenbus as part of an early initcall
	cgroup: fix psi monitor for root cgroup
	Revert "drm/amd/display: Update NV1x SR latency values"
	drm/i915/tgl+: Make sure TypeC FIA is powered up when initializing it
	drm/dp_mst: Don't report ports connected if nothing is attached to them
	dmaengine: move channel device_node deletion to driver
	tmpfs: disallow CONFIG_TMPFS_INODE64 on s390
	tmpfs: disallow CONFIG_TMPFS_INODE64 on alpha
	soc: ti: omap-prm: Fix boot time errors for rst_map_012 bits 0 and 1
	arm64: dts: rockchip: Fix PCIe DT properties on rk3399
	arm64: dts: qcom: sdm845: Reserve LPASS clocks in gcc
	ARM: OMAP2+: Fix suspcious RCU usage splats for omap_enter_idle_coupled
	arm64: dts: rockchip: remove interrupt-names property from rk3399 vdec node
	platform/x86: hp-wmi: Disable tablet-mode reporting by default
	arm64: dts: rockchip: Disable display for NanoPi R2S
	ovl: perform vfs_getxattr() with mounter creds
	cap: fix conversions on getxattr
	ovl: skip getxattr of security labels
	scsi: lpfc: Fix EEH encountering oops with NVMe traffic
	x86/split_lock: Enable the split lock feature on another Alder Lake CPU
	nvme-pci: ignore the subsysem NQN on Phison E16
	drm/amd/display: Fix DPCD translation for LTTPR AUX_RD_INTERVAL
	drm/amd/display: Add more Clock Sources to DCN2.1
	drm/amd/display: Release DSC before acquiring
	drm/amd/display: Fix dc_sink kref count in emulated_link_detect
	drm/amd/display: Free atomic state after drm_atomic_commit
	drm/amd/display: Decrement refcount of dc_sink before reassignment
	riscv: virt_addr_valid must check the address belongs to linear mapping
	bfq-iosched: Revert "bfq: Fix computation of shallow depth"
	ARM: dts: lpc32xx: Revert set default clock rate of HCLK PLL
	kallsyms: fix nonconverging kallsyms table with lld
	ARM: ensure the signal page contains defined contents
	ARM: kexec: fix oops after TLB are invalidated
	ubsan: implement __ubsan_handle_alignment_assumption
	Revert "lib: Restrict cpumask_local_spread to houskeeping CPUs"
	x86/efi: Remove EFI PGD build time checks
	lkdtm: don't move ctors to .rodata
	KVM: x86: cleanup CR3 reserved bits checks
	cgroup-v1: add disabled controller check in cgroup1_parse_param()
	dmaengine: idxd: fix misc interrupt completion
	ath9k: fix build error with LEDS_CLASS=m
	mt76: dma: fix a possible memory leak in mt76_add_fragment()
	drm/vc4: hvs: Fix buffer overflow with the dlist handling
	dmaengine: idxd: check device state before issue command
	bpf: Unbreak BPF_PROG_TYPE_KPROBE when kprobe is called via do_int3
	bpf: Check for integer overflow when using roundup_pow_of_two()
	netfilter: xt_recent: Fix attempt to update deleted entry
	selftests: netfilter: fix current year
	netfilter: nftables: fix possible UAF over chains from packet path in netns
	netfilter: flowtable: fix tcp and udp header checksum update
	xen/netback: avoid race in xenvif_rx_ring_slots_available()
	net: hdlc_x25: Return meaningful error code in x25_open
	net: ipa: set error code in gsi_channel_setup()
	hv_netvsc: Reset the RSC count if NVSP_STAT_FAIL in netvsc_receive()
	net: enetc: initialize the RFS and RSS memories
	selftests: txtimestamp: fix compilation issue
	net: stmmac: set TxQ mode back to DCB after disabling CBS
	ibmvnic: Clear failover_pending if unable to schedule
	netfilter: conntrack: skip identical origin tuple in same zone only
	scsi: scsi_debug: Fix a memory leak
	x86/build: Disable CET instrumentation in the kernel for 32-bit too
	net: dsa: felix: implement port flushing on .phylink_mac_link_down
	net: hns3: add a check for queue_id in hclge_reset_vf_queue()
	net: hns3: add a check for tqp_index in hclge_get_ring_chain_from_mbx()
	net: hns3: add a check for index in hclge_get_rss_key()
	firmware_loader: align .builtin_fw to 8
	drm/sun4i: tcon: set sync polarity for tcon1 channel
	drm/sun4i: dw-hdmi: always set clock rate
	drm/sun4i: Fix H6 HDMI PHY configuration
	drm/sun4i: dw-hdmi: Fix max. frequency for H6
	clk: sunxi-ng: mp: fix parent rate change flag check
	i2c: stm32f7: fix configuration of the digital filter
	h8300: fix PREEMPTION build, TI_PRE_COUNT undefined
	scripts: set proper OpenSSL include dir also for sign-file
	x86/pci: Create PCI/MSI irqdomain after x86_init.pci.arch_init()
	arm64: mte: Allow PTRACE_PEEKMTETAGS access to the zero page
	rxrpc: Fix clearance of Tx/Rx ring when releasing a call
	udp: fix skb_copy_and_csum_datagram with odd segment sizes
	net: dsa: call teardown method on probe failure
	cpufreq: ACPI: Extend frequency tables to cover boost frequencies
	cpufreq: ACPI: Update arch scale-invariance max perf ratio if CPPC is not there
	net: gro: do not keep too many GRO packets in napi->rx_list
	net: fix iteration for sctp transport seq_files
	net/vmw_vsock: fix NULL pointer dereference
	net/vmw_vsock: improve locking in vsock_connect_timeout()
	net: watchdog: hold device global xmit lock during tx disable
	bridge: mrp: Fix the usage of br_mrp_port_switchdev_set_state
	switchdev: mrp: Remove SWITCHDEV_ATTR_ID_MRP_PORT_STAT
	vsock/virtio: update credit only if socket is not closed
	vsock: fix locking in vsock_shutdown()
	net/rds: restrict iovecs length for RDS_CMSG_RDMA_ARGS
	net/qrtr: restrict user-controlled length in qrtr_tun_write_iter()
	ovl: expand warning in ovl_d_real()
	kcov, usb: only collect coverage from __usb_hcd_giveback_urb in softirq
	Linux 5.10.17

Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: Id0300681f52b51d3f466f1e66ec3a6c25f65f4d3
2021-02-18 11:21:01 +01:00
Willem de Bruijn
46a831d1cc udp: fix skb_copy_and_csum_datagram with odd segment sizes
commit 52cbd23a119c6ebf40a527e53f3402d2ea38eccb upstream.

When iteratively computing a checksum with csum_block_add, track the
offset "pos" to correctly rotate in csum_block_add when offset is odd.

The open coded implementation of skb_copy_and_csum_datagram did this.
With the switch to __skb_datagram_iter calling csum_and_copy_to_iter,
pos was reinitialized to 0 on each call.

Bring back the pos by passing it along with the csum to the callback.

Changes v1->v2
  - pass csum value, instead of csump pointer (Alexander Duyck)

Link: https://lore.kernel.org/netdev/20210128152353.GB27281@optiplex/
Fixes: 950fcaecd5 ("datagram: consolidate datagram copy to iter helpers")
Reported-by: Oliver Graute <oliver.graute@gmail.com>
Signed-off-by: Willem de Bruijn <willemb@google.com>
Reviewed-by: Alexander Duyck <alexanderduyck@fb.com>
Reviewed-by: Eric Dumazet <edumazet@google.com>
Link: https://lore.kernel.org/r/20210203192952.1849843-1-willemdebruijn.kernel@gmail.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-02-17 11:02:28 +01:00
Thomas Gleixner
486c1525eb Revert "lib: Restrict cpumask_local_spread to houskeeping CPUs"
[ Upstream commit 2452483d9546de1c540f330469dc4042ff089731 ]

This reverts commit 1abdfe706a.

This change is broken and not solving any problem it claims to solve.

Robin reported that cpumask_local_spread() now returns any cpu out of
cpu_possible_mask in case that NOHZ_FULL is disabled (runtime or compile
time). It can also return any offline or not-present CPU in the
housekeeping mask. Before that it was returning a CPU out of
online_cpu_mask.

While the function is racy against CPU hotplug if the caller does not
protect against it, the actual use cases are not caring much about it as
they use it mostly as hint for:

 - the user space affinity hint which is unused by the kernel
 - memory node selection which is just suboptimal
 - network queue affinity which might fail but is handled gracefully

But the occasional fail vs. hotplug is very different from returning
anything from possible_cpu_mask which can have a large amount of offline
CPUs obviously.

The changelog of the commit claims:

 "The current implementation of cpumask_local_spread() does not respect
  the isolated CPUs, i.e., even if a CPU has been isolated for Real-Time
  task, it will return it to the caller for pinning of its IRQ
  threads. Having these unwanted IRQ threads on an isolated CPU adds up
  to a latency overhead."

The only correct part of this changelog is:

 "The current implementation of cpumask_local_spread() does not respect
  the isolated CPUs."

Everything else is just disjunct from reality.

Reported-by: Robin Murphy <robin.murphy@arm.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: Nitesh Narayan Lal <nitesh@redhat.com>
Cc: Marcelo Tosatti <mtosatti@redhat.com>
Cc: abelits@marvell.com
Cc: davem@davemloft.net
Link: https://lore.kernel.org/r/87y2g26tnt.fsf@nanos.tec.linutronix.de
Signed-off-by: Sasha Levin <sashal@kernel.org>
2021-02-17 11:02:24 +01:00
Nathan Chancellor
cf1cab6edb ubsan: implement __ubsan_handle_alignment_assumption
[ Upstream commit 28abcc963149e06d956d95a18a85f4ba26af746f ]

When building ARCH=mips 32r2el_defconfig with CONFIG_UBSAN_ALIGNMENT:

  ld.lld: error: undefined symbol: __ubsan_handle_alignment_assumption
     referenced by slab.h:557 (include/linux/slab.h:557)
                   main.o:(do_initcalls) in archive init/built-in.a
     referenced by slab.h:448 (include/linux/slab.h:448)
                   do_mounts_rd.o:(rd_load_image) in archive init/built-in.a
     referenced by slab.h:448 (include/linux/slab.h:448)
                   do_mounts_rd.o:(identify_ramdisk_image) in archive init/built-in.a
     referenced 1579 more times

Implement this for the kernel based on LLVM's
handleAlignmentAssumptionImpl because the kernel is not linked against
the compiler runtime.

Link: https://github.com/ClangBuiltLinux/linux/issues/1245
Link: https://github.com/llvm/llvm-project/blob/llvmorg-11.0.1/compiler-rt/lib/ubsan/ubsan_handlers.cpp#L151-L190
Link: https://lkml.kernel.org/r/20210127224451.2587372-1-nathan@kernel.org
Signed-off-by: Nathan Chancellor <nathan@kernel.org>
Acked-by: Kees Cook <keescook@chromium.org>
Reviewed-by: Nick Desaulniers <ndesaulniers@google.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2021-02-17 11:02:24 +01:00
Ivaylo Georgiev
2a3dbbd786 Merge android12-5.10.14 (d0d8327) into msm-5.10
* refs/heads/tmp-d0d8327:
  ANDROID: mm/memory_hotplug: fix check for proper subsection removal
  Revert "FROMLIST: dt-bindings: reserved-memory: Make DMA-BUF CMA heap DT-configurable"
  Revert "FROMLIST: dma-buf: heaps: add chunk heap to dmabuf heaps"
  ANDROID: gki_defconfig: Enable NL80211_TESTMODE
  UPSTREAM: dt-binding: usb: Include USB SSP rates in GenXxY
  UPSTREAM: dt-bindings: usb: Add generic "usb-phy" property
  UPSTREAM: dt-bindings: usb: Add "ulpi/serial/hsic" PHY types
  UPSTREAM: dt-bindings: usb: Convert generic USB properties to DT schemas
  UPSTREAM: dt-bindings: usb: usb-hcd: Detach generic USB controller properties
  UPSTREAM: usb: dwc3: gadget: Set speed only up to the max supported
  UPSTREAM: usb: dwc3: gadget: Track connected SSP rate and lane count
  UPSTREAM: usb: dwc3: gadget: Implement setting of SSP rate
  UPSTREAM: usb: dwc3: core: Check maximum_speed SSP genXxY
  UPSTREAM: usb: common: Parse for USB SSP genXxY
  FROMGIT: kasan: untag addresses for KFENCE
  BACKPORT: kasan: remove redundant config option
  FROMGIT: kasan: don't run tests when KASAN is not enabled
  FROMGIT: kasan: add a test for kmem_cache_alloc/free_bulk
  FROMGIT: kasan: add proper page allocator tests
  FROMGIT: kasan: fix bug detection via ksize for HW_TAGS mode
  FROMGIT: kasan: move _RET_IP_ to inline wrappers
  FROMGIT: kasan: fix memory corruption in kasan_bitops_tags test
  FROMGIT: kasan: adapt kmalloc_uaf2 test to HW_TAGS mode
  FROMGIT: kasan: add compiler barriers to KUNIT_EXPECT_KASAN_FAIL
  FROMGIT: kasan: rename CONFIG_TEST_KASAN_MODULE
  FROMGIT: kasan, arm64: allow using KUnit tests with HW_TAGS mode
  FROMGIT: kasan: add match-all tag tests
  FROMGIT: kasan: add macros to simplify checking test constraints
  FROMGIT: kasan: clean up comments in tests
  FROMGIT: kasan: clarify HW_TAGS impact on TBI
  FROMGIT: kasan: prefix global functions with kasan_
  Linux 5.10.14
  workqueue: Restrict affinity change to rescuer
  kthread: Extract KTHREAD_IS_PER_CPU
  x86/cpu: Add another Alder Lake CPU to the Intel family
  objtool: Don't fail the kernel build on fatal errors
  habanalabs: disable FW events on device removal
  habanalabs: fix backward compatibility of idle check
  habanalabs: zero pci counters packet before submit to FW
  drm/amd/display: Fixed corruptions on HPDRX link loss restore
  drm/amd/display: Use hardware sequencer functions for PG control
  drm/amd/display: Change function decide_dp_link_settings to avoid infinite looping
  drm/amd/display: Allow PSTATE chnage when no displays are enabled
  drm/amd/display: Update dram_clock_change_latency for DCN2.1
  selftests/powerpc: Only test lwm/stmw on big endian
  platform/x86: thinkpad_acpi: Add P53/73 firmware to fan_quirk_table for dual fan control
  nvmet: set right status on error in id-ns handler
  nvme-pci: allow use of cmb on v1.4 controllers
  nvme-tcp: avoid request double completion for concurrent nvme_tcp_timeout
  nvme-rdma: avoid request double completion for concurrent nvme_rdma_timeout
  nvme: check the PRINFO bit before deciding the host buffer length
  udf: fix the problem that the disc content is not displayed
  i2c: tegra: Create i2c_writesl_vi() to use with VI I2C for filling TX FIFO
  ALSA: hda: Add Cometlake-R PCI ID
  scsi: ibmvfc: Set default timeout to avoid crash during migration
  mac80211: fix encryption key selection for 802.3 xmit
  mac80211: fix fast-rx encryption check
  mac80211: fix incorrect strlen of .write in debugfs
  objtool: Don't add empty symbols to the rbtree
  ALSA: hda: Add AlderLake-P PCI ID and HDMI codec vid
  ASoC: SOF: Intel: hda: Resume codec to do jack detection
  scsi: fnic: Fix memleak in vnic_dev_init_devcmd2
  scsi: libfc: Avoid invoking response handler twice if ep is already completed
  scsi: scsi_transport_srp: Don't block target in failfast state
  x86: __always_inline __{rd,wr}msr()
  locking/lockdep: Avoid noinstr warning for DEBUG_LOCKDEP
  habanalabs: fix dma_addr passed to dma_mmap_coherent
  platform/x86: intel-vbtn: Support for tablet mode on Dell Inspiron 7352
  platform/x86: touchscreen_dmi: Add swap-x-y quirk for Goodix touchscreen on Estar Beauty HD tablet
  tools/power/x86/intel-speed-select: Set higher of cpuinfo_max_freq or base_frequency
  tools/power/x86/intel-speed-select: Set scaling_max_freq to base_frequency
  phy: cpcap-usb: Fix warning for missing regulator_disable
  iommu/vt-d: Do not use flush-queue when caching-mode is on
  ARM: 9025/1: Kconfig: CPU_BIG_ENDIAN depends on !LD_IS_LLD
  Revert "x86/setup: don't remove E820_TYPE_RAM for pfn 0"
  arm64: Do not pass tagged addresses to __is_lm_address()
  arm64: Fix kernel address detection of __is_lm_address()
  arm64: dts: meson: Describe G12b GPU as coherent
  drm/panfrost: Support cache-coherent integrations
  iommu/io-pgtable-arm: Support coherency for Mali LPAE
  ibmvnic: Ensure that CRQ entry read are correctly ordered
  net: switchdev: don't set port_obj_info->handled true when -EOPNOTSUPP
  net: dsa: bcm_sf2: put device node before return
  mlxsw: spectrum_span: Do not overwrite policer configuration
  stmmac: intel: Configure EHL PSE0 GbE and PSE1 GbE to 32 bits DMA addressing
  net: octeontx2: Make sure the buffer is 128 byte aligned
  net: fec: put child node on error path
  net: stmmac: dwmac-intel-plat: remove config data on error
  net: dsa: microchip: Adjust reset release timing to match reference reset circuit
  ANDROID: usb: gadget: configfs: Move CONFIGFS_UEVENT #endif
  ANDROID: GKI: Enable KFENCE
  FROMGIT: KVM: arm64: Move __hyp_set_vectors out of .hyp.text
  FROMGIT: KVM: arm64: Stub EXPORT_SYMBOL for nVHE EL2 code
  FROMGIT: asm-generic: export: Stub EXPORT_SYMBOL with __DISABLE_EXPORTS
  FROMGIT: KVM: arm64: Correct spelling of DBGDIDR register
  FROMGIT: KVM: arm64: Use symbolic names for the PMU versions
  FROMGIT: KVM: arm64: Upgrade PMU support to ARMv8.4
  FROMGIT: KVM: arm64: Limit the debug architecture to ARMv8.0
  FROMGIT: KVM: arm64: Refactor filtering of ID registers
  FROMGIT: KVM: arm64: Add handling of AArch32 PCMEID{2,3} PMUv3 registers
  FROMGIT: KVM: arm64: Fix AArch32 PMUv3 capping
  FROMGIT: KVM: arm64: Fix missing RES1 in emulation of DBGBIDR
  FROMGIT: KVM: arm64: Make gen-hyprel endianness agnostic
  FROMGIT: KVM: arm64: Implement the TRNG hypervisor call
  FROMGIT: KVM: arm64: Mark the page dirty only if the fault is handled successfully
  FROMGIT: KVM: arm64: Filter out the case of only changing permissions from stage-2 map path
  FROMGIT: KVM: arm64: Adjust partial code of hyp stage-1 map and guest stage-2 map
  FROMGIT: KVM: arm64: Simplify __kvm_hyp_init HVC detection
  FROMGIT: KVM: arm64: Remove hyp_symbol_addr
  FROMGIT: KVM: arm64: Remove patching of fn pointers in hyp
  FROMGIT: KVM: arm64: Fix constant-pool users in hyp
  FROMGIT: KVM: arm64: Apply hyp relocations at runtime
  FROMGIT: KVM: arm64: Generate hyp relocation data
  FROMGIT: KVM: arm64: Add symbol at the beginning of each hyp section
  FROMGIT: KVM: arm64: Set up .hyp.rodata ELF section
  FROMGIT: KVM: arm64: Rename .idmap.text in hyp linker script
  FROMGIT: firmware: smccc: Add SMCCC TRNG function call IDs
  BACKPORT: arm64: Work around broken GCC 4.9 handling of "S" constraint
  FROMGIT: kasan: use error_report_end tracepoint
  FROMGIT: kfence: use error_report_end tracepoint
  FROMGIT: tracing: add error_report_end trace point
  FROMGIT: kfence: show access type in report
  FROMGIT: kfence: fix typo in test
  FROMGIT: kfence: add test suite
  FROMGIT: kfence: add missing copyright header to documentation
  FROMGIT: kfence, Documentation: add KFENCE documentation
  FROMGIT: kfence, kasan: make KFENCE compatible with KASAN
  FROMGIT: mm, kfence: insert KFENCE hooks for SLUB
  BACKPORT: mm, kfence: insert KFENCE hooks for SLAB
  FROMGIT: mm/slab: rerform init_on_free earlier
  FROMGIT: kfence: use pt_regs to generate stack trace on faults
  FROMGIT: kfence, arm64: add missing copyright and description header
  FROMGIT: arm64, kfence: enable KFENCE for ARM64
  FROMGIT: kfence, x86: add missing copyright and description header
  FROMGIT: x86, kfence: enable KFENCE for x86
  FROMGIT: kfence: add missing copyright and description headers
  FROMGIT: kfence: add option to use KFENCE without static keys
  FROMGIT: kfence: fix potential deadlock due to wake_up()
  FROMGIT: kfence: avoid stalling work queue task without allocations
  FROMGIT: kfence: Fix parameter description for kfence_object_start()
  BACKPORT: mm: add Kernel Electric-Fence infrastructure
  FROMLIST: fuse: Fix crediantials leak in passthrough read_iter
  UPSTREAM: userfaultfd: add user-mode only option to unprivileged_userfaultfd sysctl knob
  UPSTREAM: userfaultfd: add UFFD_USER_MODE_ONLY
  UPSTREAM: userfaultfd: use secure anon inodes for userfaultfd
  BACKPORT: selinux: teach SELinux about anonymous inodes
  UPSTREAM: fs: add LSM-supporting anon-inode interface
  UPSTREAM: security: add inode_init_security_anon() LSM hook
  UPSTREAM: cfg80211: Add support to calculate and report 4096-QAM HE rates
  UPSTREAM: cfg80211: Add support to configure SAE PWE value to drivers
  UPSTREAM: usb: dwc3: fix clock issue during resume in OTG mode

Conflicts:
	Documentation/devicetree/bindings
	Documentation/devicetree/bindings/usb/usb-hcd.yaml
	drivers/dma-buf/heaps/Kconfig
	drivers/dma-buf/heaps/Makefile

Change-Id: I3726725889da6ae622c1e319388831e7f99d14c5
Signed-off-by: Ivaylo Georgiev <irgeorgiev@codeaurora.org>
2021-02-16 13:52:48 -08:00
Andrey Konovalov
4f62c69f01 FROMGIT: kasan, mm: fail krealloc on freed objects
Currently, if krealloc() is called on a freed object with KASAN enabled,
it allocates and returns a new object, but doesn't copy any memory from
the old one as ksize() returns 0.  This makes the caller believe that
krealloc() succeeded (KASAN report is printed though).

This patch adds an accessibility check into __do_krealloc().  If the check
fails, krealloc() returns NULL.  This check duplicates the one in ksize();
this is fixed in the following patch.

This patch also adds a KASAN-KUnit test to check krealloc() behaviour when
it's called on a freed object.

Link: https://lkml.kernel.org/r/cbcf7b02be0a1ca11de4f833f2ff0b3f2c9b00c8.1612546384.git.andreyknvl@google.com
Signed-off-by: Andrey Konovalov <andreyknvl@google.com>
Reviewed-by: Marco Elver <elver@google.com>
Cc: Alexander Potapenko <glider@google.com>
Cc: Andrey Ryabinin <aryabinin@virtuozzo.com>
Cc: Branislav Rankov <Branislav.Rankov@arm.com>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Dmitry Vyukov <dvyukov@google.com>
Cc: Evgenii Stepanov <eugenis@google.com>
Cc: Kevin Brodsky <kevin.brodsky@arm.com>
Cc: Peter Collingbourne <pcc@google.com>
Cc: Vincenzo Frascino <vincenzo.frascino@arm.com>
Cc: Will Deacon <will.deacon@arm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
(cherry picked from commit 5042e07bc0ff0d680daf5fc2fd3dd3dc51232786
 https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git akpm)
Bug: 172318110
Change-Id: I56f28d8970c3c2cdbeeb8a213ef5fb80ee836710
2021-02-16 15:33:32 +01:00
Andrey Konovalov
d7ef7af205 FROMGIT: kasan: rework krealloc tests
This patch reworks KASAN-KUnit tests for krealloc() to:

1. Check both slab and page_alloc based krealloc() implementations.
2. Allow at least one full granule to fit between old and new sizes for
   each KASAN mode, and check accesses to that granule accordingly.

Link: https://lkml.kernel.org/r/c707f128a2bb9f2f05185d1eb52192cf179cf4fa.1612546384.git.andreyknvl@google.com
Signed-off-by: Andrey Konovalov <andreyknvl@google.com>
Reviewed-by: Marco Elver <elver@google.com>
Cc: Alexander Potapenko <glider@google.com>
Cc: Andrey Ryabinin <aryabinin@virtuozzo.com>
Cc: Branislav Rankov <Branislav.Rankov@arm.com>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Dmitry Vyukov <dvyukov@google.com>
Cc: Evgenii Stepanov <eugenis@google.com>
Cc: Kevin Brodsky <kevin.brodsky@arm.com>
Cc: Peter Collingbourne <pcc@google.com>
Cc: Vincenzo Frascino <vincenzo.frascino@arm.com>
Cc: Will Deacon <will.deacon@arm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
(cherry picked from commit b01de0623623a1f532dddd4e4d5243793824d1fd
 https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git akpm)
Bug: 172318110
Change-Id: I385559fabc3695a2b360aa3e1f7100cb8939a528
2021-02-16 15:33:32 +01:00
Vijayanand Jitta
3a0defe5db FROMGIT: lib: stackdepot: fix ignoring return value warning
Fix the below ignoring return value warning for kstrtobool in
is_stack_depot_disabled function.

lib/stackdepot.c: In function 'is_stack_depot_disabled':
lib/stackdepot.c:154:2: warning: ignoring return value of 'kstrtobool'
declared with attribute 'warn_unused_result' [-Wunused-result]

Link: https://lkml.kernel.org/r/1612163048-28026-1-git-send-email-vjitta@codeaurora.org
Fixes: b9779abb09a8 ("lib: stackdepot: add support to disable stack depot")
Signed-off-by: Vijayanand Jitta <vjitta@codeaurora.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
(cherry picked from commit 5b061c0c496dc06e6c8b1158788ec95110300845
 https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git akpm)
Bug: 172318110
Signed-off-by: Andrey Konovalov <andreyknvl@google.com>
Change-Id: Id5ea62127d37bd95e47436664728e6ef4fa0e675
2021-02-15 15:11:44 -08:00
Vijayanand Jitta
bfed1c3081 FROMGIT: lib: stackdepot: add support to disable stack depot
Add a kernel parameter stack_depot_disable to disable stack depot.  So
that stack hash table doesn't consume any memory when stack depot is
disabled.

The use case is CONFIG_PAGE_OWNER without page_owner=on.  Without this
patch, stackdepot will consume the memory for the hashtable.  By default,
it's 8M which is never trivial.

With this option, in CONFIG_PAGE_OWNER configured system, page_owner=off,
stack_depot_disable in kernel command line, we could save the wasted
memory for the hashtable.

Link: https://lkml.kernel.org/r/1611749198-24316-2-git-send-email-vjitta@codeaurora.org
Signed-off-by: Vinayak Menon <vinmenon@codeaurora.org>
Signed-off-by: Vijayanand Jitta <vjitta@codeaurora.org>
Cc: Alexander Potapenko <glider@google.com>
Cc: Minchan Kim <minchan@kernel.org>
Cc: Yogesh Lal <ylal@codeaurora.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
(cherry picked from commit 3d9ebd4b5358d8fd4c270b516430169905c38686
 https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git akpm)
(cherry picked from commit 2b7ef118b617be551c23e975dfe44588b180c536
 https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git akpm)
Bug: 172318110
Signed-off-by: Andrey Konovalov <andreyknvl@google.com>
Change-Id: Id6730d66306531a9031ab6f6359a825869fa1890
2021-02-15 15:11:44 -08:00
Yogesh Lal
892f557389 FROMGIT: lib: stackdepot: add support to configure STACK_HASH_SIZE
Use CONFIG_STACK_HASH_ORDER to configure STACK_HASH_SIZE.

Aim is to have configurable value for  STACK_HASH_SIZE,
so depend on use case one can configure it.

One example is of Page Owner, CONFIG_PAGE_OWNER works only if
page_owner=on via kernel parameter on CONFIG_PAGE_OWNER configured system.
Thus, unless admin enable it via command line option, the stackdepot will
just waste 8M memory without any customer.

Making it configurable and use lower value helps to enable features like
CONFIG_PAGE_OWNER without any significant overhead.

Link: https://lkml.kernel.org/r/1611749198-24316-1-git-send-email-vjitta@codeaurora.org
Signed-off-by: Yogesh Lal <ylal@codeaurora.org>
Signed-off-by: Vinayak Menon <vinmenon@codeaurora.org>
Signed-off-by: Vijayanand Jitta <vjitta@codeaurora.org>
Reviewed-by: Minchan Kim <minchan@kernel.org>
Reviewed-by: Alexander Potapenko <glider@google.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
(cherry picked from commit a222e48e2c92b6d9d95216d9c8cab3bf1b0f7bbc
 https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git akpm)
Bug: 172318110
Signed-off-by: Andrey Konovalov <andreyknvl@google.com>
Change-Id: I4d364f73f5ed5196387b655e5385831153fefb2a
2021-02-15 15:11:44 -08:00
Gustavo A. R. Silva
ceca973506 UPSTREAM: lib/stackdepot.c: use array_size() helper in jhash2()
Use array_size() helper instead of the open-coded version in jhash2().
These sorts of multiplication factors need to be wrapped in array_size().

Also, use the preferred form for passing the size of an object type.

Link: https://lkml.kernel.org/r/cb8a682e4bba4dbddd2bd8aca7f8c02fea89639b.1601565471.git.gustavoars@kernel.org
Signed-off-by: Gustavo A. R. Silva <gustavoars@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
(cherry picked from commit 180644f80a0284bf5c9acdbd33760924fef14236)
Bug: 172318110
Signed-off-by: Andrey Konovalov <andreyknvl@google.com>
Change-Id: Ifb9c11368b187adff230b42f5c6899faeb3740d5
2021-02-15 15:11:44 -08:00
Gustavo A. R. Silva
522668ec71 UPSTREAM: lib/stackdepot.c: use flex_array_size() helper in memcpy()
Make use of the flex_array_size() helper to calculate the size of a
flexible array member within an enclosing structure.

This helper offers defense-in-depth against potential integer overflows,
while at the same time makes it explicitly clear that we are dealing with
a flexible array member.

Link: https://lkml.kernel.org/r/186e37fe07196ee41a0e562fa8a8cb7a01112ec5.1601565471.git.gustavoars@kernel.org
Signed-off-by: Gustavo A. R. Silva <gustavoars@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
(cherry picked from commit 47e684aaa2661b2af39474a12d05447865ce9184)
Bug: 172318110
Signed-off-by: Andrey Konovalov <andreyknvl@google.com>
Change-Id: I47bf75a561c1c0f5df2cba0b2bd883b84dce976f
2021-02-15 15:11:43 -08:00
Gustavo A. R. Silva
6251cf847d UPSTREAM: lib/stackdepot.c: replace one-element array with flexible-array member
Patch series "lib/stackdepot.c: Replace one-element array with flexible-array member".

This series aims to replace a one-element array with a flexible-array
member.  Also, make use of the struct_size(), flexible_array_size() and
array_size() helpers.

This patch (of 3):

There is a regular need in the kernel to provide a way to declare having a
dynamically sized set of trailing elements in a structure.  Kernel code
should always use “flexible array members”[1] for these cases.  The
older style of one-element or zero-length arrays should no longer be
used[2].

Refactor the code according to the use of a flexible-array member in
struct stack_record, instead of a one-element array, and use the
struct_size() helper to calculate the size for the allocation.

[1] https://en.wikipedia.org/wiki/Flexible_array_member
[2] https://www.kernel.org/doc/html/v5.9-rc1/process/deprecated.html#zero-length-and-one-element-arrays

Link: https://lkml.kernel.org/r/cover.1601565471.git.gustavoars@kernel.org
Link: https://lore.kernel.org/lkml/5f75876b.x9zdN10esiC0qLHV%25lkp@intel.com/
Link: https://lkml.kernel.org/r/2f1e6a17aaa891ad9c58817cf0a10b8ab8894f59.1601565471.git.gustavoars@kernel.org
Signed-off-by: Gustavo A. R. Silva <gustavoars@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
(cherry picked from commit 3a2b67e6e3fdb14c6da4c6909454d7a1d9b24f70)
Bug: 172318110
Signed-off-by: Andrey Konovalov <andreyknvl@google.com>
Change-Id: Ic882af5c57d592b9e436371793860406496afacd
2021-02-15 15:11:43 -08:00
Ivaylo Georgiev
b69639c402 Merge android12-5.10.11 (ba15277) into msm-5.10
* refs/heads/tmp-ba15277:
  Linux 5.10.11
  Revert "mm: fix initialization of struct page for holes in memory layout"
  mm: fix initialization of struct page for holes in memory layout
  Commit 9bb48c82aced ("tty: implement write_iter") converted the tty layer to use write_iter. Fix the redirected_tty_write declaration also in n_tty and change the comparisons to use write_iter instead of write. also in n_tty and change the comparisons to use write_iter instead of write.
  fs/pipe: allow sendfile() to pipe again
  interconnect: imx8mq: Use icc_sync_state
  kernfs: wire up ->splice_read and ->splice_write
  kernfs: implement ->write_iter
  kernfs: implement ->read_iter
  bpf: Local storage helpers should check nullness of owner ptr passed
  drm/i915/hdcp: Get conn while content_type changed
  ASoC: SOF: Intel: hda: Avoid checking jack on system suspend
  tcp: Fix potential use-after-free due to double kfree()
  x86/sev-es: Handle string port IO to kernel memory properly
  net: systemport: free dev before on error path
  tty: fix up hung_up_tty_write() conversion
  tty: implement write_iter
  x86/sev: Fix nonistr violation
  pinctrl: qcom: Don't clear pending interrupts when enabling
  pinctrl: qcom: Properly clear "intr_ack_high" interrupts when unmasking
  pinctrl: qcom: No need to read-modify-write the interrupt status
  pinctrl: qcom: Allow SoCs to specify a GPIO function that's not 0
  net: core: devlink: use right genl user_ptr when handling port param get/set
  net: mscc: ocelot: Fix multicast to the CPU port
  tcp: fix TCP_USER_TIMEOUT with zero window
  tcp: do not mess with cloned skbs in tcp_add_backlog()
  net: dsa: b53: fix an off by one in checking "vlan->vid"
  net: Disable NETIF_F_HW_TLS_RX when RXCSUM is disabled
  net: mscc: ocelot: allow offloading of bridge on top of LAG
  ipv6: set multicast flag on the multicast route
  net_sched: reject silly cell_log in qdisc_get_rtab()
  net_sched: avoid shift-out-of-bounds in tcindex_set_parms()
  ipv6: create multicast route with RTPROT_KERNEL
  udp: mask TOS bits in udp_v4_early_demux()
  net_sched: gen_estimator: support large ewma log
  tcp: fix TCP socket rehash stats mis-accounting
  kasan: fix incorrect arguments passing in kasan_add_zero_shadow
  kasan: fix unaligned address is unhandled in kasan_remove_zero_shadow
  skbuff: back tiny skbs with kmalloc() in __netdev_alloc_skb() too
  lightnvm: fix memory leak when submit fails
  cachefiles: Drop superfluous readpages aops NULL check
  nvme-pci: fix error unwind in nvme_map_data
  nvme-pci: refactor nvme_unmap_data
  sh_eth: Fix power down vs. is_opened flag ordering
  selftests/powerpc: Fix exit status of pkey tests
  net: dsa: mv88e6xxx: also read STU state in mv88e6250_g1_vtu_getnext
  octeontx2-af: Fix missing check bugs in rvu_cgx.c
  ASoC: SOF: Intel: fix page fault at probe if i915 init fails
  locking/lockdep: Cure noinstr fail
  sh: Remove unused HAVE_COPY_THREAD_TLS macro
  sh: dma: fix kconfig dependency for G2_DMA
  drm/i915/hdcp: Update CP property in update_pipe
  tools: gpio: fix %llu warning in gpio-watch.c
  tools: gpio: fix %llu warning in gpio-event-mon.c
  netfilter: rpfilter: mask ecn bits before fib lookup
  cls_flower: call nla_ok() before nla_next()
  x86/cpu/amd: Set __max_die_per_package on AMD
  x86/entry: Fix noinstr fail
  drm/i915: Only enable DFP 4:4:4->4:2:0 conversion when outputting YCbCr 4:4:4
  drm/i915: s/intel_dp_sink_dpms/intel_dp_set_power/
  driver core: Extend device_is_dependent()
  driver core: Fix device link device name collision
  drivers core: Free dma_range_map when driver probe failed
  xhci: tegra: Delay for disabling LFPS detector
  xhci: make sure TRB is fully written before giving it to the controller
  usb: cdns3: imx: fix can't create core device the second time issue
  usb: cdns3: imx: fix writing read-only memory issue
  usb: bdc: Make bdc pci driver depend on BROKEN
  usb: udc: core: Use lock when write to soft_connect
  USB: gadget: dummy-hcd: Fix errors in port-reset handling
  usb: gadget: aspeed: fix stop dma register setting.
  USB: ehci: fix an interrupt calltrace error
  ehci: fix EHCI host controller initialization sequence
  serial: mvebu-uart: fix tx lost characters at power off
  stm class: Fix module init return on allocation failure
  intel_th: pci: Add Alder Lake-P support
  io_uring: fix short read retries for non-reg files
  io_uring: fix SQPOLL IORING_OP_CLOSE cancelation state
  io_uring: iopoll requests should also wake task ->in_idle state
  mm: fix numa stats for thp migration
  mm: memcg: fix memcg file_dirty numa stat
  mm: memcg/slab: optimize objcg stock draining
  proc_sysctl: fix oops caused by incorrect command parameters
  x86/setup: don't remove E820_TYPE_RAM for pfn 0
  x86/mmx: Use KFPU_387 for MMX string operations
  x86/topology: Make __max_die_per_package available unconditionally
  x86/fpu: Add kernel_fpu_begin_mask() to selectively initialize state
  irqchip/mips-cpu: Set IPI domain parent chip
  cifs: do not fail __smb_send_rqst if non-fatal signals are pending
  powerpc/64s: fix scv entry fallback flush vs interrupt
  counter:ti-eqep: remove floor
  iio: adc: ti_am335x_adc: remove omitted iio_kfifo_free()
  drivers: iio: temperature: Add delay after the addressed reset command in mlx90632.c
  iio: ad5504: Fix setting power-down state
  iio: common: st_sensors: fix possible infinite loop in st_sensors_irq_thread
  i2c: sprd: depend on COMMON_CLK to fix compile tests
  perf evlist: Fix id index for heterogeneous systems
  can: peak_usb: fix use after free bugs
  can: vxcan: vxcan_xmit: fix use after free bug
  can: dev: can_restart: fix use after free bug
  selftests: net: fib_tests: remove duplicate log test
  xsk: Clear pool even for inactive queues
  ALSA: hda: Balance runtime/system PM if direct-complete is disabled
  gpio: sifive: select IRQ_DOMAIN_HIERARCHY rather than depend on it
  platform/x86: hp-wmi: Don't log a warning on HPWMI_RET_UNKNOWN_COMMAND errors
  platform/x86: intel-vbtn: Drop HP Stream x360 Convertible PC 11 from allow-list
  drm/vc4: Unify PCM card's driver_name
  i2c: octeon: check correct size of maximum RECV_LEN packet
  iov_iter: fix the uaccess area in copy_compat_iovec_from_user
  printk: fix kmsg_dump_get_buffer length calulations
  printk: ringbuffer: fix line counting
  RDMA/cma: Fix error flow in default_roce_mode_store
  RDMA/umem: Avoid undefined behavior of rounddown_pow_of_two()
  drm/amdkfd: Fix out-of-bounds read in kdf_create_vcrat_image_cpu()
  bpf: Reject too big ctx_size_in for raw_tp test run
  arm64: entry: remove redundant IRQ flag tracing
  powerpc: Fix alignment bug within the init sections
  powerpc: Use the common INIT_DATA_SECTION macro in vmlinux.lds.S
  bpf: Prevent double bpf_prog_put call from bpf_tracing_prog_attach
  crypto: omap-sham - Fix link error without crypto-engine
  scsi: ufs: Fix tm request when non-fatal error happens
  scsi: ufs: ufshcd-pltfrm depends on HAS_IOMEM
  scsi: megaraid_sas: Fix MEGASAS_IOC_FIRMWARE regression
  btrfs: print the actual offset in btrfs_root_name
  RDMA/ucma: Do not miss ctx destruction steps in some cases
  pinctrl: mediatek: Fix fallback call path
  pinctrl: aspeed: g6: Fix PWMG0 pinctrl setting
  gpiolib: cdev: fix frame size warning in gpio_ioctl()
  nfsd: Don't set eof on a truncated READ_PLUS
  nfsd: Fixes for nfsd4_encode_read_plus_data()
  x86/xen: fix 'nopvspin' build error
  RISC-V: Fix maximum allowed phsyical memory for RV32
  RISC-V: Set current memblock limit
  libperf tests: Fail when failing to get a tracepoint id
  libperf tests: If a test fails return non-zero
  io_uring: flush timeouts that should already have expired
  drm/nouveau/kms/nv50-: fix case where notifier buffer is at offset 0
  drm/nouveau/mmu: fix vram heap sizing
  drm/nouveau/i2c/gm200: increase width of aux semaphore owner fields
  drm/nouveau/privring: ack interrupts the same way as RM
  drm/nouveau/bios: fix issue shadowing expansion ROMs
  drm/amd/display: Fix to be able to stop crc calculation
  HID: logitech-hidpp: Add product ID for MX Ergo in Bluetooth mode
  drm/amd/display: disable dcn10 pipe split by default
  drm/amdgpu/psp: fix psp gfx ctrl cmds
  riscv: defconfig: enable gpio support for HiFive Unleashed
  dts: phy: add GPIO number and active state used for phy reset
  dts: phy: fix missing mdio device and probe failure of vsc8541-01 device
  x86/xen: Fix xen_hvm_smp_init() when vector callback not available
  x86/xen: Add xen_no_vector_callback option to test PCI INTX delivery
  xen: Fix event channel callback via INTX/GSI
  arm64: make atomic helpers __always_inline
  riscv: cacheinfo: Fix using smp_processor_id() in preemptible
  ALSA: hda/tegra: fix tegra-hda on tegra30 soc
  clk: tegra30: Add hda clock default rates to clock driver
  HID: Ignore battery for Elan touchscreen on ASUS UX550
  HID: logitech-dj: add the G602 receiver
  riscv: Enable interrupts during syscalls with M-Mode
  riscv: Fix sifive serial driver
  riscv: Fix kernel time_init()
  scsi: sd: Suppress spurious errors when WRITE SAME is being disabled
  scsi: scsi_debug: Fix memleak in scsi_debug_init()
  scsi: qedi: Correct max length of CHAP secret
  scsi: ufs: Correct the LUN used in eh_device_reset_handler() callback
  scsi: ufs: Relax the condition of UFSHCI_QUIRK_SKIP_MANUAL_WB_FLUSH_CTRL
  x86/hyperv: Fix kexec panic/hang issues
  dm integrity: select CRYPTO_SKCIPHER
  HID: sony: select CONFIG_CRC32
  HID: multitouch: Enable multi-input for Synaptics pointstick/touchpad device
  SUNRPC: Handle TCP socket sends with kernel_sendpage() again
  ASoC: rt711: mutex between calibration and power state changes
  ASoC: Intel: haswell: Add missing pm_ops
  drm/i915: Check for rq->hwsp validity after acquiring RCU lock
  drm/i915/gt: Prevent use of engine->wa_ctx after error
  drm/amd/display: DCN2X Find Secondary Pipe properly in MPO + ODM Case
  drm/amdgpu: remove gpu info firmware of green sardine
  drm/syncobj: Fix use-after-free
  drm/atomic: put state on error path
  dm integrity: conditionally disable "recalculate" feature
  dm integrity: fix a crash if "recalculate" used without "internal_hash"
  dm: avoid filesystem lookup in dm_get_dev_t()
  mmc: sdhci-brcmstb: Fix mmc timeout errors on S5 suspend
  mmc: sdhci-xenon: fix 1.8v regulator stabilization
  mmc: sdhci-of-dwcmshc: fix rpmb access
  mmc: core: don't initialize block size from ext_csd if not present
  pinctrl: ingenic: Fix JZ4760 support
  fs: fix lazytime expiration handling in __writeback_single_inode()
  btrfs: send: fix invalid clone operations when cloning from the same file and root
  btrfs: don't clear ret in btrfs_start_dirty_block_groups
  btrfs: fix lockdep splat in btrfs_recover_relocation
  btrfs: do not double free backref nodes on error
  btrfs: don't get an EINTR during drop_snapshot for reloc
  ACPI: scan: Make acpi_bus_get_device() clear return pointer on error
  dm crypt: fix copy and paste bug in crypt_alloc_req_aead
  crypto: xor - Fix divide error in do_xor_speed()
  ALSA: hda/via: Add minimum mute flag
  ALSA: hda/realtek - Limit int mic boost on Acer Aspire E5-575T
  ALSA: seq: oss: Fix missing error check in snd_seq_oss_synth_make_info()
  platform/x86: ideapad-laptop: Disable touchpad_switch for ELAN0634
  platform/x86: i2c-multi-instantiate: Don't create platform device for INT3515 ACPI nodes
  i2c: bpmp-tegra: Ignore unknown I2C_M flags
  i2c: tegra: Wait for config load atomically while in ISR
  mtd: rawnand: nandsim: Fix the logic when selecting Hamming soft ECC engine
  mtd: rawnand: gpmi: fix dst bit offset when extracting raw payload
  scsi: target: tcmu: Fix use-after-free of se_cmd->priv
  ANDROID: simplify vendor hook definitions
  ANDROID: add macros to create OEM data fields
  ANDROID: dma-buf: fix return type mismatch
  ANDROID: cpu/hotplug: create vendor hook for cpu_up/cpu_down
  FROMLIST: fuse: Introduce passthrough for mmap
  ANDROID: Fix sparse warning in wp_page_copy caused by SPF patchset
  FROMLIST: fuse: Use daemon creds in passthrough mode
  FROMLIST: fuse: Handle asynchronous read and write in passthrough
  FROMLIST: fuse: Introduce synchronous read and write for passthrough
  FROMLIST: fuse: Passthrough initialization and release
  FROMLIST: fuse: Definitions and ioctl for passthrough
  FROMLIST: fuse: 32-bit user space ioctl compat for fuse device
  FROMLIST: fs: Generic function to convert iocb to rw flags
  Revert "FROMLIST: fuse: Definitions and ioctl() for passthrough"
  Revert "FROMLIST: fuse: Passthrough initialization and release"
  Revert "FROMLIST: fuse: Introduce synchronous read and write for passthrough"
  Revert "FROMLIST: fuse: Handle asynchronous read and write in passthrough"
  Revert "FROMLIST: fuse: Use daemon creds in passthrough mode"
  Revert "FROMLIST: fuse: Fix colliding FUSE_PASSTHROUGH flag"
  UPSTREAM: usb: xhci-mtk: fix unreleased bandwidth data
  ANDROID: sched: export task_rq_lock
  ANDROID: GKI: make VIDEOBUF2_DMA_CONTIG under GKI_HIDDEN_MEDIA_CONFIGS
  ANDROID: clang: update to 12.0.1
  FROMLIST: dma-buf: heaps: add chunk heap to dmabuf heaps
  FROMLIST: dt-bindings: reserved-memory: Make DMA-BUF CMA heap DT-configurable
  FROMLIST: mm: failfast mode with __GFP_NORETRY in alloc_contig_range
  FROMLIST: mm: cma: introduce gfp flag in cma_alloc instead of no_warn
  UPSTREAM: kernfs: wire up ->splice_read and ->splice_write
  UPSTREAM: kernfs: implement ->write_iter
  UPSTREAM: kernfs: implement ->read_iter
  UPSTREAM: usb: typec: tcpm: Create legacy PDOs for PD2 connection

Conflicts:
	Documentation/devicetree/bindings
	drivers/dma-buf/heaps/Kconfig
	drivers/dma-buf/heaps/Makefile
	drivers/pinctrl/qcom/pinctrl-msm.h

Change-Id: I6412ddc7b1d215b7ea8bff5815277e13e8143888
Signed-off-by: Ivaylo Georgiev <irgeorgiev@codeaurora.org>
2021-02-08 22:02:19 -08:00
Walter Wu
13aefe4bf8 BACKPORT: kasan: remove redundant config option
CONFIG_KASAN_STACK and CONFIG_KASAN_STACK_ENABLE both enable KASAN stack
instrumentation, but we should only need one config, so that we remove
CONFIG_KASAN_STACK_ENABLE and make CONFIG_KASAN_STACK workable.  see [1].

When enable KASAN stack instrumentation, then for gcc we could do no
prompt and default value y, and for clang prompt and default value n.

[1]: https://bugzilla.kernel.org/show_bug.cgi?id=210221

Link: https://lkml.kernel.org/r/20210107075315.3482-1-walter-zh.wu@mediatek.com
Signed-off-by: Walter Wu <walter-zh.wu@mediatek.com>
Suggested-by: Dmitry Vyukov <dvyukov@google.com>
Reviewed-by: Nathan Chancellor <natechancellor@gmail.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Reviewed-by: Andrey Konovalov <andreyknvl@google.com>
Cc: Andrey Ryabinin <aryabinin@virtuozzo.com>
Cc: Dmitry Vyukov <dvyukov@google.com>
Cc: Alexander Potapenko <glider@google.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
(cherry picked from commit 5618a011bf808f1a09bda8a171af2589414fef47
 https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git akpm)
(cherry picked from commit 1c35fa55654de4bbf1c140f7cc08d51dcce4dcfa
 https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git akpm)
(backport: adjacent lines changed, no real conflict)
Bug: 172318110
Signed-off-by: Andrey Konovalov <andreyknvl@google.com>
Change-Id: I19e2e74cd1d3e0083f6f1f2c15de8d7220ebd949
2021-02-07 13:41:42 -08:00
Andrey Konovalov
bdf2f9bb6a FROMGIT: kasan: don't run tests when KASAN is not enabled
Don't run KASAN tests when it's disabled with kasan.mode=off to avoid
corrupting kernel memory.

Link: https://linux-review.googlesource.com/id/I6447af436a69a94bfc35477f6bf4e2122948355e
Link: https://lkml.kernel.org/r/25bd4fb5cae7b421d806a1f33fb633edd313f0c7.1610733117.git.andreyknvl@google.com
Signed-off-by: Andrey Konovalov <andreyknvl@google.com>
Reviewed-by: Marco Elver <elver@google.com>
Reviewed-by: Alexander Potapenko <glider@google.com>
Cc: Andrey Ryabinin <aryabinin@virtuozzo.com>
Cc: Branislav Rankov <Branislav.Rankov@arm.com>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Dmitry Vyukov <dvyukov@google.com>
Cc: Evgenii Stepanov <eugenis@google.com>
Cc: Kevin Brodsky <kevin.brodsky@arm.com>
Cc: Peter Collingbourne <pcc@google.com>
Cc: Vincenzo Frascino <vincenzo.frascino@arm.com>
Cc: Will Deacon <will.deacon@arm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
(cherry picked from commit 91732c8a7b5ebf26549d84ca885aaee29db4317a
 https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git akpm)
Bug: 172318110
Signed-off-by: Andrey Konovalov <andreyknvl@google.com>
Change-Id: Idd85e67f7843864afe90e7d3ad60bf22b9442737
2021-02-07 13:41:42 -08:00
Andrey Konovalov
9346eaec14 FROMGIT: kasan: add a test for kmem_cache_alloc/free_bulk
Add a test for kmem_cache_alloc/free_bulk to make sure there are no
false-positives when these functions are used.

Link: https://linux-review.googlesource.com/id/I2a8bf797aecf81baeac61380c567308f319e263d
Link: https://lkml.kernel.org/r/418122ebe4600771ac81e9ca6eab6740cf8dcfa1.1610733117.git.andreyknvl@google.com
Signed-off-by: Andrey Konovalov <andreyknvl@google.com>
Reviewed-by: Marco Elver <elver@google.com>
Reviewed-by: Alexander Potapenko <glider@google.com>
Cc: Andrey Ryabinin <aryabinin@virtuozzo.com>
Cc: Branislav Rankov <Branislav.Rankov@arm.com>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Dmitry Vyukov <dvyukov@google.com>
Cc: Evgenii Stepanov <eugenis@google.com>
Cc: Kevin Brodsky <kevin.brodsky@arm.com>
Cc: Peter Collingbourne <pcc@google.com>
Cc: Vincenzo Frascino <vincenzo.frascino@arm.com>
Cc: Will Deacon <will.deacon@arm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
(cherry picked from commit a8734bb6fb6f332f91200ed93a858138017bc89a
 https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git akpm)
Bug: 172318110
Signed-off-by: Andrey Konovalov <andreyknvl@google.com>
Change-Id: I8cbfdae602b9c4bb1ba0bbac8f14ad57ed412a5b
2021-02-07 13:41:42 -08:00
Andrey Konovalov
e449e2728e FROMGIT: kasan: add proper page allocator tests
The currently existing page allocator tests rely on kmalloc fallback
with large sizes that is only present for SLUB. Add proper tests that
use alloc/free_pages().

Link: https://linux-review.googlesource.com/id/Ia173d5a1b215fe6b2548d814ef0f4433cf983570
Link: https://lkml.kernel.org/r/a2648930e55ff75b8e700f2e0d905c2b55a67483.1610733117.git.andreyknvl@google.com
Signed-off-by: Andrey Konovalov <andreyknvl@google.com>
Reviewed-by: Marco Elver <elver@google.com>
Reviewed-by: Alexander Potapenko <glider@google.com>
Cc: Andrey Ryabinin <aryabinin@virtuozzo.com>
Cc: Branislav Rankov <Branislav.Rankov@arm.com>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Dmitry Vyukov <dvyukov@google.com>
Cc: Evgenii Stepanov <eugenis@google.com>
Cc: Kevin Brodsky <kevin.brodsky@arm.com>
Cc: Peter Collingbourne <pcc@google.com>
Cc: Vincenzo Frascino <vincenzo.frascino@arm.com>
Cc: Will Deacon <will.deacon@arm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
(cherry picked from commit d97ca54df221582df75537d4c390ed8b00ee0d07
 https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git akpm)
Bug: 172318110
Signed-off-by: Andrey Konovalov <andreyknvl@google.com>
Change-Id: Ie52aee1eee8e9b8f2709a89df3899fe1663b29cc
2021-02-07 13:41:42 -08:00
Andrey Konovalov
696574e5ac FROMGIT: kasan: fix bug detection via ksize for HW_TAGS mode
The currently existing kasan_check_read/write() annotations are intended
to be used for kernel modules that have KASAN compiler instrumentation
disabled. Thus, they are only relevant for the software KASAN modes that
rely on compiler instrumentation.

However there's another use case for these annotations: ksize() checks
that the object passed to it is indeed accessible before unpoisoning the
whole object. This is currently done via __kasan_check_read(), which is
compiled away for the hardware tag-based mode that doesn't rely on
compiler instrumentation. This leads to KASAN missing detecting some
memory corruptions.

Provide another annotation called kasan_check_byte() that is available
for all KASAN modes. As the implementation rename and reuse
kasan_check_invalid_free(). Use this new annotation in ksize().
To avoid having ksize() as the top frame in the reported stack trace
pass _RET_IP_ to __kasan_check_byte().

Also add a new ksize_uaf() test that checks that a use-after-free is
detected via ksize() itself, and via plain accesses that happen later.

Link: https://linux-review.googlesource.com/id/Iaabf771881d0f9ce1b969f2a62938e99d3308ec5
Link: https://lkml.kernel.org/r/f32ad74a60b28d8402482a38476f02bb7600f620.1610733117.git.andreyknvl@google.com
Signed-off-by: Andrey Konovalov <andreyknvl@google.com>
Reviewed-by: Marco Elver <elver@google.com>
Reviewed-by: Alexander Potapenko <glider@google.com>
Cc: Andrey Ryabinin <aryabinin@virtuozzo.com>
Cc: Branislav Rankov <Branislav.Rankov@arm.com>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Dmitry Vyukov <dvyukov@google.com>
Cc: Evgenii Stepanov <eugenis@google.com>
Cc: Kevin Brodsky <kevin.brodsky@arm.com>
Cc: Peter Collingbourne <pcc@google.com>
Cc: Vincenzo Frascino <vincenzo.frascino@arm.com>
Cc: Will Deacon <will.deacon@arm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
(cherry picked from commit bc4e8e92cfa1b2bdd04003dd802a3a31e1bd56e5
 https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git akpm)
Bug: 172318110
Signed-off-by: Andrey Konovalov <andreyknvl@google.com>
Change-Id: I73705987ce6279a22763c260655acc0b98b8db60
2021-02-07 13:41:42 -08:00
Andrey Konovalov
c1e807d797 FROMGIT: kasan: fix memory corruption in kasan_bitops_tags test
Since the hardware tag-based KASAN mode might not have a redzone that
comes after an allocated object (when kasan.mode=prod is enabled), the
kasan_bitops_tags() test ends up corrupting the next object in memory.

Change the test so it always accesses the redzone that lies within the
allocated object's boundaries.

Link: https://linux-review.googlesource.com/id/I67f51d1ee48f0a8d0fe2658c2a39e4879fe0832a
Link: https://lkml.kernel.org/r/7d452ce4ae35bb1988d2c9244dfea56cf2cc9315.1610733117.git.andreyknvl@google.com
Signed-off-by: Andrey Konovalov <andreyknvl@google.com>
Reviewed-by: Marco Elver <elver@google.com>
Reviewed-by: Alexander Potapenko <glider@google.com>
Cc: Andrey Ryabinin <aryabinin@virtuozzo.com>
Cc: Branislav Rankov <Branislav.Rankov@arm.com>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Dmitry Vyukov <dvyukov@google.com>
Cc: Evgenii Stepanov <eugenis@google.com>
Cc: Kevin Brodsky <kevin.brodsky@arm.com>
Cc: Peter Collingbourne <pcc@google.com>
Cc: Vincenzo Frascino <vincenzo.frascino@arm.com>
Cc: Will Deacon <will.deacon@arm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
(cherry picked from commit c05fe5206f51b18425888ca9f2c6266d61add5a8
 https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git akpm)
Bug: 172318110
Signed-off-by: Andrey Konovalov <andreyknvl@google.com>
Change-Id: Idcc971140b7c6a938d5d2162474d81a035bd7b37
2021-02-07 13:41:41 -08:00
Andrey Konovalov
0c23e1c23f FROMGIT: kasan: adapt kmalloc_uaf2 test to HW_TAGS mode
In the kmalloc_uaf2() test, the pointers to the two allocated memory
blocks might happen to be the same, and the test will fail. With the
software tag-based mode, the probability of the that is 1/254, so it's
hard to observe the failure. For the hardware tag-based mode though,
the probablity is 1/14, which is quite noticable.

Allow up to 16 attempts at generating different tags for the tag-based
modes.

Link: https://linux-review.googlesource.com/id/Ibfa458ef2804ff465d8eb07434a300bf36388d55
Link: https://lkml.kernel.org/r/9cd5cf2f633dcbf55cab801cd26845d2b075cec7.1610733117.git.andreyknvl@google.com
Signed-off-by: Andrey Konovalov <andreyknvl@google.com>
Reviewed-by: Marco Elver <elver@google.com>
Reviewed-by: Alexander Potapenko <glider@google.com>
Cc: Andrey Ryabinin <aryabinin@virtuozzo.com>
Cc: Branislav Rankov <Branislav.Rankov@arm.com>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Dmitry Vyukov <dvyukov@google.com>
Cc: Evgenii Stepanov <eugenis@google.com>
Cc: Kevin Brodsky <kevin.brodsky@arm.com>
Cc: Peter Collingbourne <pcc@google.com>
Cc: Vincenzo Frascino <vincenzo.frascino@arm.com>
Cc: Will Deacon <will.deacon@arm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
(cherry picked from commit 1a2a5d57c24141c58d1881e841df71c645b716df
 https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git akpm)
Bug: 172318110
Signed-off-by: Andrey Konovalov <andreyknvl@google.com>
Change-Id: I45b57d4c987e746ebf04558402bc1dad0f405bf3
2021-02-07 13:41:41 -08:00
Andrey Konovalov
7095a8f0fb FROMGIT: kasan: add compiler barriers to KUNIT_EXPECT_KASAN_FAIL
It might not be obvious to the compiler that the expression must be
executed between writing and reading to fail_data. In this case, the
compiler might reorder or optimize away some of the accesses, and
the tests will fail.

Add compiler barriers around the expression in KUNIT_EXPECT_KASAN_FAIL
and use READ/WRITE_ONCE() for accessing fail_data fields.

Link: https://linux-review.googlesource.com/id/I046079f48641a1d36fe627fc8827a9249102fd50
Link: https://lkml.kernel.org/r/6f11596f367d8ae8f71d800351e9a5d91eda19f6.1610733117.git.andreyknvl@google.com
Signed-off-by: Andrey Konovalov <andreyknvl@google.com>
Reviewed-by: Marco Elver <elver@google.com>
Reviewed-by: Alexander Potapenko <glider@google.com>
Cc: Andrey Ryabinin <aryabinin@virtuozzo.com>
Cc: Branislav Rankov <Branislav.Rankov@arm.com>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Dmitry Vyukov <dvyukov@google.com>
Cc: Evgenii Stepanov <eugenis@google.com>
Cc: Kevin Brodsky <kevin.brodsky@arm.com>
Cc: Peter Collingbourne <pcc@google.com>
Cc: Vincenzo Frascino <vincenzo.frascino@arm.com>
Cc: Will Deacon <will.deacon@arm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
(cherry picked from commit 5d475f65379312f435e323c64e76563963e360d5
 https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git akpm)
Bug: 172318110
Signed-off-by: Andrey Konovalov <andreyknvl@google.com>
Change-Id: I2c062c0e63edbc928804b0c70ea4e370673b1d92
2021-02-07 13:41:41 -08:00
Andrey Konovalov
916518ead7 FROMGIT: kasan: rename CONFIG_TEST_KASAN_MODULE
Rename CONFIG_TEST_KASAN_MODULE to CONFIG_KASAN_MODULE_TEST.

This naming is more consistent with the existing CONFIG_KASAN_KUNIT_TEST.

Link: https://linux-review.googlesource.com/id/Id347dfa5fe8788b7a1a189863e039f409da0ae5f
Link: https://lkml.kernel.org/r/f08250246683981bcf8a094fbba7c361995624d2.1610733117.git.andreyknvl@google.com
Signed-off-by: Andrey Konovalov <andreyknvl@google.com>
Reviewed-by: Marco Elver <elver@google.com>
Reviewed-by: Alexander Potapenko <glider@google.com>
Cc: Andrey Ryabinin <aryabinin@virtuozzo.com>
Cc: Branislav Rankov <Branislav.Rankov@arm.com>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Dmitry Vyukov <dvyukov@google.com>
Cc: Evgenii Stepanov <eugenis@google.com>
Cc: Kevin Brodsky <kevin.brodsky@arm.com>
Cc: Peter Collingbourne <pcc@google.com>
Cc: Vincenzo Frascino <vincenzo.frascino@arm.com>
Cc: Will Deacon <will.deacon@arm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
(cherry picked from commit 49ea4c7c1171094c63b1afb7ba8507db84f1dff6
 https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git akpm)
Bug: 172318110
Signed-off-by: Andrey Konovalov <andreyknvl@google.com>
Change-Id: I1e73506a7359825ef595c86271a0b136a24d0112
2021-02-07 13:41:41 -08:00
Andrey Konovalov
a599a4e3b9 FROMGIT: kasan, arm64: allow using KUnit tests with HW_TAGS mode
On a high level, this patch allows running KUnit KASAN tests with the
hardware tag-based KASAN mode.

Internally, this change reenables tag checking at the end of each KASAN
test that triggers a tag fault and leads to tag checking being disabled.

Also simplify is_write calculation in report_tag_fault.

With this patch KASAN tests are still failing for the hardware tag-based
mode; fixes come in the next few patches.

Link: https://linux-review.googlesource.com/id/Id94dc9eccd33b23cda4950be408c27f879e474c8
Link: https://lkml.kernel.org/r/51b23112cf3fd62b8f8e9df81026fa2b15870501.1610733117.git.andreyknvl@google.com
Signed-off-by: Andrey Konovalov <andreyknvl@google.com>
Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
Reviewed-by: Vincenzo Frascino <vincenzo.frascino@arm.com>
Cc: Alexander Potapenko <glider@google.com>
Cc: Andrey Ryabinin <aryabinin@virtuozzo.com>
Cc: Branislav Rankov <Branislav.Rankov@arm.com>
Cc: Dmitry Vyukov <dvyukov@google.com>
Cc: Evgenii Stepanov <eugenis@google.com>
Cc: Kevin Brodsky <kevin.brodsky@arm.com>
Cc: Marco Elver <elver@google.com>
Cc: Peter Collingbourne <pcc@google.com>
Cc: Will Deacon <will.deacon@arm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
(cherry picked from commit ebd9173d20e330e5ddab991111f54baf02099e54
 https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git akpm)
Bug: 172318110
Signed-off-by: Andrey Konovalov <andreyknvl@google.com>
Change-Id: I658d316d8510ff42530c3e2fc34659815a95647d
2021-02-07 13:41:41 -08:00
Andrey Konovalov
782ba45b69 FROMGIT: kasan: add match-all tag tests
Add 3 new tests for tag-based KASAN modes:

1. Check that match-all pointer tag is not assigned randomly.
2. Check that 0xff works as a match-all pointer tag.
3. Check that there are no match-all memory tags.

Note, that test #3 causes a significant number (255) of KASAN reports
to be printed during execution for the SW_TAGS mode.

Link: https://linux-review.googlesource.com/id/I78f1375efafa162b37f3abcb2c5bc2f3955dfd8e
Link: https://lkml.kernel.org/r/da841a5408e2204bf25f3b23f70540a65844e8a4.1610733117.git.andreyknvl@google.com
Signed-off-by: Andrey Konovalov <andreyknvl@google.com>
Reviewed-by: Marco Elver <elver@google.com>
Reviewed-by: Alexander Potapenko <glider@google.com>
Cc: Andrey Ryabinin <aryabinin@virtuozzo.com>
Cc: Branislav Rankov <Branislav.Rankov@arm.com>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Dmitry Vyukov <dvyukov@google.com>
Cc: Evgenii Stepanov <eugenis@google.com>
Cc: Kevin Brodsky <kevin.brodsky@arm.com>
Cc: Peter Collingbourne <pcc@google.com>
Cc: Vincenzo Frascino <vincenzo.frascino@arm.com>
Cc: Will Deacon <will.deacon@arm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
(cherry picked from commit 732aff980f14030413ced3af974de20b678c3850
 https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git akpm)
(cherry picked from commit fef86ebc2b229a52021a1af1c227ac9a88e19cbe
 https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git akpm)
(cherry picked from commit 55c0c48aa223d2a410ec68fc2f50af1369be7c78
 https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git akpm)
Bug: 172318110
Signed-off-by: Andrey Konovalov <andreyknvl@google.com>
Change-Id: Ie9d705c79bdfb38f8bdfe00e6b605dd06dc5fe84
2021-02-07 13:41:41 -08:00