Commit Graph

115 Commits

Author SHA1 Message Date
Wilson Sung
e3167a4609 Merge android-4.19-stable (4.19.294) into android-msm-pixel-4.19-lts
Merge 4.19.294 into android-4.19-stable
Linux 4.19.294
    Revert "ARM: ep93xx: fix missing-prototype warnings"
    Revert "MIPS: Alchemy: fix dbdma2"
    Merge 4.19.293 into android-4.19-stable
Linux 4.19.293
    dma-buf/sw_sync: Avoid recursive lock during fence signal
  * clk: Fix undefined reference to `clk_rate_exclusive_{get,put}'
      include/linux/clk.h
  * scsi: core: raid_class: Remove raid_component_add()
      include/linux/raid_class.h
    scsi: snic: Fix double free in snic_tgt_create()
    irqchip/mips-gic: Don't touch vl_map if a local interrupt is not routable
  * rtnetlink: Reject negative ifindexes in RTM_NEWLINK
      net/core/rtnetlink.c
  * netfilter: nf_queue: fix socket leak
      net/netfilter/nf_queue.c
  * sched/rt: pick_next_rt_entity(): check list_entry
      kernel/sched/rt.c
  * mmc: block: Fix in_flight[issue_type] value error
      drivers/mmc/core/block.c
    x86/fpu: Set X86_FEATURE_OSXSAVE feature after enabling OSXSAVE in CR4
    PCI: acpiphp: Use pci_assign_unassigned_bridge_resources() only for non-root bus
    media: vcodec: Fix potential array out-of-bounds in encoder queue_setup
  * lib/clz_ctz.c: Fix __clzdi2() and __ctzdi2() for 32-bit kernels
      lib/clz_ctz.c
    batman-adv: Fix batadv_v_ogm_aggr_send memory leak
    batman-adv: Fix TT global entry leak when client roamed back
    batman-adv: Do not get eth header before batadv_check_management_packet
    batman-adv: Don't increase MTU when set by user
    batman-adv: Trigger events for auto adjusted MTU
    nfsd: Fix race to FREE_STATEID and cl_revoked
    ibmveth: Use dcbf rather than dcbfl
    ipvs: fix racy memcpy in proc_do_sync_threshold
    ipvs: Improve robustness to the ipvs sysctl
  * bonding: fix macvlan over alb bond support
      drivers/net/bonding/bond_alb.c
      include/net/bonding.h
  * net: remove bond_slave_has_mac_rcu()
      include/net/bonding.h
  * net/sched: fix a qdisc modification with ambiguous command request
      net/sched/sch_api.c
    igb: Avoid starting unnecessary workqueues
    dccp: annotate data-races in dccp_poll()
  * sock: annotate data-races around prot->memory_pressure
      include/net/sock.h
      net/sctp/socket.c
  * tracing: Fix memleak due to race between current_tracer and trace
      kernel/trace/trace.c
    drm/amd/display: check TG is non-null before checking if enabled
    drm/amd/display: do not wait for mpc idle if tg is disabled
  * regmap: Account for register length in SMBus I/O limits
      drivers/base/regmap/regmap-i2c.c
    dm integrity: reduce vmalloc space footprint on 32-bit architectures
    dm integrity: increase RECALC_SECTORS to improve recalculate speed
    powerpc: Fail build if using recordmcount with binutils v2.37
    powerpc: remove leftover code of old GCC version checks
    powerpc/32: add stack protector support
    fbdev: fix potential OOB read in fast_imageblit()
    fbdev: Fix sys_imageblit() for arbitrary image widths
    fbdev: Improve performance of sys_imageblit()
    tty: serial: fsl_lpuart: add earlycon for imx8ulp platform
    Revert "tty: serial: fsl_lpuart: drop earlycon entry for i.MX8QXP"
    MIPS: cpu-features: Use boot_cpu_type for CPU type based features
    MIPS: cpu-features: Enable octeon_cache by cpu_type
    fs: dlm: fix mismatch of plock results from userspace
    fs: dlm: use dlm_plock_info for do_unlock_close
    fs: dlm: change plock interrupted message to debug again
    fs: dlm: add pid to debug log
    dlm: replace usage of found with dedicated list iterator variable
    dlm: improve plock logging if interrupted
    PCI: acpiphp: Reassign resources on bridge if necessary
    net: phy: broadcom: stub c45 read/write for 54810
  * net: xfrm: Amend XFRMA_SEC_CTX nla_policy structure
      net/xfrm/xfrm_user.c
  * net: fix the RTO timer retransmitting skb every 1ms if linear option is enabled
      net/ipv4/tcp_timer.c
    virtio-net: set queues after driver_ok
  * af_unix: Fix null-ptr-deref in unix_stream_sendpage().
      net/unix/af_unix.c
  * netfilter: set default timeout to 3 secs for sctp shutdown send and recv state
      net/netfilter/nf_conntrack_proto_sctp.c
    test_firmware: prevent race conditions by a correct implementation of locking
    mmc: wbsd: fix double mmc_free_host() in wbsd_init()
    cifs: Release folio lock on fscache read hit.
  * ALSA: usb-audio: Add support for Mythware XA001AU capture and playback interfaces.
      sound/usb/quirks-table.h
    serial: 8250: Fix oops for port->pm on uart_change_pm()
    ASoC: meson: axg-tdm-formatter: fix channel slot allocation
    ASoC: rt5665: add missed regulator_bulk_disable
  * net: do not allow gso_size to be set to GSO_BY_FRAGS
      include/linux/virtio_net.h
  * sock: Fix misuse of sk_under_memory_pressure()
      include/net/sock.h
      net/core/sock.c
    i40e: fix misleading debug logs
    team: Fix incorrect deletion of ETH_P_8021AD protocol vid from slaves
    netfilter: nft_dynset: disallow object maps
    selftests: mirror_gre_changes: Tighten up the TTL test match
  * xfrm: add NULL check in xfrm_update_ae_params
      net/xfrm/xfrm_user.c
  * ip_vti: fix potential slab-use-after-free in decode_session6
      net/ipv4/ip_vti.c
  * ip6_vti: fix slab-use-after-free in decode_session6
      net/ipv6/ip6_vti.c
  * xfrm: fix slab-use-after-free in decode_session6
      net/xfrm/xfrm_interface_core.c
  * xfrm: interface: rename xfrm_interface.c to xfrm_interface_core.c
      net/xfrm/Makefile
  * net: af_key: fix sadb_x_filter validation
      net/key/af_key.c
  * net: xfrm: Fix xfrm_address_filter OOB read
      net/xfrm/xfrm_user.c
    btrfs: fix BUG_ON condition in btrfs_cancel_balance
    powerpc/rtas_flash: allow user copy to flash block cache objects
    fbdev: mmp: fix value check in mmphw_probe()
    virtio-mmio: don't break lifecycle of vm_dev
    virtio-mmio: Use to_virtio_mmio_device() to simply code
    virtio-mmio: convert to devm_platform_ioremap_resource
    nfsd: Remove incorrect check in nfsd4_validate_stateid
    nfsd4: kill warnings on testing stateids with mismatched clientids
    block: fix signed int overflow in Amiga partition support
    mmc: sunxi: fix deferred probing
    mmc: bcm2835: fix deferred probing
  * mmc: Remove dev_err() usage after platform_get_irq()
      drivers/mmc/host/sdhci-msm.c
    mmc: tmio: move tmio_mmc_set_clock() to platform hook
    mmc: tmio: replace tmio_mmc_clk_stop() calls with tmio_mmc_set_clock()
    mmc: meson-gx: remove redundant mmc_request_done() call from irq context
    mmc: meson-gx: remove useless lock
  * USB: dwc3: qcom: fix NULL-deref on suspend
      drivers/usb/dwc3/dwc3-qcom.c
  * usb: dwc3: qcom: Add helper functions to enable,disable wake irqs
      drivers/usb/dwc3/dwc3-qcom.c
    irqchip/mips-gic: Use raw spinlock for gic_lock
    irqchip/mips-gic: Get rid of the reliance on irq_cpu_online()
    x86/topology: Fix erroneous smp_num_siblings on Intel Hybrid platforms
    powerpc/64s/radix: Fix soft dirty tracking
    powerpc: Move page table dump files in a dedicated subdirectory
    powerpc/mm: dump block address translation on book3s/32
    powerpc/mm: dump segment registers on book3s/32
    powerpc/mm: Move pgtable_t into platform headers
    powerpc/mm: move platform specific mmu-xxx.h in platform directories
    iio: addac: stx104: Fix race condition when converting analog-to-digital
    iio: addac: stx104: Fix race condition for stx104_write_raw()
    iio: adc: stx104: Implement and utilize register structures
    iio: adc: stx104: Utilize iomap interface
  * iio: add addac subdirectory
      drivers/iio/Kconfig
      drivers/iio/Makefile
      drivers/iio/addac/Kconfig
      drivers/iio/addac/Makefile
  * IMA: allow/fix UML builds
      security/integrity/ima/Kconfig
    drm/amdgpu: Fix potential fence use-after-free v2
  * Bluetooth: L2CAP: Fix use-after-free
      net/bluetooth/l2cap_core.c
    pcmcia: rsrc_nonstatic: Fix memory leak in nonstatic_release_resource_db()
    gfs2: Fix possible data races in gfs2_show_options()
    media: platform: mediatek: vpu: fix NULL ptr dereference
  * media: v4l2-mem2mem: add lock to protect parameter num_rdy
      include/media/v4l2-mem2mem.h
    FS: JFS: Check for read-only mounted filesystem in txBegin
    FS: JFS: Fix null-ptr-deref Read in txBegin
    MIPS: dec: prom: Address -Warray-bounds warning
    fs: jfs: Fix UBSAN: array-index-out-of-bounds in dbAllocDmapLev
    udf: Fix uninitialized array access for some pathnames
  * HID: add quirk for 03f0:464a HP Elite Presenter Mouse
      drivers/hid/hid-ids.h
      drivers/hid/hid-quirks.c
  * quota: fix warning in dqgrab()
      fs/quota/dquot.c
  * quota: Properly disable quotas when add_dquot_ref() fails
      fs/quota/dquot.c
    ALSA: emu10k1: roll up loops in DSP setup code for Audigy
    drm/radeon: Fix integer overflow in radeon_cs_parser_init
    selftests: forwarding: tc_flower: Relax success criterion
  * lib/mpi: Eliminate unused umul_ppmm definitions for MIPS
      lib/mpi/longlong.h
    Merge 4.19.292 into android-4.19-stable
  * Revert "posix-timers: Ensure timer ID search-loop limit is valid"
      include/linux/sched/signal.h
      kernel/time/posix-timers.c
    Merge 4.19.291 into android-4.19-stable
    Merge 4.19.290 into android-4.19-stable
    UPSTREAM: media: usb: siano: Fix warning due to null work_func_t function pointer
  * UPSTREAM: Bluetooth: L2CAP: Fix use-after-free in l2cap_sock_ready_cb
      net/bluetooth/l2cap_sock.c
    UPSTREAM: net/sched: cls_route: No longer copy tcf_result on update to avoid use-after-free
  * UPSTREAM: net/sched: cls_u32: No longer copy tcf_result on update to avoid use-after-free
      net/sched/cls_u32.c
Linux 4.19.292
  * sch_netem: fix issues in netem_change() vs get_dist_table()
      net/sched/sch_netem.c
    alpha: remove __init annotation from exported page_is_ram()
    scsi: core: Fix possible memory leak if device_add() fails
    scsi: snic: Fix possible memory leak if device_add() fails
    scsi: 53c700: Check that command slot is not NULL
    scsi: storvsc: Fix handling of virtual Fibre Channel timeouts
  * scsi: core: Fix legacy /proc parsing buffer overflow
      drivers/scsi/scsi_proc.c
  * netfilter: nf_tables: report use refcount overflow
      include/net/netfilter/nf_tables.h
  * netfilter: nf_tables: bogus EBUSY when deleting flowtable after flush
      include/net/netfilter/nf_tables.h
    btrfs: don't stop integrity writeback too early
    ibmvnic: Handle DMA unmapping of login buffs in release functions
  * wifi: cfg80211: fix sband iftype data lookup for AP_VLAN
      include/net/cfg80211.h
    IB/hfi1: Fix possible panic during hotplug remove
  * drivers: net: prevent tun_build_skb() to exceed the packet size limit
      drivers/net/tun.c
    dccp: fix data-race around dp->dccps_mss_cache
  * bonding: Fix incorrect deletion of ETH_P_8021AD protocol vid from slaves
      drivers/net/bonding/bond_main.c
  * net/packet: annotate data-races around tp->status
      net/packet/af_packet.c
    mISDN: Update parameter type of dsp_cmx_send()
    drm/nouveau/disp: Revert a NULL check inside nouveau_connector_get_modes
    x86: Move gds_ucode_mitigated() declaration to header
    x86/mm: Fix VDSO and VVAR placement on 5-level paging machines
    x86/cpu/amd: Enable Zenbleed fix for AMD Custom APU 0405
  * usb: dwc3: Properly handle processing of pending events
      drivers/usb/dwc3/gadget.c
    usb-storage: alauda: Fix uninit-value in alauda_check_media()
  * binder: fix memory leak in binder_init()
      drivers/android/binder.c
      drivers/android/binder_alloc.c
      drivers/android/binder_alloc.h
    iio: cros_ec: Fix the allocation size for cros_ec_command
    nilfs2: fix use-after-free of nilfs_root in dirtying inodes via iput
    radix tree test suite: fix incorrect allocation size for pthreads
    drm/nouveau/gr: enable memory loads on helper invocation on all channels
    dmaengine: pl330: Return DMA_PAUSED when transaction is paused
  * ipv6: adjust ndisc_is_useropt() to also return true for PIO
      net/ipv6/ndisc.c
    mmc: moxart: read scr register without changing byte order
    sparc: fix up arch_cpu_finalize_init() build breakage.
  * UPSTREAM: net/sched: cls_fw: Fix improper refcount update leads to use-after-free
      net/sched/cls_fw.c
Linux 4.19.291
  * drm/edid: fix objtool warning in drm_cvt_modes()
      drivers/gpu/drm/drm_edid.c
    arm64: dts: stratix10: fix incorrect I2C property for SCL signal
  * drivers core: Use sysfs_emit and sysfs_emit_at for show(device *...) functions
      drivers/base/arch_topology.c
      drivers/base/cacheinfo.c
      drivers/base/core.c
      drivers/base/cpu.c
      drivers/base/firmware_loader/fallback.c
      drivers/base/platform.c
      drivers/base/power/sysfs.c
      drivers/base/soc.c
    ARM: dts: nxp/imx6sll: fix wrong property name in usbphy node
    ARM: dts: imx6sll: fixup of operating points
    ARM: dts: imx: add usb alias
    ARM: dts: imx6sll: Make ssi node name same as other platforms
  * PM: sleep: wakeirq: fix wake irq arming
      drivers/base/power/power.h
      drivers/base/power/wakeirq.c
  * PM / wakeirq: support enabling wake-up irq after runtime_suspend called
      drivers/base/power/power.h
      drivers/base/power/runtime.c
      drivers/base/power/wakeirq.c
      include/linux/pm_wakeirq.h
    powerpc/mm/altmap: Fix altmap boundary check
    mtd: rawnand: omap_elm: Fix incorrect type in assignment
    test_firmware: return ENOMEM instead of ENOSPC on failed memory allocation
    test_firmware: fix a memory leak with reqs buffer
    ext2: Drop fragment support
  * net: usbnet: Fix WARNING in usbnet_start_xmit/usb_submit_urb
      drivers/net/usb/usbnet.c
  * Bluetooth: L2CAP: Fix use-after-free in l2cap_sock_ready_cb
      net/bluetooth/l2cap_sock.c
    fs/sysv: Null check to prevent null-ptr-deref bug
  * USB: zaurus: Add ID for A-300/B-500/C-700
      drivers/net/usb/cdc_ether.c
      drivers/net/usb/zaurus.c
    libceph: fix potential hang in ceph_osdc_notify()
    scsi: zfcp: Defer fc_rport blocking until after ADISC response
  * tcp_metrics: fix data-race in tcpm_suck_dst() vs fastopen
      net/ipv4/tcp_metrics.c
  * tcp_metrics: annotate data-races around tm->tcpm_net
      net/ipv4/tcp_metrics.c
  * tcp_metrics: annotate data-races around tm->tcpm_vals[]
      net/ipv4/tcp_metrics.c
  * tcp_metrics: annotate data-races around tm->tcpm_lock
      net/ipv4/tcp_metrics.c
  * tcp_metrics: annotate data-races around tm->tcpm_stamp
      net/ipv4/tcp_metrics.c
  * tcp_metrics: fix addr_same() helper
      net/ipv4/tcp_metrics.c
    ip6mr: Fix skb_under_panic in ip6mr_cache_report()
    net/sched: cls_route: No longer copy tcf_result on update to avoid use-after-free
  * net/sched: cls_u32: No longer copy tcf_result on update to avoid use-after-free
      net/sched/cls_u32.c
  * net: add missing data-race annotation for sk_ll_usec
      net/core/sock.c
  * net: add missing data-race annotations around sk->sk_peek_off
      net/core/sock.c
      net/unix/af_unix.c
  * net: sched: cls_u32: Fix match key mis-addressing
      net/sched/cls_u32.c
    perf test uprobe_from_different_cu: Skip if there is no gcc
    net/mlx5e: fix return value check in mlx5e_ipsec_remove_trailer()
    KVM: s390: fix sthyi error handling
  * word-at-a-time: use the same return type for has_zero regardless of endianness
      include/asm-generic/word-at-a-time.h
  * loop: Select I/O scheduler 'none' from inside add_disk()
      drivers/block/loop.c
  * perf: Fix function pointer case
      kernel/events/core.c
  * net/sched: cls_u32: Fix reference counter leak leading to overflow
      net/sched/cls_u32.c
    ASoC: cs42l51: fix driver to properly autoload with automatic module loading
    net/sched: sch_qfq: account for stab overhead in qfq_enqueue
  * net/sched: cls_fw: Fix improper refcount update leads to use-after-free
      net/sched/cls_fw.c
    drm/client: Fix memory leak in drm_client_target_cloned
    dm cache policy smq: ensure IO doesn't prevent cleaner policy progress
    ASoC: wm8904: Fill the cache for WM8904_ADC_TEST_0 register
    s390/dasd: fix hanging device after quiesce/resume
    virtio-net: fix race between set queues and probe
    serial: 8250_dw: Preserve original value of DLF register
  * serial: 8250_dw: split Synopsys DesignWare 8250 common functions
      drivers/tty/serial/8250/Kconfig
    irq-bcm6345-l1: Do not assume a fixed block to cpu mapping
    tpm_tis: Explicitly check for error code
    btrfs: check for commit error at btrfs_attach_transaction_barrier()
    hwmon: (nct7802) Fix for temp6 (PECI1) processed even if PECI1 disabled
    staging: ks7010: potential buffer overflow in ks_wlan_set_encode_ext()
    Documentation: security-bugs.rst: clarify CVE handling
    Documentation: security-bugs.rst: update preferences when dealing with the linux-distros group
    usb: xhci-mtk: set the dma max_seg_size
  * USB: quirks: add quirk for Focusrite Scarlett
      drivers/usb/core/quirks.c
    usb: ohci-at91: Fix the unhandle interrupt when resume
  * usb: dwc3: don't reset device side if dwc3 was configured as host-only
      drivers/usb/dwc3/core.c
    usb: dwc3: pci: skip BYT GPIO lookup table for hardwired phy
  * Revert "usb: dwc3: core: Enable AutoRetry feature in the controller"
      drivers/usb/dwc3/core.c
      drivers/usb/dwc3/core.h
    can: gs_usb: gs_can_close(): add missing set of CAN state to CAN_STATE_STOPPED
    USB: serial: simple: sort driver entries
    USB: serial: simple: add Kaufmann RKS+CAN VCP
    USB: serial: option: add Quectel EC200A module support
    USB: serial: option: support Quectel EM060K_128
  * tracing: Fix warning in trace_buffered_event_disable()
      kernel/trace/trace_events.c
  * ring-buffer: Fix wrong stat of cpu_buffer->read
      kernel/trace/ring_buffer.c
    ata: pata_ns87415: mark ns87560_tf_read static
    dm raid: fix missing reconfig_mutex unlock in raid_ctr() error paths
  * block: Fix a source code comment in include/uapi/linux/blkzoned.h
      include/uapi/linux/blkzoned.h
    ASoC: fsl_spdif: Silence output on stop
    drm/msm: Fix IS_ERR_OR_NULL() vs NULL check in a5xx_submit_in_rb()
    RDMA/mlx4: Make check for invalid flags stricter
    benet: fix return value check in be_lancer_xmit_workarounds()
    net/sched: mqprio: Add length check for TCA_MQPRIO_{MAX/MIN}_RATE64
    net/sched: mqprio: add extack to mqprio_parse_nlattr()
    net/sched: mqprio: refactor nlattr parsing to a separate function
    platform/x86: msi-laptop: Fix rfkill out-of-sync on MSI Wind U100
    team: reset team's flags when down link is P2P device
  * bonding: reset bond's flags when down link is P2P device
      drivers/net/bonding/bond_main.c
  * tcp: Reduce chance of collisions in inet6_hashfn().
      include/net/ipv6.h
  * ipv6 addrconf: fix bug where deleting a mngtmpaddr can create a new temporary address
      net/ipv6/addrconf.c
    ethernet: atheros: fix return value check in atl1e_tso_csum()
    phy: hisilicon: Fix an out of bounds check in hisi_inno_phy_probe()
    i40e: Fix an NULL vs IS_ERR() bug for debugfs_create_dir()
  * ext4: fix to check return value of freeze_bdev() in ext4_shutdown()
      fs/ext4/ioctl.c
    scsi: qla2xxx: Array index may go out of bound
    scsi: qla2xxx: Fix inconsistent format argument type in qla_os.c
    ftrace: Fix possible warning on checking all pages used in ftrace_process_locs()
    ftrace: Store the order of pages allocated in ftrace_page
    ftrace: Check if pages were allocated before calling free_pages()
  * ftrace: Add information on number of page groups allocated
      kernel/trace/trace.c
      kernel/trace/trace.h
    fs: dlm: interrupt posix locks only when process is killed
    dlm: rearrange async condition return
    dlm: cleanup plock_op vs plock_xop
    PCI/ASPM: Avoid link retraining race
    PCI/ASPM: Factor out pcie_wait_for_retrain()
    PCI/ASPM: Return 0 or -ETIMEDOUT from pcie_retrain_link()
    PCI: Rework pcie_retrain_link() wait loop
  * ext4: Fix reusing stale buffer heads from last failed mounting
      fs/ext4/super.c
  * ext4: rename journal_dev to s_journal_dev inside ext4_sb_info
      fs/ext4/ext4.h
      fs/ext4/fsmap.c
      fs/ext4/super.c
    btrfs: fix extent buffer leak after tree mod log failure at split_node()
    bcache: Fix __bch_btree_node_alloc to make the failure behavior consistent
    bcache: remove 'int n' from parameter list of bch_bucket_alloc_set()
    bcache: use MAX_CACHES_PER_SET instead of magic number 8 in __bch_bucket_alloc_set
    gpio: tps68470: Make tps68470_gpio_output() always set the initial value
    tracing/histograms: Return an error if we fail to add histogram to hist_vars list
  * tcp: annotate data-races around fastopenq.max_qlen
      include/linux/tcp.h
      net/ipv4/tcp.c
      net/ipv4/tcp_fastopen.c
  * tcp: annotate data-races around tp->notsent_lowat
      include/net/tcp.h
      net/ipv4/tcp.c
  * tcp: annotate data-races around rskq_defer_accept
      net/ipv4/tcp.c
  * tcp: annotate data-races around tp->linger2
      net/ipv4/tcp.c
  * net: Replace the limit of TCP_LINGER2 with TCP_FIN_TIMEOUT_MAX
      include/net/tcp.h
      net/ipv4/tcp.c
    netfilter: nf_tables: can't schedule in nft_chain_validate
    netfilter: nf_tables: fix spurious set element insertion failure
  * llc: Don't drop packet from non-root netns.
      net/llc/llc_input.c
    fbdev: au1200fb: Fix missing IRQ check in au1200fb_drv_probe
  * Revert "tcp: avoid the lookup process failing to get sk in ehash table"
      net/ipv4/inet_hashtables.c
      net/ipv4/inet_timewait_sock.c
    net:ipv6: check return value of pskb_trim()
    net: ethernet: ti: cpsw_ale: Fix cpsw_ale_get_field()/cpsw_ale_set_field()
    pinctrl: amd: Use amd_pinconf_set() for all config options
    fbdev: imxfb: warn about invalid left/right margin
    spi: bcm63xx: fix max prepend length
    igb: Fix igb_down hung on surprise removal
    wifi: iwlwifi: mvm: avoid baid size integer overflow
  * wifi: wext-core: Fix -Wstringop-overflow warning in ioctl_standard_iw_point()
      net/wireless/wext-core.c
  * bpf: Address KCSAN report on bpf_lru_list
      kernel/bpf/bpf_lru_list.c
      kernel/bpf/bpf_lru_list.h
  * sched/fair: Don't balance task to its current running CPU
      kernel/sched/fair.c
  * posix-timers: Ensure timer ID search-loop limit is valid
      include/linux/sched/signal.h
      kernel/time/posix-timers.c
    md/raid10: prevent soft lockup while flush writes
    md: fix data corruption for raid456 when reshape restart while grow up
    nbd: Add the maximum limit of allocated index in nbd_dev_add
    debugobjects: Recheck debug_objects_enabled before reporting
  * ext4: correct inline offset when handling xattrs in inode body
      fs/ext4/xattr.c
    can: bcm: Fix UAF in bcm_proc_show()
  * fuse: revalidate: don't invalidate if interrupted
      fs/fuse/dir.c
    perf probe: Add test for regression introduced by switch to die_get_decl_file()
    tracing/histograms: Add histograms to hist_vars if they have referenced variables
  * drm/atomic: Fix potential use-after-free in nonblocking commits
      drivers/gpu/drm/drm_atomic.c
    scsi: qla2xxx: Pointer may be dereferenced
    scsi: qla2xxx: Check valid rport returned by fc_bsg_to_rport()
    scsi: qla2xxx: Fix potential NULL pointer dereference
    scsi: qla2xxx: Wait for io return on terminate rport
    xtensa: ISS: fix call to split_if_spec
  * ring-buffer: Fix deadloop issue on reading trace_pipe
      kernel/trace/ring_buffer.c
    tty: serial: samsung_tty: Fix a memory leak in s3c24xx_serial_getclk() when iterating clk
    tty: serial: samsung_tty: Fix a memory leak in s3c24xx_serial_getclk() in case of error
  * Revert "8250: add support for ASIX devices with a FIFO bug"
      include/linux/serial_8250.h
    meson saradc: fix clock divider mask length
    ceph: don't let check_caps skip sending responses for revoke msgs
    hwrng: imx-rngc - fix the timeout for init and self check
    serial: atmel: don't enable IRQs prematurely
    fs: dlm: return positive pid value for F_GETLK
    md/raid0: add discard support for the 'original' layout
    misc: pci_endpoint_test: Re-init completion for every test
    misc: pci_endpoint_test: Free IRQs before removing the device
    PCI: rockchip: Use u32 variable to access 32-bit registers
    PCI: rockchip: Fix legacy IRQ generation for RK3399 PCIe endpoint core
    PCI: rockchip: Add poll and timeout to wait for PHY PLLs to be locked
    PCI: rockchip: Write PCI Device ID to correct register
    PCI: rockchip: Assert PCI Configuration Enable bit after probe
    PCI: qcom: Disable write access to read only registers for IP v2.3.3
  * PCI: Add function 1 DMA alias quirk for Marvell 88SE9235
      drivers/pci/quirks.c
  * PCI/PM: Avoid putting EloPOS E2/S2/H2 PCIe Ports in D3cold
      drivers/pci/pci.c
    jfs: jfs_dmap: Validate db_l2nbperpage while mounting
  * ext4: only update i_reserved_data_blocks on successful block allocation
      fs/ext4/indirect.c
      fs/ext4/inode.c
  * ext4: fix wrong unit use in ext4_mb_clear_bb
      fs/ext4/mballoc.c
    perf intel-pt: Fix CYC timestamps after standalone CBR
    SUNRPC: Fix UAF in svc_tcp_listen_data_ready()
    net: bcmgenet: Ensure MDIO unregistration has clocks enabled
    tpm: tpm_vtpm_proxy: fix a race condition in /dev/vtpmx creation
    pinctrl: amd: Only use special debounce behavior for GPIO 0
    pinctrl: amd: Detect internal GPIO0 debounce handling
    pinctrl: amd: Fix mistake in handling clearing pins at startup
  * net/sched: make psched_mtu() RTNL-less safe
      include/net/pkt_sched.h
    wifi: airo: avoid uninitialized warning in airo_get_rate()
  * ipv6/addrconf: fix a potential refcount underflow for idev
      net/ipv6/addrconf.c
    NTB: ntb_tool: Add check for devm_kcalloc
    NTB: ntb_transport: fix possible memory leak while device_register() fails
    ntb: intel: Fix error handling in intel_ntb_pci_driver_init()
    NTB: amd: Fix error handling in amd_ntb_pci_driver_init()
    ntb: idt: Fix error handling in idt_pci_driver_init()
  * udp6: fix udp6_ehashfn() typo
      net/ipv6/udp.c
  * icmp6: Fix null-ptr-deref of ip6_null_entry->rt6i_idev in icmp6_dev().
      net/ipv6/icmp.c
  * vrf: Increment Icmp6InMsgs on the original netdev
      include/net/addrconf.h
      net/ipv6/icmp.c
      net/ipv6/reassembly.c
    net: mvneta: fix txq_map in case of txq_number==1
  * workqueue: clean up WORK_* constant types, clarify masking
      include/linux/workqueue.h
      kernel/workqueue.c
    net: lan743x: Don't sleep in atomic context
    netfilter: nf_tables: prevent OOB access in nft_byteorder_eval
  * netfilter: conntrack: Avoid nf_ct_helper_hash uses after free
      net/netfilter/nf_conntrack_helper.c
    netfilter: nf_tables: fix scheduling-while-atomic splat
    netfilter: nf_tables: unbind non-anonymous set if rule construction fails
  * netfilter: nf_tables: reject unbound anonymous set before commit phase
      include/net/netfilter/nf_tables.h
  * netfilter: nf_tables: add NFT_TRANS_PREPARE_ERROR to deal with bound set/chain
      include/net/netfilter/nf_tables.h
    netfilter: nf_tables: incorrect error path handling with NFT_MSG_NEWRULE
  * netfilter: nf_tables: use net_generic infra for transaction data
      include/net/netfilter/nf_tables.h
      include/net/netns/nftables.h
  * netfilter: add helper function to set up the nfnetlink header and use it
      include/linux/netfilter/nfnetlink.h
      net/netfilter/nf_conntrack_netlink.c
      net/netfilter/nfnetlink_log.c
      net/netfilter/nfnetlink_queue.c
    netfilter: nftables: add helper function to set the base sequence number
    netfilter: nf_tables: add rescheduling points during loop detection walks
    netfilter: nf_tables: fix nat hook table deletion
    spi: spi-fsl-spi: allow changing bits_per_word while CS is still active
    spi: spi-fsl-spi: relax message sanity checking a little
    spi: spi-fsl-spi: remove always-true conditional in fsl_spi_do_one_msg
    ARM: orion5x: fix d2net gpio initialization
    btrfs: fix race when deleting quota root from the dirty cow roots list
    jffs2: reduce stack usage in jffs2_build_xattr_subsystem()
  * integrity: Fix possible multiple allocation in integrity_inode_get()
      security/integrity/iint.c
    bcache: Remove unnecessary NULL point check in node allocations
    mmc: core: disable TRIM on Micron MTFC4GACAJCN-1M
    mmc: core: disable TRIM on Kingston EMMC04G-M627
    NFSD: add encoding of op_recall flag for write delegation
  * ALSA: jack: Fix mutex call in snd_jack_report()
      sound/core/jack.c
    i2c: xiic: Don't try to handle more interrupt events after error
    i2c: xiic: Defer xiic_wakeup() and __xiic_start_xfer() in xiic_process()
    sh: dma: Fix DMA channel offset calculation
    net/sched: act_pedit: Add size check for TCA_PEDIT_PARMS_EX
  * tcp: annotate data races in __tcp_oow_rate_limited()
      net/ipv4/tcp_input.c
  * net: bridge: keep ports without IFF_UNICAST_FLT in BR_PROMISC mode
      net/bridge/br_if.c
    powerpc: allow PPC_EARLY_DEBUG_CPM only when SERIAL_CPM=y
  * f2fs: fix error path handling in truncate_dnode()
      fs/f2fs/node.c
    mailbox: ti-msgmgr: Fill non-message tx data fields with 0x0
    spi: bcm-qspi: return error if neither hif_mspi nor mspi is available
    Add MODULE_FIRMWARE() for FIRMWARE_TG357766.
  * sctp: fix potential deadlock on &net->sctp.addr_wq_lock
      net/sctp/socket.c
    rtc: st-lpc: Release some resources in st_rtc_probe() in case of error
    mfd: stmpe: Only disable the regulators if they are enabled
    mfd: intel-lpss: Add missing check for platform_get_resource
    KVM: s390: fix KVM_S390_GET_CMMA_BITS for GFNs in memslot holes
    mfd: rt5033: Drop rt5033-battery sub-device
    usb: phy: phy-tahvo: fix memory leak in tahvo_usb_probe()
  * extcon: Fix kernel doc of property capability fields to avoid warnings
      drivers/extcon/extcon.c
  * extcon: Fix kernel doc of property fields to avoid warnings
      drivers/extcon/extcon.c
    media: usb: siano: Fix warning due to null work_func_t function pointer
  * media: videodev2.h: Fix struct v4l2_input tuner index comment
      include/uapi/linux/videodev2.h
    media: usb: Check az6007_read() return value
    sh: j2: Use ioremap() to translate device tree address into kernel memory
    w1: fix loop in w1_fini()
  * block: change all __u32 annotations to __be32 in affs_hardblocks.h
      include/uapi/linux/affs_hardblocks.h
    USB: serial: option: add LARA-R6 01B PIDs
    ARC: define ASM_NL and __ALIGN(_STR) outside #ifdef __ASSEMBLY__ guard
    ARCv2: entry: rewrite to enable use of double load/stores LDD/STD
    ARCv2: entry: avoid a branch
    ARCv2: entry: push out the Z flag unclobber from common EXCEPTION_PROLOGUE
    ARCv2: entry: comments about hardware auto-save on taken interrupts
  * modpost: fix section mismatch message for R_ARM_{PC24,CALL,JUMP24}
      scripts/mod/modpost.c
  * modpost: fix section mismatch message for R_ARM_ABS32
      scripts/mod/modpost.c
    crypto: nx - fix build warnings when DEBUG_FS is not enabled
    hwrng: virtio - Fix race on data_avail and actual data
    hwrng: virtio - always add a pending request
    hwrng: virtio - don't waste entropy
    hwrng: virtio - don't wait on cleanup
    hwrng: virtio - add an internal buffer
    pinctrl: at91-pio4: check return value of devm_kasprintf()
    perf dwarf-aux: Fix off-by-one in die_get_varname()
    pinctrl: cherryview: Return correct value if pin in push-pull mode
  * PCI: Add pci_clear_master() stub for non-CONFIG_PCI
      include/linux/pci.h
    scsi: 3w-xxxx: Add error handling for initialization failure in tw_probe()
    ALSA: ac97: Fix possible NULL dereference in snd_ac97_mixer
    drm/radeon: fix possible division-by-zero errors
    fbdev: omapfb: lcd_mipid: Fix an error handling path in mipid_spi_probe()
    arm64: dts: renesas: ulcb-kf: Remove flow control for SCIF1
    IB/hfi1: Fix sdma.h tx->num_descs off-by-one errors
  * soc/fsl/qe: fix usb.c build errors
      drivers/soc/fsl/qe/Kconfig
    ASoC: es8316: Increment max value for ALC Capture Target Volume control
    ARM: ep93xx: fix missing-prototype warnings
    drm/panel: simple: fix active size for Ampire AM-480272H3TMQW-T01H
    Input: adxl34x - do not hardcode interrupt trigger type
    ARM: dts: BCM5301X: Drop "clock-names" from the SPI node
    Input: drv260x - sleep between polling GO bit
    radeon: avoid double free in ci_dpm_init()
  * netlink: Add __sock_i_ino() for __netlink_diag_dump().
      include/net/sock.h
      net/core/sock.c
    ipvlan: Fix return value of ipvlan_queue_xmit()
    netfilter: nf_conntrack_sip: fix the ct_sip_parse_numerical_param() return value.
  * lib/ts_bm: reset initial match offset for every block of text
      lib/ts_bm.c
    gtp: Fix use-after-free in __gtp_encap_destroy().
  * netlink: do not hard code device address lenth in fdb dumps
      net/core/rtnetlink.c
  * netlink: fix potential deadlock in netlink_set_err()
      net/netlink/af_netlink.c
    wifi: ath9k: convert msecs to jiffies where needed
    wifi: ath9k: Fix possible stall on ath9k_txq_list_has_key()
    memstick r592: make memstick_debug_get_tpc_name() static
    kexec: fix a memory leak in crash_shrink_memory()
    watchdog/perf: more properly prevent false positives with turbo modes
  * watchdog/perf: define dummy watchdog_update_hrtimer_threshold() on correct config
      include/linux/nmi.h
    wifi: rsi: Do not set MMC_PM_KEEP_POWER in shutdown
    wifi: ath9k: don't allow to overwrite ENDPOINT0 attributes
    wifi: ray_cs: Fix an error handling path in ray_probe()
    wifi: ray_cs: Drop useless status variable in parse_addr()
    wifi: ray_cs: Utilize strnlen() in parse_addr()
    wifi: wl3501_cs: Fix an error handling path in wl3501_probe()
    wl3501_cs: use eth_hw_addr_set()
  * net: create netdev->dev_addr assignment helpers
      include/linux/etherdevice.h
      include/linux/netdevice.h
    wl3501_cs: Fix misspelling and provide missing documentation
    wl3501_cs: Remove unnecessary NULL check
    wl3501_cs: Fix a bunch of formatting issues related to function docs
    wifi: atmel: Fix an error handling path in atmel_probe()
    wifi: orinoco: Fix an error handling path in orinoco_cs_probe()
    wifi: orinoco: Fix an error handling path in spectrum_cs_probe()
    nfc: llcp: fix possible use of uninitialized variable in nfc_llcp_send_connect()
  * nfc: constify several pointers to u8, char and sk_buff
      include/net/nfc/nfc.h
    wifi: mwifiex: Fix the size of a memory allocation in mwifiex_ret_802_11_scan()
    samples/bpf: Fix buffer overflow in tcp_basertt
    wifi: ath9k: avoid referencing uninit memory in ath9k_wmi_ctrl_rx
    wifi: ath9k: fix AR9003 mac hardware hang check register offset calculation
    evm: Complete description of evm_inode_setattr()
    ARM: 9303/1: kprobes: avoid missing-declaration warnings
  * PM: domains: fix integer overflow issues in genpd_parse_state()
      drivers/base/power/domain.c
    clocksource/drivers/cadence-ttc: Fix memory leak in ttc_timer_probe
    clocksource/drivers/cadence-ttc: Use ttc driver as platform driver
  * clocksource/drivers: Unify the names to timer-* format
      drivers/clocksource/Makefile
    irqchip/jcore-aic: Fix missing allocation of IRQ descriptors
    irqchip/jcore-aic: Kill use of irq_create_strict_mappings()
    md/raid10: fix io loss while replacement replace rdev
    md/raid10: fix wrong setting of max_corr_read_errors
    md/raid10: fix overflow of md/safe_mode_delay
    md/raid10: check slab-out-of-bounds in md_bitmap_get_counter
  * treewide: Remove uninitialized_var() usage
      drivers/clk/clk-gate.c
      drivers/gpu/drm/drm_edid.c
      drivers/md/dm-io.c
      drivers/md/dm-ioctl.c
      drivers/md/dm-snap-persistent.c
      drivers/md/dm-table.c
      fs/fat/dir.c
      fs/fuse/control.c
      fs/fuse/file.c
      fs/overlayfs/copy_up.c
      kernel/async.c
      kernel/audit.c
      kernel/events/core.c
      kernel/events/uprobes.c
      kernel/exit.c
      kernel/futex.c
      kernel/trace/ring_buffer.c
      lib/radix-tree.c
      mm/memcontrol.c
      mm/percpu.c
      mm/slub.c
      mm/swap.c
      net/ipv4/netfilter/nf_socket_ipv4.c
      net/ipv6/ip6_flowlabel.c
      net/ipv6/netfilter/nf_socket_ipv6.c
      net/netfilter/nf_conntrack_ftp.c
      net/netfilter/nfnetlink_log.c
      net/netfilter/nfnetlink_queue.c
      net/sched/cls_flow.c
      sound/core/control_compat.c
      sound/usb/endpoint.c
    drm/amdgpu: Validate VM ioctl flags.
    scripts/tags.sh: Resolve gtags empty index generation
  * drm/edid: Fix uninitialized variable in drm_cvt_modes()
      drivers/gpu/drm/drm_edid.c
    fbdev: imsttfb: Fix use after free bug in imsttfb_probe
    video: imsttfb: check for ioremap() failures
    x86/smp: Use dedicated cache-line for mwait_play_dead()
    gfs2: Don't deref jdesc in evict
Linux 4.19.290
    x86: fix backwards merge of GDS/SRSO bit
    xen/netback: Fix buffer overrun triggered by unusual packet
    Documentation/x86: Fix backwards on/off logic about YMM support
    x86/xen: Fix secondary processors' FPU initialization
    KVM: Add GDS_NO support to KVM
    x86/speculation: Add Kconfig option for GDS
    x86/speculation: Add force option to GDS mitigation
  * x86/speculation: Add Gather Data Sampling mitigation
      drivers/base/cpu.c
    x86/fpu: Move FPU initialization into arch_cpu_finalize_init()
    x86/fpu: Mark init functions __init
    x86/fpu: Remove cpuinfo argument from init functions
  * init, x86: Move mem_encrypt_init() into arch_cpu_finalize_init()
      init/main.c
  * init: Invoke arch_cpu_finalize_init() earlier
      init/main.c
  * init: Remove check_bugs() leftovers
      init/main.c
    um/cpu: Switch to arch_cpu_finalize_init()
    sparc/cpu: Switch to arch_cpu_finalize_init()
    sh/cpu: Switch to arch_cpu_finalize_init()
    mips/cpu: Switch to arch_cpu_finalize_init()
    m68k/cpu: Switch to arch_cpu_finalize_init()
    ia64/cpu: Switch to arch_cpu_finalize_init()
    ARM: cpu: Switch to arch_cpu_finalize_init()
    x86/cpu: Switch to arch_cpu_finalize_init()
  * init: Provide arch_cpu_finalize_init()
      arch/Kconfig
      include/linux/cpu.h
      init/main.c
    Merge 4.19.289 into android-4.19-stable
Linux 4.19.289
    x86/cpu/amd: Add a Zenbleed fix
    x86/cpu/amd: Move the errata checking functionality up
    x86/microcode/AMD: Load late on both threads too
    Merge 4.19.288 into android-4.19-stable
Linux 4.19.288
    i2c: imx-lpi2c: fix type char overflow issue when calculating the clock cycle
    x86/apic: Fix kernel panic when booting with intremap=off and x2apic_phys
    drm/radeon: fix race condition UAF in radeon_gem_set_domain_ioctl
    drm/exynos: fix race condition UAF in exynos_g2d_exec_ioctl
    drm/exynos: vidi: fix a wrong error return
    ASoC: nau8824: Add quirk to active-high jack-detect
    s390/cio: unregister device when the only path is gone
    usb: gadget: udc: fix NULL dereference in remove()
    nfcsim.c: Fix error checking for debugfs_create_dir
    media: cec: core: don't set last_initiator if tx in progress
  * arm64: Add missing Set/Way CMO encodings
      arch/arm64/include/asm/sysreg.h
  * HID: wacom: Add error check to wacom_parse_and_register()
      drivers/hid/wacom_sys.c
    scsi: target: iscsi: Prevent login threads from racing between each other
  * sch_netem: acquire qdisc lock in netem_change()
      net/sched/sch_netem.c
    netfilter: nfnetlink_osf: fix module autoload
    netfilter: nf_tables: disallow element updates of bound anonymous sets
    be2net: Extend xmit workaround to BE3 chip
    mmc: usdhi60rol0: fix deferred probing
    mmc: sdhci-acpi: fix deferred probing
    mmc: omap_hsmmc: fix deferred probing
    mmc: omap: fix deferred probing
    mmc: mvsdio: fix deferred probing
    mmc: mvsdio: convert to devm_platform_ioremap_resource
    mmc: mtk-sd: fix deferred probing
    net: qca_spi: Avoid high load if QCA7000 is not available
    xfrm: Linearize the skb after offloading if needed.
    ieee802154: hwsim: Fix possible memory leaks
  * rcu: Upgrade rcu_swap_protected() to rcu_replace_pointer()
      include/linux/rcupdate.h
    nilfs2: prevent general protection fault in nilfs_clear_dirty_page()
  * cgroup: Do not corrupt task iteration when rebinding subsystem
      kernel/cgroup/cgroup.c
    PCI: hv: Fix a race condition bug in hv_pci_query_relations()
    Drivers: hv: vmbus: Fix vmbus_wait_for_unload() to scan present CPUs
    nilfs2: fix buffer corruption due to concurrent device reads
    ipmi: move message error checking to avoid deadlock
  * ipmi: Make the smi watcher be disabled immediately when not needed
      include/linux/ipmi_smi.h
    x86/purgatory: remove PGO flags
    nilfs2: reject devices with insufficient block count
    serial: lantiq: add missing interrupt ack
    serial: lantiq: Do not swap register read/writes
    serial: lantiq: Use readl/writel instead of ltq_r32/ltq_w32
    serial: lantiq: Change ltq_w32_mask to asc_update_bits
    Merge 4.19.287 into android-4.19-stable
Linux 4.19.287
  * mmc: block: ensure error propagation for non-blk
      drivers/mmc/core/block.c
    powerpc: Fix defconfig choice logic when cross compiling
    drm/nouveau/kms: Fix NULL pointer dereference in nouveau_connector_detect_depth
  * neighbour: delete neigh_lookup_nodev as not used
      include/net/neighbour.h
      net/core/neighbour.c
  * net: Remove unused inline function dst_hold_and_use()
      include/net/dst.h
  * neighbour: Remove unused inline function neigh_key_eq16()
      include/net/neighbour.h
    selftests/ptp: Fix timestamp printf format for PTP_SYS_OFFSET
  * net: tipc: resize nlattr array to correct size
      net/tipc/bearer.c
    net: lapbether: only support ethernet devices
    drm/nouveau: add nv_encoder pointer check for NULL
    drm/nouveau/kms: Don't change EDID when it hasn't actually changed
    drm/nouveau/dp: check for NULL nv_connector->native_mode
    igb: fix nvm.ops.read() error handling
  * sctp: fix an error code in sctp_sf_eat_auth()
      net/sctp/sm_statefuns.c
    IB/isert: Fix incorrect release of isert connection
    IB/isert: Fix possible list corruption in CMA handler
    IB/isert: Fix dead lock in ib_isert
    IB/uverbs: Fix to consider event queue closing also upon non-blocking mode
    RDMA/rxe: Fix the use-before-initialization error of resp_pkts
    RDMA/rxe: Removed unused name from rxe_task struct
    RDMA/rxe: Remove the unused variable obj
  * ping6: Fix send to link-local addresses with VRF.
      net/ipv6/ping.c
  * netfilter: nfnetlink: skip error delivery on batch in case of ENOMEM
      net/netfilter/nfnetlink.c
  * usb: gadget: f_ncm: Fix NTP-32 support
      drivers/usb/gadget/function/f_ncm.c
  * usb: gadget: f_ncm: Add OS descriptor support
      drivers/usb/gadget/function/f_ncm.c
      drivers/usb/gadget/function/u_ncm.h
  * usb: dwc3: gadget: Reset num TRBs before giving back the request
      drivers/usb/dwc3/gadget.c
    USB: serial: option: add Quectel EM061KGL series
  * Remove DECnet support from kernel
      include/linux/netdevice.h
      include/linux/netfilter.h
      include/linux/netfilter_defs.h
      include/net/netns/netfilter.h
      include/uapi/linux/netlink.h
      net/Kconfig
      net/Makefile
      net/core/dev.c
      net/core/neighbour.c
      net/netfilter/core.c
    net: usb: qmi_wwan: add support for Compal RXM-G1
    RDMA/uverbs: Restrict usage of privileged QKEYs
    nouveau: fix client work fence deletion race
    powerpc/purgatory: remove PGO flags
    kexec: support purgatories with .text.hot sections
    nilfs2: fix possible out-of-bounds segment allocation in resize ioctl
    nilfs2: fix incomplete buffer cleanup in nilfs_btnode_abort_change_key()
    nios2: dts: Fix tse_mac "max-frame-size" property
    ocfs2: check new file size on fallocate call
    ocfs2: fix use-after-free when unmounting read-only filesystem
    xen/blkfront: Only check REQ_FUA for writes
    mips: Move initrd_start check after initrd address sanitisation.
    MIPS: Alchemy: fix dbdma2
    parisc: Improve cache flushing for PCXL in arch_sync_dma_for_cpu()
  * power: supply: Fix logic checking if system is running from battery
      drivers/power/supply/power_supply_core.c
    irqchip/meson-gpio: Mark OF related data as maybe unused
  * regulator: Fix error checking for debugfs_create_dir
      drivers/regulator/core.c
  * power: supply: Ratelimit no data debug output
      drivers/power/supply/power_supply_sysfs.c
    ARM: dts: vexpress: add missing cache properties
    power: supply: bq27xxx: Use mod_delayed_work() instead of cancel() + schedule()
    power: supply: ab8500: Fix external_power_changed race
    Merge "Merge 4.19.286 into android-4.19-stable" into android-4.19-stable
  * Revert "tcp: deny tcp_disconnect() when threads are waiting"
      include/net/sock.h
      net/ipv4/af_inet.c
      net/ipv4/inet_connection_sock.c
      net/ipv4/tcp.c
    Merge "Merge 4.19.285 into android-4.19-stable" into android-4.19-stable
    Merge 4.19.286 into android-4.19-stable
  * Revert "tcp: deny tcp_disconnect() when threads are waiting"
      include/net/sock.h
      net/ipv4/af_inet.c
      net/ipv4/inet_connection_sock.c
      net/ipv4/tcp.c
  * ANDROID: GKI: update ABI xml for incrementalfs.ko
      android/abi_gki_aarch64.xml
    Merge 4.19.285 into android-4.19-stable
Linux 4.19.286
    Revert "staging: rtl8192e: Replace macro RTL_PCI_DEVICE with PCI_DEVICE"
    btrfs: unset reloc control if transaction commit fails in prepare_to_relocate()
    btrfs: check return value of btrfs_commit_transaction in relocation
  * ext4: only check dquot_initialize_needed() when debugging
      fs/ext4/xattr.c
    i2c: sprd: Delete i2c adapter in .remove's error path
    pinctrl: meson-axg: add missing GPIOA_18 gpio group
  * Bluetooth: Fix use-after-free in hci_remove_ltk/hci_remove_irk
      net/bluetooth/hci_core.c
    ceph: fix use-after-free bug for inodes when flushing capsnaps
    drm/amdgpu: fix xclk freq on CHIP_STONEY
    Input: psmouse - fix OOB access in Elantech protocol
  * Input: xpad - delete a Razer DeathAdder mouse VID/PID entry
      drivers/input/joystick/xpad.c
    batman-adv: Broken sync while rescheduling delayed work
  * lib: cpu_rmap: Fix potential use-after-free in irq_cpu_rmap_release()
      lib/cpu_rmap.c
  * net: sched: fix possible refcount leak in tc_chain_tmplt_add()
      net/sched/cls_api.c
  * net: sched: move rtm_tca_policy declaration to include file
      include/net/pkt_sched.h
      net/sched/cls_api.c
  * rfs: annotate lockless accesses to RFS sock flow table
      include/linux/netdevice.h
      net/core/dev.c
  * rfs: annotate lockless accesses to sk->sk_rxhash
      include/net/sock.h
  * Bluetooth: L2CAP: Add missing checks for invalid DCID
      net/bluetooth/l2cap_core.c
  * Bluetooth: Fix l2cap_disconnect_req deadlock
      net/bluetooth/l2cap_core.c
    net: dsa: lan9303: allow vid != 0 in port_fdb_{add|del} methods
    spi: qup: Request DMA before enabling clocks
    i40e: fix build warnings in i40e_alloc.h
    i40iw: fix build warning in i40iw_manage_apbvt()
  * UPSTREAM: net: cdc_ncm: Deal with too low values of dwNtbOutMaxSize
      drivers/net/usb/cdc_ncm.c
  * UPSTREAM: cdc_ncm: Fix the build warning
      drivers/net/usb/cdc_ncm.c
  * UPSTREAM: cdc_ncm: Implement the 32-bit version of NCM Transfer Block
      drivers/net/usb/cdc_ncm.c
      include/linux/usb/cdc_ncm.h
  * Revert "tcp: reduce POLLOUT events caused by TCP_NOTSENT_LOWAT"
      include/net/sock.h
      include/net/tcp.h
      net/core/stream.c
  * Revert "tcp: return EPOLLOUT from tcp_poll only when notsent_bytes is half the limit"
      net/ipv4/tcp.c
  * Revert "tcp: factor out __tcp_close() helper"
      include/net/tcp.h
      net/ipv4/tcp.c
  * Revert "tcp: add annotations around sk->sk_shutdown accesses"
      net/ipv4/af_inet.c
      net/ipv4/tcp.c
      net/ipv4/tcp_input.c
  * ANDROID: fix abi break in 4.19.284 for cpuhotplug.h
      include/linux/cpuhotplug.h
    Merge "Merge 4.19.284 into android-4.19-stable" into android-4.19-stable
    UPSTREAM: mailbox: mailbox-test: fix a locking issue in mbox_test_message_write()
    UPSTREAM: mailbox: mailbox-test: Fix potential double-free in mbox_test_message_write()
Linux 4.19.285
    wifi: rtlwifi: 8192de: correct checking of IQK reload
  * scsi: dpt_i2o: Do not process completions with invalid addresses
      drivers/scsi/Kconfig
    scsi: dpt_i2o: Remove broken pass-through ioctl (I2OUSERCMD)
  * regmap: Account for register length when chunking
      drivers/base/regmap/regmap.c
    fbcon: Fix null-ptr-deref in soft_cursor
  * ext4: add lockdep annotations for i_data_sem for ea_inode's
      fs/ext4/ext4.h
      fs/ext4/xattr.c
  * selinux: don't use make's grouped targets feature yet
      security/selinux/Makefile
    tty: serial: fsl_lpuart: use UARTCTRL_TXINV to send break instead of UARTCTRL_SBK
    mmc: vub300: fix invalid response handling
    rsi: Remove unnecessary boolean condition
    regulator: da905{2,5}: Remove unnecessary array check
    hwmon: (scmi) Remove redundant pointer check
    wifi: rtlwifi: remove always-true condition pointed out by GCC 12
    lib/dynamic_debug.c: use address-of operator on section symbols
  * kernel/extable.c: use address-of operator on section symbols
      kernel/extable.c
    eth: sun: cassini: remove dead code
  * gcc-12: disable '-Wdangling-pointer' warning for now
      Makefile
    ACPI: thermal: drop an always true check
    x86/boot: Wrap literal addresses in absolute_pointer()
    ata: libata-scsi: Use correct device no in ata_find_dev()
    scsi: stex: Fix gcc 13 warnings
  * usb: gadget: f_fs: Add unbind event before functionfs_unbind
      drivers/usb/gadget/function/f_fs.c
    net: usb: qmi_wwan: Set DTR quirk for BroadMobi BM818
  * iio: dac: build ad5758 driver when AD5758 is selected
      drivers/iio/dac/Makefile
    iio: dac: mcp4725: Fix i2c_master_send() return value handling
  * HID: wacom: avoid integer overflow in wacom_intuos_inout()
      drivers/hid/wacom_wac.c
  * HID: google: add jewel USB id
      drivers/hid/hid-ids.h
    iio: adc: mxs-lradc: fix the order of two cleanup operations
    mailbox: mailbox-test: fix a locking issue in mbox_test_message_write()
    atm: hide unused procfs functions
    ALSA: oss: avoid missing-prototype warnings
  * netfilter: conntrack: define variables exp_nat_nla_policy and any_addr with CONFIG_NF_NAT
      net/netfilter/nf_conntrack_netlink.c
    wifi: b43: fix incorrect __packed annotation
  * scsi: core: Decrease scsi_device's iorequest_cnt if dispatch failed
      drivers/scsi/scsi_lib.c
  * arm64/mm: mark private VM_FAULT_X defines as vm_fault_t
      arch/arm64/mm/fault.c
    ARM: dts: stm32: add pin map for CAN controller on stm32f7
    wifi: rtl8xxxu: fix authentication timeout due to incorrect RCR value
    media: dvb-core: Fix use-after-free due to race condition at dvb_ca_en50221
    media: dvb-core: Fix kernel WARNING for blocking operation in wait_event*()
  * media: dvb-core: Fix use-after-free due on race condition at dvb_net
      include/media/dvb_net.h
    media: mn88443x: fix !CONFIG_OF error by drop of_match_ptr from ID table
    media: ttusb-dec: fix memory leak in ttusb_dec_exit_dvb()
    media: dvb_ca_en50221: fix a size write bug
    media: netup_unidvb: fix irq init by register it at the end of probe
    media: dvb-usb: dw2102: fix uninit-value in su3000_read_mac_address
    media: dvb-usb: digitv: fix null-ptr-deref in digitv_i2c_xfer()
    media: dvb-usb-v2: rtl28xxu: fix null-ptr-deref in rtl28xxu_i2c_xfer
    media: dvb-usb-v2: ce6230: fix null-ptr-deref in ce6230_i2c_master_xfer()
    media: dvb-usb-v2: ec168: fix null-ptr-deref in ec168_i2c_xfer()
    media: dvb-usb: az6027: fix three null-ptr-deref in az6027_i2c_xfer()
  * media: dvb_demux: fix a bug for the continuity counter
      drivers/media/dvb-core/dvb_demux.c
    ASoC: ssm2602: Add workaround for playback distortions
  * xfrm: Check if_id in inbound policy/secpath match
      net/xfrm/xfrm_policy.c
    ASoC: dwc: limit the number of overrun messages
    nbd: Fix debugfs_create_dir error checking
    fbdev: stifb: Fix info entry in sti_struct on error path
    fbdev: modedb: Add 1920x1080 at 60 Hz video mode
    media: rcar-vin: Select correct interrupt mode for V4L2_FIELD_ALTERNATE
    ARM: 9295/1: unwind:fix unwind abort for uleb128 case
    mailbox: mailbox-test: Fix potential double-free in mbox_test_message_write()
    watchdog: menz069_wdt: fix watchdog initialisation
    net: dsa: mv88e6xxx: Increase wait after reset deactivation
    net/sched: flower: fix possible OOB write in fl_set_geneve_opt()
  * udp6: Fix race condition in udp6_sendmsg & connect
      net/core/sock.c
  * net/netlink: fix NETLINK_LIST_MEMBERSHIPS length report
      net/netlink/af_netlink.c
  * ocfs2/dlm: move BITS_TO_BYTES() to bitops.h for wider use
      include/linux/bitops.h
  * net: sched: fix NULL pointer dereference in mq_attach
      net/sched/sch_api.c
  * net/sched: Prohibit regrafting ingress or clsact Qdiscs
      net/sched/sch_api.c
  * net/sched: Reserve TC_H_INGRESS (TC_H_CLSACT) for ingress (clsact) Qdiscs
      net/sched/sch_api.c
      net/sched/sch_ingress.c
  * net/sched: sch_clsact: Only create under TC_H_CLSACT
      net/sched/sch_ingress.c
  * net/sched: sch_ingress: Only create under TC_H_INGRESS
      net/sched/sch_ingress.c
  * tcp: Return user_mss for TCP_MAXSEG in CLOSE/LISTEN state if user_mss set
      net/ipv4/tcp.c
  * tcp: deny tcp_disconnect() when threads are waiting
      include/net/sock.h
      net/ipv4/af_inet.c
      net/ipv4/inet_connection_sock.c
      net/ipv4/tcp.c
  * af_packet: do not use READ_ONCE() in packet_bind()
      net/packet/af_packet.c
    amd-xgbe: fix the false linkup in xgbe_phy_status
  * af_packet: Fix data-races of pkt_sk(sk)->num.
      net/packet/af_packet.c
    netrom: fix info-leak in nr_write_internal()
    net/mlx5: fw_tracer, Fix event handling
    dmaengine: pl330: rename _start to prevent build error
  * netfilter: ctnetlink: Support offloaded conntrack entry deletion
      net/netfilter/nf_conntrack_netlink.c
  * ipv{4,6}/raw: fix output xfrm lookup wrt protocol
      include/net/ip.h
      include/uapi/linux/in.h
      net/ipv4/ip_sockglue.c
      net/ipv4/raw.c
      net/ipv6/raw.c
  * bluetooth: Add cmd validity checks at the start of hci_sock_ioctl()
      net/bluetooth/hci_sock.c
  * cdc_ncm: Fix the build warning
      drivers/net/usb/cdc_ncm.c
    power: supply: bq24190: Call power_supply_changed() after updating input current
  * power: supply: core: Refactor power_supply_set_input_current_limit_from_supplier()
      drivers/power/supply/power_supply_core.c
      include/linux/power_supply.h
    power: supply: bq27xxx: After charger plug in/out wait 0.5s for things to stabilize
  * net: cdc_ncm: Deal with too low values of dwNtbOutMaxSize
      drivers/net/usb/cdc_ncm.c
  * cdc_ncm: Implement the 32-bit version of NCM Transfer Block
      drivers/net/usb/cdc_ncm.c
      include/linux/usb/cdc_ncm.h
    Merge 4.19.284 into android-4.19-stable
    UPSTREAM: efi: rt-wrapper: Add missing include
  * BACKPORT: arm64: efi: Execute runtime services from a dedicated stack
      arch/arm64/include/asm/efi.h
  * Revert "uapi/linux/const.h: prefer ISO-friendly __typeof__"
      include/uapi/linux/const.h
    Merge "Merge 4.19.283 into android-4.19-stable" into android-4.19-stable
Linux 4.19.284
  * drivers: depend on HAS_IOMEM for devm_platform_ioremap_resource()
      drivers/base/platform.c
    3c589_cs: Fix an error handling path in tc589_probe()
    forcedeth: Fix an error handling path in nv_probe()
  * ASoC: Intel: Skylake: Fix declaration of enum skl_ch_cfg
      include/uapi/sound/skl-tplg-interface.h
    x86/show_trace_log_lvl: Ensure stack pointer is aligned, again
    xen/pvcalls-back: fix double frees with pvcalls_new_active_socket()
  * coresight: Fix signedness bug in tmc_etr_buf_insert_barrier_packet()
      drivers/hwtracing/coresight/coresight-tmc-etr.c
    power: supply: sbs-charger: Fix INHIBITED bit for Status reg
  * power: supply: bq27xxx: Fix poll_interval handling and races on remove
      include/linux/power/bq27xxx_battery.h
    power: supply: bq27xxx: Fix I2C IRQ race on remove
    power: supply: bq27xxx: Fix bq27xxx_battery_update() race condition
  * power: supply: leds: Fix blink to LED on transition
      drivers/power/supply/power_supply_leds.c
  * ipv6: Fix out-of-bounds access in ipv6_find_tlv()
      net/ipv6/exthdrs_core.c
  * bpf: Fix mask generation for 32-bit narrow loads of 64-bit fields
      kernel/bpf/verifier.c
  * net: fix skb leak in __skb_tstamp_tx()
      net/core/skbuff.c
    media: radio-shark: Add endpoint checks
    USB: sisusbvga: Add endpoint checks
  * USB: core: Add routines for endpoint checks in old drivers
      drivers/usb/core/usb.c
      include/linux/usb.h
  * udplite: Fix NULL pointer dereference in __sk_mem_raise_allocated().
      net/ipv4/udplite.c
      net/ipv6/udplite.c
    ALSA: hda/realtek - Fix inverted bass GPIO pin on Acer 8951G
    ALSA: hda/realtek - Fixed one of HP ALC671 platform Headset Mic supported
    parisc: Fix flush_dcache_page() for usage from irq context
    selftests/memfd: Fix unknown type name build failure
    x86/mm: Avoid incomplete Global INVLPG flushes
    btrfs: use nofs when cleaning up aborted transactions
    parisc: Allow to reboot machine after system halt
    m68k: Move signal frame following exception on 68020/030
    ALSA: hda/ca0132: add quirk for EVGA X299 DARK
    spi: fsl-cpm: Use 16 bit mode for large transfers with even size
    spi: fsl-spi: Re-organise transfer bits_per_word adaptation
    spi: spi-fsl-spi: automatically adapt bits-per-word in cpu mode
    s390/qdio: fix do_sqbs() inline assembly constraint
    s390/qdio: get rid of register asm
    vc_screen: reload load of struct vc_data pointer in vcs_write() to avoid UAF
    vc_screen: rewrite vcs_size to accept vc, not inode
  * usb: gadget: u_ether: Fix host MAC address case
      drivers/usb/gadget/function/u_ether.c
  * usb: gadget: u_ether: Convert prints to device prints
      drivers/usb/gadget/function/u_ether.c
  * lib/string_helpers: Introduce string_upper() and string_lower() helpers
      include/linux/string_helpers.h
    ALSA: hda/realtek: Add a quirk for HP EliteDesk 805
    ALSA: hda/realtek - ALC897 headset MIC no sound
    ALSA: hda/realtek - Add headset Mic support for Lenovo ALC897 platform
    ALSA: hda/realtek: Fix the mic type detection issue for ASUS G551JW
    ALSA: hda/realtek - The front Mic on a HP machine doesn't work
    ALSA: hda/realtek - Enable the headset of Acer N50-600 with ALC662
    ALSA: hda/realtek - Enable headset mic of Acer X2660G with ALC662
    ALSA: hda/realtek - Add Headset Mic supported for HP cPC
    ALSA: hda/realtek - More constifications
    Add Acer Aspire Ethos 8951G model quirk
  * HID: wacom: Force pen out of prox if no events have been received in a while
      drivers/hid/wacom.h
      drivers/hid/wacom_sys.c
      drivers/hid/wacom_wac.c
    netfilter: nf_tables: do not allow RULE_ID to refer to another chain
    netfilter: nf_tables: validate NFTA_SET_ELEM_OBJREF based on NFT_SET_OBJECT flag
    netfilter: nf_tables: stricter validation of element data
  * netfilter: nf_tables: allow up to 64 bytes in the set element data area
      include/net/netfilter/nf_tables.h
    netfilter: nf_tables: add nft_setelem_parse_key()
    netfilter: nf_tables: validate registers coming from userspace.
  * netfilter: nftables: statify nft_parse_register()
      include/net/netfilter/nf_tables.h
  * netfilter: nftables: add nft_parse_register_store() and use it
      include/net/netfilter/nf_tables.h
      include/net/netfilter/nf_tables_core.h
      include/net/netfilter/nft_fib.h
  * netfilter: nftables: add nft_parse_register_load() and use it
      include/net/netfilter/nf_tables.h
      include/net/netfilter/nf_tables_core.h
      include/net/netfilter/nft_masq.h
      include/net/netfilter/nft_redir.h
    nilfs2: fix use-after-free bug of nilfs_root in nilfs_evict_inode()
    tpm/tpm_tis: Disable interrupts for more Lenovo devices
    ceph: force updating the msg pointer in non-split case
    serial: Add support for Advantech PCI-1611U card
  * statfs: enforce statfs[64] structure initialization
      fs/statfs.c
    ALSA: hda: Add NVIDIA codec IDs a3 through a7 to patch table
    ALSA: hda: Fix Oops by 9.1 surround channel names
    usb: typec: altmodes/displayport: fix pin_assignment_show
  * usb-storage: fix deadlock when a scsi command timeouts more than once
      drivers/usb/storage/scsiglue.c
    vlan: fix a potential uninit-value in vlan_dev_hard_start_xmit()
    igb: fix bit_shift to be in [1..8] range
    cassini: Fix a memory leak in the error handling path of cas_init_one()
    net: bcmgenet: Restore phy_stop() depending upon suspend/close
    net: bcmgenet: Remove phy_stop() from bcmgenet_netif_stop()
    net: nsh: Use correct mac_offset to unwind gso skb in nsh_gso_segment()
    drm/exynos: fix g2d_open/close helper function definitions
    media: netup_unidvb: fix use-after-free at del_timer()
    erspan: get the proto with the md version for collect_md
  * ip_gre, ip6_gre: Fix race condition on o_seqno in collect_md mode
      include/net/ip6_tunnel.h
      include/net/ip_tunnels.h
    ip6_gre: Make o_seqno start from 0 in native mode
    ip6_gre: Fix skb_under_panic in __gre6_xmit()
    serial: arc_uart: fix of_iomap leak in `arc_serial_probe`
  * drivers: provide devm_platform_ioremap_resource()
      drivers/base/platform.c
      include/linux/platform_device.h
    vsock: avoid to close connected socket after the timeout
    net: fec: Better handle pm_runtime_get() failing in .remove()
  * af_key: Reject optional tunnel/BEET mode templates in outbound policies
      net/key/af_key.c
    cpupower: Make TSC read per CPU for Mperf monitor
    btrfs: fix space cache inconsistency after error loading it from disk
    btrfs: replace calls to btrfs_find_free_ino with btrfs_find_free_objectid
    mfd: dln2: Fix memory leak in dln2_probe()
    phy: st: miphy28lp: use _poll_timeout functions for waits
  * Input: xpad - add constants for GIP interface numbers
      drivers/input/joystick/xpad.c
    clk: tegra20: fix gcc-7 constant overflow warning
    recordmcount: Fix memory leaks in the uwrite function
  * sched: Fix KCSAN noinstr violation
      include/linux/sched/task_stack.h
    mcb-pci: Reallocate memory region to avoid memory overlapping
    serial: 8250: Reinit port->pm on port specific driver unbind
    usb: typec: tcpm: fix multiple times discover svids error
  * HID: wacom: generic: Set battery quirk only when we see battery data
      drivers/hid/wacom_wac.c
    spi: spi-imx: fix MX51_ECSPI_* macros when cs > 3
    HID: logitech-hidpp: Reconcile USB and Unifying serials
    HID: logitech-hidpp: Don't use the USB serial for USB devices
    staging: rtl8192e: Replace macro RTL_PCI_DEVICE with PCI_DEVICE
  * Bluetooth: L2CAP: fix "bad unlock balance" in l2cap_disconnect_rsp
      net/bluetooth/l2cap_core.c
    wifi: iwlwifi: dvm: Fix memcpy: detected field-spanning write backtrace
  * f2fs: fix to drop all dirty pages during umount() if cp_error is set
      fs/f2fs/checkpoint.c
      fs/f2fs/data.c
  * ext4: Fix best extent lstart adjustment logic in ext4_mb_new_inode_pa()
      fs/ext4/mballoc.c
  * ext4: set goal start correctly in ext4_mb_normalize_request
      fs/ext4/mballoc.c
    gfs2: Fix inode height consistency check
    scsi: message: mptlan: Fix use after free bug in mptlan_remove() due to race condition
  * lib: cpu_rmap: Avoid use after free on rmap->obj array entries
      lib/cpu_rmap.c
  * net: Catch invalid index in XPS mapping
      net/core/dev.c
    net: pasemi: Fix return type of pasemi_mac_start_tx()
    ext2: Check block size validity during mount
    wifi: brcmfmac: cfg80211: Pass the PMK in binary instead of hex
    ACPICA: ACPICA: check null return of ACPI_ALLOCATE_ZEROED in acpi_db_display_objects
    ACPICA: Avoid undefined behavior: applying zero offset to null pointer
    drm/tegra: Avoid potential 32-bit integer overflow
    ACPI: EC: Fix oops when removing custom query handlers
  * firmware: arm_sdei: Fix sleep from invalid context BUG
      include/linux/cpuhotplug.h
    memstick: r592: Fix UAF bug in r592_remove due to race condition
  * regmap: cache: Return error in cache sync operations for REGCACHE_NONE
      drivers/base/regmap/regcache.c
    drm/amd/display: Use DC_LOG_DC in the trasform pixel function
    fs: hfsplus: remove WARN_ON() from hfsplus_cat_{read,write}_inode()
  * af_unix: Fix data races around sk->sk_shutdown.
      net/unix/af_unix.c
  * af_unix: Fix a data race of sk->sk_receive_queue->qlen.
      net/unix/af_unix.c
  * net: datagram: fix data-races in datagram_poll()
      net/core/datagram.c
    ipvlan:Fix out-of-bounds caused by unclear skb->cb
  * tcp: add annotations around sk->sk_shutdown accesses
      net/ipv4/af_inet.c
      net/ipv4/tcp.c
      net/ipv4/tcp_input.c
  * tcp: factor out __tcp_close() helper
      include/net/tcp.h
      net/ipv4/tcp.c
  * tcp: return EPOLLOUT from tcp_poll only when notsent_bytes is half the limit
      net/ipv4/tcp.c
  * tcp: reduce POLLOUT events caused by TCP_NOTSENT_LOWAT
      include/net/sock.h
      include/net/tcp.h
      net/core/stream.c
  * net: annotate sk->sk_err write from do_recvmmsg()
      net/socket.c
  * netlink: annotate accesses to nlk->cb_running
      net/netlink/af_netlink.c
  * net: Fix load-tearing on sk->sk_stamp in sock_recv_cmsgs().
      include/net/sock.h
  * UPSTREAM: ext4: avoid a potential slab-out-of-bounds in ext4_group_desc_csum
      fs/ext4/super.c
    Merge 4.19.283 into android-4.19-stable
  * UPSTREAM: ext4: fix invalid free tracking in ext4_xattr_move_to_block()
      fs/ext4/xattr.c
Linux 4.19.283
  * mm/page_alloc: fix potential deadlock on zonelist_update_seq seqlock
      mm/page_alloc.c
  * printk: declare printk_deferred_{enter,safe}() in include/linux/printk.h
      include/linux/printk.h
    PCI: pciehp: Fix AB-BA deadlock between reset_lock and device_lock
    PCI: pciehp: Use down_read/write_nested(reset_lock) to fix lockdep errors
    drbd: correctly submit flush bio on barrier
    serial: 8250: Fix serial8250_tx_empty() race with DMA Tx
  * tty: Prevent writing chars during tcsetattr TCSADRAIN/FLUSH
      drivers/tty/tty_io.c
      drivers/tty/tty_ioctl.c
      include/linux/tty.h
  * ext4: fix invalid free tracking in ext4_xattr_move_to_block()
      fs/ext4/xattr.c
  * ext4: remove a BUG_ON in ext4_mb_release_group_pa()
      fs/ext4/mballoc.c
  * ext4: bail out of ext4_xattr_ibody_get() fails for any reason
      fs/ext4/inline.c
  * ext4: add bounds checking in get_max_inline_xattr_value_size()
      fs/ext4/inline.c
  * ext4: improve error recovery code paths in __ext4_remount()
      fs/ext4/super.c
  * ext4: avoid a potential slab-out-of-bounds in ext4_group_desc_csum
      fs/ext4/super.c
  * ext4: fix WARNING in mb_find_extent
      fs/ext4/balloc.c
  * HID: wacom: Set a default resolution for older tablets
      drivers/hid/wacom_wac.c
    drm/panel: otm8009a: Set backlight parent to panel device
    ARM: dts: s5pv210: correct MIPI CSIS clock name
    ARM: dts: exynos: fix WM8960 clock name in Itop Elite
    sh: nmi_debug: fix return value of __setup handler
    sh: init: use OF_EARLY_FLATTREE for early init
    sh: math-emu: fix macro redefined warning
    platform/x86: touchscreen_dmi: Add info for the Dexp Ursus KX210i
    cifs: fix pcchunk length type in smb2_copychunk_range
    btrfs: print-tree: parent bytenr must be aligned to sector size
    btrfs: fix btrfs_prev_leaf() to not return the same key twice
    perf symbols: Fix return incorrect build_id size in elf_read_build_id()
    perf map: Delete two variable initialisations before null pointer checks in sort__sym_from_cmp()
    perf vendor events power9: Remove UTF-8 characters from JSON files
    virtio_net: suppress cpu stall when free_unused_bufs
    virtio_net: split free_unused_bufs()
    ALSA: caiaq: input: Add error handling for unsupported input methods in `snd_usb_caiaq_input_init`
    drm/amdgpu: add a missing lock for AMDGPU_SCHED
  * drm/amdgpu: Add command to override the context priority.
      include/uapi/drm/amdgpu_drm.h
    drm/amdgpu: Put enable gfx off feature to a delay thread
    drm/amdgpu: Add amdgpu_gfx_off_ctrl function
  * af_packet: Don't send zero-byte data in packet_sendmsg_spkt().
      net/packet/af_packet.c
    rxrpc: Fix hard call timeout units
  * net/sched: act_mirred: Add carrier check
      net/sched/act_mirred.c
  * writeback: fix call of incorrect macro
      fs/fs-writeback.c
    net: dsa: mv88e6xxx: add mv88e6321 rsvd2cpu
    net: dsa: mv88e6xxx: Add missing watchdog ops for 6320 family
  * sit: update dev->needed_headroom in ipip6_tunnel_bind_dev()
      net/ipv6/sit.c
    relayfs: fix out-of-bounds access in relay_file_read
    kernel/relay.c: fix read_pos error when multiple readers
  * dm verity: fix error handling for check_at_most_once on FEC
      drivers/md/dm-verity-target.c
  * dm verity: skip redundant verity_handle_err() on I/O errors
      drivers/md/dm-verity-target.c
    ipmi: fix SSIF not responding under certain cond.
    ipmi_ssif: Rename idle state and check
  * ipmi: Fix how the lower layers are told to watch for messages
      include/linux/ipmi_smi.h
    ipmi: Fix SSIF flag requests
  * tick/nohz: Fix cpu_is_hotpluggable() by checking with nohz subsystem
      drivers/base/cpu.c
      include/linux/tick.h
      kernel/time/tick-sched.c
  * nohz: Add TICK_DEP_BIT_RCU
      include/linux/tick.h
      include/trace/events/timer.h
      kernel/time/tick-sched.c
  * netfilter: nf_tables: deactivate anonymous set from preparation phase
      include/net/netfilter/nf_tables.h
    debugobject: Ensure pool refill (again)
    perf auxtrace: Fix address filter entire kernel size
  * dm ioctl: fix nested locking in table_clear() to remove deadlock concern
      drivers/md/dm-ioctl.c
    dm flakey: fix a crash with invalid table line
    dm integrity: call kmem_cache_destroy() in dm_integrity_init() error path
    s390/dasd: fix hanging blockdevice after request requeue
  * btrfs: scrub: reject unsupported scrub flags
      include/uapi/linux/btrfs.h
    clk: rockchip: rk3399: allow clk_cifout to force clk_cifout_src to reparent
    wifi: rtl8xxxu: RTL8192EU always needs full init
    md/raid10: fix null-ptr-deref in raid10_sync_request
    nilfs2: fix infinite loop in nilfs_mdt_get_block()
    nilfs2: do not write dirty data after degenerating to read-only
    parisc: Fix argument pointer in real64_call_asm()
    dmaengine: at_xdmac: do not enable all cyclic channels
    phy: tegra: xusb: Add missing tegra_xusb_port_unregister for usb2_port and ulpi_port
    pwm: mtk-disp: Disable shadow registers before setting backlight values
    pwm: mtk-disp: Adjust the clocks to avoid them mismatch
    pwm: mtk-disp: Don't check the return code of pwmchip_remove()
    openrisc: Properly store r31 to pt_regs on unhandled exceptions
    RDMA/mlx5: Use correct device num_ports when modify DC
  * SUNRPC: remove the maximum number of retries in call_bind_status
      include/linux/sunrpc/sched.h
    NFSv4.1: Always send a RECLAIM_COMPLETE after establishing lease
    IB/hfi1: Fix SDMA mmu_rb_node not being evicted in LRU order
  * clk: add missing of_node_put() in "assigned-clocks" property parsing
      drivers/clk/clk-conf.c
    power: supply: generic-adc-battery: fix unit scaling
    RDMA/mlx4: Prevent shift wrapping in set_user_sq_size()
    RDMA/rdmavt: Delete unnecessary NULL check
  * perf/core: Fix hardlockup failure caused by perf throttle
      kernel/events/core.c
    powerpc/rtas: use memmove for potentially overlapping buffer copy
  * macintosh: via-pmu-led: requires ATA to be set
      drivers/macintosh/Kconfig
    powerpc/sysdev/tsi108: fix resource printk format warnings
    powerpc/wii: fix resource printk format warnings
    powerpc/mpc512x: fix resource printk format warning
    macintosh/windfarm_smu_sat: Add missing of_node_put()
  * spmi: Add a check for remove callback when removing a SPMI driver
      drivers/spmi/spmi.c
    staging: rtl8192e: Fix W_DISABLE# does not work after stop/start
    serial: 8250: Add missing wakeup event reporting
    tty: serial: fsl_lpuart: adjust buffer length to the intended size
    usb: chipidea: fix missing goto in `ci_hdrc_probe`
    sh: sq: Fix incorrect element size for allocating bitmap buffer
  * uapi/linux/const.h: prefer ISO-friendly __typeof__
      include/uapi/linux/const.h
    spi: cadence-quadspi: fix suspend-resume implementations
    mtd: spi-nor: cadence-quadspi: Handle probe deferral while requesting DMA channel
    mtd: spi-nor: cadence-quadspi: Don't initialize rx_dma_complete on failure
    mtd: spi-nor: cadence-quadspi: Make driver independent of flash geometry
    ia64: salinfo: placate defined-but-not-used warning
    ia64: mm/contig: fix section mismatch warning/error
  * of: Fix modalias string generation
      drivers/of/device.c
    vmci_host: fix a race condition in vmci_host_poll() causing GPF
    spi: fsl-spi: Fix CPM/QE mode Litte Endian
    spi: qup: Don't skip cleanup in remove's error path
    spi: qup: fix PM reference leak in spi_qup_remove()
  * linux/vt_buffer.h: allow either builtin or modular for macros
      include/linux/vt_buffer.h
    usb: gadget: udc: renesas_usb3: Fix use after free bug in renesas_usb3_remove due to race condition
    fpga: bridge: fix kernel-doc parameter description
    usb: host: xhci-rcar: remove leftover quirk handling
  * pstore: Revert pmsg_lock back to a normal mutex
      fs/pstore/pmsg.c
  * tcp/udp: Fix memleaks of sk and zerocopy skbs with TX timestamp.
      net/core/skbuff.c
    net: amd: Fix link leak when verifying config failed
  * netlink: Use copy_to_user() for optval in netlink_getsockopt().
      net/netlink/af_netlink.c
    Revert "Bluetooth: btsdio: fix use after free bug in btsdio_remove due to unfinished work"
  * ipv4: Fix potential uninit variable access bug in __ip_make_skb()
      net/ipv4/ip_output.c
  * netfilter: nf_tables: don't write table validation state without mutex
      include/linux/netfilter/nfnetlink.h
      net/netfilter/nfnetlink.c
    ixgbe: Enable setting RSS table to default values
    ixgbe: Allow flow hash to be set via ethtool
    wifi: iwlwifi: mvm: check firmware response size
    wifi: iwlwifi: make the loop for card preparation effective
    md/raid10: fix memleak of md thread
    md: update the optimal I/O size on reshape
    md/raid10: fix memleak for 'conf->bio_split'
    md/raid10: fix leak of 'r10bio->remaining' for recovery
  * crypto: drbg - Only fail when jent is unavailable in FIPS mode
      crypto/drbg.c
  * crypto: drbg - make drbg_prepare_hrng() handle jent instantiation errors
      crypto/drbg.c
    bpftool: Fix bug for long instructions in program CFG dumps
    wifi: rtlwifi: fix incorrect error codes in rtl_debugfs_set_write_reg()
    wifi: rtlwifi: fix incorrect error codes in rtl_debugfs_set_write_rfreg()
    rtlwifi: Replace RT_TRACE with rtl_dbg
    rtlwifi: Start changing RT_TRACE into rtl_dbg
    rtlwifi: rtl_pci: Fix memory leak when hardware init fails
    scsi: megaraid: Fix mega_cmd_done() CMDID_INT_CMDS
    scsi: target: iscsit: Fix TAS handling during conn cleanup
  * net/packet: convert po->auxdata to an atomic flag
      net/packet/af_packet.c
      net/packet/internal.h
  * net/packet: convert po->origdev to an atomic flag
      net/packet/af_packet.c
      net/packet/internal.h
    vlan: partially enable SIOCSHWTSTAMP in container
  * scm: fix MSG_CTRUNC setting condition for SO_PASSSEC
      include/net/scm.h
    tools: bpftool: Remove invalid \' json escape
    wifi: ath6kl: reduce WARN to dev_dbg() in callback
    wifi: ath5k: fix an off by one check in ath5k_eeprom_read_freq_list()
    wifi: ath9k: hif_usb: fix memory leak of remain_skbs
    wifi: ath6kl: minor fix for allocation size
    debugobject: Prevent init race with static objects
    debugobjects: Move printk out of db->lock critical sections
    debugobjects: Add percpu free pools
  * arm64: kgdb: Set PSTATE.SS to 1 to re-enable single-step
      arch/arm64/include/asm/debug-monitors.h
      arch/arm64/kernel/debug-monitors.c
    x86/ioapic: Don't return 0 from arch_dynirq_lower_bound()
    media: rc: gpio-ir-recv: Fix support for wake-up
    media: rcar_fdp1: Fix refcount leak in probe and remove function
    media: rcar_fdp1: Fix the correct variable assignments
    media: saa7134: fix use after free bug in saa7134_finidev due to race condition
    media: dm1105: Fix use after free bug in dm1105_remove due to race condition
    x86/apic: Fix atomic update of offset in reserve_eilvt_offset()
    drm/msm/adreno: drop bogus pm_runtime_set_active()
    drm/msm/adreno: Defer enabling runpm until hw_init()
  * firmware: qcom_scm: Clear download bit during reboot
      drivers/firmware/qcom_scm.c
    media: av7110: prevent underflow in write_ts_to_decoder()
  * media: uapi: add MEDIA_BUS_FMT_METADATA_FIXED media bus format.
      include/uapi/linux/media-bus-format.h
    media: bdisp: Add missing check for create_workqueue
    ARM: dts: qcom: ipq4019: Fix the PCI I/O port range
    EDAC/skx: Fix overflows on the DRAM row address mapping arrays
    EDAC, skx: Move debugfs node under EDAC's hierarchy
  * drm/probe-helper: Cancel previous job before starting new one
      drivers/gpu/drm/drm_probe_helper.c
    drm/vgem: add missing mutex_destroy
    drm/rockchip: Drop unbalanced obj unref
  * selinux: ensure av_permissions.h is built when needed
      security/selinux/Makefile
  * selinux: fix Makefile dependencies of flask.h
      security/selinux/Makefile
    ubifs: Free memory for tmpfile name
    ubi: Fix return value overwrite issue in try_write_vid_and_data()
    ubifs: Fix memleak when insert_old_idx() failed
    Revert "ubifs: dirty_cow_znode: Fix memleak in error handling path"
    i2c: omap: Fix standard mode false ACK readings
    KVM: nVMX: Emulate NOPs in L2, and PAUSE if it's not intercepted
    reiserfs: Add security prefix to xattr name in reiserfs_security_write()
  * ring-buffer: Sync IRQ works before buffer destruction
      kernel/trace/ring_buffer.c
    pwm: meson: Fix axg ao mux parents
    MIPS: fw: Allow firmware to pass a empty env
  * xhci: fix debugfs register accesses while suspended
      drivers/usb/host/xhci-debugfs.c
  * debugfs: regset32: Add Runtime PM support
      fs/debugfs/file.c
      include/linux/debugfs.h
    staging: iio: resolver: ads1210: fix config mode
    perf sched: Cast PTHREAD_STACK_MIN to int as it may turn into sysconf(__SC_THREAD_STACK_MIN_VALUE)
  * USB: dwc3: fix runtime pm imbalance on unbind
      drivers/usb/dwc3/core.c
    stmmac: debugfs entry name is not be changed when udev rename device name.
    ASoC: Intel: bytcr_rt5640: Add quirk for the Acer Iconia One 7 B1-750
    iio: adc: palmas_gpadc: fix NULL dereference on rmmod
    USB: serial: option: add UNISOC vendor and TOZED LT70C product
  * bluetooth: Perform careful capability checks in hci_sock_ioctl()
      net/bluetooth/hci_sock.c
    wifi: brcmfmac: slab-out-of-bounds read in brcmf_get_assoc_ies()
  * ANDROID: incremental fs: Evict inodes before freeing mount data
      fs/incfs/main.c
      fs/incfs/vfs.c
  * Revert "Revert "mm/rmap: Fix anon_vma->degree ambiguity leading to double-reuse""
      android/abi_gki_aarch64.xml
      include/linux/rmap.h
      mm/rmap.c

Bug: 299241959
Change-Id: Ib8c4ff87b1b0b720abce0f5fcdf1a51f01a472a9
Signed-off-by: Wilson Sung <wilsonsung@google.com>
Signed-off-by: ChangYan Lee <changyan@google.com>
2023-10-17 05:00:19 +00:00
Kees Cook
b7e389235c treewide: Remove uninitialized_var() usage
commit 3f649ab728cda8038259d8f14492fe400fbab911 upstream.

Using uninitialized_var() is dangerous as it papers over real bugs[1]
(or can in the future), and suppresses unrelated compiler warnings
(e.g. "unused variable"). If the compiler thinks it is uninitialized,
either simply initialize the variable or make compiler changes.

In preparation for removing[2] the[3] macro[4], remove all remaining
needless uses with the following script:

git grep '\buninitialized_var\b' | cut -d: -f1 | sort -u | \
	xargs perl -pi -e \
		's/\buninitialized_var\(([^\)]+)\)/\1/g;
		 s:\s*/\* (GCC be quiet|to make compiler happy) \*/$::g;'

drivers/video/fbdev/riva/riva_hw.c was manually tweaked to avoid
pathological white-space.

No outstanding warnings were found building allmodconfig with GCC 9.3.0
for x86_64, i386, arm64, arm, powerpc, powerpc64le, s390x, mips, sparc64,
alpha, and m68k.

[1] https://lore.kernel.org/lkml/20200603174714.192027-1-glider@google.com/
[2] https://lore.kernel.org/lkml/CA+55aFw+Vbj0i=1TGqCR5vQkCzWJ0QxK6CernOU6eedsudAixw@mail.gmail.com/
[3] https://lore.kernel.org/lkml/CA+55aFwgbgqhbp1fkxvRKEpzyR5J8n1vKT1VZdz9knmPuXhOeg@mail.gmail.com/
[4] https://lore.kernel.org/lkml/CA+55aFz2500WfbKXAx8s67wrm9=yVJu65TpLgN_ybYNv0VEOKA@mail.gmail.com/

Reviewed-by: Leon Romanovsky <leonro@mellanox.com> # drivers/infiniband and mlx4/mlx5
Acked-by: Jason Gunthorpe <jgg@mellanox.com> # IB
Acked-by: Kalle Valo <kvalo@codeaurora.org> # wireless drivers
Reviewed-by: Chao Yu <yuchao0@huawei.com> # erofs
Signed-off-by: Kees Cook <keescook@chromium.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-08-11 11:45:01 +02:00
Wilson Sung
7418288acf Merge android-4.19-stable (4.19.220) into android-msm-pixel-4.19-lts
Merge 4.19.220 into android-4.19-stable
Linux 4.19.220
    ipmi: msghandler: Make symbol 'remove_work_wq' static
    parisc: Mark cr16 CPU clocksource unstable on all SMP machines
  * serial: core: fix transmit-buffer reset and memleak
      drivers/tty/serial/serial_core.c
    serial: pl011: Add ACPI SBSA UART match id
    tty: serial: msm_serial: Deactivate RX DMA for polling support
    x86/64/mm: Map all kernel memory into trampoline_pgd
    usb: typec: tcpm: Wait in SNK_DEBOUNCED until disconnect
  * USB: NO_LPM quirk Lenovo Powered USB-C Travel Hub
      drivers/usb/core/quirks.c
  * xhci: Fix commad ring abort, write all 64 bits to CRCR register.
      drivers/usb/host/xhci-ring.c
    vgacon: Propagate console boot parameters before calling `vc_resize'
    parisc: Fix "make install" on newer debian releases
    parisc: Fix KBUILD_IMAGE for self-extracting kernel
    drm/msm: Do hw_init() before capturing GPU state
    net/smc: Keep smc_close_final rc during active close
    net/rds: correct socket tunable error in rds_tcp_tune()
  * net: annotate data-races on txq->xmit_lock_owner
      include/linux/netdevice.h
      net/core/dev.c
    net: usb: lan78xx: lan78xx_phy_init(): use PHY_POLL instead of "0" if no IRQ is available
    rxrpc: Fix rxrpc_local leak in rxrpc_lookup_peer()
    net/mlx4_en: Fix an use-after-free bug in mlx4_en_try_alloc_resources()
  * siphash: use _unaligned version by default
      include/linux/siphash.h
      lib/siphash.c
    net: mpls: Fix notifications when deleting a device
    net: qlogic: qlcnic: Fix a NULL pointer dereference in qlcnic_83xx_add_rings()
    natsemi: xtensa: fix section mismatch warnings
    i2c: stm32f7: stop dma transfer in case of NACK
    i2c: stm32f7: recover the bus on access timeout
  * fget: check that the fd still exists after getting a ref to it
      fs/file.c
  * fs: add fget_many() and fput_many()
      fs/file.c
      fs/file_table.c
      include/linux/file.h
      include/linux/fs.h
    sata_fsl: fix warning in remove_proc_entry when rmmod sata_fsl
    sata_fsl: fix UAF in sata_fsl_port_stop when rmmod sata_fsl
    ipmi: Move remove_work to dedicated workqueue
  * kprobes: Limit max data_size of the kretprobe instances
      include/linux/kprobes.h
    vrf: Reset IPCB/IP6CB when processing outbound pkts in vrf dev xmit
    perf hist: Fix memory leak of a perf_hpp_fmt
    net: ethernet: dec: tulip: de4x5: fix possible array overflows in type3_infoblock()
    net: tulip: de4x5: fix the problem that the array 'lp->phy[8]' may be out of bound
    ethernet: hisilicon: hns: hns_dsaf_misc: fix a possible array overflow in hns_dsaf_ge_srst_by_port()
    ata: ahci: Add Green Sardine vendor ID as board_ahci_mobile
    scsi: iscsi: Unblock session then wake up error handler
  * thermal: core: Reset previous low and high trip during thermal zone init
      drivers/thermal/thermal_core.c
    btrfs: check-integrity: fix a warning on write caching disabled disk
    s390/setup: avoid using memblock_enforce_memory_limit
    platform/x86: thinkpad_acpi: Fix WWAN device disabled issue after S3 deep
  * net: return correct error code
      net/ipv4/devinet.c
    atlantic: Fix OOB read and write in hw_atl_utils_fw_rpc_wait
    gfs2: Fix length of holes reported at end-of-file
  * of: clk: Make <linux/of_clk.h> self-contained
      include/linux/of_clk.h
    NFSv42: Fix pagecache invalidation after COPY/CLONE
  * shm: extend forced shm destroy to support objects from several IPC nses
      include/linux/ipc_namespace.h
      include/linux/sched/task.h
  * BACKPORT: arm64: vdso32: suppress error message for 'make mrproper'
      arch/arm64/kernel/vdso32/Makefile
    Merge 4.19.219 into android-4.19-stable
Linux 4.19.219
    tty: hvc: replace BUG_ON() with negative return value
    xen/netfront: don't trust the backend response data blindly
    xen/netfront: disentangle tx_skb_freelist
    xen/netfront: don't read data from request on the ring page
    xen/netfront: read response from backend only once
    xen/blkfront: don't trust the backend response data blindly
    xen/blkfront: don't take local copy of a request from the ring page
    xen/blkfront: read response from backend only once
  * xen: sync include/xen/interface/io/ring.h with Xen's newest version
      include/xen/interface/io/ring.h
  * fuse: release pipe buf after last use
      fs/fuse/dev.c
  * NFC: add NCI_UNREG flag to eliminate the race
      include/net/nfc/nci_core.h
  * hugetlbfs: flush TLBs correctly after huge_pmd_unshare
      include/asm-generic/tlb.h
      mm/memory.c
    s390/mm: validate VMA in PGSTE manipulation functions
  * tracing: Check pid filtering when creating events
      kernel/trace/trace_events.c
    vhost/vsock: fix incorrect used length reported to the guest
    net: hns3: fix VF RSS failed problem after PF enable multi-TCs
    net/smc: Don't call clcsock shutdown twice when smc shutdown
    MIPS: use 3-level pgtable for 64KB page size on MIPS_VA_BITS_48
  * tcp_cubic: fix spurious Hystart ACK train detections for not-cwnd-limited flows
      net/ipv4/tcp_cubic.c
    PM: hibernate: use correct mode for swsusp_close()
    net/smc: Ensure the active closing peer first closes clcsock
  * ipv6: fix typos in __ip6_finish_output()
      net/ipv6/ip6_output.c
    drm/vc4: fix error code in vc4_create_object()
    scsi: mpt3sas: Fix kernel panic during drive powercycle test
    ARM: socfpga: Fix crash with CONFIG_FORTIRY_SOURCE
    NFSv42: Don't fail clone() unless the OP_CLONE operation failed
    firmware: arm_scmi: pm: Propagate return value to caller
  * net: ieee802154: handle iftypes as u32
      include/net/nl802154.h
    ASoC: topology: Add missing rwsem around snd_ctl_remove() calls
    ASoC: qdsp6: q6routing: Conditionally reset FrontEnd Mixer
    ARM: dts: BCM5301X: Add interrupt properties to GPIO node
    ARM: dts: BCM5301X: Fix I2C controller interrupt
    netfilter: ipvs: Fix reuse connection if RS weight is 0
    arm64: dts: marvell: armada-37xx: Set pcie_reset_pin to gpio function
    arm64: dts: marvell: armada-37xx: declare PCIe reset pin
    pinctrl: armada-37xx: Correct PWM pins definitions
    pinctrl: armada-37xx: add missing pin: PCIe1 Wakeup
    pinctrl: armada-37xx: Correct mpp definitions
    PCI: aardvark: Fix checking for link up via LTSSM state
    PCI: aardvark: Fix link training
    PCI: aardvark: Fix PCIe Max Payload Size setting
    PCI: aardvark: Configure PCIe resources from 'ranges' DT property
    PCI: aardvark: Update comment about disabling link training
    PCI: aardvark: Move PCIe reset card code to advk_pcie_train_link()
    PCI: aardvark: Fix compilation on s390
    PCI: aardvark: Don't touch PCIe registers if no card connected
    PCI: aardvark: Indicate error in 'val' when config read fails
    PCI: aardvark: Replace custom macros by standard linux/pci_regs.h macros
    PCI: aardvark: Issue PERST via GPIO
    PCI: aardvark: Improve link training
    PCI: aardvark: Train link immediately after enabling training
    PCI: aardvark: Wait for endpoint to be ready before training link
    PCI: aardvark: Fix a leaked reference by adding missing of_node_put()
    proc/vmcore: fix clearing user buffer by properly using clear_user()
    xtensa: use CONFIG_USE_OF instead of CONFIG_OF
  * tracing: Fix pid filtering when triggers are attached
      kernel/trace/trace.h
    xen: detect uninitialized xenbus in xenbus_init
    xen: don't continue xenstore initialization in case of errors
  * fuse: fix page stealing
      fs/fuse/dev.c
    staging: rtl8192e: Fix use after free in _rtl92e_pci_disconnect()
    HID: wacom: Use "Confidence" flag to prevent reporting invalid contacts
    media: cec: copy sequence field for the reply
    ALSA: ctxfi: Fix out-of-range access
  * binder: fix test regression due to sender_euid change
      drivers/android/binder.c
  * usb: hub: Fix locking issues with address0_mutex
      drivers/usb/core/hub.c
  * usb: hub: Fix usb enumeration issue due to address0 race
      drivers/usb/core/hub.c
    usb: dwc2: hcd_queue: Fix use of floating point literal
    USB: serial: option: add Fibocom FM101-GL variants
    USB: serial: option: add Telit LE910S1 0x9200 composition
  * Revert "net: sched: update default qdisc visibility after Tx queue cnt changes"
      include/net/sch_generic.h
      net/core/dev.c
      net/sched/sch_generic.c
      net/sched/sch_mq.c
  * Revert "serial: core: Fix initializing and restoring termios speed"
      drivers/tty/serial/serial_core.c
      include/linux/console.h
    ANDROID: GKI: disable CONFIG_FORTIFY_SOURCE
    Merge 4.19.218 into android-4.19-stable
Linux 4.19.218
    soc/tegra: pmc: Fix imbalanced clock disabling in error code path
    usb: max-3421: Use driver data instead of maintaining a list of bound devices
  * ASoC: DAPM: Cover regression by kctl change notification fix
      sound/soc/soc-dapm.c
  * RDMA/netlink: Add __maybe_unused to static inline in C file
      include/rdma/rdma_netlink.h
    batman-adv: Don't always reallocate the fragmentation skb head
    batman-adv: Reserve needed_*room for fragments
    batman-adv: Consider fragmentation for needed_headroom
    batman-adv: mcast: fix duplicate mcast packets in BLA backbone from LAN
  * perf/core: Avoid put_page() when GUP fails
      kernel/events/core.c
    drm/amdgpu: fix set scaling mode Full/Full aspect/Center not works on vga and dvi connectors
    drm/udl: fix control-message timeout
  * cfg80211: call cfg80211_stop_ap when switch from P2P_GO type
      net/wireless/util.c
    parisc/sticon: fix reverse colors
    btrfs: fix memory ordering between normal and ordered work functions
    udf: Fix crash after seekdir
    x86/hyperv: Fix NULL deref in set_hv_tscchange_cb() if Hyper-V setup fails
  * mm: kmemleak: slob: respect SLAB_NOLEAKTRACE flag
      mm/slab.h
    ipc: WARN if trying to remove ipc object which is absent
    hexagon: export raw I/O routines for modules
  * tun: fix bonding active backup with arp monitoring
      drivers/net/tun.c
    perf/x86/intel/uncore: Fix IIO event constraints for Skylake Server
    perf/x86/intel/uncore: Fix filter_tid mask for CHA events on Skylake Server
    NFC: reorder the logic in nfc_{un,}register_device
    NFC: reorganize the functions in nci_request
    i40e: Fix display error code in dmesg
    i40e: Fix changing previously set num_queue_pairs for PFs
    i40e: Fix NULL ptr dereference on VSI filter sync
    i40e: Fix correct max_pkt_size on VF RX queue
  * net: virtio_net_hdr_to_skb: count transport header in UFO
      include/linux/virtio_net.h
    platform/x86: hp_accel: Fix an error handling path in 'lis3lv02d_probe()'
    mips: lantiq: add support for clk_get_parent()
    mips: bcm63xx: add support for clk_get_parent()
    MIPS: generic/yamon-dt: fix uninitialized variable error
    iavf: Fix for the false positive ASQ/ARQ errors while issuing VF reset
    iavf: check for null in iavf_fix_features
    net: bnx2x: fix variable dereferenced before check
    drm/nouveau: hdmigv100.c: fix corrupted HDMI Vendor InfoFrame
  * sched/core: Mitigate race cpus_share_cache()/update_top_cache_domain()
      kernel/sched/core.c
    mips: BCM63XX: ensure that CPU_SUPPORTS_32BIT_KERNEL is set
    sh: define __BIG_ENDIAN for math-emu
    sh: fix kconfig unmet dependency warning for FRAME_POINTER
  * f2fs: fix up f2fs_lookup tracepoints
      include/trace/events/f2fs.h
    maple: fix wrong return value of maple_bus_init().
    sh: check return code of request_irq
    powerpc/dcr: Use cmplwi instead of 3-argument cmpli
    ALSA: gus: fix null pointer dereference on pointer block
    powerpc/5200: dts: fix memory node unit name
    scsi: target: Fix alua_tg_pt_gps_count tracking
  * scsi: target: Fix ordered tag handling
      include/target/target_core_base.h
    MIPS: sni: Fix the build
  * tty: tty_buffer: Fix the softlockup issue in flush_to_ldisc
      drivers/tty/tty_buffer.c
  * ALSA: ISA: not for M68K
      sound/core/Makefile
      sound/isa/Kconfig
      sound/pci/Kconfig
    usb: host: ohci-tmio: check return value after calling platform_get_resource()
    ARM: dts: omap: fix gpmc,mux-add-data type
  * firmware_loader: fix pre-allocated buf built-in firmware use
      drivers/base/firmware_loader/main.c
    scsi: advansys: Fix kernel pointer leak
    ASoC: nau8824: Add DMI quirk mechanism for active-high jack-detect
    arm64: dts: freescale: fix arm,sp805 compatible string
    usb: typec: tipd: Remove WARN_ON in tps6598x_block_read
    usb: musb: tusb6010: check return value after calling platform_get_resource()
    arm64: dts: hisilicon: fix arm,sp805 compatible string
    scsi: lpfc: Fix list_add() corruption in lpfc_drain_txq()
    arm64: zynqmp: Fix serial compatible string
    arm64: zynqmp: Do not duplicate flash partition label property
    erofs: fix unsafe pagevec reuse of hooked pclusters
    erofs: remove the occupied parameter from z_erofs_pagevec_enqueue()
  * PCI: Add MSI masking quirk for Nvidia ION AHCI
      drivers/pci/quirks.c
  * PCI/MSI: Deal with devices lying about their MSI mask capability
      drivers/pci/msi.c
      include/linux/pci.h
  * PCI/MSI: Destroy sysfs before freeing entries
      drivers/pci/msi.c
    parisc/entry: fix trace test in syscall exit path
  * fortify: Explicitly disable Clang support
      security/Kconfig
  * ext4: fix lazy initialization next schedule time computation in more granular unit
      fs/ext4/super.c
    x86/cpu: Fix migration safety with X86_BUG_NULL_SEL
  * fuse: truncate pagecache on atomic_o_trunc
      fs/fuse/file.c
  * PCI: Add PCI_EXP_DEVCTL_PAYLOAD_* macros
      include/uapi/linux/pci_regs.h
    s390/tape: fix timer initialization in tape_std_assign()
    s390/cio: check the subchannel validity for dev_busid
  * video: backlight: Drop maximum brightness override for brightness zero
      drivers/video/backlight/backlight.c
    backlight: gpio-backlight: Correct initial power state handling
  * mm, oom: do not trigger out_of_memory from the #PF
      mm/oom_kill.c
  * mm, oom: pagefault_out_of_memory: don't force global OOM for dying tasks
      mm/oom_kill.c
    powerpc/bpf: Emit stf barrier instruction sequences for BPF_NOSPEC
    powerpc/security: Add a helper to query stf_barrier type
    powerpc/bpf: Fix BPF_SUB when imm == 0x80000000
    powerpc/bpf: Validate branch ranges
    powerpc/lib: Add helper to check if offset is within conditional branch range
    9p/net: fix missing error check in p9_check_errors
  * f2fs: should use GFP_NOFS for directory inodes
      fs/f2fs/inode.c
      fs/f2fs/namei.c
    ARM: 9156/1: drop cc-option fallbacks for architecture selection
    ARM: 9155/1: fix early early_iounmap()
    USB: chipidea: fix interrupt deadlock
    cxgb4: fix eeprom len when diagnostics not implemented
    vsock: prevent unnecessary refcnt inc for nonblocking connect
  * arm64: pgtable: make __pte_to_phys/__phys_to_pte_val inline functions
      arch/arm64/include/asm/pgtable.h
    nfc: pn533: Fix double free when pn533_fill_fragment_skbs() fails
  * llc: fix out-of-bound array index in llc_sk_dev_hash()
      include/net/llc.h
  * zram: off by one in read_block_state()
      drivers/block/zram/zram_drv.c
  * mm/zsmalloc.c: close race window between zs_pool_dec_isolated() and zs_unregister_migration()
      mm/zsmalloc.c
  * bonding: Fix a use-after-free problem when bond_sysfs_slave_add() failed
      drivers/net/bonding/bond_sysfs_slave.c
    ACPI: PMIC: Fix intel_pmic_regs_handler() read accesses
    net: davinci_emac: Fix interrupt pacing disable
    xen-pciback: Fix return in pm_ctrl_init()
    i2c: xlr: Fix a resource leak in the error handling path of 'xlr_i2c_probe()'
    scsi: qla2xxx: Turn off target reset during issue_lip
    scsi: qla2xxx: Fix gnl list corruption
  * ar7: fix kernel builds for compiler test
      drivers/watchdog/Kconfig
    watchdog: f71808e_wdt: fix inaccurate report in WDIOC_GETTIMEOUT
    m68k: set a default value for MEMORY_RESERVE
  * dmaengine: dmaengine_desc_callback_valid(): Check for `callback_result`
      drivers/dma/dmaengine.h
  * netfilter: nfnetlink_queue: fix OOB when mac header was cleared
      net/netfilter/nfnetlink_queue.c
    auxdisplay: ht16k33: Fix frame buffer device blanking
    auxdisplay: ht16k33: Connect backlight to fbdev
    auxdisplay: img-ascii-lcd: Fix lock-up when displaying empty string
    dmaengine: at_xdmac: fix AT_XDMAC_CC_PERID() macro
    mtd: spi-nor: hisi-sfc: Remove excessive clk_disable_unprepare()
    fs: orangefs: fix error return code of orangefs_revalidate_lookup()
    NFS: Fix deadlocks in nfs_scan_commit_list()
    PCI: aardvark: Don't spam about PIO Response Status
  * drm/plane-helper: fix uninitialized variable reference
      drivers/gpu/drm/drm_plane_helper.c
    pnfs/flexfiles: Fix misplaced barrier in nfs4_ff_layout_prepare_ds
  * rpmsg: Fix rpmsg_create_ept return when RPMSG config is not defined
      include/linux/rpmsg.h
    apparmor: fix error check
    power: supply: bq27xxx: Fix kernel crash on IRQ handler register error
    mips: cm: Convert to bitfield API to fix out-of-bounds access
    serial: xilinx_uartps: Fix race condition causing stuck TX
    phy: qcom-qusb2: Fix a memory leak on probe
    ASoC: cs42l42: Defer probe if request_threaded_irq() returns EPROBE_DEFER
    ASoC: cs42l42: Correct some register default values
    RDMA/mlx4: Return missed an error if device doesn't support steering
    scsi: csiostor: Uninitialized data in csio_ln_vnp_read_cbfn()
    power: supply: rt5033_battery: Change voltage values to µV
    usb: gadget: hid: fix error code in do_config()
    serial: 8250_dw: Drop wrong use of ACPI_PTR()
    video: fbdev: chipsfb: use memset_io() instead of memset()
    memory: fsl_ifc: fix leak of irq and nand_irq in fsl_ifc_ctrl_probe
    soc/tegra: Fix an error handling path in tegra_powergate_power_up()
    arm: dts: omap3-gta04a4: accelerometer irq fix
    ALSA: hda: Reduce udelay() at SKL+ position reporting
    JFS: fix memleak in jfs_mount
    MIPS: loongson64: make CPU_LOONGSON64 depends on MIPS_FP_SUPPORT
    scsi: dc395: Fix error case unwinding
    ARM: dts: at91: tse850: the emac<->phy interface is rmii
    RDMA/bnxt_re: Fix query SRQ failure
    arm64: dts: rockchip: Fix GPU register width for RK3328
    ARM: s3c: irq-s3c24xx: Fix return value check for s3c24xx_init_intc()
    RDMA/rxe: Fix wrong port_cap_flags
    ibmvnic: Process crqs after enabling interrupts
    selftests/bpf: Fix fclose/pclose mismatch in test_progs
    crypto: pcrypt - Delay write to padata->info
    net: phylink: avoid mvneta warning when setting pause parameters
    net: amd-xgbe: Toggle PLL settings during rate change
    wcn36xx: add proper DMA memory barriers in rx path
    libertas: Fix possible memory leak in probe and disconnect
    libertas_tf: Fix possible memory leak in probe and disconnect
    KVM: s390: Fix handle_sske page fault handling
    samples/kretprobes: Fix return value if register_kretprobe() failed
  * tcp: don't free a FIN sk_buff in tcp_remove_empty_skb()
      net/ipv4/tcp.c
    irq: mips: avoid nested irq_enter()
    s390/gmap: don't unconditionally call pte_unmap_unlock() in __gmap_zap()
    smackfs: use netlbl_cfg_cipsov4_del() for deleting cipso_v4_doi
    drm/msm: Fix potential NULL dereference in DPU SSPP
  * clocksource/drivers/timer-ti-dm: Select TIMER_OF
      drivers/clocksource/Kconfig
    PM: hibernate: fix sparse warnings
    nvme-rdma: fix error code in nvme_rdma_setup_ctrl
    phy: micrel: ksz8041nl: do not use power down mode
    mwifiex: Send DELBA requests according to spec
    rsi: stop thread firstly in rsi_91x_init() error handling
    platform/x86: thinkpad_acpi: Fix bitwise vs. logical warning
    mmc: mxs-mmc: disable regulator on error and in the remove function
  * net: stream: don't purge sk_error_queue in sk_stream_kill_queues()
      net/core/stream.c
    drm/msm: uninitialized variable in msm_gem_import()
    ath10k: fix max antenna gain unit
    hwmon: (pmbus/lm25066) Let compiler determine outer dimension of lm25066_coeff
  * hwmon: Fix possible memleak in __hwmon_device_register()
      drivers/hwmon/hwmon.c
    memstick: jmb38x_ms: use appropriate free function in jmb38x_ms_alloc_host()
    memstick: avoid out-of-range warning
    mmc: sdhci-omap: Fix NULL pointer exception if regulator is not configured
    b43: fix a lower bounds test
    b43legacy: fix a lower bounds test
    hwrng: mtk - Force runtime pm ops for sleep ops
    crypto: qat - disregard spurious PFVF interrupts
    crypto: qat - detect PFVF collision after ACK
    media: dvb-frontends: mn88443x: Handle errors of clk_prepare_enable()
    ath9k: Fix potential interrupt storm on queue reset
    media: em28xx: Don't use ops->suspend if it is NULL
  * cpuidle: Fix kobject memory leaks in error paths
      drivers/cpuidle/sysfs.c
    media: cx23885: Fix snd_card_free call on null card pointer
    media: si470x: Avoid card name truncation
    media: mtk-vpu: Fix a resource leak in the error handling path of 'mtk_vpu_probe()'
    media: dvb-usb: fix ununit-value in az6027_rc_query
    media: em28xx: add missing em28xx_close_extension
    drm/amdgpu: fix warning for overflow check
    net: dsa: rtl8366rb: Fix off-by-one bug
  * cgroup: Make rebind_subsystems() disable v2 controllers all at once
      kernel/cgroup/cgroup.c
  * Bluetooth: fix init and cleanup of sco_conn.timeout_work
      net/bluetooth/sco.c
    parisc/kgdb: add kgdb_roundup() to make kgdb work with idle polling
    parisc/unwind: fix unwinder when CONFIG_64BIT is enabled
  * task_stack: Fix end_of_stack() for architectures with upwards-growing stack
      include/linux/sched/task_stack.h
    parisc: fix warning in flush_tlb_all
    x86/hyperv: Protect set_hv_tscchange_cb() against getting preempted
    spi: bcm-qspi: Fix missing clk_disable_unprepare() on error in bcm_qspi_probe()
    ARM: 9136/1: ARMv7-M uses BE-8, not BE-32
  * gre/sit: Don't generate link-local addr if addr_gen_mode is IN6_ADDR_GEN_MODE_NONE
      net/ipv6/addrconf.c
    ARM: clang: Do not rely on lr register for stacktrace
    smackfs: use __GFP_NOFAIL for smk_cipso_doi()
    iwlwifi: mvm: disable RX-diversity in powersave
    PM: hibernate: Get block device exclusively in swsusp_check()
    mwl8k: Fix use-after-free in mwl8k_fw_state_machine()
    tracing/cfi: Fix cmp_entries_* functions signature mismatch
  * workqueue: make sysfs of unbound kworker cpumask more clever
      kernel/workqueue.c
  * lib/xz: Validate the value before assigning it to an enum variable
      lib/xz/xz_dec_stream.c
  * lib/xz: Avoid overlapping memcpy() with invalid input with in-place decompression
      lib/xz/xz_dec_lzma2.c
    memstick: r592: Fix a UAF bug when removing the driver
    leaking_addresses: Always print a trailing newline
    ACPI: battery: Accept charges over the design capacity as full
    ath: dfs_pattern_detector: Fix possible null-pointer dereference in channel_detector_create()
  * tracefs: Have tracefs directories not set OTH permission bits by default
      fs/tracefs/inode.c
    media: usb: dvd-usb: fix uninit-value bug in dibusb_read_eeprom_byte()
    ACPICA: Avoid evaluating methods too early during system resume
    media: rcar-csi2: Add checking to rcsi2_start_receiver()
    ia64: don't do IA64_CMPXCHG_DEBUG without CONFIG_PRINTK
    media: mceusb: return without resubmitting URB in case of -EPROTO error.
    media: s5p-mfc: Add checking to s5p_mfc_probe().
    media: s5p-mfc: fix possible null-pointer dereference in s5p_mfc_probe()
    media: uvcvideo: Return -EIO for control errors
    media: uvcvideo: Set capability in s_param
    media: netup_unidvb: handle interrupt properly according to the firmware
    media: mt9p031: Fix corrupted frame after restarting stream
    mwifiex: Properly initialize private structure on interface type changes
    mwifiex: Run SET_BSS_MODE when changing from P2P to STATION vif-type
    x86: Increase exception stack sizes
    smackfs: Fix use-after-free in netlbl_catmap_walk()
  * net: sched: update default qdisc visibility after Tx queue cnt changes
      include/net/sch_generic.h
      net/core/dev.c
      net/sched/sch_generic.c
      net/sched/sch_mq.c
    locking/lockdep: Avoid RCU-induced noinstr fail
    MIPS: lantiq: dma: reset correct number of channel
    MIPS: lantiq: dma: add small delay after reset
    platform/x86: wmi: do not fail if disabling fails
  * Bluetooth: fix use-after-free error in lock_sock_nested()
      net/bluetooth/l2cap_sock.c
  * Bluetooth: sco: Fix lock_sock() blockage by memcpy_from_msg()
      net/bluetooth/sco.c
  * drm: panel-orientation-quirks: Add quirk for KD Kurio Smart C15200 2-in-1
      drivers/gpu/drm/drm_panel_orientation_quirks.c
    USB: iowarrior: fix control-message timeouts
    USB: serial: keyspan: fix memleak on probe errors
    iio: dac: ad5446: Fix ad5622_write() return value
  * pinctrl: core: fix possible memory leak in pinctrl_enable()
      drivers/pinctrl/core.c
  * quota: correct error number in free_dqentry()
      fs/quota/quota_tree.c
  * quota: check block number when reading the block in quota file
      fs/quota/quota_tree.c
    PCI: aardvark: Read all 16-bits from PCIE_MSI_PAYLOAD_REG
    PCI: aardvark: Fix return value of MSI domain .alloc() method
    PCI: aardvark: Do not unmask unused interrupts
    PCI: aardvark: Do not clear status bits of masked interrupts
    xen/balloon: add late_initcall_sync() for initial ballooning done
    ALSA: mixer: fix deadlock in snd_mixer_oss_set_volume
    ALSA: mixer: oss: Fix racy access to slots
  * serial: core: Fix initializing and restoring termios speed
      drivers/tty/serial/serial_core.c
      include/linux/console.h
    powerpc/85xx: Fix oops when mpc85xx_smp_guts_ids node cannot be found
    power: supply: max17042_battery: use VFSOC for capacity when no rsns
    power: supply: max17042_battery: Prevent int underflow in set_soc_threshold
    signal/mips: Update (_save|_restore)_fp_context to fail with -EFAULT
  * signal: Remove the bogus sigkill_pending in ptrace_stop
      kernel/signal.c
    RDMA/qedr: Fix NULL deref for query_qp on the GSI QP
    rsi: Fix module dev_oper_mode parameter description
    rsi: fix rate mask set leading to P2P failure
    rsi: fix key enabled check causing unwanted encryption for vap_id > 0
    rsi: fix occasional initialisation failure with BT coex
    wcn36xx: handle connection loss indication
    libata: fix checking of DMA state
    mwifiex: Read a PCI register after writing the TX ring write pointer
    wcn36xx: Fix HT40 capability for 2Ghz band
    evm: mark evm_fixmode as __ro_after_init
    rtl8187: fix control-message timeouts
  * PCI: Mark Atheros QCA6174 to avoid bus reset
      drivers/pci/quirks.c
    ath10k: fix division by zero in send path
    ath10k: fix control-message timeout
    ath6kl: fix control-message timeout
    ath6kl: fix division by zero in send path
    mwifiex: fix division by zero in fw download path
    EDAC/sb_edac: Fix top-of-high-memory value for Broadwell/Haswell
    regulator: dt-bindings: samsung,s5m8767: correct s5m8767,pmic-buck-default-dvs-idx property
    regulator: s5m8767: do not use reset value as DVS voltage if GPIO DVS is disabled
    hwmon: (pmbus/lm25066) Add offset coefficients
    ia64: kprobes: Fix to pass correct trampoline address to the handler
    btrfs: call btrfs_check_rw_degradable only if there is a missing device
    btrfs: fix lost error handling when replaying directory deletes
    btrfs: clear MISSING device status bit in btrfs_close_one_device
    vmxnet3: do not stop tx queues after netif_device_detach()
    watchdog: Fix OMAP watchdog early handling
    spi: spl022: fix Microwire full duplex mode
    xen/netfront: stop tx queues during live migration
  * bpf: Prevent increasing bpf_jit_limit above max
      include/linux/filter.h
      kernel/bpf/core.c
      net/core/sysctl_net_core.c
  * drm: panel-orientation-quirks: Add quirk for Aya Neo 2021
      drivers/gpu/drm/drm_panel_orientation_quirks.c
  * mmc: winbond: don't build on M68K
      drivers/mmc/host/Kconfig
    hyperv/vmbus: include linux/bitops.h
    sfc: Don't use netif_info before net_device setup
    cavium: Fix return values of the probe function
    scsi: qla2xxx: Fix unmap of already freed sgl
    cavium: Return negative value when pci_alloc_irq_vectors() fails
    x86/irq: Ensure PI wakeup handler is unregistered before module unload
    x86/sme: Use #define USE_EARLY_PGTABLE_L5 in mem_encrypt_identity.c
  * ALSA: timer: Unconditionally unlink slave instances, too
      sound/core/timer.c
  * ALSA: timer: Fix use-after-free problem
      sound/core/timer.c
    ALSA: synth: missing check for possible NULL after the call to kstrdup
  * ALSA: usb-audio: Add registration quirk for JBL Quantum 400
      sound/usb/quirks.c
    ALSA: line6: fix control and interrupt message timeouts
    ALSA: 6fire: fix control and bulk message timeouts
    ALSA: ua101: fix division by zero at probe
    ALSA: hda/realtek: Add quirk for Clevo PC70HS
    media: ir-kbd-i2c: improve responsiveness of hauppauge zilog receivers
    media: ite-cir: IR receiver stop working after receive overflow
    crypto: s5p-sss - Add error handling in s5p_aes_probe()
    firmware/psci: fix application of sizeof to pointer
    tpm: Check for integer overflow in tpm2_map_response_body()
    parisc: Fix ptrace check on syscall return
    mmc: dw_mmc: Dont wait for DRTO on Write RSP error
    ocfs2: fix data corruption on truncate
  * libata: fix read log timeout value
      include/linux/libata.h
    Input: i8042 - Add quirk for Fujitsu Lifebook T725
    Input: elantench - fix misreporting trackpoint coordinates
  * binder: use cred instead of task for selinux checks
      drivers/android/binder.c
      include/linux/lsm_hooks.h
      include/linux/security.h
      security/security.c
      security/selinux/hooks.c
  * binder: use euid from cred instead of using task
      drivers/android/binder.c
  * xhci: Fix USB 3.1 enumeration issues by increasing roothub power-on-good delay
      drivers/usb/host/xhci-hub.c
  * ANDROID: usb: gadget: f_accessory: Mitgate handling of non-existent USB request
      drivers/usb/gadget/function/f_accessory.c
  * UPSTREAM: binder: use cred instead of task for getsecid
      drivers/android/binder.c
      include/linux/security.h
  * FROMGIT: binder: fix test regression due to sender_euid change
      drivers/android/binder.c
  * BACKPORT: binder: use cred instead of task for selinux checks
      drivers/android/binder.c
      include/linux/lsm_hooks.h
      include/linux/security.h
      security/security.c
      security/selinux/hooks.c
  * UPSTREAM: binder: use euid from cred instead of using task
      drivers/android/binder.c
  * ANDROID: setlocalversion: make KMI_GENERATION optional
      scripts/setlocalversion
    Merge 4.19.217 into android-4.19-stable
Linux 4.19.217
    rsi: fix control-message timeout
    staging: rtl8192u: fix control-message timeouts
    staging: r8712u: fix control-message timeout
    comedi: vmk80xx: fix bulk and interrupt message timeouts
    comedi: vmk80xx: fix bulk-buffer overflow
    comedi: vmk80xx: fix transfer-buffer overflows
    comedi: ni_usb6501: fix NULL-deref in command paths
    comedi: dt9812: fix DMA buffers on stack
    isofs: Fix out of bound access for corrupted isofs image
  * printk/console: Allow to disable console output by using console="" or console=null
      kernel/printk/printk.c
  * usb-storage: Add compatibility quirk flags for iODD 2531/2541
      drivers/usb/storage/unusual_devs.h
    usb: musb: Balance list entry in musb_gadget_queue
  * usb: gadget: Mark USB_FSL_QE broken on 64-bit
      drivers/usb/gadget/udc/Kconfig
  * usb: ehci: handshake CMD_RUN instead of STS_HALT
      drivers/usb/host/ehci-hcd.c
      drivers/usb/host/ehci-platform.c
      drivers/usb/host/ehci.h
    Revert "x86/kvm: fix vcpu-id indexed array sizes"
    Merge 4.19.216 into android-4.19-stable
Linux 4.19.216
  * ARM: 9120/1: Revert "amba: make use of -1 IRQs warn"
      drivers/amba/bus.c
  * arch: pgtable: define MAX_POSSIBLE_PHYSMEM_BITS where needed
      include/asm-generic/pgtable.h
    sfc: Fix reading non-legacy supported link modes
    IB/qib: Protect from buffer overflow in struct qib_user_sdma_pkt fields
    IB/qib: Use struct_size() helper
    media: firewire: firedtv-avc: fix a buffer overflow in avc_ca_pmt()
  * scsi: core: Put LLD module refcnt after SCSI device is released
      drivers/scsi/scsi.c
      drivers/scsi/scsi_sysfs.c
  * UPSTREAM: security: selinux: allow per-file labeling for bpffs
      security/selinux/hooks.c

Bug: 210364486
Change-Id: I6232c6c7fde1bf54c16a32dd632456dc41e01e6e
Signed-off-by: JohnnLee <johnnlee@google.com>
2021-12-29 06:52:25 +00:00
Peter Zijlstra
b92ad7afb8 locking/lockdep: Avoid RCU-induced noinstr fail
[ Upstream commit ce0b9c805dd66d5e49fd53ec5415ae398f4c56e6 ]

vmlinux.o: warning: objtool: look_up_lock_class()+0xc7: call to rcu_read_lock_any_held() leaves .noinstr.text section

Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Link: https://lore.kernel.org/r/20210624095148.311980536@infradead.org
Signed-off-by: Sasha Levin <sashal@kernel.org>
2021-11-26 11:36:04 +01:00
Lucas Wei
a93de36337 Merge android-4.19-stable (4.19.189) into android-msm-pixel-4.19-lts
Merge 4.19.189 into android-4.19-stable
Linux 4.19.189
    USB: CDC-ACM: fix poison/unpoison imbalance
    net: hso: fix NULL-deref on disconnect regression
    x86/crash: Fix crash_setup_memmap_entries() out-of-bounds access
    ia64: tools: remove duplicate definition of ia64_mf() on ia64
    ia64: fix discontig.c section mismatches
    cavium/liquidio: Fix duplicate argument
    xen-netback: Check for hotplug-status existence before watching
    s390/entry: save the caller of psw_idle
    net: geneve: check skb is large enough for IPv4/IPv6 header
    ARM: dts: Fix swapped mmc order for omap3
    HID: wacom: Assign boolean values to a bool variable
    HID: alps: fix error return code in alps_input_configured()
  * HID: google: add don USB id
      drivers/hid/hid-ids.h
    perf/x86/intel/uncore: Remove uncore extra PCI dev HSWEP_PCI_PCU_3
  * locking/qrwlock: Fix ordering in queued_write_lock_slowpath()
      kernel/locking/qrwlock.c
    pinctrl: lewisburg: Update number of pins in community
  * gup: document and work around "COW can break either way" issue
      mm/gup.c
  * net: phy: marvell: fix detection of PHY on Topaz switches
      include/linux/marvell_phy.h
    ARM: 9071/1: uprobes: Don't hook on thumb instructions
    ARM: footbridge: fix PCI interrupt mapping
    ibmvnic: remove duplicate napi_schedule call in open function
    ibmvnic: remove duplicate napi_schedule call in do_reset function
    ibmvnic: avoid calling napi_disable() twice
    i40e: fix the panic when running bpf in xdpdrv mode
  * net: ip6_tunnel: Unregister catch-all devices
      net/ipv6/ip6_tunnel.c
  * net: sit: Unregister catch-all devices
      net/ipv6/sit.c
    net: davicom: Fix regulator not turned off on failed probe
    netfilter: nft_limit: avoid possible divide error in nft_limit_init
  * netfilter: conntrack: do not print icmpv6 as unknown via /proc
      net/netfilter/nf_conntrack_standalone.c
    scsi: libsas: Reset num_scatter if libata marks qc as NODATA
  * arm64: alternatives: Move length validation in alternative_{insn, endif}
      arch/arm64/include/asm/alternative.h
  * arm64: fix inline asm in load_unaligned_zeropad()
      arch/arm64/include/asm/word-at-a-time.h
  * readdir: make sure to verify directory entry for legacy interfaces too
      fs/readdir.c
  * dm verity fec: fix misaligned RS roots IO
      drivers/md/dm-verity-fec.c
      drivers/md/dm-verity-fec.h
    HID: wacom: set EV_KEY and EV_ABS only for non-HID_GENERIC type of devices
    Input: i8042 - fix Pegatron C15B ID entry
    Input: s6sy761 - fix coordinate read bit shift
    mac80211: clear sta->fast_rx when STA removed from 4-addr VLAN
    pcnet32: Use pci_resource_len to validate PCI resource
    net: ieee802154: forbid monitor for add llsec seclevel
    net: ieee802154: stop dump llsec seclevels for monitors
    net: ieee802154: forbid monitor for add llsec devkey
    net: ieee802154: stop dump llsec devkeys for monitors
    net: ieee802154: forbid monitor for add llsec dev
    net: ieee802154: stop dump llsec devs for monitors
    net: ieee802154: stop dump llsec keys for monitors
    scsi: scsi_transport_srp: Don't block target in SRP_PORT_LOST state
    ASoC: fsl_esai: Fix TDM slot setup for I2S mode
    drm/msm: Fix a5xx/a6xx timestamps
    ARM: keystone: fix integer overflow warning
  * neighbour: Disregard DEAD dst in neigh_update
      net/core/neighbour.c
    arc: kernel: Return -EFAULT if copy_to_user() fails
    lockdep: Add a missing initialization hint to the "INFO: Trying to register non-static key" message
    ARM: dts: Fix moving mmc devices with aliases for omap4 & 5
    ARM: dts: Drop duplicate sha2md5_fck to fix clk_disable race
  * dmaengine: dw: Make it dependent to HAS_IOMEM
      drivers/dma/dw/Kconfig
  * gpio: sysfs: Obey valid_mask
      drivers/gpio/gpiolib-sysfs.c
    Input: nspire-keypad - enable interrupts only when opened
  * net/sctp: fix race condition in sctp_destroy_sock
      net/sctp/socket.c
    ANDROID: GKI: update allowed list for incrementalfs.ko
  * ANDROID: fs-verity: Export function to check signatures
      fs/verity/signature.c
      include/linux/fsverity.h
  * UPSTREAM: fs-verity: move structs needed for file signing to UAPI header
      fs/verity/fsverity_private.h
      include/uapi/linux/fsverity.h
  * UPSTREAM: fs-verity: rename "file measurement" to "file digest"
      fs/verity/enable.c
      fs/verity/fsverity_private.h
      fs/verity/measure.c
      fs/verity/open.c
      fs/verity/signature.c
  * UPSTREAM: fs-verity: rename fsverity_signed_digest to fsverity_formatted_digest
      fs/verity/fsverity_private.h
      fs/verity/signature.c
  * UPSTREAM: fs-verity: remove filenames from file comments
      fs/verity/enable.c
      fs/verity/hash_algs.c
      fs/verity/init.c
      fs/verity/measure.c
      fs/verity/open.c
      fs/verity/signature.c
      fs/verity/verify.c
    ANDROID: clang: update to 12.0.5
    Merge 4.19.188 into android-4.19-stable
Linux 4.19.188
    xen/events: fix setting irq affinity
    perf map: Tighten snprintf() string precision to pass gcc check on some 32-bit arches
  * driver core: Fix locking bug in deferred_probe_timeout_work_func()
      drivers/base/dd.c
  * netfilter: x_tables: fix compat match/target pad out-of-bound write
      net/ipv4/netfilter/arp_tables.c
      net/ipv4/netfilter/ip_tables.c
      net/ipv6/netfilter/ip6_tables.c
      net/netfilter/x_tables.c
  * staging: m57621-mmc: delete driver from the tree.
      drivers/staging/Kconfig
      drivers/staging/Makefile
    net: phy: broadcom: Only advertise EEE for supported modes
    riscv,entry: fix misaligned base for excp_vect_table
  * block: only update parent bi_status when bio fail
      block/bio.c
    drm/tegra: dc: Don't set PLL clock to 0Hz
    gfs2: report "already frozen/thawed" errors
    drm/imx: imx-ldb: fix out of bounds array access warning
  * KVM: arm64: Disable guest access to trace filter controls
      arch/arm64/include/asm/kvm_arm.h
  * KVM: arm64: Hide system instruction access to Trace registers
      arch/arm64/kernel/cpufeature.c
  * Revert "net: xfrm: Localize sequence counter per network namespace"
      include/net/netns/xfrm.h
      net/xfrm/xfrm_state.c
    Merge 4.19.187 into android-4.19-stable
  * ANDROID: Incremental fs: Set credentials before reading/writing
      fs/incfs/data_mgmt.c
      fs/incfs/format.c
      fs/incfs/format.h
      fs/incfs/main.c
      fs/incfs/vfs.c
Linux 4.19.187
    Revert "cifs: Set CIFS_MOUNT_USE_PREFIX_PATH flag on setting cifs_sb->prepath."
    net: ieee802154: stop dump llsec params for monitors
    net: ieee802154: forbid monitor for del llsec seclevel
    net: ieee802154: forbid monitor for set llsec params
    net: ieee802154: fix nl802154 del llsec devkey
    net: ieee802154: fix nl802154 add llsec key
    net: ieee802154: fix nl802154 del llsec dev
    net: ieee802154: fix nl802154 del llsec key
    net: ieee802154: nl-mac: fix check on panid
    net: mac802154: Fix general protection fault
    drivers: net: fix memory leak in peak_usb_create_dev
    drivers: net: fix memory leak in atusb_probe
  * net: tun: set tun->dev->addr_len during TUNSETLINK processing
      drivers/net/tun.c
  * cfg80211: remove WARN_ON() in cfg80211_sme_connect
      net/wireless/sme.c
  * net: sched: bump refcount for new action in ACT replace mode
      net/sched/act_api.c
    clk: socfpga: fix iomem pointer cast on 64-bit
    RDMA/cxgb4: check for ipv6 address properly while destroying listener
  * net/mlx5: Fix PBMC register mapping
      include/linux/mlx5/mlx5_ifc.h
  * net/mlx5: Fix placement of log_max_flow_counter
      include/linux/mlx5/mlx5_ifc.h
    s390/cpcmd: fix inline assembly register clobbering
  * workqueue: Move the position of debug_work_activate() in __queue_work()
      kernel/workqueue.c
  * clk: fix invalid usage of list cursor in unregister
      drivers/clk/clk.c
  * clk: fix invalid usage of list cursor in register
      drivers/clk/clk.c
    soc/fsl: qbman: fix conflicting alignment attributes
    ASoC: sunxi: sun4i-codec: fill ASoC card owner
    net/ncsi: Avoid channel_monitor hrtimer deadlock
    ARM: dts: imx6: pbab01: Set vmmc supply for both SD interfaces
  * net:tipc: Fix a double free in tipc_sk_mcast_rcv
      net/tipc/socket.c
    cxgb4: avoid collecting SGE_QBASE regs during traffic
    gianfar: Handle error code at MAC address change
  * sch_red: fix off-by-one checks in red_check_params()
      include/net/red.h
    amd-xgbe: Update DMA coherency values
    i40e: Fix kernel oops when i40e driver removes VF's
    i40e: Added Asym_Pause to supported link modes
    ASoC: wm8960: Fix wrong bclk and lrclk with pll enabled for some chips
  * net: xfrm: Localize sequence counter per network namespace
      include/net/netns/xfrm.h
      net/xfrm/xfrm_state.c
    regulator: bd9571mwv: Fix AVS and DVFS voltage range
  * xfrm: interface: fix ipv4 pmtu check to honor ip header df
      net/xfrm/xfrm_interface.c
    virtio_net: Add XDP meta data support
  * i2c: turn recovery error on init to debug
      drivers/i2c/i2c-core-base.c
    usbip: synchronize event handler with sysfs code paths
    usbip: vudc synchronize sysfs code paths
    usbip: stub-dev synchronize sysfs code paths
    usbip: add sysfs_lock to synchronize sysfs code paths
  * net-ipv6: bugfix - raw & sctp - switch to ipv6_can_nonlocal_bind()
      net/ipv6/raw.c
      net/sctp/ipv6.c
    net: sched: sch_teql: fix null-pointer dereference
  * net: ensure mac header is set in virtio_net_hdr_to_skb()
      include/linux/virtio_net.h
    net: hso: fix null-ptr-deref during tty device unregistration
    ice: Increase control queue timeout
    batman-adv: initialize "struct batadv_tvlv_tt_vlan_data"->reserved field
    ARM: dts: turris-omnia: configure LED[2]/INTn pin as interrupt pin
    parisc: avoid a warning on u8 cast for cmpxchg on u8 pointers
  * parisc: parisc-agp requires SBA IOMMU driver
      drivers/char/agp/Kconfig
  * fs: direct-io: fix missing sdio->boundary
      fs/direct-io.c
    ocfs2: fix deadlock between setattr and dio_end_io_write
    nds32: flush_dcache_page: use page_mapping_file to avoid races with swapoff
    ia64: fix user_stack_pointer() for ptrace()
  * net: ipv6: check for validity before dereferencing cfg->fc_nlinfo.nlh
      net/ipv6/route.c
    xen/evtchn: Change irq_info lock to raw_spinlock_t
    nfc: Avoid endless loops caused by repeated llcp_sock_connect()
    nfc: fix memory leak in llcp_sock_connect()
    nfc: fix refcount leak in llcp_sock_connect()
    nfc: fix refcount leak in llcp_sock_bind()
    ASoC: intel: atom: Stop advertising non working S24LE support
    ALSA: aloop: Fix initialization of controls
    Merge 4.19.186 into android-4.19-stable
Linux 4.19.186
  * init/Kconfig: make COMPILE_TEST depend on HAS_IOMEM
      init/Kconfig
  * init/Kconfig: make COMPILE_TEST depend on !S390
      init/Kconfig
    bpf, x86: Validate computation of branch displacements for x86-32
    bpf, x86: Validate computation of branch displacements for x86-64
    cifs: Silently ignore unknown oplock break handle
    cifs: revalidate mapping when we open files for SMB1 POSIX
    ia64: fix format strings for err_inject
    ia64: mca: allocate early mca with GFP_ATOMIC
    scsi: target: pscsi: Clean up after failure in pscsi_map_sg()
    x86/build: Turn off -fcf-protection for realmode targets
    platform/x86: thinkpad_acpi: Allow the FnLock LED to change state
    drm/msm: Ratelimit invalid-fence message
    mac80211: choose first enabled channel for monitor
    mISDN: fix crash in fritzpci
    net: pxa168_eth: Fix a potential data race in pxa168_eth_remove
    platform/x86: intel-hid: Support Lenovo ThinkPad X1 Tablet Gen 2
    bus: ti-sysc: Fix warning on unbind if reset is not deasserted
    ARM: dts: am33xx: add aliases for mmc interfaces
    Merge 4.19.185 into android-4.19-stable
Linux 4.19.185
    drivers: video: fbcon: fix NULL dereference in fbcon_cursor()
    staging: rtl8192e: Change state information from u16 to u8
    staging: rtl8192e: Fix incorrect source in memcpy()
    usb: dwc2: Fix HPRT0.PrtSusp bit setting for HiKey 960 board.
    usb: gadget: udc: amd5536udc_pci fix null-ptr-dereference
    USB: cdc-acm: fix use-after-free after probe failure
    USB: cdc-acm: fix double free on probe failure
    USB: cdc-acm: downgrade message to debug
    USB: cdc-acm: untangle a circular dependency between callback and softint
    cdc-acm: fix BREAK rx code path adding necessary calls
    usb: xhci-mtk: fix broken streams issue on 0.96 xHCI
    usb: musb: Fix suspend with devices connected for a64
  * USB: quirks: ignore remote wake-up on Fibocom L850-GL LTE modem
      drivers/usb/core/quirks.c
    usbip: vhci_hcd fix shift out-of-bounds in vhci_hub_control()
    firewire: nosy: Fix a use-after-free bug in nosy_ioctl()
  * extcon: Fix error handling in extcon_dev_register
      drivers/extcon/extcon.c
  * extcon: Add stubs for extcon_register_notifier_all() functions
      include/linux/extcon.h
    pinctrl: rockchip: fix restore error in resume
    reiserfs: update reiserfs_xattrs_initialized() condition
    drm/amdgpu: check alignment on CPU page for bo map
    drm/amdgpu: fix offset calculation in amdgpu_vm_bo_clear_mappings()
  * mm: fix race by making init_zero_pfn() early_initcall
      mm/memory.c
  * tracing: Fix stack trace event size
      kernel/trace/trace.c
  * PM: runtime: Fix ordering in pm_runtime_get_suppliers()
      drivers/base/power/runtime.c
  * PM: runtime: Fix race getting/putting suppliers at probe
      drivers/base/power/runtime.c
    ALSA: hda/realtek: call alc_update_headset_mode() in hp_automute_hook
    ALSA: hda/realtek: fix a determine_headset_type issue for a Dell AIO
  * ALSA: usb-audio: Apply sample rate quirk to Logitech Connect
      sound/usb/quirks.c
  * bpf: Remove MTU check in __bpf_skb_max_len
      net/core/filter.c
    net: wan/lmc: unregister device when no matching device is found
    appletalk: Fix skb allocation size in loopback case
    net: ethernet: aquantia: Handle error cleanup of start on open
    ath10k: hold RCU lock when calling ieee80211_find_sta_by_ifaddr()
    brcmfmac: clear EAP/association status bits on linkdown events
  * ext4: do not iput inode under running transaction in ext4_rename()
      fs/ext4/namei.c
  * locking/ww_mutex: Simplify use_ww_ctx & ww_ctx handling
      kernel/locking/mutex.c
  * thermal/core: Add NULL pointer check before using cooling device stats
      drivers/thermal/thermal_sysfs.c
    ASoC: rt5659: Update MCLK rate in set_sysclk()
    staging: comedi: cb_pcidas64: fix request_irq() warn
    staging: comedi: cb_pcidas: fix request_irq() warn
    scsi: qla2xxx: Fix broken #endif placement
    scsi: st: Fix a use after free in st_open()
    vhost: Fix vhost_vq_reset()
    ASoC: cs42l42: Always wait at least 3ms after reset
    ASoC: cs42l42: Fix mixer volume control
    ASoC: cs42l42: Fix channel width support
    ASoC: cs42l42: Fix Bitclock polarity inversion
    ASoC: es8316: Simplify adc_pga_gain_tlv table
    ASoC: sgtl5000: set DAP_AVC_CTRL register to correct default value on probe
    ASoC: rt5651: Fix dac- and adc- vol-tlv values being off by a factor of 10
    ASoC: rt5640: Fix dac- and adc- vol-tlv values being off by a factor of 10
    rpc: fix NULL dereference on kmalloc failure
  * ext4: fix bh ref count on error paths
      fs/ext4/inode.c
  * ipv6: weaken the v4mapped source check
      net/ipv6/ip6_input.c
      net/ipv6/tcp_ipv6.c
  * tcp: relookup sock for RST+ACK packets handled by obsolete req sock
      include/net/inet_connection_sock.h
      net/ipv4/inet_connection_sock.c
      net/ipv4/tcp_minisocks.c
    selinux: vsock: Set SID for socket returned by accept()
  * Revert "can: dev: Move device back to init netns on owning netns delete"
      include/net/rtnetlink.h
      net/core/dev.c
    Merge 4.19.184 into android-4.19-stable
    ANDROID: Add OWNERS files referring to the respective android-mainline OWNERS
    BACKPORT: drm/virtio: Use vmalloc for command buffer allocations.
    UPSTREAM: drm/virtio: Rewrite virtio_gpu_queue_ctrl_buffer using fenced version.
Linux 4.19.184
    xen-blkback: don't leak persistent grants from xen_blkbk_map()
    can: peak_usb: Revert "can: peak_usb: add forgotten supported devices"
  * ext4: add reclaim checks to xattr code
      fs/ext4/xattr.c
    mac80211: fix double free in ibss_leave
  * net: qrtr: fix a kernel-infoleak in qrtr_recvmsg()
      net/qrtr/qrtr.c
  * net: sched: validate stab values
      include/net/red.h
  * can: dev: Move device back to init netns on owning netns delete
      include/net/rtnetlink.h
      net/core/dev.c
    x86/mem_encrypt: Correct physical address calculation in __set_clr_pte_enc()
  * locking/mutex: Fix non debug version of mutex_lock_io_nested()
      include/linux/mutex.h
    scsi: mpt3sas: Fix error return code of mpt3sas_base_attach()
    scsi: qedi: Fix error return code of qedi_alloc_global_queues()
    perf auxtrace: Fix auxtrace queue conflict
  * dm verity: add root hash pkcs#7 signature verification
      drivers/md/dm-verity-target.c
  * ACPI: scan: Use unique number for instance_no
      include/acpi/acpi_bus.h
    ACPI: scan: Rearrange memory allocation in acpi_device_add()
  * Revert "netfilter: x_tables: Update remaining dereference to RCU"
      net/ipv4/netfilter/arp_tables.c
      net/ipv4/netfilter/ip_tables.c
      net/ipv6/netfilter/ip6_tables.c
  * netfilter: x_tables: Use correct memory barriers.
      include/linux/netfilter/x_tables.h
      net/netfilter/x_tables.c
  * Revert "netfilter: x_tables: Switch synchronization to RCU"
      include/linux/netfilter/x_tables.h
      net/ipv4/netfilter/arp_tables.c
      net/ipv4/netfilter/ip_tables.c
      net/ipv6/netfilter/ip6_tables.c
      net/netfilter/x_tables.c
  * bpf: Don't do bpf_cgroup_storage_set() for kuprobe/tp programs
      include/linux/bpf.h
    RDMA/cxgb4: Fix adapter LE hash errors while destroying ipv6 listening server
    net/mlx5e: Fix error path for ethtool set-priv-flag
    arm64: kdump: update ppos when reading elfcorehdr
    drm/msm: fix shutdown hook in case GPU components failed to bind
    net: stmmac: dwmac-sun8i: Provide TX and RX fifo sizes
    net: cdc-phonet: fix data-interface release on probe failure
    mac80211: fix rate mask reset
    can: m_can: m_can_do_rx_poll(): fix extraneous msg loss warning
    can: c_can: move runtime PM enable/disable to c_can_platform
    can: c_can_pci: c_can_pci_remove(): fix use-after-free
    can: flexcan: flexcan_chip_freeze(): fix chip freeze for missing bitrate
    can: peak_usb: add forgotten supported devices
  * netfilter: ctnetlink: fix dump of the expect mask attribute
      net/netfilter/nf_conntrack_netlink.c
    ftgmac100: Restart MAC HW once
    net/qlcnic: Fix a use after free in qlcnic_83xx_get_minidump_template
    e1000e: Fix error handling in e1000_set_d0_lplu_state_82571
    e1000e: add rtnl_lock() to e1000_reset_task
    net: dsa: bcm_sf2: Qualify phydev->dev_flags based on port
  * macvlan: macvlan_count_rx() needs to be aware of preemption
      include/linux/if_macvlan.h
    libbpf: Fix INSTALL flag order
  * veth: Store queue_mapping independently of XDP prog presence
      drivers/net/veth.c
    bus: omap_l3_noc: mark l3 irqs as IRQF_NO_THREAD
  * dm ioctl: fix out of bounds array access when no devices
      drivers/md/dm-ioctl.c
    ARM: dts: at91-sama5d27_som1: fix phy address to 7
    arm64: dts: ls1043a: mark crypto engine dma coherent
    arm64: dts: ls1012a: mark crypto engine dma coherent
    arm64: dts: ls1046a: mark crypto engine dma coherent
    squashfs: fix xattr id and id lookup sanity checks
  * squashfs: fix inode lookup sanity checks
      fs/squashfs/squashfs_fs.h
    platform/x86: intel-vbtn: Stop reporting SW_DOCK events
    netsec: restore phy power state after controller reset
    ia64: fix ptrace(PTRACE_SYSCALL_INFO_EXIT) sign
    ia64: fix ia64_syscall_get_set_arguments() for break-based syscalls
  * block: Suppress uevent for hidden device when removed
      block/genhd.c
    nfs: we don't support removing system.nfs4_acl
  * drm/radeon: fix AGP dependency
      drivers/gpu/drm/Kconfig
  * u64_stats,lockdep: Fix u64_stats_init() vs lockdep
      include/linux/u64_stats_sync.h
    sparc64: Fix opcode filtering in handling of no fault loads
    atm: idt77252: fix null-ptr-dereference
    atm: uPD98402: fix incorrect allocation
    net: wan: fix error return code of uhdlc_init()
    net: hisilicon: hns: fix error return code of hns_nic_clear_all_rx_fetch()
    NFS: Correct size calculation for create reply length
  * nfs: fix PNFS_FLEXFILE_LAYOUT Kconfig default
      fs/nfs/Kconfig
    gpiolib: acpi: Add missing IRQF_ONESHOT
    gianfar: fix jumbo packets+napi+rx overrun crash
    sun/niu: fix wrong RXMAC_BC_FRM_CNT_COUNT count
    net: tehuti: fix error return code in bdx_probe()
    ixgbe: Fix memleak in ixgbe_configure_clsu32
  * Revert "r8152: adjust the settings about MAC clock speed down for RTL8153"
      drivers/net/usb/r8152.c
    atm: lanai: dont run lanai_dev_close if not open
    atm: eni: dont release is never initialized
    powerpc/4xx: Fix build errors from mfdcr()
    net: fec: ptp: avoid register access when ipg clock is disabled
  * ANDROID: Make vsock virtio packet buff size configurable
      include/linux/virtio_vsock.h
  * ANDROID: fix up ext4 build from 4.19.183
      fs/ext4/namei.c

Bug: 187007303
Change-Id: I7bd7cc06a4928013a8ef194a55aadbb59ff0c6c1
Signed-off-by: Lucas Wei <lucaswei@google.com>
2021-05-19 21:07:43 +08:00
Tetsuo Handa
2bd197dfdc lockdep: Add a missing initialization hint to the "INFO: Trying to register non-static key" message
[ Upstream commit 3a85969e9d912d5dd85362ee37b5f81266e00e77 ]

Since this message is printed when dynamically allocated spinlocks (e.g.
kzalloc()) are used without initialization (e.g. spin_lock_init()),
suggest to developers to check whether initialization functions for objects
were called, before making developers wonder what annotation is missing.

[ mingo: Minor tweaks to the message. ]

Signed-off-by: Tetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Link: https://lore.kernel.org/r/20210321064913.4619-1-penguin-kernel@I-love.SAKURA.ne.jp
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2021-04-28 13:16:48 +02:00
lucaswei
d43b6a3c5a Merge android-4.19-stable (4.19.125) into android-msm-pixel-4.19-lts
Merge 4.19.125 into android-4.19-stable
    Merge remote-tracking branch 'aosp/upstream-f2fs-stable-linux-4.19.y' into android-4.19-stable
Linux 4.19.125
    rxrpc: Fix ack discard
  * rxrpc: Trace discarded ACKs
      include/trace/events/rxrpc.h
    iio: adc: stm32-dfsdm: fix device used to request dma
    iio: adc: stm32-dfsdm: Use dma_request_chan() instead dma_request_slave_channel()
    iio: adc: stm32-adc: fix device used to request dma
    iio: adc: stm32-adc: Use dma_request_chan() instead dma_request_slave_channel()
    x86/unwind/orc: Fix unwind_get_return_address_ptr() for inactive tasks
    rxrpc: Fix a memory leak in rxkad_verify_response()
    rapidio: fix an error in get_user_pages_fast() error handling
    ipack: tpci200: fix error return code in tpci200_register()
    mei: release me_cl object reference
    misc: rtsx: Add short delay after exit from ASPM
    iio: dac: vf610: Fix an error handling path in 'vf610_dac_probe()'
    iio: sca3000: Remove an erroneous 'get_device()'
    staging: greybus: Fix uninitialized scalar variable
    staging: iio: ad2s1210: Fix SPI reading
    Revert "gfs2: Don't demote a glock until its revokes are written"
    brcmfmac: abort and release host after error
    tty: serial: qcom_geni_serial: Fix wrap around of TX buffer
    cxgb4/cxgb4vf: Fix mac_hlist initialization and free
    cxgb4: free mac_hlist properly
    net: bcmgenet: abort suspend on error
    net: bcmgenet: code movement
    Revert "net/ibmvnic: Fix EOI when running in XIVE mode"
    media: fdp1: Fix R-Car M3-N naming in debug message
    thunderbolt: Drop duplicated get_switch_at_route()
    staging: most: core: replace strcpy() by strscpy()
    libnvdimm/btt: Fix LBA masking during 'free list' population
    libnvdimm/btt: Remove unnecessary code in btt_freelist_init
  * nfit: Add Hyper-V NVDIMM DSM command set to white list
      include/uapi/linux/ndctl.h
    powerpc/64s: Disable STRICT_KERNEL_RWX
    powerpc: Remove STRICT_KERNEL_RWX incompatibility with RELOCATABLE
    drm/i915/gvt: Init DPLL/DDI vreg for virtual display instead of inheritance.
    dmaengine: owl: Use correct lock in owl_dma_get_pchan()
    dmaengine: tegra210-adma: Fix an error handling path in 'tegra_adma_probe()'
    apparmor: Fix aa_label refcnt leak in policy_update
    apparmor: fix potential label refcnt leak in aa_change_profile
    apparmor: Fix use-after-free in aa_audit_rule_init
    drm/etnaviv: fix perfmon domain interation
    ALSA: hda/realtek - Add more fixup entries for Clevo machines
    ALSA: hda/realtek - Fix silent output on Gigabyte X570 Aorus Xtreme
  * ALSA: pcm: fix incorrect hw_base increase
      sound/core/pcm_lib.c
    ALSA: iec1712: Initialize STDSP24 properly when using the model=staudio option
    padata: purge get_cpu and reorder_via_wq from padata_do_serial
    padata: initialize pd->cpu with effective cpumask
  * padata: Replace delayed timer with immediate workqueue in padata_reorder
      include/linux/padata.h
    ARM: futex: Address build warning
    platform/x86: asus-nb-wmi: Do not load on Asus T100TA and T200TA
  * USB: core: Fix misleading driver bug report
      drivers/usb/core/message.c
    stmmac: fix pointer check after utilization in stmmac_interrupt
    ceph: fix double unlock in handle_cap_export()
  * HID: quirks: Add HID_QUIRK_NO_INIT_REPORTS quirk for Dell K12A keyboard-dock
      drivers/hid/hid-ids.h
      drivers/hid/hid-quirks.c
    gtp: set NLM_F_MULTI flag in gtp_genl_dump_pdp()
    x86/apic: Move TSC deadline timer debug printk
  * HID: i2c-hid: reset Synaptics SYNA2393 on resume
      drivers/hid/hid-ids.h
    scsi: ibmvscsi: Fix WARN_ON during event pool release
  * component: Silence bind error on -EPROBE_DEFER
      drivers/base/component.c
    aquantia: Fix the media type of AQC100 ethernet controller in the driver
    vhost/vsock: fix packet delivery order to monitoring devices
  * configfs: fix config_item refcnt leak in configfs_rmdir()
      fs/configfs/dir.c
    scsi: qla2xxx: Delete all sessions before unregister local nvme port
    scsi: qla2xxx: Fix hang when issuing nvme disconnect-all in NPIV
  * HID: alps: ALPS_1657 is too specific; use U1_UNICORN_LEGACY instead
      drivers/hid/hid-ids.h
  * HID: alps: Add AUI1657 device ID
      drivers/hid/hid-ids.h
  * HID: multitouch: add eGalaxTouch P80H84 support
      drivers/hid/hid-ids.h
      drivers/hid/hid-multitouch.c
  * gcc-common.h: Update for GCC 10
      scripts/gcc-plugins/gcc-common.h
    ubi: Fix seq_file usage in detailed_erase_block_info debugfs file
    i2c: mux: demux-pinctrl: Fix an error handling path in 'i2c_demux_pinctrl_probe()'
    iommu/amd: Fix over-read of ACPI UID from IVRS table
    ubifs: remove broken lazytime support
  * fix multiplication overflow in copy_fdtable()
      fs/file.c
    mtd: spinand: Propagate ECC information to the MTD structure
    ima: Fix return value of ima_write_policy()
    evm: Check also if *tfm is an error pointer in init_desc()
    ima: Set file->f_mode instead of file->f_flags in ima_calc_file_hash()
    riscv: set max_pfn to the PFN of the last page
    KVM: SVM: Fix potential memory leak in svm_cpu_init()
  * i2c: dev: Fix the race between the release of i2c_dev and cdev
      drivers/i2c/i2c-dev.c
  * ubsan: build ubsan.c more conservatively
      lib/Makefile
  * x86/uaccess, ubsan: Fix UBSAN vs. SMAP
      lib/Makefile
  * ANDROID: scsi: ufs: Handle clocks when lrbp fails
      drivers/scsi/ufs/ufshcd.c
  * ANDROID: fscrypt: handle direct I/O with IV_INO_LBLK_32
      fs/crypto/crypto.c
      fs/crypto/inline_crypt.c
      fs/direct-io.c
      fs/ext4/inode.c
      fs/f2fs/f2fs.h
      include/linux/fscrypt.h
  * BACKPORT: FROMLIST: fscrypt: add support for IV_INO_LBLK_32 policies
      fs/crypto/crypto.c
      fs/crypto/fscrypt_private.h
      fs/crypto/inline_crypt.c
      fs/crypto/keyring.c
      fs/crypto/keysetup.c
      fs/crypto/policy.c
      include/uapi/linux/fscrypt.h
    ANDROID: Update the ABI xml and qcom whitelist
    ANDROID: Fix build.config.gki-debug
    Merge 4.19.124 into android-4.19-stable
Linux 4.19.124
  * Makefile: disallow data races on gcc-10 as well
      Makefile
    KVM: x86: Fix off-by-one error in kvm_vcpu_ioctl_x86_setup_mce
    ARM: dts: r8a7740: Add missing extal2 to CPG node
    arm64: dts: renesas: r8a77980: Fix IPMMU VIP[01] nodes
    ARM: dts: r8a73a4: Add missing CMT1 interrupts
    arm64: dts: rockchip: Rename dwc3 device nodes on rk3399 to make dtc happy
    arm64: dts: rockchip: Replace RK805 PMIC node name with "pmic" on rk3328 boards
  * clk: Unlink clock if failed to prepare or enable
      drivers/clk/clk.c
    Revert "ALSA: hda/realtek: Fix pop noise on ALC225"
    usb: gadget: legacy: fix error return code in cdc_bind()
    usb: gadget: legacy: fix error return code in gncm_bind()
    usb: gadget: audio: Fix a missing error return value in audio_bind()
    usb: gadget: net2272: Fix a memory leak in an error handling path in 'net2272_plat_probe()'
  * dwc3: Remove check for HWO flag in dwc3_gadget_ep_reclaim_trb_sg()
      drivers/usb/dwc3/gadget.c
    clk: rockchip: fix incorrect configuration of rk3228 aclk_gpu* clocks
  * exec: Move would_dump into flush_old_exec
      fs/exec.c
    x86/unwind/orc: Fix error handling in __unwind_start()
  * x86: Fix early boot crash on gcc-10, third try
      include/linux/compiler.h
      init/main.c
    cifs: fix leaked reference on requeued write
    ARM: dts: imx27-phytec-phycard-s-rdk: Fix the I2C1 pinctrl entries
    ARM: dts: dra7: Fix bus_dma_limit for PCIe
  * usb: xhci: Fix NULL pointer dereference when enqueuing trbs from urb sg list
      drivers/usb/host/xhci-ring.c
  * USB: gadget: fix illegal array access in binding with UDC
      drivers/usb/gadget/configfs.c
  * usb: host: xhci-plat: keep runtime active when removing host
      drivers/usb/host/xhci-plat.c
  * usb: core: hub: limit HUB_QUIRK_DISABLE_AUTOSUSPEND to USB5534B
      drivers/usb/core/hub.c
  * ALSA: usb-audio: Add control message quirk delay for Kingston HyperX headset
      sound/usb/quirks.c
  * ALSA: rawmidi: Fix racy buffer resize under concurrent accesses
      include/sound/rawmidi.h
      sound/core/rawmidi.c
    ALSA: hda/realtek - Limit int mic boost for Thinkpad T530
  * gcc-10: avoid shadowing standard library 'free()' in crypto
      crypto/xts.c
  * gcc-10: disable 'restrict' warning for now
      Makefile
  * gcc-10: disable 'stringop-overflow' warning for now
      Makefile
  * gcc-10: disable 'array-bounds' warning for now
      Makefile
  * gcc-10: disable 'zero-length-bounds' warning for now
      Makefile
  * Stop the ad-hoc games with -Wno-maybe-initialized
      Makefile
      init/Kconfig
      kernel/trace/Kconfig
  * kbuild: compute false-positive -Wmaybe-uninitialized cases in Kconfig
      Makefile
      init/Kconfig
      kernel/trace/Kconfig
  * gcc-10 warnings: fix low-hanging fruit
      include/linux/fs.h
      include/linux/tty.h
  * pnp: Use list_for_each_entry() instead of open coding
      include/linux/pnp.h
    hwmon: (da9052) Synchronize access with mfd
    IB/mlx4: Test return value of calls to ib_get_cached_pkey
    netfilter: nft_set_rbtree: Introduce and use nft_rbtree_interval_start()
    arm64: fix the flush_icache_range arguments in machine_kexec
  * netfilter: conntrack: avoid gcc-10 zero-length-bounds warning
      include/net/netfilter/nf_conntrack.h
      net/netfilter/nf_conntrack_core.c
    NFSv4: Fix fscache cookie aux_data to ensure change_attr is included
    nfs: fscache: use timespec64 in inode auxdata
    NFS: Fix fscache super_cookie index_key from changing after umount
    mmc: block: Fix request completion in the CQE timeout path
    mmc: core: Check request type before completing the request
    i40iw: Fix error handling in i40iw_manage_arp_cache()
    pinctrl: cherryview: Add missing spinlock usage in chv_gpio_irq_handler
    pinctrl: baytrail: Enable pin configuration setting for GPIO chip
    gfs2: Another gfs2_walk_metadata fix
    ALSA: hda/realtek - Fix S3 pop noise on Dell Wyse
    ipc/util.c: sysvipc_find_ipc() incorrectly updates position index
    drm/qxl: lost qxl_bo_kunmap_atomic_page in qxl_image_init_helper()
    ALSA: hda/hdmi: fix race in monitor detection during probe
    cpufreq: intel_pstate: Only mention the BIOS disabling turbo mode once
    dmaengine: mmp_tdma: Reset channel error on release
    dmaengine: pch_dma.c: Avoid data race between probe and irq handler
    riscv: fix vdso build with lld
  * tcp: fix SO_RCVLOWAT hangs with fat skbs
      include/net/tcp.h
      net/ipv4/tcp.c
      net/ipv4/tcp_input.c
  * net: tcp: fix rx timestamp behavior for tcp_recvmsg
      net/ipv4/tcp.c
    netprio_cgroup: Fix unlimited memory leak of v2 cgroups
  * net: ipv4: really enforce backoff for redirects
      net/ipv4/route.c
    net: dsa: loop: Add module soft dependency
    hinic: fix a bug of ndo_stop
    virtio_net: fix lockdep warning on 32 bit
  * tcp: fix error recovery in tcp_zerocopy_receive()
      net/ipv4/tcp.c
  * Revert "ipv6: add mtu lock check in __ip6_rt_update_pmtu"
      net/ipv6/route.c
  * pppoe: only process PADT targeted at local interfaces
      drivers/net/ppp/pppoe.c
  * net: phy: fix aneg restart in phy_ethtool_set_eee
      drivers/net/phy/phy.c
  * netlabel: cope with NULL catmap
      net/ipv4/cipso_ipv4.c
      net/ipv6/calipso.c
      net/netlabel/netlabel_kapi.c
  * net: fix a potential recursive NETDEV_FEAT_CHANGE
      net/core/dev.c
    mmc: sdhci-acpi: Add SDHCI_QUIRK2_BROKEN_64_BIT_DMA for AMDI0040
  * scsi: sg: add sg_remove_request in sg_write
      drivers/scsi/sg.c
    virtio-blk: handle block_device_operations callbacks after hot unplug
    drop_monitor: work around gcc-10 stringop-overflow warning
    net: moxa: Fix a potential double 'free_irq()'
    net/sonic: Fix a resource leak in an error handling path in 'jazz_sonic_probe()'
  * shmem: fix possible deadlocks on shmlock_user_lock
      mm/shmem.c
    net: dsa: Do not make user port errors fatal
  * ANDROID: rtc: class: call hctosys in resource managed registration
      drivers/rtc/class.c
    ANDROID: GKI: Update the ABI xml and whitelist
  * ANDROID: power_supply: Add RTX power-supply property
      drivers/power/supply/power_supply_sysfs.c
      include/linux/power_supply.h
  * f2fs: flush dirty meta pages when flushing them
      fs/f2fs/checkpoint.c
  * f2fs: fix checkpoint=disable:%u%%
      fs/f2fs/f2fs.h
      fs/f2fs/super.c
  * f2fs: rework filename handling
      fs/f2fs/dir.c
      fs/f2fs/f2fs.h
      fs/f2fs/hash.c
      fs/f2fs/inline.c
      fs/f2fs/namei.c
      fs/f2fs/recovery.c
  * f2fs: split f2fs_d_compare() from f2fs_match_name()
      fs/f2fs/dir.c
      fs/f2fs/f2fs.h
  * f2fs: don't leak filename in f2fs_try_convert_inline_dir()
      fs/f2fs/inline.c
    ANDROID: clang: update to 11.0.1
    FROMLIST: x86_64: fix jiffies ODR violation
  * ANDROID: arm64: vdso: Fix removing SCS flags
      arch/arm64/kernel/vdso/Makefile
    Merge branch 'android-4.19' into android-4.19-stable
    ANDROID: GKI: Update the ABI xml and whitelist
  * ANDROID: Incremental fs: wake up log pollers less often
      fs/incfs/data_mgmt.c
      fs/incfs/data_mgmt.h
  * ANDROID: Incremental fs: Fix scheduling while atomic error
      fs/incfs/vfs.c
  * ANDROID: Incremental fs: Avoid continually recalculating hashes
      fs/incfs/data_mgmt.c
  * ANDROID: export: Disable symbol trimming on modules
      include/linux/export.h
    ANDROID: GKI: Update the ABI xml and whitelist
  * ANDROID: fscrypt: set dun_bytes more precisely
      fs/crypto/inline_crypt.c
  * ANDROID: dm-default-key: set dun_bytes more precisely
      drivers/md/dm-default-key.c
  * ANDROID: block: backport the ability to specify max_dun_bytes
      block/blk-crypto.c
      block/keyslot-manager.c
      drivers/md/dm-default-key.c
      drivers/scsi/ufs/ufshcd-crypto.c
      fs/crypto/inline_crypt.c
      include/linux/bio-crypt-ctx.h
      include/linux/blk-crypto.h
      include/linux/keyslot-manager.h
    ANDROID: Revert "ANDROID: GKI: gki_defconfig: CONFIG_DM_DEFAULT_KEY=m"
    Merge 4.19.123 into android-4.19
Linux 4.19.123
    ipc/mqueue.c: change __do_notify() to bypass check_kill_permission()
    scripts/decodecode: fix trapping instruction formatting
    objtool: Fix stack offset tracking for indirect CFAs
    netfilter: nf_osf: avoid passing pointer to local var
  * netfilter: nat: never update the UDP checksum when it's 0
      net/netfilter/nf_nat_proto_udp.c
    x86/unwind/orc: Fix premature unwind stoppage due to IRET frames
    x86/unwind/orc: Fix error path for bad ORC entry type
    x86/unwind/orc: Prevent unwinding before ORC initialization
    x86/unwind/orc: Don't skip the first frame for inactive tasks
    x86/entry/64: Fix unwind hints in rewind_stack_do_exit()
    x86/entry/64: Fix unwind hints in kernel exit path
    x86/entry/64: Fix unwind hints in register clearing code
    batman-adv: Fix refcnt leak in batadv_v_ogm_process
    batman-adv: Fix refcnt leak in batadv_store_throughput_override
    batman-adv: Fix refcnt leak in batadv_show_throughput_override
    batman-adv: fix batadv_nc_random_weight_tq
    KVM: VMX: Mark RCX, RDX and RSI as clobbered in vmx_vcpu_run()'s asm blob
    KVM: VMX: Explicitly reference RCX as the vmx_vcpu pointer in asm blobs
  * coredump: fix crash when umh is disabled
      fs/coredump.c
      kernel/umh.c
    staging: gasket: Check the return value of gasket_get_bar_index()
  * mm/page_alloc: fix watchdog soft lockups during set_zone_contiguous()
      mm/page_alloc.c
    arm64: hugetlb: avoid potential NULL dereference
    KVM: arm64: Fix 32bit PC wrap-around
    KVM: arm: vgic: Fix limit condition when writing to GICD_I[CS]ACTIVER
  * tracing: Add a vmalloc_sync_mappings() for safe measure
      kernel/trace/trace.c
    USB: serial: garmin_gps: add sanity checking for data length
    USB: uas: add quirk for LaCie 2Big Quadra
  * HID: usbhid: Fix race between usbhid_close() and usbhid_stop()
      drivers/hid/usbhid/hid-core.c
      drivers/hid/usbhid/usbhid.h
  * sctp: Fix bundling of SHUTDOWN with COOKIE-ACK
      net/sctp/sm_statefuns.c
    HID: wacom: Read HID_DG_CONTACTMAX directly for non-generic devices
  * net: stricter validation of untrusted gso packets
      include/linux/virtio_net.h
    bnxt_en: Fix VF anti-spoof filter setup.
    bnxt_en: Improve AER slot reset.
    net/mlx5: Fix command entry leak in Internal Error State
    net/mlx5: Fix forced completion access non initialized command entry
    bnxt_en: Fix VLAN acceleration handling in bnxt_fix_features().
  * tipc: fix partial topology connection closure
      net/tipc/topsrv.c
    sch_sfq: validate silly quantum values
    sch_choke: avoid potential panic in choke_reset()
    net: usb: qmi_wwan: add support for DW5816e
    net_sched: sch_skbprio: add message validation to skbprio_change()
    net/mlx4_core: Fix use of ENOSPC around mlx4_counter_alloc()
    net: macsec: preserve ingress frame ordering
    fq_codel: fix TCA_FQ_CODEL_DROP_BATCH_SIZE sanity checks
    dp83640: reverse arguments to list_add_tail
    vt: fix unicode console freeing with a common interface
    tracing/kprobes: Fix a double initialization typo
    USB: serial: qcserial: Add DW5816e support
  * ANDROID: usb: gadget: Add missing inline qualifier to stub functions
      include/linux/usb/gadget.h
    ANDROID: Drop ABI monitoring from KASAN build config
    ANDROID: Rename build.config.gki.arch_kasan
    ANDROID: GKI: Enable CONFIG_STATIC_USERMODEHELPER
  * ANDROID: dm-default-key: Update key size for wrapped keys
      drivers/md/dm-default-key.c
    ANDROID: gki_defconfig: enable CONFIG_MMC_CRYPTO
  * ANDROID: mmc: MMC crypto API
      drivers/mmc/core/Kconfig
      include/linux/mmc/core.h
      include/linux/mmc/host.h
    ANDROID: GKI: Update the ABI xml and whitelist
  * ANDROID: GKI: add missing exports for cam_smmu_api.ko
      drivers/iommu/dma-iommu.c
    Merge 4.19.122 into android-4.19
Linux 4.19.122
  * drm/atomic: Take the atomic toys away from X
      drivers/gpu/drm/drm_ioctl.c
    cgroup, netclassid: remove double cond_resched
  * mac80211: add ieee80211_is_any_nullfunc()
      include/linux/ieee80211.h
    platform/x86: GPD pocket fan: Fix error message when temp-limits are out of range
    ALSA: hda: Match both PCI ID and SSID for driver blacklist
    hexagon: define ioremap_uc
    hexagon: clean up ioremap
    mfd: intel-lpss: Use devm_ioremap_uc for MMIO
  * lib: devres: add a helper function for ioremap_uc
      include/linux/io.h
      lib/devres.c
    drm/amdgpu: Fix oops when pp_funcs is unset in ACPI event
  * sctp: Fix SHUTDOWN CTSN Ack in the peer restart case
      net/sctp/sm_make_chunk.c
    net: systemport: suppress warnings on failed Rx SKB allocations
    net: bcmgenet: suppress warnings on failed Rx SKB allocations
  * lib/mpi: Fix building for powerpc with clang
      lib/mpi/longlong.h
    scripts/config: allow colons in option strings for sed
    s390/ftrace: fix potential crashes when switching tracers
    cifs: protect updating server->dstaddr with a spinlock
    ASoC: rsnd: Fix "status check failed" spam for multi-SSI
    ASoC: rsnd: Don't treat master SSI in multi SSI setup as parent
    net: stmmac: Fix sub-second increment
    net: stmmac: fix enabling socfpga's ptp_ref_clock
    wimax/i2400m: Fix potential urb refcnt leak
    drm/amdgpu: Correctly initialize thermal controller for GPUs with Powerplay table v0 (e.g Hawaii)
    ASoC: codecs: hdac_hdmi: Fix incorrect use of list_for_each_entry
    ASoC: rsnd: Fix HDMI channel mapping for multi-SSI mode
    ASoC: rsnd: Fix parent SSI start/stop in multi-SSI mode
  * usb: dwc3: gadget: Properly set maxpacket limit
      drivers/usb/dwc3/core.h
      drivers/usb/dwc3/gadget.c
    ASoC: sgtl5000: Fix VAG power-on handling
    selftests/ipc: Fix test failure seen after initial test run
    ASoC: topology: Check return value of pcm_new_ver
    powerpc/pci/of: Parse unassigned resources
    vhost: vsock: kick send_pkt worker once device is started
    ANDROID: GKI: fix build warning on 32bits due to ASoC msm change
    ANDROID: GKI: fix build error on 32bits due to ASoC msm change
    ANDROID: GKI: update abi definition due to FAIR_GROUP_SCHED removal
    ANDROID: GKI: Remove FAIR_GROUP_SCHED
    ANDROID: GKI: BULK update ABI XML representation and qcom whitelist
    ANDROID: build.config.gki.aarch64: Enable WHITELIST_STRICT_MODE
    ANDROID: GKI: Update the ABI xml and qcom whitelist
  * ANDROID: remove unused variable
      fs/f2fs/xattr.c
    ANDROID: Drop ABI monitoring from KASAN build config
    Merge 4.19.121 into android-4.19
Linux 4.19.121
    mmc: meson-mx-sdio: remove the broken ->card_busy() op
    mmc: meson-mx-sdio: Set MMC_CAP_WAIT_WHILE_BUSY
    mmc: sdhci-msm: Enable host capabilities pertains to R1b response
    mmc: sdhci-pci: Fix eMMC driver strength for BYT-based controllers
    mmc: sdhci-xenon: fix annoying 1.8V regulator warning
    mmc: cqhci: Avoid false "cqhci: CQE stuck on" by not open-coding timeout loop
    btrfs: transaction: Avoid deadlock due to bad initialization timing of fs_info::journal_info
    btrfs: fix partial loss of prealloc extent past i_size after fsync
  * selinux: properly handle multiple messages in selinux_netlink_send()
      security/selinux/hooks.c
    dmaengine: dmatest: Fix iteration non-stop logic
    nfs: Fix potential posix_acl refcnt leak in nfs3_set_acl
    ALSA: opti9xx: shut up gcc-10 range warning
    iommu/amd: Fix legacy interrupt remapping for x2APIC-enabled system
    scsi: target/iblock: fix WRITE SAME zeroing
    iommu/qcom: Fix local_base status check
    vfio/type1: Fix VA->PA translation for PFNMAP VMAs in vaddr_get_pfn()
    vfio: avoid possible overflow in vfio_iommu_type1_pin_pages
    RDMA/core: Fix race between destroy and release FD object
    RDMA/core: Prevent mixed use of FDs between shared ufiles
    RDMA/mlx4: Initialize ib_spec on the stack
    RDMA/mlx5: Set GRH fields in query QP on RoCE
    scsi: qla2xxx: check UNLOADING before posting async work
    scsi: qla2xxx: set UNLOADING before waiting for session deletion
    dm multipath: use updated MPATHF_QUEUE_IO on mapping for bio-based mpath
    dm writecache: fix data corruption when reloading the target
  * dm verity fec: fix hash block number in verity_fec_decode
      drivers/md/dm-verity-fec.c
    PM: hibernate: Freeze kernel threads in software_resume()
    PM: ACPI: Output correct message on target power state
    ALSA: pcm: oss: Place the plugin buffer overflow checks correctly
    ALSA: hda/hdmi: fix without unlocked before return
  * ALSA: usb-audio: Correct a typo of NuPrime DAC-10 USB ID
      sound/usb/quirks.c
    ALSA: hda/realtek - Two front mics on a Lenovo ThinkCenter
    btrfs: fix block group leak when removing fails
    drm/qxl: qxl_release use after free
    drm/qxl: qxl_release leak in qxl_hw_surface_alloc()
    drm/qxl: qxl_release leak in qxl_draw_dirty_fb()
  * drm/edid: Fix off-by-one in DispID DTD pixel clock
      drivers/gpu/drm/drm_edid.c
    ANDROID: GKI: Bulk update ABI XML representation
    ANDROID: GKI: Enable net testing options
    ANDROID: gki_defconfig: Enable CONFIG_REMOTEPROC
    ANDROID: Rename build.config.gki.arch_kasan
    ANDROID: GKI: Update ABI for IOMMU
  * ANDROID: Incremental fs: Fix issues with very large files
      fs/incfs/vfs.c
    ANDROID: Correct build.config branch name
    ANDROID: GKI: Bulk update ABI XML representation and whitelist.
  * UPSTREAM: vdso: Fix clocksource.h macro detection
      include/vdso/clocksource.h
    Merge 4.19.120 into android-4.19
    ANDROID: GKI: update abi definition due to added padding
  * ANDROID: GKI: networking: add Android ABI padding to a lot of networking structures
      include/linux/ipv6.h
      include/linux/net.h
      include/linux/netdevice.h
      include/linux/skbuff.h
  * ANDROID: GKI: dma-mapping.h: add Android ABI padding to a structure
      include/linux/dma-mapping.h
  * ANDROID: GKI: ioport.h: add Android ABI padding to a structure
      include/linux/ioport.h
  * ANDROID: GKI: iomap.h: add Android ABI padding to a structure
      include/linux/iomap.h
  * ANDROID: GKI: genhd.h: add Android ABI padding to some structures
      include/linux/genhd.h
  * ANDROID: GKI: hrtimer.h: add Android ABI padding to a structure
      include/linux/hrtimer.h
  * ANDROID: GKI: ethtool.h: add Android ABI padding to a structure
      include/linux/ethtool.h
  * ANDROID: GKI: sched: add Android ABI padding to some structures
      include/linux/sched/topology.h
      include/linux/sched/user.h
  * ANDROID: GKI: kernfs.h: add Android ABI padding to some structures
      include/linux/kernfs.h
  * ANDROID: GKI: kobject.h: add Android ABI padding to some structures
      include/linux/kobject.h
  * ANDROID: GKI: mm.h: add Android ABI padding to a structure
      include/linux/mm.h
  * ANDROID: GKI: mmu_notifier.h: add Android ABI padding to some structures
      include/linux/mmu_notifier.h
  * ANDROID: GKI: pci: add Android ABI padding to some structures
      drivers/pci/pci.h
      include/linux/pci.h
  * ANDROID: GKI: irqdomain.h: add Android ABI padding to a structure
      include/linux/irqdomain.h
  * ANDROID: GKI: blk_types.h: add Android ABI padding to a structure
      include/linux/blk_types.h
  * ANDROID: GKI: scsi.h: add Android ABI padding to a structure
      drivers/scsi/sd.h
  * ANDROID: GKI: quota.h: add Android ABI padding to some structures
      include/linux/quota.h
  * ANDROID: GKI: timer.h: add Android ABI padding to a structure
      include/linux/timer.h
  * ANDROID: GKI: user_namespace.h: add Android ABI padding to a structure
      include/linux/user_namespace.h
    FROMGIT: f2fs: fix missing check for f2fs_unlock_op
Linux 4.19.120
  * propagate_one(): mnt_set_mountpoint() needs mount_lock
      fs/pnode.c
  * ext4: check for non-zero journal inum in ext4_calculate_overhead
      fs/ext4/super.c
  * qed: Fix use after free in qed_chain_free
      include/linux/qed/qed_chain.h
    bpf, x86_32: Fix clobbering of dst for BPF_JSET
    hwmon: (jc42) Fix name to have no illegal characters
  * ext4: convert BUG_ON's to WARN_ON's in mballoc.c
      fs/ext4/mballoc.c
  * ext4: increase wait time needed before reuse of deleted inode numbers
      fs/ext4/ialloc.c
  * ext4: use matching invalidatepage in ext4_writepage
      fs/ext4/inode.c
  * arm64: Delete the space separator in __emit_inst
      arch/arm64/include/asm/sysreg.h
    ALSA: hda: call runtime_allow() for all hda controllers
    xen/xenbus: ensure xenbus_map_ring_valloc() returns proper grant status
    objtool: Support Clang non-section symbols in ORC dump
    objtool: Fix CONFIG_UBSAN_TRAP unreachable warnings
    scsi: target: tcmu: reset_ring should reset TCMU_DEV_BIT_BROKEN
    scsi: target: fix PR IN / READ FULL STATUS for FC
    ALSA: hda: Explicitly permit using autosuspend if runtime PM is supported
    ALSA: hda: Keep the controller initialization even if no codecs found
    xfs: fix partially uninitialized structure in xfs_reflink_remap_extent
    x86: hyperv: report value of misc_features
    net: fec: set GPR bit on suspend by DT configuration.
    bpf, x86: Fix encoding for lower 8-bit registers in BPF_STX BPF_B
    xfs: clear PF_MEMALLOC before exiting xfsaild thread
  * mm: shmem: disable interrupt when acquiring info->lock in userfaultfd_copy path
      mm/shmem.c
    bpf, x86_32: Fix incorrect encoding in BPF_LDX zero-extension
  * perf/core: fix parent pid/tid in task exit events
      kernel/events/core.c
    net/mlx5: Fix failing fw tracer allocation on s390
  * cpumap: Avoid warning when CONFIG_DEBUG_PER_CPU_MAPS is enabled
      kernel/bpf/cpumap.c
    ARM: dts: bcm283x: Disable dsi0 node
  * PCI: Move Apex Edge TPU class quirk to fix BAR assignment
      drivers/pci/quirks.c
  * PCI: Avoid ASMedia XHCI USB PME# from D0 defect
      drivers/pci/quirks.c
  * svcrdma: Fix leak of svc_rdma_recv_ctxt objects
      include/linux/sunrpc/svc_rdma.h
  * svcrdma: Fix trace point use-after-free race
      include/trace/events/rpcrdma.h
    xfs: acquire superblock freeze protection on eofblocks scans
    net/cxgb4: Check the return from t4_query_params properly
    rxrpc: Fix DATA Tx to disable nofrag for UDP on AF_INET6 socket
    i2c: altera: use proper variable to hold errno
    nfsd: memory corruption in nfsd4_lock()
    ASoC: wm8960: Fix wrong clock after suspend & resume
    ASoC: tas571x: disable regulators on failed probe
    ASoC: q6dsp6: q6afe-dai: add missing channels to MI2S DAIs
    iio:ad7797: Use correct attribute_group
    usb: gadget: udc: bdc: Remove unnecessary NULL checks in bdc_req_complete
  * usb: dwc3: gadget: Do link recovery for SS and SSP
      drivers/usb/dwc3/gadget.c
  * binder: take read mode of mmap_sem in binder_alloc_free_page()
      drivers/android/binder_alloc.c
  * include/uapi/linux/swab.h: fix userspace breakage, use __BITS_PER_LONG for swap
      include/uapi/linux/swab.h
    mtd: cfi: fix deadloop in cfi_cmdset_0002.c do_write_buffer
    remoteproc: Fix wrong rvring index computation
  * FROMLIST: PM / devfreq: Restart previous governor if new governor fails to start
      drivers/devfreq/devfreq.c
  * ANDROID: GKI: arm64: Enable GZIP and LZ4 kernel compression modes
      arch/arm64/Kconfig
    ANDROID: GKI: arm64: gki_defconfig: Set arm_smmu configuration
  * ANDROID: GKI: iommu/arm-smmu: Modularize ARM SMMU driver
      drivers/iommu/Kconfig
      drivers/iommu/arm-smmu.c
  * ANDROID: GKI: iommu: Snapshot of vendor changes
      arch/arm64/mm/dma-mapping.c
      drivers/iommu/dma-iommu.c
      drivers/iommu/io-pgtable.c
      drivers/iommu/iommu.c
      drivers/iommu/iova.c
      include/linux/dma-iommu.h
      include/linux/dma-mapping.h
      include/linux/io-pgtable.h
      include/linux/iommu.h
      include/linux/iova.h
      include/trace/events/iommu.h
  * ANDROID: GKI: Additions to ARM SMMU register definitions
      drivers/iommu/arm-smmu-regs.h
  * ANDROID: GKI: iommu/io-pgtable-arm: LPAE related updates by vendor
      drivers/iommu/io-pgtable-arm.c
  * ANDROID: GKI: common: dma-mapping: make dma_common_contiguous_remap more robust
      kernel/dma/mapping.c
  * ANDROID: GKI: dma-coherent: Expose device base address and size
      include/linux/dma-mapping.h
      kernel/dma/coherent.c
  * ANDROID: GKI: arm64: add support for NO_KERNEL_MAPPING and STRONGLY_ORDERED
      arch/arm64/mm/dma-mapping.c
  * ANDROID: GKI: dma-mapping: Add dma_remap functions
      arch/arm64/mm/dma-mapping.c
      include/linux/dma-mapping.h
      kernel/dma/mapping.c
  * ANDROID: GKI: arm64: Support early fixup for CMA
      arch/arm64/include/asm/dma-contiguous.h
      arch/arm64/mm/mmu.c
  * ANDROID: GKI: iommu: dma-mapping-fast: Fast ARMv7/v8 Long Descriptor Format
      arch/arm64/include/asm/dma-iommu.h
      arch/arm64/mm/dma-mapping.c
      drivers/iommu/Kconfig
      drivers/iommu/Makefile
      drivers/iommu/dma-mapping-fast.c
      drivers/iommu/io-pgtable-fast.c
      drivers/iommu/io-pgtable.c
      include/linux/dma-mapping-fast.h
      include/linux/io-pgtable-fast.h
      include/linux/io-pgtable.h
  * ANDROID: GKI: arm64: dma-mapping: add support for IOMMU mapper
      arch/arm64/Kconfig
      arch/arm64/include/asm/device.h
      arch/arm64/include/asm/dma-iommu.h
      arch/arm64/mm/dma-mapping.c
      drivers/iommu/Kconfig
  * ANDROID: GKI: add ARCH_NR_GPIO for ABI match
      arch/arm64/Kconfig
  * ANDROID: GKI: kernel: Export symbol of `cpu_do_idle`
      arch/arm64/kernel/arm64ksyms.c
  * ANDROID: GKI: kernel: Export symbols needed by msm_minidump.ko and minidump_log.ko (again)
      arch/arm64/kernel/arm64ksyms.c
  * ANDROID: GKI: add missing exports for __flush_dcache_area
      arch/arm64/kernel/arm64ksyms.c
  * ANDROID: GKI: arm64: Export caching APIs
      arch/arm64/kernel/arm64ksyms.c
  * ANDROID: GKI: arm64: provide dma cache routines with same API as 32 bit
      arch/arm64/include/asm/cacheflush.h
      arch/arm64/mm/cache.S
    ANDROID: gki_defconfig: add FORTIFY_SOURCE, remove SPMI_MSM_PMIC_ARB
  * Revert "ANDROID: GKI: spmi: pmic-arb: don't enable SPMI_MSM_PMIC_ARB by default"
      drivers/spmi/Kconfig
    ANDROID: GKI: update abi definitions after adding padding
  * ANDROID: GKI: elevator: add Android ABI padding to some structures
      include/linux/elevator.h
  * ANDROID: GKI: dentry: add Android ABI padding to some structures
      include/linux/dcache.h
  * ANDROID: GKI: bio: add Android ABI padding to some structures
      include/linux/bio.h
  * ANDROID: GKI: scsi: add Android ABI padding to some structures
      include/scsi/scsi_cmnd.h
      include/scsi/scsi_device.h
      include/scsi/scsi_host.h
  * ANDROID: GKI: ufs: add Android ABI padding to some structures
      drivers/scsi/ufs/ufshcd.h
  * ANDROID: GKI: workqueue.h: add Android ABI padding to some structures
      include/linux/workqueue.h
  * ANDROID: GKI: fs.h: add Android ABI padding to some structures
      include/linux/fs.h
  * ANDROID: GKI: USB: add Android ABI padding to some structures
      include/linux/usb.h
      include/linux/usb/hcd.h
      include/linux/usb/usbnet.h
  * ANDROID: GKI: mm: add Android ABI padding to some structures
      include/linux/mm_types.h
      include/linux/mmzone.h
  * ANDROID: GKI: mount.h: add Android ABI padding to some structures
      include/linux/mount.h
  * ANDROID: GKI: sched.h: add Android ABI padding to some structures
      include/linux/sched.h
      include/linux/sched/signal.h
  * ANDROID: GKI: sock.h: add Android ABI padding to some structures
      include/net/sock.h
  * ANDROID: GKI: module.h: add Android ABI padding to some structures
      include/linux/module.h
  * ANDROID: GKI: device.h: add Android ABI padding to some structures
      include/linux/device.h
  * ANDROID: GKI: phy: add Android ABI padding to some structures
      include/linux/phy.h
  * ANDROID: GKI: add android_kabi.h
      include/linux/android_kabi.h
    ANDROID: ABI: update due to previous changes in the tree
  * BACKPORT: sched/core: Fix reset-on-fork from RT with uclamp
      kernel/sched/core.c
  * ANDROID: GKI: Add support for missing V4L2 symbols
      drivers/media/v4l2-core/v4l2-ioctl.c
      include/uapi/linux/videodev2.h
    ANDROID: GKI: Bulk update ABI XML representation
  * ANDROID: GKI: arm64: psci: Support for OS initiated scheme
      drivers/firmware/psci.c
  * ANDROID: GKI: net: add counter for number of frames coalesced in GRO
      include/linux/netdevice.h
  * ANDROID: GKI: cfg80211: Include length of kek in rekey data
      include/net/cfg80211.h
      net/wireless/nl80211.c
  * BACKPORT: loop: change queue block size to match when using DIO
      drivers/block/loop.c
  * ANDROID: Incremental fs: Add setattr call
      fs/incfs/vfs.c
    ANDROID: GKI: enable CONFIG_RTC_SYSTOHC
  * ANDROID: GKI: ipv4: add vendor padding to __IPV4_DEVCONF_* enums
      include/uapi/linux/ip.h
  * Revert "ANDROID: GKI: ipv4: increase __IPV4_DEVCONF_MAX to 64"
      include/uapi/linux/ip.h
  * ANDROID: driver: gpu: drm: fix export symbol types
      drivers/gpu/drm/drm_panel.c
  * ANDROID: SoC: core: fix export symbol type
      sound/soc/soc-core.c
  * ANDROID: ufshcd-crypto: fix export symbol type
      drivers/scsi/ufs/ufshcd-crypto.c
  * ANDROID: GKI: drivers: mailbox: fix race resulting in multiple message submission
      drivers/mailbox/mailbox.c
    ANDROID: GKI: arm64: gki_defconfig: Enable a few thermal configs
  * Revert "ANDROID: GKI: add base.h include to match MODULE_VERSIONS"
      drivers/thermal/thermal_core.c
  * FROMLIST: thermal: Make cooling device trip point writable from sysfs
      drivers/thermal/thermal_core.c
      drivers/thermal/thermal_core.h
      drivers/thermal/thermal_sysfs.c
  * ANDROID: GKI: drivers: thermal: cpu_cooling: Use CPU ID as cooling device ID
      drivers/thermal/cpu_cooling.c
  * ANDROID: GKI: PM / devfreq: Allow min freq to be 0
      drivers/devfreq/devfreq.c
    ANDROID: GKI: arm64: gki_defconfig: Enable REGULATOR_PROXY_CONSUMER
    ANDROID: GKI: Bulk Update ABI XML representation
    ANDROID: KASAN support for GKI remove CONFIG_CC_WERROR
    ANDROID: KASAN support for GKI
    ANDROID: virt_wifi: fix export symbol types
  * ANDROID: vfs: fix export symbol type
      fs/attr.c
  * ANDROID: vfs: fix export symbol types
      fs/namei.c
  * ANDROID: fscrypt: fix export symbol type
      fs/crypto/fname.c
  * ANDROID: cfi: fix export symbol types
      kernel/cfi.c
  * ANDROID: bpf: fix export symbol type
      kernel/bpf/core.c
    Merge 4.19.119 into android-4.19
Linux 4.19.119
    s390/mm: fix page table upgrade vs 2ndary address mode accesses
    xfs: Fix deadlock between AGI and AGF with RENAME_WHITEOUT
    serial: sh-sci: Make sure status register SCxSR is read in correct sequence
  * xhci: prevent bus suspend if a roothub port detected a over-current condition
      drivers/usb/host/xhci-hub.c
  * usb: f_fs: Clear OS Extended descriptor counts to zero in ffs_data_reset()
      drivers/usb/gadget/function/f_fs.c
  * usb: dwc3: gadget: Fix request completion check
      drivers/usb/dwc3/gadget.c
    UAS: fix deadlock in error handling and PM flushing work
    UAS: no use logging any details in case of ENODEV
    cdc-acm: introduce a cool down
    cdc-acm: close race betrween suspend() and acm_softint
    staging: vt6656: Power save stop wake_up_count wrap around.
    staging: vt6656: Fix pairwise key entry save.
    staging: vt6656: Fix drivers TBTT timing counter.
    staging: vt6656: Fix calling conditions of vnt_set_bss_mode
    staging: vt6656: Don't set RCR_MULTICAST or RCR_BROADCAST by default.
    vt: don't use kmalloc() for the unicode screen buffer
    vt: don't hardcode the mem allocation upper bound
    staging: comedi: Fix comedi_device refcnt leak in comedi_open
    staging: comedi: dt2815: fix writing hi byte of analog output
    powerpc/setup_64: Set cache-line-size based on cache-block-size
    ARM: imx: provide v7_cpu_resume() only on ARM_CPU_SUSPEND=y
    iwlwifi: mvm: beacon statistics shouldn't go backwards
    iwlwifi: pcie: actually release queue memory in TVQM
  * ASoC: dapm: fixup dapm kcontrol widget
      sound/soc/soc-dapm.c
  * audit: check the length of userspace generated audit records
      kernel/audit.c
  * usb-storage: Add unusual_devs entry for JMicron JMS566
      drivers/usb/storage/unusual_devs.h
    tty: rocket, avoid OOB access
    tty: hvc: fix buffer overflow during hvc_alloc().
    KVM: VMX: Enable machine check support for 32bit targets
  * KVM: Check validity of resolved slot when searching memslots
      include/linux/kvm_host.h
    KVM: s390: Return last valid slot if approx index is out-of-bounds
    tpm: ibmvtpm: retry on H_CLOSED in tpm_ibmvtpm_send()
    tpm/tpm_tis: Free IRQ if probing fails
  * ALSA: usb-audio: Filter out unsupported sample rates on Focusrite devices
      sound/usb/format.c
  * ALSA: usb-audio: Fix usb audio refcnt leak when getting spdif
      sound/usb/mixer_quirks.c
    ALSA: hda/realtek - Add new codec supported for ALC245
    ALSA: hda/realtek - Fix unexpected init_amp override
    ALSA: usx2y: Fix potential NULL dereference
    tools/vm: fix cross-compile build
    mm/ksm: fix NULL pointer dereference when KSM zero page is enabled
    mm/hugetlb: fix a addressing exception caused by huge_pte_offset
  * vmalloc: fix remap_vmalloc_range() bounds checks
      include/linux/vmalloc.h
      mm/vmalloc.c
  * USB: hub: Fix handling of connect changes during sleep
      drivers/usb/core/hub.c
  * USB: core: Fix free-while-in-use bug in the USB S-Glibrary
      drivers/usb/core/message.c
    USB: early: Handle AMD's spec-compliant identifiers, too
  * USB: Add USB_QUIRK_DELAY_CTRL_MSG and USB_QUIRK_DELAY_INIT for Corsair K70 RGB RAPIDFIRE
      drivers/usb/core/quirks.c
    USB: sisusbvga: Change port variable from signed to unsigned
  * fs/namespace.c: fix mountpoint reference counter race
      fs/namespace.c
    iio: xilinx-xadc: Make sure not exceed maximum samplerate
    iio: xilinx-xadc: Fix sequencer configuration for aux channels in simultaneous mode
    iio: xilinx-xadc: Fix clearing interrupt when enabling trigger
    iio: xilinx-xadc: Fix ADC-B powerdown
    iio: adc: stm32-adc: fix sleep in atomic context
    iio: st_sensors: rely on odr mask to know if odr can be set
  * iio: core: remove extra semi-colon from devm_iio_device_register() macro
      include/linux/iio/iio.h
  * ALSA: usb-audio: Add connector notifier delegation
      sound/usb/mixer.c
      sound/usb/mixer.h
      sound/usb/mixer_maps.c
  * ALSA: usb-audio: Add static mapping table for ALC1220-VB-based mobos
      sound/usb/mixer.c
      sound/usb/mixer_maps.c
      sound/usb/quirks-table.h
    ALSA: hda: Remove ASUS ROG Zenith from the blacklist
  * KEYS: Avoid false positive ENOMEM error on key read
      security/keys/internal.h
      security/keys/keyctl.c
    mlxsw: Fix some IS_ERR() vs NULL bugs
    vrf: Check skb for XFRM_TRANSFORMED flag
  * xfrm: Always set XFRM_TRANSFORMED in xfrm{4,6}_output_finish
      net/ipv4/xfrm4_output.c
      net/ipv6/xfrm6_output.c
    net: dsa: b53: b53_arl_rw_op() needs to select IVL or SVL
    net: dsa: b53: Rework ARL bin logic
    net: dsa: b53: Fix ARL register definitions
    net: dsa: b53: Lookup VID in ARL searches when VLAN is enabled
    vrf: Fix IPv6 with qdisc and xfrm
    team: fix hang in team_mode_get()
  * tcp: cache line align MAX_TCP_HEADER
      include/net/tcp.h
    sched: etf: do not assume all sockets are full blown
    net/x25: Fix x25_neigh refcnt leak when receiving frame
    net: stmmac: dwmac-meson8b: Add missing boundary to RGMII TX clock array
    net: netrom: Fix potential nr_neigh refcnt leak in nr_add_node
    net: bcmgenet: correct per TX/RX ring statistics
    macvlan: fix null dereference in macvlan_device_event()
    macsec: avoid to set wrong mtu
  * ipv6: fix restrict IPV6_ADDRFORM operation
      net/ipv6/ipv6_sockglue.c
    cxgb4: fix large delays in PTP synchronization
    cxgb4: fix adapter crash due to wrong MC size
    x86/KVM: Clean up host's steal time structure
    x86/KVM: Make sure KVM_VCPU_FLUSH_TLB flag is not missed
  * x86/kvm: Cache gfn to pfn translation
      include/linux/kvm_host.h
      include/linux/kvm_types.h
  * x86/kvm: Introduce kvm_(un)map_gfn()
      include/linux/kvm_host.h
    KVM: Properly check if "page" is valid in kvm_vcpu_unmap
    kvm: fix compile on s390 part 2
    kvm: fix compilation on s390
    kvm: fix compilation on aarch64
  * KVM: Introduce a new guest mapping API
      include/linux/kvm_host.h
    KVM: nVMX: Always sync GUEST_BNDCFGS when it comes from vmcs01
    KVM: VMX: Zero out *all* general purpose registers after VM-Exit
  * f2fs: fix to avoid memory leakage in f2fs_listxattr
      fs/f2fs/xattr.c
  * blktrace: fix dereference after null check
      kernel/trace/blktrace.c
  * blktrace: Protect q->blk_trace with RCU
      include/linux/blkdev.h
      include/linux/blktrace_api.h
      kernel/trace/blktrace.c
  * net: ipv6_stub: use ip6_dst_lookup_flow instead of ip6_dst_lookup
      include/net/addrconf.h
      net/ipv6/addrconf_core.c
      net/ipv6/af_inet6.c
      net/tipc/udp_media.c
  * net: ipv6: add net argument to ip6_dst_lookup_flow
      include/net/ipv6.h
      net/ipv6/af_inet6.c
      net/ipv6/datagram.c
      net/ipv6/inet6_connection_sock.c
      net/ipv6/ip6_output.c
      net/ipv6/raw.c
      net/ipv6/syncookies.c
      net/ipv6/tcp_ipv6.c
      net/l2tp/l2tp_ip6.c
      net/sctp/ipv6.c
    PCI/ASPM: Allow re-enabling Clock PM
    scsi: smartpqi: fix call trace in device discovery
    virtio-blk: improve virtqueue error to BLK_STS
    tracing/selftests: Turn off timeout setting
    drm/amd/display: Not doing optimize bandwidth if flip pending.
  * xhci: Ensure link state is U3 after setting USB_SS_PORT_LS_U3
      drivers/usb/host/xhci-hub.c
    ASoC: Intel: bytcr_rt5640: Add quirk for MPMAN MPWIN895CL tablet
  * perf/core: Disable page faults when getting phys address
      kernel/events/core.c
    pwm: bcm2835: Dynamically allocate base
    pwm: renesas-tpu: Fix late Runtime PM enablement
    Revert "powerpc/64: irq_work avoid interrupt when called with hardware irqs enabled"
  * loop: Better discard support for block devices
      drivers/block/loop.c
    s390/cio: avoid duplicated 'ADD' uevents
    kconfig: qconf: Fix a few alignment issues
    ipc/util.c: sysvipc_find_ipc() should increase position index
    selftests: kmod: fix handling test numbers above 9
    kernel/gcov/fs.c: gcov_seq_next() should increase position index
    nvme: fix deadlock caused by ANA update wrong locking
    ASoC: Intel: atom: Take the drv->lock mutex before calling sst_send_slot_map()
    scsi: iscsi: Report unbind session event when the target has been removed
    pwm: rcar: Fix late Runtime PM enablement
    ceph: don't skip updating wanted caps when cap is stale
    ceph: return ceph_mdsc_do_request() errors from __get_parent()
    scsi: lpfc: Fix crash in target side cable pulls hitting WAIT_FOR_UNREG
    scsi: lpfc: Fix kasan slab-out-of-bounds error in lpfc_unreg_login
  * watchdog: reset last_hw_keepalive time at start
      drivers/watchdog/watchdog_dev.c
  * arm64: Silence clang warning on mismatched value/register sizes
      arch/arm64/kernel/sys_compat.c
  * arm64: compat: Workaround Neoverse-N1 #1542419 for compat user-space
      arch/arm64/kernel/sys_compat.c
  * arm64: Fake the IminLine size on systems affected by Neoverse-N1 #1542419
      arch/arm64/include/asm/cache.h
      arch/arm64/kernel/traps.c
  * arm64: errata: Hide CTR_EL0.DIC on systems affected by Neoverse-N1 #1542419
      arch/arm64/Kconfig
      arch/arm64/include/asm/cpucaps.h
      arch/arm64/kernel/cpu_errata.c
      arch/arm64/kernel/traps.c
  * arm64: Add part number for Neoverse N1
      arch/arm64/include/asm/cputype.h
  * vti4: removed duplicate log message.
      net/ipv4/ip_vti.c
    crypto: mxs-dcp - make symbols 'sha1_null_hash' and 'sha256_null_hash' static
    bpftool: Fix printing incorrect pointer in btf_dump_ptr
    drm/msm: Use the correct dma_sync calls harder
  * ext4: fix extent_status fragmentation for plain files
      fs/ext4/extents.c
    ANDROID: abi_gki_aarch64_cuttlefish_whitelist: remove stale symbols
  * ANDROID: GKI: ipv4: increase __IPV4_DEVCONF_MAX to 64
      include/uapi/linux/ip.h
  * ANDROID: GKI: power: add missing export for POWER_RESET_QCOM=m
      arch/arm64/kernel/process.c
      arch/arm64/mm/init.c
  * BACKPORT: cfg80211: Support key configuration for Beacon protection (BIGTK)
      include/net/cfg80211.h
      include/uapi/linux/nl80211.h
      net/wireless/nl80211.c
      net/wireless/rdev-ops.h
      net/wireless/sme.c
      net/wireless/trace.h
      net/wireless/util.c
  * BACKPORT: cfg80211: Enhance the AKM advertizement to support per interface.
      include/net/cfg80211.h
      include/uapi/linux/nl80211.h
      net/wireless/nl80211.c
  * UPSTREAM: sysrq: Use panic() to force a crash
      drivers/tty/sysrq.c
  * ANDROID: GKI: kernel: sound: update codec options with block size
      include/uapi/sound/compress_params.h
    ANDROID: add compat cross compiler
    ANDROID: x86/vdso: disable LTO only for VDSO
  * BACKPORT: arm64: vdso32: Enable Clang Compilation
      arch/arm64/kernel/vdso32/Makefile
  * UPSTREAM: arm64: compat: vdso: Expose BUILD_VDSO32
      arch/arm64/include/asm/vdso/compat_gettimeofday.h
  * BACKPORT: lib/vdso: Enable common headers
      include/vdso/datapage.h
      lib/vdso/gettimeofday.c
    BACKPORT: arm: vdso: Enable arm to use common headers
    BACKPORT: x86/vdso: Enable x86 to use common headers
    BACKPORT: mips: vdso: Enable mips to use common headers
  * UPSTREAM: arm64: vdso32: Include common headers in the vdso library
      arch/arm64/include/asm/vdso/compat_gettimeofday.h
      arch/arm64/kernel/vdso32/vgettimeofday.c
  * UPSTREAM: arm64: vdso: Include common headers in the vdso library
      arch/arm64/include/asm/vdso/gettimeofday.h
      arch/arm64/kernel/vdso/vgettimeofday.c
  * UPSTREAM: arm64: Introduce asm/vdso/processor.h
      arch/arm64/include/asm/processor.h
      arch/arm64/include/asm/vdso/processor.h
  * BACKPORT: arm64: vdso32: Code clean up
      arch/arm64/include/asm/vdso/compat_gettimeofday.h
      arch/arm64/kernel/vdso32/vgettimeofday.c
  * UPSTREAM: linux/elfnote.h: Replace elf.h with UAPI equivalent
      include/linux/elfnote.h
  * UPSTREAM: scripts: Fix the inclusion order in modpost
      scripts/mod/modpost.c
  * UPSTREAM: common: Introduce processor.h
      include/vdso/processor.h
  * UPSTREAM: linux/ktime.h: Extract common header for vDSO
      include/linux/ktime.h
      include/vdso/ktime.h
  * UPSTREAM: linux/jiffies.h: Extract common header for vDSO
      include/linux/jiffies.h
      include/vdso/jiffies.h
  * UPSTREAM: linux/time64.h: Extract common header for vDSO
      include/linux/time64.h
      include/vdso/time64.h
  * BACKPORT: linux/time32.h: Extract common header for vDSO
      include/linux/time32.h
      include/vdso/time32.h
  * BACKPORT: linux/time.h: Extract common header for vDSO
      include/linux/time.h
      include/vdso/time.h
  * UPSTREAM: linux/math64.h: Extract common header for vDSO
      include/linux/math64.h
      include/vdso/math64.h
  * BACKPORT: linux/clocksource.h: Extract common header for vDSO
      include/linux/clocksource.h
      include/vdso/clocksource.h
    BACKPORT: mips: Introduce asm/vdso/clocksource.h
  * BACKPORT: arm64: Introduce asm/vdso/clocksource.h
      arch/arm64/include/asm/clocksource.h
      arch/arm64/include/asm/vdso/clocksource.h
    BACKPORT: arm: Introduce asm/vdso/clocksource.h
    BACKPORT: x86: Introduce asm/vdso/clocksource.h
  * UPSTREAM: linux/limits.h: Extract common header for vDSO
      include/linux/limits.h
      include/vdso/limits.h
  * BACKPORT: linux/kernel.h: split *_MAX and *_MIN macros into <linux/limits.h>
      include/linux/kernel.h
      include/linux/limits.h
      include/uapi/linux/limits.h
  * BACKPORT: linux/bits.h: Extract common header for vDSO
      include/linux/bits.h
      include/vdso/bits.h
  * UPSTREAM: linux/const.h: Extract common header for vDSO
      include/linux/const.h
      include/vdso/const.h
  * BACKPORT: arm64: vdso: fix flip/flop vdso build bug
      arch/arm64/kernel/vdso/Makefile
      arch/arm64/kernel/vdso32/Makefile
  * UPSTREAM: lib/vdso: Allow the high resolution parts to be compiled out
      lib/vdso/gettimeofday.c
  * UPSTREAM: lib/vdso: Only read hrtimer_res when needed in __cvdso_clock_getres()
      lib/vdso/gettimeofday.c
  * UPSTREAM: lib/vdso: Mark do_hres() and do_coarse() as __always_inline
      lib/vdso/gettimeofday.c
  * UPSTREAM: lib/vdso: Avoid duplication in __cvdso_clock_getres()
      lib/vdso/gettimeofday.c
  * UPSTREAM: lib/vdso: Let do_coarse() return 0 to simplify the callsite
      lib/vdso/gettimeofday.c
  * UPSTREAM: lib/vdso: Remove checks on return value for 32 bit vDSO
      lib/vdso/gettimeofday.c
  * UPSTREAM: lib/vdso: Build 32 bit specific functions in the right context
      lib/vdso/gettimeofday.c
  * UPSTREAM: lib/vdso: Make __cvdso_clock_getres() static
      lib/vdso/gettimeofday.c
  * UPSTREAM: lib/vdso: Make clock_getres() POSIX compliant again
      lib/vdso/gettimeofday.c
  * UPSTREAM: lib/vdso/32: Provide legacy syscall fallbacks
      lib/vdso/gettimeofday.c
  * UPSTREAM: lib/vdso: Move fallback invocation to the callers
      lib/vdso/gettimeofday.c
  * UPSTREAM: lib/vdso/32: Remove inconsistent NULL pointer checks
      lib/vdso/gettimeofday.c
  * UPSTREAM: lib/vdso: Make delta calculation work correctly
      lib/vdso/gettimeofday.c
  * UPSTREAM: arm64: compat: Fix syscall number of compat_clock_getres
      arch/arm64/include/asm/unistd.h
  * BACKPORT: arm64: lse: Fix LSE atomics with LLVM
      arch/arm64/include/asm/lse.h
    UPSTREAM: mips: Fix gettimeofday() in the vdso library
    UPSTREAM: mips: vdso: Fix __arch_get_hw_counter()
  * BACKPORT: arm64: Kconfig: Make CONFIG_COMPAT_VDSO a proper Kconfig option
      arch/arm64/Kconfig
      arch/arm64/Makefile
  * UPSTREAM: arm64: vdso32: Rename COMPATCC to CC_COMPAT
      arch/arm64/kernel/vdso32/Makefile
  * UPSTREAM: arm64: vdso32: Pass '--target' option to clang via VDSO_CAFLAGS
      arch/arm64/kernel/vdso32/Makefile
  * UPSTREAM: arm64: vdso32: Don't use KBUILD_CPPFLAGS unconditionally
      arch/arm64/kernel/vdso32/Makefile
  * UPSTREAM: arm64: vdso32: Move definition of COMPATCC into vdso32/Makefile
      arch/arm64/Makefile
      arch/arm64/kernel/vdso32/Makefile
  * UPSTREAM: arm64: Default to building compat vDSO with clang when CONFIG_CC_IS_CLANG
      arch/arm64/Makefile
  * UPSTREAM: lib: vdso: Remove CROSS_COMPILE_COMPAT_VDSO
      lib/vdso/Kconfig
  * UPSTREAM: arm64: vdso32: Remove jump label config option in Makefile
      arch/arm64/kernel/vdso32/Makefile
  * UPSTREAM: arm64: vdso32: Detect binutils support for dmb ishld
      arch/arm64/include/asm/vdso/compat_barrier.h
      arch/arm64/kernel/vdso32/Makefile
    BACKPORT: arm64: vdso: Remove stale files from old assembly implementation
  * UPSTREAM: arm64: vdso32: Fix broken compat vDSO build warnings
      arch/arm64/Kconfig
      arch/arm64/Makefile
      arch/arm64/kernel/vdso32/Makefile
    UPSTREAM: mips: compat: vdso: Use legacy syscalls as fallback
    BACKPORT: arm64: Relax Documentation/arm64/tagged-pointers.rst
    BACKPORT: arm64: Add tagged-address-abi.rst to index.rst
  * UPSTREAM: arm64: vdso: Fix Makefile regression
      arch/arm64/Makefile
    UPSTREAM: mips: vdso: Fix flip/flop vdso building bug
    UPSTREAM: mips: vdso: Fix source path
    UPSTREAM: mips: Add clock_gettime64 entry point
    UPSTREAM: mips: Add clock_getres entry point
    BACKPORT: mips: Add support for generic vDSO
  * BACKPORT: arm64: vdso: Explicitly add build-id option
      arch/arm64/kernel/vdso/Makefile
  * BACKPORT: arm64: vdso: use $(LD) instead of $(CC) to link VDSO
      arch/arm64/kernel/vdso/Makefile
  * BACKPORT: arm64: vdso: Cleanup Makefiles
      arch/arm64/kernel/vdso/Makefile
      arch/arm64/kernel/vdso32/Makefile
  * UPSTREAM: arm64: vdso: Fix population of AT_SYSINFO_EHDR for compat vdso
      arch/arm64/include/asm/elf.h
  * UPSTREAM: arm64: vdso: Fix compilation with clang older than 8
      arch/arm64/kernel/vdso/Makefile
  * UPSTREAM: arm64: compat: Fix __arch_get_hw_counter() implementation
      arch/arm64/include/asm/vdso/compat_gettimeofday.h
  * UPSTREAM: arm64: Fix __arch_get_hw_counter() implementation
      arch/arm64/include/asm/vdso/gettimeofday.h
    UPSTREAM: x86/vdso/32: Use 32bit syscall fallback
    UPSTREAM: x86/vdso: Fix flip/flop vdso build bug
    UPSTREAM: x86/vdso: Give the [ph]vclock_page declarations real types
    UPSTREAM: x86/vdso: Add clock_gettime64() entry point
    BACKPORT: x86/vdso: Add clock_getres() entry point
    BACKPORT: x86/vdso: Switch to generic vDSO implementation
    UPSTREAM: x86/segments: Introduce the 'CPUNODE' naming to better document the segment limit CPU/node NR trick
    UPSTREAM: x86/vdso: Initialize the CPU/node NR segment descriptor earlier
    UPSTREAM: x86/vdso: Introduce helper functions for CPU and node number
    UPSTREAM: x86/segments/64: Rename the GDT PER_CPU entry to CPU_NUMBER
  * BACKPORT: arm64: vdso: Enable vDSO compat support
      arch/arm64/Kconfig
      arch/arm64/Makefile
      arch/arm64/kernel/Makefile
  * UPSTREAM: arm64: compat: Get sigreturn trampolines from vDSO
      arch/arm64/include/asm/vdso.h
      arch/arm64/kernel/signal32.c
  * UPSTREAM: arm64: elf: VDSO code page discovery
      arch/arm64/include/asm/elf.h
  * UPSTREAM: arm64: compat: VDSO setup for compat layer
      arch/arm64/kernel/vdso.c
  * UPSTREAM: arm64: vdso: Refactor vDSO code
      arch/arm64/kernel/vdso.c
  * BACKPORT: arm64: compat: Add vDSO
      arch/arm64/include/asm/vdso/compat_barrier.h
      arch/arm64/include/asm/vdso/compat_gettimeofday.h
      arch/arm64/kernel/vdso32/Makefile
      arch/arm64/kernel/vdso32/note.c
      arch/arm64/kernel/vdso32/sigreturn.S
      arch/arm64/kernel/vdso32/vdso.S
      arch/arm64/kernel/vdso32/vdso.lds.S
      arch/arm64/kernel/vdso32/vgettimeofday.c
  * UPSTREAM: arm64: compat: Generate asm offsets for signals
      arch/arm64/kernel/asm-offsets.c
  * UPSTREAM: arm64: compat: Expose signal related structures
      arch/arm64/include/asm/signal32.h
      arch/arm64/kernel/signal32.c
  * UPSTREAM: arm64: compat: Add missing syscall numbers
      arch/arm64/include/asm/unistd.h
  * BACKPORT: arm64: vdso: Substitute gettimeofday() with C implementation
      arch/arm64/Kconfig
      arch/arm64/include/asm/vdso/gettimeofday.h
      arch/arm64/include/asm/vdso/vsyscall.h
      arch/arm64/kernel/asm-offsets.c
      arch/arm64/kernel/vdso.c
      arch/arm64/kernel/vdso/Makefile
      arch/arm64/kernel/vdso/vgettimeofday.c
  * UPSTREAM: timekeeping: Provide a generic update_vsyscall() implementation
      include/asm-generic/vdso/vsyscall.h
      include/vdso/vsyscall.h
      kernel/time/Makefile
      kernel/time/vsyscall.c
  * UPSTREAM: lib/vdso: Add compat support
      lib/vdso/gettimeofday.c
  * UPSTREAM: lib/vdso: Provide generic VDSO implementation
      include/vdso/helpers.h
      lib/Kconfig
      lib/vdso/Kconfig
      lib/vdso/Makefile
      lib/vdso/gettimeofday.c
  * UPSTREAM: vdso: Define standardized vdso_datapage
      include/vdso/datapage.h
  * UPSTREAM: hrtimer: Split out hrtimer defines into separate header
      include/linux/hrtimer.h
      include/linux/hrtimer_defs.h
    UPSTREAM: nds32: Fix vDSO clock_getres()
  * UPSTREAM: arm64: compat: Reduce address limit for 64K pages
      arch/arm64/include/asm/processor.h
  * BACKPORT: arm64: compat: Add KUSER_HELPERS config option
      arch/arm64/Kconfig
      arch/arm64/kernel/Makefile
      arch/arm64/kernel/kuser32.S
      arch/arm64/kernel/vdso.c
  * UPSTREAM: arm64: compat: Refactor aarch32_alloc_vdso_pages()
      arch/arm64/kernel/vdso.c
  * BACKPORT: arm64: compat: Split kuser32
      arch/arm64/kernel/Makefile
      arch/arm64/kernel/kuser32.S
  * UPSTREAM: arm64: compat: Alloc separate pages for vectors and sigpage
      arch/arm64/include/asm/elf.h
      arch/arm64/include/asm/signal32.h
      arch/arm64/kernel/signal32.c
      arch/arm64/kernel/vdso.c
    ANDROID: GKI: Update ABI XML representation
  * ANDROID: GKI: Enable GENERIC_IRQ_CHIP
      init/Kconfig.gki
  * ANDROID: GKI: power_supply: Add FG_TYPE power-supply property
      drivers/power/supply/power_supply_sysfs.c
      include/linux/power_supply.h
  * ANDROID: GKI: mm: export mm_trace_rss_stat for modules to report RSS changes
      mm/memory.c
    ANDROID: GKI: gki_defconfig: Enable CONFIG_LEDS_TRIGGER_TRANSIENT
    ANDROID: GKI: gki_defconfig: Enable CONFIG_CPU_FREQ_STAT
    ANDROID: GKI: arm64: gki_defconfig: Disable HW tracing features
    ANDROID: GKI: gki_defconfig: Enable CONFIG_I2C_CHARDEV
  * ANDROID: Incremental fs: Use simple compression in log buffer
      fs/incfs/data_mgmt.c
      fs/incfs/data_mgmt.h
      fs/incfs/vfs.c
  * ANDROID: GKI: usb: core: Add support to parse config summary capability descriptors
      drivers/usb/core/config.c
      drivers/usb/core/generic.c
      include/linux/usb.h
      include/uapi/linux/usb/ch9.h
    ANDROID: GKI: Update ABI XML representation
    ANDROID: dm-bow: Fix not to skip trim at framented range
  * ANDROID: Remove VLA from uid_sys_stats.c
      drivers/misc/uid_sys_stats.c
    f2fs: fix missing check for f2fs_unlock_op
  * ANDROID: fix wakeup reason findings
      kernel/power/wakeup_reason.c
  * UPSTREAM: cfg80211: fix and clean up cfg80211_gen_new_bssid()
      include/net/cfg80211.h
  * UPSTREAM: cfg80211: save multi-bssid properties
      include/net/cfg80211.h
      net/wireless/scan.c
  * UPSTREAM: cfg80211: make BSSID generation function inline
      include/net/cfg80211.h
      net/wireless/scan.c
  * UPSTREAM: cfg80211: parse multi-bssid only if HW supports it
      include/net/cfg80211.h
      net/wireless/scan.c
  * UPSTREAM: cfg80211: Move Multiple BSS info to struct cfg80211_bss to be visible
      include/net/cfg80211.h
      net/wireless/core.h
      net/wireless/scan.c
  * UPSTREAM: cfg80211: Properly track transmitting and non-transmitting BSS
      net/wireless/core.h
      net/wireless/scan.c
  * UPSTREAM: cfg80211: use for_each_element() for multi-bssid parsing
      net/wireless/scan.c
  * UPSTREAM: cfg80211: Parsing of Multiple BSSID information in scanning
      net/wireless/core.h
      net/wireless/scan.c
  * UPSTREAM: cfg80211/nl80211: Offload OWE processing to user space in AP mode
      include/net/cfg80211.h
      include/uapi/linux/nl80211.h
      net/wireless/nl80211.c
      net/wireless/rdev-ops.h
      net/wireless/trace.h
  * ANDROID: GKI: cfg80211: Sync nl80211 commands/feature with upstream
      include/uapi/linux/nl80211.h
    ANDROID: GKI: gki_defconfig: Enable FW_LOADER_USER_HELPER*
    ANDROID: GKI: arm64: gki_defconfig: Disable CONFIG_ARM64_TAGGED_ADDR_ABI
    ANDROID: GKI: gki_defconfig: CONFIG_CHR_DEV_SG=y
    ANDROID: GKI: gki_defconfig: CONFIG_DM_DEFAULT_KEY=m
    ANDROID: update the ABI xml representation
  * ANDROID: init: GKI: enable hidden configs for GPU
      init/Kconfig.gki
    Merge 4.19.118 into android-4.19
Linux 4.19.118
  * bpf: fix buggy r0 retval refinement for tracing helpers
      kernel/bpf/verifier.c
  * KEYS: Don't write out to userspace while holding key semaphore
      include/keys/big_key-type.h
      include/keys/user-type.h
      include/linux/key-type.h
      net/dns_resolver/dns_key.c
      security/keys/keyctl.c
      security/keys/keyring.c
      security/keys/request_key_auth.c
      security/keys/user_defined.c
    mtd: phram: fix a double free issue in error path
    mtd: lpddr: Fix a double free in probe()
    mtd: spinand: Explicitly use MTD_OPS_RAW to write the bad block marker to OOB
    locktorture: Print ratio of acquisitions, not failures
    tty: evh_bytechan: Fix out of bounds accesses
    iio: si1133: read 24-bit signed integer for measurement
    fbdev: potential information leak in do_fb_ioctl()
    net: dsa: bcm_sf2: Fix overflow checks
  * f2fs: fix to wait all node page writeback
      fs/f2fs/node.c
    iommu/amd: Fix the configuration of GCR3 table root pointer
    libnvdimm: Out of bounds read in __nd_ioctl()
    power: supply: axp288_fuel_gauge: Broaden vendor check for Intel Compute Sticks.
    ext2: fix debug reference to ext2_xattr_cache
    ext2: fix empty body warnings when -Wextra is used
    iommu/vt-d: Fix mm reference leak
    drm/vc4: Fix HDMI mode validation
  * f2fs: fix NULL pointer dereference in f2fs_write_begin()
      fs/f2fs/super.c
    NFS: Fix memory leaks in nfs_pageio_stop_mirroring()
    drm/amdkfd: kfree the wrong pointer
  * x86: ACPI: fix CPU hotplug deadlock
      include/acpi/processor.h
    KVM: s390: vsie: Fix possible race when shadowing region 3 tables
  * compiler.h: fix error in BUILD_BUG_ON() reporting
      include/linux/compiler.h
  * percpu_counter: fix a data race at vm_committed_as
      include/linux/percpu_counter.h
  * include/linux/swapops.h: correct guards for non_swap_entry()
      include/linux/swapops.h
    cifs: Allocate encryption header through kmalloc
    um: ubd: Prevent buffer overrun on command completion
  * ext4: do not commit super on read-only bdev
      fs/ext4/super.c
    s390/cpum_sf: Fix wrong page count in error message
    powerpc/maple: Fix declaration made after definition
    s390/cpuinfo: fix wrong output when CPU0 is offline
    NFS: direct.c: Fix memory leak of dreq when nfs_get_lock_context fails
    NFSv4/pnfs: Return valid stateids in nfs_layout_find_inode_by_stateid()
    rtc: 88pm860x: fix possible race condition
    soc: imx: gpc: fix power up sequencing
    clk: tegra: Fix Tegra PMC clock out parents
    power: supply: bq27xxx_battery: Silence deferred-probe error
    clk: at91: usb: continue if clk_hw_round_rate() return zero
    x86/Hyper-V: Report crash data in die() when panic_on_oops is set
    x86/Hyper-V: Report crash register data when sysctl_record_panic_msg is not set
    x86/Hyper-V: Trigger crash enlightenment only once during system crash.
    x86/Hyper-V: Free hv_panic_page when fail to register kmsg dump
    x86/Hyper-V: Unload vmbus channel in hv panic callback
    xsk: Add missing check on user supplied headroom size
    rbd: call rbd_dev_unprobe() after unwatching and flushing notifies
    rbd: avoid a deadlock on header_rwsem when flushing notifies
    video: fbdev: sis: Remove unnecessary parentheses and commented code
    lib/raid6: use vdupq_n_u8 to avoid endianness warnings
    x86/Hyper-V: Report crash register data or kmsg before running crash kernel
    of: overlay: kmemleak in dup_and_fixup_symbol_prop()
    of: unittest: kmemleak in of_unittest_overlay_high_level()
    of: unittest: kmemleak in of_unittest_platform_populate()
    of: unittest: kmemleak on changeset destroy
    ALSA: hda: Don't release card at firmware loading error
    irqchip/mbigen: Free msi_desc on device teardown
    netfilter: nf_tables: report EOPNOTSUPP on unsupported flags/object type
    ARM: dts: imx6: Use gpc for FEC interrupt controller to fix wake on LAN.
    arm, bpf: Fix bugs with ALU64 {RSH, ARSH} BPF_K shift by 0
    watchdog: sp805: fix restart handler
  * ext4: use non-movable memory for superblock readahead
      fs/buffer.c
      fs/ext4/inode.c
      fs/ext4/super.c
      include/linux/buffer_head.h
  * scsi: sg: add sg_remove_request in sg_common_write
      drivers/scsi/sg.c
    objtool: Fix switch table detection in .text.unlikely
    arm, bpf: Fix offset overflow for BPF_MEM BPF_DW
    ANDROID: GKI: Bulk update ABI report.
  * ANDROID: GKI: qos: Register irq notify after adding the qos request
      kernel/power/qos.c
  * ANDROID: GKI: Add dual role mode to usb_dr_modes array
      drivers/usb/common/common.c
  * UPSTREAM: virtio-gpu api: comment feature flags
      include/uapi/linux/virtio_gpu.h
  * ANDROID: arch:arm64: Increase kernel command line size
      arch/arm64/include/uapi/asm/setup.h
  * ANDROID: GKI: Add special linux_banner_ptr for modules
      include/linux/printk.h
      init/version.c
  * Revert "ANDROID: GKI: Make linux_banner a C pointer"
      include/linux/printk.h
      init/version.c
  * ANDROID: GKI: PM / devfreq: Add new flag to do simple clock scaling
      drivers/devfreq/governor_simpleondemand.c
      include/linux/devfreq.h
  * ANDROID: GKI: Resolve ABI diff for struct snd_usb_audio
      sound/usb/card.c
      sound/usb/stream.c
      sound/usb/usbaudio.h
    ANDROID: GKI: Bulk update ABI
    ANDROID: GKI: Update the whitelist for qcom SoCs
    ANDROID: GKI: arm64: gki_defconfig: Set CONFIG_SCSI_UFSHCD=m
  * ANDROID: GKI: scsi: add option to override the command timeout
      drivers/scsi/scsi_lib.c
      drivers/scsi/sd.c
      drivers/scsi/sg.c
      include/scsi/scsi_device.h
  * ANDROID: GKI: scsi: Adjust DBD setting in mode sense for caching mode page per LLD
      drivers/scsi/sd.c
      include/scsi/scsi_host.h
  * ANDROID: add ion_stat tracepoint to common kernel
      drivers/staging/android/ion/Makefile
      drivers/staging/android/ion/ion.c
      lib/vsprintf.c
  * UPSTREAM: gpu/trace: add a gpu total memory usage tracepoint
      drivers/Kconfig
      drivers/gpu/Makefile
      drivers/gpu/trace/Kconfig
      drivers/gpu/trace/Makefile
      drivers/gpu/trace/trace_gpu_mem.c
      include/trace/events/gpu_mem.h
    Merge 4.19.117 into android-4.19
Linux 4.19.117
  * mm/vmalloc.c: move 'area->pages' after if statement
      mm/vmalloc.c
    wil6210: remove reset file from debugfs
    wil6210: make sure Rx ring sizes are correlated
    wil6210: add general initialization/size checks
    wil6210: ignore HALP ICR if already handled
    wil6210: check rx_buff_mgmt before accessing it
    x86/resctrl: Fix invalid attempt at removing the default resource group
    x86/resctrl: Preserve CDP enable over CPU hotplug
    x86/microcode/AMD: Increase microcode PATCH_MAX_SIZE
  * scsi: target: fix hang when multiple threads try to destroy the same iscsi session
      include/target/iscsi/iscsi_target_core.h
    scsi: target: remove boilerplate code
    kvm: x86: Host feature SSBD doesn't imply guest feature SPEC_CTRL_SSBD
  * ext4: do not zeroout extents beyond i_disksize
      fs/ext4/extents.c
    drm/amd/powerplay: force the trim of the mclk dpm_levels if OD is enabled
  * usb: dwc3: gadget: Don't clear flags before transfer ended
      drivers/usb/dwc3/gadget.c
  * usb: dwc3: gadget: don't enable interrupt when disabling endpoint
      drivers/usb/dwc3/gadget.c
    mac80211_hwsim: Use kstrndup() in place of kasprintf()
    btrfs: check commit root generation in should_ignore_root
  * tracing: Fix the race between registering 'snapshot' event trigger and triggering 'snapshot' operation
      kernel/trace/trace_events_trigger.c
  * keys: Fix proc_keys_next to increase position index
      security/keys/proc.c
  * ALSA: usb-audio: Check mapping at creating connector controls, too
      sound/usb/mixer.c
      sound/usb/mixer_maps.c
  * ALSA: usb-audio: Don't create jack controls for PCM terminals
      sound/usb/mixer.c
  * ALSA: usb-audio: Don't override ignore_ctl_error value from the map
      sound/usb/mixer.c
  * ALSA: usb-audio: Filter error from connector kctl ops, too
      sound/usb/mixer.c
    ASoC: Intel: mrfld: return error codes when an error occurs
    ASoC: Intel: mrfld: fix incorrect check on p->sink
  * ext4: fix incorrect inodes per group in error message
      fs/ext4/super.c
  * ext4: fix incorrect group count in ext4_fill_super error message
      fs/ext4/super.c
    pwm: pca9685: Fix PWM/GPIO inter-operation
  * jbd2: improve comments about freeing data buffers whose page mapping is NULL
      fs/jbd2/commit.c
  * scsi: ufs: Fix ufshcd_hold() caused scheduling while atomic
      drivers/scsi/ufs/ufshcd.c
  * ovl: fix value of i_ino for lower hardlink corner case
      fs/overlayfs/inode.c
    net: dsa: mt7530: fix tagged frames pass-through in VLAN-unaware mode
    net: stmmac: dwmac-sunxi: Provide TX and RX fifo sizes
  * net: revert default NAPI poll timeout to 2 jiffies
      net/core/dev.c
  * net: qrtr: send msgs from local of same id as broadcast
      net/qrtr/qrtr.c
  * net: ipv6: do not consider routes via gateways for anycast address check
      include/net/ip6_route.h
  * net: ipv4: devinet: Fix crash when add/del multicast IP with autojoin
      net/ipv4/devinet.c
    hsr: check protocol version in hsr_newlink()
    amd-xgbe: Use __napi_schedule() in BH context
  * ANDROID: GKI: drivers: of-thermal: Relate thermal zones using same sensor
      drivers/thermal/of-thermal.c
    ANDROID: GKI: Bulk ABI update
  * ANDROID: GKI: dma: Add set_dma_mask hook to struct dma_map_ops
      include/linux/dma-mapping.h
    Merge remote-tracking branch 'aosp/upstream-f2fs-stable-linux-4.19.y' into android-4.19
    ANDROID: GKI: ABI update due to recent patches
    Merge 4.19.116 into android-4.19
  * FROMLIST: drm/prime: add support for virtio exported objects
      drivers/gpu/drm/drm_prime.c
      include/drm/drm_drv.h
  * FROMLIST: dma-buf: add support for virtio exported objects
      drivers/dma-buf/dma-buf.c
      include/linux/dma-buf.h
    UPSTREAM: drm/virtio: module_param_named() requires linux/moduleparam.h
    UPSTREAM: drm/virtio: fix resource id creation race
    UPSTREAM: drm/virtio: make resource id workaround runtime switchable.
    BACKPORT: drm/virtio: Drop deprecated load/unload initialization
  * ANDROID: GKI: Add DRM_TTM config to GKI
      init/Kconfig.gki
    ANDROID: Bulk update the ABI xml representation
  * ANDROID: GKI: spmi: pmic-arb: don't enable SPMI_MSM_PMIC_ARB by default
      drivers/spmi/Kconfig
  * ANDROID: GKI: attribute page lock and waitqueue functions as sched
      include/linux/pagemap.h
      include/linux/wait.h
      kernel/sched/wait.c
      mm/filemap.c
  * ANDROID: GKI: extcon: Fix Add usage of blocking notifier chain
      drivers/extcon/extcon.c
      include/linux/extcon.h
  * ANDROID: GKI: USB: pd: Extcon fix for C current
      include/linux/extcon.h
  * ANDROID: drm/dsi: Fix byte order of DCS set/get brightness
      drivers/gpu/drm/drm_mipi_dsi.c
      include/drm/drm_mipi_dsi.h
  * ANDROID: GKI: mm: Export symbols to modularize CONFIG_MSM_DRM
      mm/vmalloc.c
  * ANDROID: GKI: ALSA: compress: Add support to send codec specific data
      include/sound/compress_driver.h
      include/uapi/sound/compress_offload.h
      sound/core/compress_offload.c
      sound/soc/soc-compress.c
  * ANDROID: GKI: ALSA: Compress - dont use lock for all ioctls
      sound/core/compress_offload.c
  * ANDROID: GKI: ASoC: msm: qdsp6v2: add support for AMR_WB_PLUS offload
      include/uapi/sound/compress_params.h
  * ANDROID: GKI: msm: dolby: MAT and THD audiocodec name modification
      include/uapi/sound/compress_params.h
  * ANDROID: GKI: asoc: msm: Add support for compressed perf mode
      include/uapi/sound/compress_params.h
  * ANDROID: GKI: msm: audio: support for gapless_pcm
      include/uapi/sound/compress_params.h
  * ANDROID: GKI: uapi: msm: dolby: Support for TrueHD and MAT decoders
      include/uapi/sound/compress_params.h
  * ANDROID: GKI: ASoC: msm: qdsp6v2: Add TrueHD HDMI compress pass-though
      include/uapi/sound/compress_params.h
  * ANDROID: GKI: ALSA: compress: Add APTX format support in ALSA
      include/uapi/sound/compress_params.h
  * ANDROID: GKI: msm: qdsp6v2: Add timestamp support for compress capture
      include/uapi/sound/compress_params.h
  * ANDROID: GKI: SoC: msm: Add support for meta data in compressed TX
      include/uapi/sound/compress_params.h
  * ANDROID: GKI: ALSA: compress: Add DSD format support for ALSA
      include/uapi/sound/compress_params.h
  * ANDROID: GKI: ASoC: msm: qdsp6v2: add support for ALAC and APE offload
      include/uapi/sound/compress_params.h
  * ANDROID: GKI: SoC: msm: Add compressed TX and passthrough support
      include/uapi/sound/compress_offload.h
      include/uapi/sound/compress_params.h
  * ANDROID: GKI: ASoC: msm: qdsp6v2: Add FLAC in compress offload path
      include/uapi/sound/compress_params.h
  * ANDROID: GKI: ASoC: msm: add support for different compressed formats
      include/uapi/sound/compress_params.h
  * ANDROID: GKI: ASoC: msm: Update the encode option and sample rate
      include/uapi/sound/compress_params.h
    ANDROID: GKI: Enable CONFIG_SND_VERBOSE_PROCFS in gki_defconfig
  * ANDROID: GKI: Add hidden CONFIG_SND_SOC_COMPRESS to gki_defconfig
      init/Kconfig.gki
  * ANDROID: GKI: ALSA: pcm: add locks for accessing runtime resource
      include/sound/pcm.h
    ANDROID: GKI: Update ABI for DRM changes
  * ANDROID: GKI: Add drm_dp_send_dpcd_{read,write} accessor functions
      drivers/gpu/drm/drm_dp_mst_topology.c
      include/drm/drm_dp_mst_helper.h
  * ANDROID: GKI: drm: Add drm_dp_mst_get_max_sdp_streams_supported accessor function
      drivers/gpu/drm/drm_dp_mst_topology.c
      include/drm/drm_dp_mst_helper.h
  * ANDROID: GKI: drm: Add drm_dp_mst_has_fec accessor function
      drivers/gpu/drm/drm_dp_mst_topology.c
      include/drm/drm_dp_mst_helper.h
  * ANDROID: GKI: Add 'dsc_info' to struct drm_dp_mst_port
      drivers/gpu/drm/drm_dp_mst_topology.c
      include/drm/drm_dp_mst_helper.h
  * ANDROID: GKI: usb: Add support to handle USB SMMU S1 address
      drivers/usb/core/hcd.c
      drivers/usb/core/usb.c
      drivers/usb/host/xhci.c
      include/linux/usb.h
      include/linux/usb/hcd.h
  * ANDROID: GKI: usb: Add helper APIs to return xhci phys addresses
      drivers/usb/core/hcd.c
      drivers/usb/core/usb.c
      drivers/usb/host/xhci.c
      include/linux/usb.h
      include/linux/usb/hcd.h
  * ANDROID: Add C protos for dma_buf/drm_prime get_uuid
      include/drm/drm_prime.h
      include/linux/dma-buf.h
  * ANDROID: GKI: Make linux_banner a C pointer
      include/linux/printk.h
      init/version.c
  * ANDROID: GKI: Add 'refresh_rate', 'id' to struct drm_panel_notifier
      include/drm/drm_panel.h
  * ANDROID: GKI: Add 'i2c_mutex' to struct drm_dp_aux
      include/drm/drm_dp_helper.h
  * ANDROID: GKI: Add 'checksum' to struct drm_connector
      include/drm/drm_connector.h
  * Revert "BACKPORT: drm: Add HDR source metadata property"
      drivers/gpu/drm/drm_atomic.c
      drivers/gpu/drm/drm_connector.c
      include/drm/drm_connector.h
      include/drm/drm_mode_config.h
      include/linux/hdmi.h
      include/uapi/drm/drm_mode.h
  * Revert "BACKPORT: drm: Parse HDR metadata info from EDID"
      drivers/gpu/drm/drm_edid.c
  * ANDROID: drm: Add DP colorspace property
      drivers/gpu/drm/drm_connector.c
      include/drm/drm_connector.h
  * ANDROID: GKI: drm: Initialize display->hdmi when parsing vsdb
      drivers/gpu/drm/drm_edid.c
  * ANDROID: drivers: gpu: drm: add support to batch commands
      drivers/gpu/drm/drm_mipi_dsi.c
      include/drm/drm_mipi_dsi.h
    ANDROID: ABI: update the qcom whitelist
  * ANDROID: GKI: ARM64: smp: add vendor field pending_ipi
      arch/arm64/kernel/smp.c
    ANDROID: gki_defconfig: enable msm serial early console
  * ANDROID: serial: msm_geni_serial_console : Add Earlycon support
      drivers/tty/serial/Kconfig
      drivers/tty/serial/Makefile
      drivers/tty/serial/msm_geni_serial_console.c
  * ANDROID: GKI: serial: core: export uart_console_device
      drivers/tty/serial/serial_core.c
  * f2fs: fix quota_sync failure due to f2fs_lock_op
      fs/f2fs/data.c
  * f2fs: support read iostat
      fs/f2fs/checkpoint.c
      fs/f2fs/data.c
      fs/f2fs/f2fs.h
      fs/f2fs/file.c
      fs/f2fs/gc.c
      fs/f2fs/node.c
      fs/f2fs/sysfs.c
      include/trace/events/f2fs.h
  * f2fs: Fix the accounting of dcc->undiscard_blks
      fs/f2fs/segment.c
  * f2fs: fix to handle error path of f2fs_ra_meta_pages()
      fs/f2fs/checkpoint.c
  * f2fs: report the discard cmd errors properly
      fs/f2fs/segment.c
  * f2fs: fix long latency due to discard during umount
      fs/f2fs/segment.c
  * f2fs: add tracepoint for f2fs iostat
      fs/f2fs/f2fs.h
      fs/f2fs/super.c
      fs/f2fs/sysfs.c
      include/trace/events/f2fs.h
  * f2fs: introduce sysfs/data_io_flag to attach REQ_META/FUA
      fs/f2fs/data.c
      fs/f2fs/f2fs.h
      fs/f2fs/sysfs.c
    ANDROID: GKI: update abi definition due to previous changes in the tree
Linux 4.19.116
    efi/x86: Fix the deletion of variables in mixed mode
    mfd: dln2: Fix sanity checking for endpoints
    etnaviv: perfmon: fix total and idle HI cyleces readout
    misc: echo: Remove unnecessary parentheses and simplify check for zero
    powerpc/fsl_booke: Avoid creating duplicate tlb1 entry
    ftrace/kprobe: Show the maxactive number on kprobe_events
  * drm: Remove PageReserved manipulation from drm_pci_alloc
      drivers/gpu/drm/drm_pci.c
  * drm/dp_mst: Fix clearing payload state on topology disable
      drivers/gpu/drm/drm_dp_mst_topology.c
  * Revert "drm/dp_mst: Remove VCPI while disabling topology mgr"
      drivers/gpu/drm/drm_dp_mst_topology.c
    crypto: ccree - only try to map auth tag if needed
    crypto: ccree - dec auth tag size from cryptlen map
    crypto: ccree - don't mangle the request assoclen
    crypto: ccree - zero out internal struct before use
    crypto: ccree - improve error handling
    crypto: caam - update xts sector size for large input length
    dm zoned: remove duplicate nr_rnd_zones increase in dmz_init_zone()
    btrfs: use nofs allocations for running delayed items
    powerpc: Make setjmp/longjmp signature standard
    powerpc: Add attributes for setjmp/longjmp
    scsi: mpt3sas: Fix kernel panic observed on soft HBA unplug
    powerpc/kprobes: Ignore traps that happened in real mode
    powerpc/xive: Use XIVE_BAD_IRQ instead of zero to catch non configured IPIs
    powerpc/hash64/devmap: Use H_PAGE_THP_HUGE when setting up huge devmap PTE entries
    powerpc/64/tm: Don't let userspace set regs->trap via sigreturn
    powerpc/powernv/idle: Restore AMR/UAMOR/AMOR after idle
    xen/blkfront: fix memory allocation flags in blkfront_setup_indirect()
    ipmi: fix hung processes in __get_guid()
    libata: Return correct status in sata_pmp_eh_recover_pm() when ATA_DFLAG_DETACH is set
    hfsplus: fix crash and filesystem corruption when deleting files
    cpufreq: powernv: Fix use-after-free
  * kmod: make request_module() return an error when autoloading is disabled
      kernel/kmod.c
    clk: ingenic/jz4770: Exit with error if CGU init failed
    Input: i8042 - add Acer Aspire 5738z to nomux list
    s390/diag: fix display of diagnose call statistics
    perf tools: Support Python 3.8+ in Makefile
    ocfs2: no need try to truncate file beyond i_size
  * fs/filesystems.c: downgrade user-reachable WARN_ONCE() to pr_warn_once()
      fs/filesystems.c
  * ext4: fix a data race at inode->i_blocks
      fs/ext4/inode.c
    NFS: Fix a page leak in nfs_destroy_unlinked_subrequests()
    powerpc/pseries: Avoid NULL pointer dereference when drmem is unavailable
    drm/etnaviv: rework perfmon query infrastructure
    rtc: omap: Use define directive for PIN_CONFIG_ACTIVE_HIGH
    selftests: vm: drop dependencies on page flags from mlock2 tests
  * arm64: armv8_deprecated: Fix undef_hook mask for thumb setend
      arch/arm64/kernel/armv8_deprecated.c
    scsi: zfcp: fix missing erp_lock in port recovery trigger for point-to-point
  * dm verity fec: fix memory leak in verity_fec_dtr
      drivers/md/dm-verity-fec.c
    dm writecache: add cond_resched to avoid CPU hangs
    arm64: dts: allwinner: h6: Fix PMU compatible
  * net: qualcomm: rmnet: Allow configuration updates to existing devices
      drivers/net/ethernet/qualcomm/rmnet/rmnet_config.c
  * mm: Use fixed constant in page_frag_alloc instead of size + 1
      mm/page_alloc.c
    tools: gpio: Fix out-of-tree build regression
  * x86/speculation: Remove redundant arch_smt_update() invocation
      kernel/cpu.c
    powerpc/pseries: Drop pointless static qualifier in vpa_debugfs_init()
    erofs: correct the remaining shrink objects
    crypto: mxs-dcp - fix scatterlist linearization for hash
    btrfs: fix missing semaphore unlock in btrfs_sync_file
    btrfs: fix missing file extent item for hole after ranged fsync
    btrfs: drop block from cache on error in relocation
    btrfs: set update the uuid generation as soon as possible
    Btrfs: fix crash during unmount due to race with delayed inode workers
    mtd: spinand: Do not erase the block before writing a bad block marker
    mtd: spinand: Stop using spinand->oobbuf for buffering bad block markers
    CIFS: Fix bug which the return value by asynchronous read is error
    KVM: VMX: fix crash cleanup when KVM wasn't used
    KVM: x86: Gracefully handle __vmalloc() failure during VM allocation
    KVM: VMX: Always VMCLEAR in-use VMCSes during crash with kexec support
    KVM: x86: Allocate new rmap and large page tracking when moving memslot
    KVM: s390: vsie: Fix delivery of addressing exceptions
    KVM: s390: vsie: Fix region 1 ASCE sanity shadow address checks
    KVM: nVMX: Properly handle userspace interrupt window request
    x86/entry/32: Add missing ASM_CLAC to general_protection entry
  * signal: Extend exec_id to 64bits
      fs/exec.c
      include/linux/sched.h
      kernel/signal.c
    ath9k: Handle txpower changes even when TPC is disabled
    MIPS: OCTEON: irq: Fix potential NULL pointer dereference
    MIPS/tlbex: Fix LDDIR usage in setup_pw() for Loongson-3
  * pstore: pstore_ftrace_seq_next should increase position index
      fs/pstore/inode.c
    irqchip/versatile-fpga: Apply clear-mask earlier
  * KEYS: reaching the keys quotas correctly
      security/keys/key.c
      security/keys/keyctl.c
    tpm: tpm2_bios_measurements_next should increase position index
    tpm: tpm1_bios_measurements_next should increase position index
    tpm: Don't make log failures fatal
  * PCI: endpoint: Fix for concurrent memory allocation in OB address region
      include/linux/pci-epc.h
  * PCI: Add boot interrupt quirk mechanism for Xeon chipsets
      drivers/pci/quirks.c
    PCI/ASPM: Clear the correct bits when enabling L1 substates
    PCI: pciehp: Fix indefinite wait on sysfs requests
    nvme: Treat discovery subsystems as unique subsystems
  * nvme-fc: Revert "add module to ops template to allow module references"
      include/linux/nvme-fc-driver.h
  * thermal: devfreq_cooling: inline all stubs for CONFIG_DEVFREQ_THERMAL=n
      include/linux/devfreq_cooling.h
    acpi/x86: ignore unspecified bit positions in the ACPI global lock field
    media: ti-vpe: cal: fix disable_irqs to only the intended target
    ALSA: hda/realtek - Add quirk for MSI GL63
    ALSA: hda/realtek - Remove now-unnecessary XPS 13 headphone noise fixups
    ALSA: hda/realtek - Set principled PC Beep configuration for ALC256
    ALSA: doc: Document PC Beep Hidden Register on Realtek ALC256
    ALSA: pcm: oss: Fix regression by buffer overflow fix
    ALSA: ice1724: Fix invalid access for enumerated ctl items
    ALSA: hda: Fix potential access overflow in beep helper
    ALSA: hda: Add driver blacklist
  * ALSA: usb-audio: Add mixer workaround for TRX40 and co
      sound/usb/mixer_maps.c
  * usb: gadget: composite: Inform controller driver of self-powered
      drivers/usb/gadget/composite.c
  * usb: gadget: f_fs: Fix use after free issue as part of queue failure
      drivers/usb/gadget/function/f_fs.c
    ASoC: topology: use name_prefix for new kcontrol
  * ASoC: dpcm: allow start or stop during pause for backend
      sound/soc/soc-pcm.c
  * ASoC: dapm: connect virtual mux with default value
      sound/soc/soc-dapm.c
  * ASoC: fix regwmask
      sound/soc/soc-ops.c
  * slub: improve bit diffusion for freelist ptr obfuscation
      mm/slub.c
  * uapi: rename ext2_swab() to swab() and share globally in swab.h
      include/linux/swab.h
      include/uapi/linux/swab.h
      lib/find_bit.c
  * IB/mlx5: Replace tunnel mpls capability bits for tunnel_offloads
      include/linux/mlx5/mlx5_ifc.h
    btrfs: track reloc roots based on their commit root bytenr
    btrfs: remove a BUG_ON() from merge_reloc_roots()
    btrfs: qgroup: ensure qgroup_rescan_running is only set when the worker is at least queued
    block, bfq: fix use-after-free in bfq_idle_slice_timer_body
    locking/lockdep: Avoid recursion in lockdep_count_{for,back}ward_deps()
  * firmware: fix a double abort case with fw_load_sysfs_fallback
      drivers/base/firmware_loader/fallback.c
    md: check arrays is suspended in mddev_detach before call quiesce operations
  * irqchip/gic-v4: Provide irq_retrigger to avoid circular locking dependency
      drivers/irqchip/irq-gic-v3-its.c
  * usb: dwc3: core: add support for disabling SS instances in park mode
      drivers/usb/dwc3/core.c
      drivers/usb/dwc3/core.h
    media: i2c: ov5695: Fix power on and off sequences
  * block: Fix use-after-free issue accessing struct io_cq
      block/blk-ioc.c
      include/linux/iocontext.h
  * genirq/irqdomain: Check pointer in irq_domain_alloc_irqs_hierarchy()
      kernel/irq/irqdomain.c
    efi/x86: Ignore the memory attributes table on i386
    x86/boot: Use unsigned comparison for addresses
    gfs2: Don't demote a glock until its revokes are written
  * pstore/platform: fix potential mem leak if pstore_init_fs failed
      fs/pstore/platform.c
    libata: Remove extra scsi_host_put() in ata_scsi_add_hosts()
    media: i2c: video-i2c: fix build errors due to 'imply hwmon'
    PCI/switchtec: Fix init_completion race condition with poll_wait()
    selftests/x86/ptrace_syscall_32: Fix no-vDSO segfault
  * sched: Avoid scale real weight down to zero
      kernel/sched/sched.h
    irqchip/versatile-fpga: Handle chained IRQs properly
  * block: keep bdi->io_pages in sync with max_sectors_kb for stacked devices
      block/blk-settings.c
    x86: Don't let pgprot_modify() change the page encryption bit
  * xhci: bail out early if driver can't accress host in resume
      drivers/usb/host/xhci.c
    null_blk: fix spurious IO errors after failed past-wp access
    null_blk: Handle null_add_dev() failures properly
    null_blk: Fix the null_add_dev() error path
    firmware: arm_sdei: fix double-lock on hibernate with shared events
    media: venus: hfi_parser: Ignore HEVC encoding for V1
    cpufreq: imx6q: Fixes unwanted cpu overclocking on i.MX6ULL
    i2c: st: fix missing struct parameter description
    qlcnic: Fix bad kzalloc null test
    cxgb4/ptp: pass the sign of offset delta in FW CMD
    hinic: fix wrong para of wait_for_completion_timeout
    hinic: fix a bug of waitting for IO stopped
    net: vxge: fix wrong __VA_ARGS__ usage
    bus: sunxi-rsb: Return correct data when mixing 16-bit and 8-bit reads
    ARM: dts: sun8i-a83t-tbs-a711: HM5065 doesn't like such a high voltage
    ANDROID: build.config.allmodconfig: Re-enable XFS_FS
  * FROMGIT: of: property: Add device link support for extcon
      drivers/of/property.c
    ANDROID: GKI: arm64: gki_defconfig: enable CONFIG_MM_EVENT_STAT
  * ANDROID: GKI: add fields from per-process mm event tracking feature
      include/linux/mm_event.h
      include/linux/sched.h
      mm/Kconfig
      mm/Makefile
      mm/mm_event.c
  * ANDROID: GKI: fix ABI diffs caused by ION heap and pool vmstat additions
      include/linux/mmzone.h
      mm/vmstat.c
  * UPSTREAM: GKI: panic/reboot: allow specifying reboot_mode for panic only
      include/linux/reboot.h
      kernel/panic.c
      kernel/reboot.c
  * ANDROID: GKI: of: property: Add device link support for phys property
      drivers/of/property.c
  * ANDROID: GKI: usb: phy: Fix ABI diff for usb_otg_state
      include/linux/usb/phy.h
  * ANDROID: GKI: usb: phy: Fix ABI diff due to usb_phy.drive_dp_pulse
      include/linux/usb/phy.h
  * ANDROID: GKI: usb: phy: Fix ABI diff for usb_phy_type and usb_phy.reset
      include/linux/usb/phy.h
    ANDROID: gki_defconfig: enable CONFIG_GPIO_SYSFS
  * ANDROID: GKI: qcom: Fix compile issue when setting msm_lmh_dcvs as a module
      kernel/trace/power-traces.c
  * ANDROID: GKI: drivers: cpu_cooling: allow platform freq mitigation
      drivers/thermal/cpu_cooling.c
      include/linux/cpu_cooling.h
  * ANDROID: GKI: ASoC: Add locking in DAPM widget power update
      include/sound/soc.h
      sound/soc/soc-core.c
      sound/soc/soc-dapm.c
  * ANDROID: GKI: ASoC: jack: Fix buttons enum value
      include/sound/jack.h
  * ANDROID: GKI: ALSA: jack: Add support to report second microphone
      include/sound/jack.h
      include/uapi/linux/input-event-codes.h
      sound/core/jack.c
  * ANDROID: GKI: ALSA: jack: Update supported jack switch types
      include/linux/mod_devicetable.h
      include/sound/jack.h
      include/uapi/linux/input-event-codes.h
      sound/core/jack.c
  * ANDROID: GKI: ALSA: jack: update jack types
      include/sound/jack.h
  * ANDROID: GKI: Export symbols arm_cpuidle_suspend, cpuidle_dev and cpuidle_register_governor
      arch/arm64/kernel/cpuidle.c
      drivers/cpuidle/cpuidle.c
  * ANDROID: GKI: usb: hcd: Add USB atomic notifier callback for HC died error
      drivers/usb/core/hcd.c
      drivers/usb/core/notify.c
      drivers/usb/core/usb.h
      include/linux/usb.h
  * ANDROID: media: increase video max frame number
      include/media/videobuf2-core.h
      include/uapi/linux/videodev2.h
  * BACKPORT: nvmem: core: add NVMEM_SYSFS Kconfig
      drivers/nvmem/Kconfig
      drivers/nvmem/Makefile
      drivers/nvmem/core.c
      drivers/nvmem/nvmem-sysfs.c
      drivers/nvmem/nvmem.h
  * UPSTREAM: nvmem: add support for cell info
      drivers/nvmem/core.c
      include/linux/nvmem-provider.h
  * UPSTREAM: nvmem: remove the global cell list
      drivers/nvmem/core.c
  * UPSTREAM: nvmem: use kref
      drivers/nvmem/core.c
  * UPSTREAM: nvmem: use list_for_each_entry_safe in nvmem_device_remove_all_cells()
      drivers/nvmem/core.c
  * UPSTREAM: nvmem: provide nvmem_dev_name()
      drivers/nvmem/core.c
      include/linux/nvmem-consumer.h
    ANDROID: GKI: Bulk ABI update
  * ANDROID: GKI: cpuhotplug: adding hotplug enums for vendor code
      include/linux/cpuhotplug.h
  * ANDROID: Incremental fs: Fix create_file performance
      fs/incfs/format.c
    ANDROID: build.config.common: Add BUILDTOOLS_PREBUILT_BIN
  * UPSTREAM: kheaders: include only headers into kheaders_data.tar.xz
      kernel/gen_kheaders.sh
  * UPSTREAM: kheaders: remove meaningless -R option of 'ls'
      kernel/gen_kheaders.sh
  * ANDROID: GKI: of: platform: initialize of_reserved_mem
      drivers/of/platform.c
  * ANDROID: driver: gpu: drm: add notifier for panel related events
      drivers/gpu/drm/drm_panel.c
      include/drm/drm_connector.h
      include/drm/drm_panel.h
  * ANDROID: include: drm: support unicasting mipi cmds to dsi ctrls
      include/drm/drm_mipi_dsi.h
  * ANDROID: include: drm: increase DRM max property count to 64
      include/drm/drm_mode_object.h
  * BACKPORT: drm: Add HDMI colorspace property
      drivers/gpu/drm/drm_atomic.c
      drivers/gpu/drm/drm_connector.c
      include/drm/drm_connector.h
  * ANDROID: drm: edid: add support for additional CEA extension blocks
      drivers/gpu/drm/drm_edid.c
      include/drm/drm_connector.h
      include/drm/drm_edid.h
  * BACKPORT: drm: Parse HDR metadata info from EDID
      drivers/gpu/drm/drm_edid.c
  * BACKPORT: drm: Add HDR source metadata property
      drivers/gpu/drm/drm_atomic.c
      drivers/gpu/drm/drm_connector.c
      include/drm/drm_connector.h
      include/drm/drm_mode_config.h
      include/linux/hdmi.h
      include/uapi/drm/drm_mode.h
  * BACKPORT: drm/dp_mst: Parse FEC capability on MST ports
      drivers/gpu/drm/drm_dp_mst_topology.c
      include/drm/drm_dp_mst_helper.h
    ANDROID: GKI: ABI update for DRM changes
    ANDROID: ABI: add missing elf variables to representation
  * ANDROID: GKI: power_supply: Add PROP_MOISTURE_DETECTION_ENABLED
      drivers/power/supply/power_supply_sysfs.c
      include/linux/power_supply.h
  * ANDROID: include: drm: add the definitions for DP Link Compliance tests
      include/drm/drm_dp_helper.h
  * ANDROID: drivers: gpu: drm: fix bugs encountered while fuzzing
      drivers/gpu/drm/drm_file.c
      drivers/gpu/drm/drm_property.c
  * FROMLIST: power_supply: Add additional health properties to the header
      drivers/power/supply/power_supply_sysfs.c
      include/linux/power_supply.h
    UPSTREAM: power: supply: core: Update sysfs-class-power ABI document
  * UPSTREAM: Merge remote-tracking branch 'aosp/upstream-f2fs-stable-linux-4.19.y' into android-4.19 (v5.7-rc1)
      fs/f2fs/Kconfig
      fs/f2fs/checkpoint.c
      fs/f2fs/data.c
      fs/f2fs/debug.c
      fs/f2fs/dir.c
      fs/f2fs/f2fs.h
      fs/f2fs/file.c
      fs/f2fs/gc.c
      fs/f2fs/inode.c
      fs/f2fs/namei.c
      fs/f2fs/node.c
      fs/f2fs/recovery.c
      fs/f2fs/segment.c
      fs/f2fs/segment.h
      fs/f2fs/shrinker.c
      fs/f2fs/super.c
      fs/f2fs/sysfs.c
      fs/f2fs/xattr.c
      fs/f2fs/xattr.h
      include/linux/f2fs_fs.h
      include/trace/events/f2fs.h
      mm/swapfile.c
  * ANDROID: drivers: gpu: drm: add support for secure framebuffer
      drivers/gpu/drm/drm_framebuffer.c
      include/uapi/drm/drm_mode.h
  * ANDROID: include: uapi: drm: add additional QCOM modifiers
      include/uapi/drm/drm_fourcc.h
  * ANDROID: drm: dsi: add two DSI mode flags for BLLP
      include/drm/drm_mipi_dsi.h
  * ANDROID: include: uapi: drm: add additional drm mode flags
      include/uapi/drm/drm_mode.h
  * UPSTREAM: drm: plug memory leak on drm_setup() failure
      drivers/gpu/drm/drm_file.c
  * UPSTREAM: drm: factor out drm_close_helper() function
      drivers/gpu/drm/drm_file.c
    ANDROID: GKI: Bulk ABI update
  * BACKPORT: nl80211: Add per peer statistics to compute FCS error rate
      include/net/cfg80211.h
      include/uapi/linux/nl80211.h
      net/wireless/nl80211.c
  * ANDROID: GKI: sound: usb: Add snd_usb_enable_audio_stream/find_snd_usb_substream
      sound/usb/card.c
      sound/usb/card.h
      sound/usb/pcm.c
      sound/usb/pcm.h
      sound/usb/usbaudio.h
  * ANDROID: GKI: add dma-buf includes
      drivers/dma-buf/dma-buf.c
  * ANDROID: GKI: sched: struct fields for Per-Sched-domain over utilization
      include/linux/sched/topology.h
  * ANDROID: GKI: Add vendor fields to root_domain
      kernel/sched/sched.h
    ANDROID: gki_defconfig: Enable CONFIG_IRQ_TIME_ACCOUNTING
    ANDROID: fix allmodconfig build to use the right toolchain
    ANDROID: fix allmodconfig build to use the right toolchain
    ANDROID: GKI: Update ABI
  * Revert "UPSTREAM: mm, page_alloc: spread allocations across zones before introducing fragmentation"
      mm/internal.h
      mm/page_alloc.c
  * Revert "UPSTREAM: mm: use alloc_flags to record if kswapd can wake"
      mm/internal.h
      mm/page_alloc.c
  * Revert "BACKPORT: mm: move zone watermark accesses behind an accessor"
      include/linux/mmzone.h
      mm/compaction.c
      mm/page_alloc.c
  * Revert "BACKPORT: mm: reclaim small amounts of memory when an external fragmentation event occurs"
      include/linux/mm.h
      include/linux/mmzone.h
      kernel/sysctl.c
      mm/page_alloc.c
      mm/vmscan.c
  * Revert "BACKPORT: mm, compaction: be selective about what pageblocks to clear skip hints"
      include/linux/mmzone.h
      mm/compaction.c
  * ANDROID: GKI: panic: add vendor callback function in panic()
      include/linux/kernel.h
      kernel/panic.c
  * UPSTREAM: GKI: thermal: make device_register's type argument const
      drivers/thermal/thermal_core.c
      include/linux/thermal.h
  * ANDROID: GKI: add base.h include to match MODULE_VERSIONS
      drivers/thermal/thermal_core.c
    ANDROID: update the ABI based on the new whitelist
  * ANDROID: GKI: fdt: export symbols required by modules
      drivers/of/fdt.c
  * ANDROID: GKI: drivers: of: Add APIs to find DDR device rank, HBB
      drivers/of/fdt.c
      include/linux/of_fdt.h
  * ANDROID: GKI: security: Add mmap export symbols for modules
      security/min_addr.c
  * ANDROID: GKI: arch: add stub symbols for boot_reason and cold_boot
      arch/arm64/kernel/setup.c
  * ANDROID: GKI: USB: Fix ABI diff for struct usb_bus
      drivers/usb/core/driver.c
      include/linux/usb.h
  * ANDROID: GKI: USB: Resolve ABI diff for usb_gadget and usb_gadget_ops
      drivers/usb/gadget/udc/core.c
      include/linux/usb/gadget.h
  * ANDROID: GKI: add hidden V4L2_MEM2MEM_DEV
      init/Kconfig.gki
    ANDROID: GKI: enable VIDEO_V4L2_SUBDEV_API
  * ANDROID: GKI: export symbols from abi_gki_aarch64_qcom_whitelist
      arch/arm64/mm/mmu.c
      drivers/base/core.c
      drivers/clocksource/arm_arch_timer.c
      drivers/cpuidle/governor.c
      drivers/gpu/drm/drm_atomic_helper.c
      drivers/gpu/drm/drm_modes.c
      fs/kernfs/symlink.c
      kernel/params.c
      kernel/power/main.c
      kernel/power/qos.c
      kernel/power/suspend.c
      kernel/printk/printk.c
      kernel/time/tick-sched.c
      lib/ioremap.c
      lib/plist.c
      mm/memblock.c
      mm/mmap.c
      security/security.c
      sound/usb/helper.c
    ANDROID: Update the whitelist for qcom SoCs
  * ANDROID: Incremental fs: Fix compound page usercopy crash
      fs/incfs/data_mgmt.c
      fs/incfs/vfs.c
    ANDROID: Incremental fs: Clean up incfs_test build process
  * ANDROID: Incremental fs: make remount log buffer change atomic
      fs/incfs/data_mgmt.c
      fs/incfs/data_mgmt.h
      fs/incfs/vfs.c
  * ANDROID: Incremental fs: Optimize get_filled_block
      fs/incfs/data_mgmt.c
      fs/incfs/format.c
  * ANDROID: Incremental fs: Fix mislabeled __user ptrs
      fs/incfs/data_mgmt.c
      fs/incfs/integrity.c
      fs/incfs/vfs.c
  * ANDROID: Incremental fs: Use 64-bit int for file_size when writing hash blocks
      fs/incfs/format.c
      fs/incfs/format.h
    Merge remote-tracking branch 'aosp/upstream-f2fs-stable-linux-4.19.y' into android-4.19 (v5.7-rc1)
    Merge remote-tracking branch 'aosp/android-4.19' into android-4.19-stable
    ubifs: wire up FS_IOC_GET_ENCRYPTION_NONCE
  * f2fs: wire up FS_IOC_GET_ENCRYPTION_NONCE
      fs/f2fs/file.c
  * ext4: wire up FS_IOC_GET_ENCRYPTION_NONCE
      fs/ext4/ioctl.c
  * fscrypt: add FS_IOC_GET_ENCRYPTION_NONCE ioctl
      fs/crypto/fscrypt_private.h
      fs/crypto/keysetup.c
      fs/crypto/policy.c
      include/linux/fscrypt.h
      include/uapi/linux/fscrypt.h
  * f2fs: keep inline_data when compression conversion
      fs/f2fs/file.c
  * f2fs: fix to disable compression on directory
      fs/f2fs/f2fs.h
      fs/f2fs/file.c
  * f2fs: add missing CONFIG_F2FS_FS_COMPRESSION
      fs/f2fs/sysfs.c
  * f2fs: switch discard_policy.timeout to bool type
      fs/f2fs/f2fs.h
      fs/f2fs/segment.c
    f2fs: fix to verify tpage before releasing in f2fs_free_dic()
  * f2fs: show compression in statx
      fs/f2fs/file.c
    f2fs: clean up dic->tpages assignment
  * f2fs: compress: support zstd compress algorithm
      fs/f2fs/Kconfig
      fs/f2fs/f2fs.h
      fs/f2fs/super.c
      include/trace/events/f2fs.h
    f2fs: compress: add .{init,destroy}_decompress_ctx callback
    f2fs: compress: fix to call missing destroy_compress_ctx()
  * f2fs: change default compression algorithm
      fs/f2fs/super.c
    f2fs: clean up {cic,dic}.ref handling
  * f2fs: fix to use f2fs_readpage_limit() in f2fs_read_multi_pages()
      fs/f2fs/data.c
  * f2fs: xattr.h: Make stub helpers inline
      fs/f2fs/xattr.h
  * f2fs: fix to avoid double unlock
      fs/f2fs/data.c
  * f2fs: fix potential .flags overflow on 32bit architecture
      fs/f2fs/f2fs.h
      fs/f2fs/inode.c
  * f2fs: fix NULL pointer dereference in f2fs_verity_work()
      fs/f2fs/data.c
    f2fs: fix to clear PG_error if fsverity failed
  * f2fs: don't call fscrypt_get_encryption_info() explicitly in f2fs_tmpfile()
      fs/f2fs/namei.c
  * f2fs: don't trigger data flush in foreground operation
      fs/f2fs/f2fs.h
      fs/f2fs/gc.c
      fs/f2fs/node.c
      fs/f2fs/segment.c
  * f2fs: fix NULL pointer dereference in f2fs_write_begin()
      fs/f2fs/super.c
  * f2fs: clean up f2fs_may_encrypt()
      fs/f2fs/dir.c
      fs/f2fs/f2fs.h
      fs/f2fs/namei.c
  * f2fs: fix to avoid potential deadlock
      fs/f2fs/data.c
  * f2fs: don't change inode status under page lock
      fs/f2fs/dir.c
    f2fs: fix potential deadlock on compressed quota file
  * f2fs: delete DIO read lock
      fs/f2fs/data.c
  * f2fs: don't mark compressed inode dirty during f2fs_iget()
      fs/f2fs/f2fs.h
    f2fs: fix to account compressed blocks in f2fs_compressed_blocks()
  * f2fs: xattr.h: Replace zero-length array with flexible-array member
      fs/f2fs/xattr.h
  * f2fs: fix to update f2fs_super_block fields under sb_lock
      fs/f2fs/gc.c
  * f2fs: Add a new CP flag to help fsck fix resize SPO issues
      fs/f2fs/checkpoint.c
      include/linux/f2fs_fs.h
  * f2fs: Fix mount failure due to SPO after a successful online resize FS
      fs/f2fs/gc.c
  * f2fs: use kmem_cache pool during inline xattr lookups
      fs/f2fs/f2fs.h
      fs/f2fs/super.c
      fs/f2fs/xattr.c
      fs/f2fs/xattr.h
  * f2fs: skip migration only when BG_GC is called
      fs/f2fs/gc.c
  * f2fs: fix to show tracepoint correctly
      fs/f2fs/file.c
  * f2fs: avoid __GFP_NOFAIL in f2fs_bio_alloc
      fs/f2fs/data.c
      fs/f2fs/f2fs.h
  * f2fs: introduce F2FS_IOC_GET_COMPRESS_BLOCKS
      fs/f2fs/f2fs.h
      fs/f2fs/file.c
  * f2fs: fix to avoid triggering IO in write path
      fs/f2fs/data.c
      fs/f2fs/f2fs.h
  * f2fs: add prefix for f2fs slab cache name
      fs/f2fs/data.c
      fs/f2fs/node.c
      fs/f2fs/segment.c
  * f2fs: introduce DEFAULT_IO_TIMEOUT
      fs/f2fs/checkpoint.c
      fs/f2fs/data.c
      fs/f2fs/f2fs.h
      fs/f2fs/gc.c
      fs/f2fs/inode.c
      fs/f2fs/node.c
      fs/f2fs/recovery.c
      fs/f2fs/segment.c
      fs/f2fs/super.c
  * f2fs: skip GC when section is full
      fs/f2fs/gc.c
  * f2fs: add migration count iff migration happens
      fs/f2fs/gc.c
  * f2fs: clean up bggc mount option
      fs/f2fs/f2fs.h
      fs/f2fs/gc.c
      fs/f2fs/super.c
  * f2fs: clean up lfs/adaptive mount option
      fs/f2fs/data.c
      fs/f2fs/f2fs.h
      fs/f2fs/file.c
      fs/f2fs/gc.c
      fs/f2fs/segment.c
      fs/f2fs/super.c
  * f2fs: fix to show norecovery mount option
      fs/f2fs/f2fs.h
      fs/f2fs/super.c
  * f2fs: clean up parameter of macro XATTR_SIZE()
      fs/f2fs/xattr.c
      fs/f2fs/xattr.h
  * f2fs: clean up codes with {f2fs_,}data_blkaddr()
      fs/f2fs/data.c
      fs/f2fs/f2fs.h
      fs/f2fs/file.c
      fs/f2fs/gc.c
      fs/f2fs/node.c
      fs/f2fs/recovery.c
  * f2fs: show mounted time
      fs/f2fs/debug.c
      fs/f2fs/segment.c
      fs/f2fs/segment.h
      fs/f2fs/sysfs.c
  * f2fs: Use scnprintf() for avoiding potential buffer overflow
      fs/f2fs/sysfs.c
  * f2fs: allow to clear F2FS_COMPR_FL flag
      fs/f2fs/file.c
  * f2fs: fix to check dirty pages during compressed inode conversion
      fs/f2fs/f2fs.h
  * f2fs: fix to account compressed inode correctly
      fs/f2fs/f2fs.h
  * f2fs: fix wrong check on F2FS_IOC_FSSETXATTR
      fs/f2fs/file.c
    f2fs: fix to avoid use-after-free in f2fs_write_multi_pages()
  * f2fs: fix to avoid using uninitialized variable
      fs/f2fs/file.c
  * f2fs: fix inconsistent comments
      fs/f2fs/checkpoint.c
      fs/f2fs/data.c
      fs/f2fs/f2fs.h
      fs/f2fs/file.c
      fs/f2fs/gc.c
      fs/f2fs/inode.c
      fs/f2fs/namei.c
      fs/f2fs/node.c
      fs/f2fs/shrinker.c
      fs/f2fs/super.c
  * f2fs: remove i_sem lock coverage in f2fs_setxattr()
      fs/f2fs/xattr.c
  * f2fs: cover last_disk_size update with spinlock
      fs/f2fs/data.c
      fs/f2fs/f2fs.h
      fs/f2fs/file.c
      fs/f2fs/super.c
  * f2fs: fix to check i_compr_blocks correctly
      fs/f2fs/inode.c
    Merge android-4.19 into android-4.19-stable
    ANDROID: GKI: Removed cuttlefish configs
    f2fs: fix to avoid potential deadlock
  * f2fs: add missing function name in kernel message
      fs/f2fs/f2fs.h
      fs/f2fs/node.c
  * f2fs: recycle unused compress_data.chksum feild
      fs/f2fs/f2fs.h
    f2fs: fix to avoid NULL pointer dereference
    f2fs: fix leaking uninitialized memory in compressed clusters
  * f2fs: fix the panic in do_checkpoint()
      fs/f2fs/checkpoint.c
      fs/f2fs/f2fs.h
      fs/f2fs/super.c
  * f2fs: fix to wait all node page writeback
      fs/f2fs/node.c
  * mm/swapfile.c: move inode_lock out of claim_swapfile
      mm/swapfile.c
  * fscrypt: don't evict dirty inodes after removing key
      fs/crypto/keysetup.c

Change-Id: I9ca86223eb4183aa40011ade86b74cc3beaabd4a
Signed-off-by: lucaswei <lucaswei@google.com>
2020-09-16 21:37:23 +08:00
Boqun Feng
c6090fe788 locking/lockdep: Avoid recursion in lockdep_count_{for,back}ward_deps()
[ Upstream commit 25016bd7f4caf5fc983bbab7403d08e64cba3004 ]

Qian Cai reported a bug when PROVE_RCU_LIST=y, and read on /proc/lockdep
triggered a warning:

  [ ] DEBUG_LOCKS_WARN_ON(current->hardirqs_enabled)
  ...
  [ ] Call Trace:
  [ ]  lock_is_held_type+0x5d/0x150
  [ ]  ? rcu_lockdep_current_cpu_online+0x64/0x80
  [ ]  rcu_read_lock_any_held+0xac/0x100
  [ ]  ? rcu_read_lock_held+0xc0/0xc0
  [ ]  ? __slab_free+0x421/0x540
  [ ]  ? kasan_kmalloc+0x9/0x10
  [ ]  ? __kmalloc_node+0x1d7/0x320
  [ ]  ? kvmalloc_node+0x6f/0x80
  [ ]  __bfs+0x28a/0x3c0
  [ ]  ? class_equal+0x30/0x30
  [ ]  lockdep_count_forward_deps+0x11a/0x1a0

The warning got triggered because lockdep_count_forward_deps() call
__bfs() without current->lockdep_recursion being set, as a result
a lockdep internal function (__bfs()) is checked by lockdep, which is
unexpected, and the inconsistency between the irq-off state and the
state traced by lockdep caused the warning.

Apart from this warning, lockdep internal functions like __bfs() should
always be protected by current->lockdep_recursion to avoid potential
deadlocks and data inconsistency, therefore add the
current->lockdep_recursion on-and-off section to protect __bfs() in both
lockdep_count_forward_deps() and lockdep_count_backward_deps()

Reported-by: Qian Cai <cai@lca.pw>
Signed-off-by: Boqun Feng <boqun.feng@gmail.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Link: https://lkml.kernel.org/r/20200312151258.128036-1-boqun.feng@gmail.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
2020-04-17 10:48:42 +02:00
Prateek Sood
1ed46cb3af lockdep: suppress extra lockdep logging
suppress lockdep locking to avoid console flooding
resulting watchdog bite.

Change-Id: I0b3a56d3541cdf03872709731c34aef8d177c0da
Signed-off-by: Prateek Sood <prsood@codeaurora.org>
2019-12-06 01:19:23 -08:00
Prateek Sood
23483948b7 lockdep: make lockdep track owners after error
Lockdep stops book keeping of locks and its owners
after an error is detected. Keep lockdep tracking
on after an error is reported.

Change-Id: I0209a929a8da564ccda33d5af8b714594a62800c
Signed-off-by: Prateek Sood <prsood@codeaurora.org>
2019-12-06 01:18:57 -08:00
Prateek Sood
fbda00ce1d lockdep: disable lockdep logging
When lockdep reports a locking error, it disables global
debug_locks which results in other lock debugging features
getting disabled.

Disable only lockdep logging once a locking error is reported.
This will help in tracking lock owners and their stacks from
ramdumps even when lockdep is not reporting them on console.

Change-Id: Ie7b6aa57df84aaa4cf90fc912969d4ca49f77997
Signed-off-by: Prateek Sood <prsood@codeaurora.org>
2019-12-06 01:18:34 -08:00
Prateek Sood
65ab504db4 lockdep: save caller1 for locks in task_struct
Currently lockdep saves caller0 for locking API's in
task_struct. Save caller1 also for a task acquiring the
lock. This is helpful for locks like cpu_hotplug_lock
which is acquired/release inside a helper function like
cpus_read_lock(). Caller1 shall help in getting caller of
cpus_read_lock().

Change-Id: I3ea30990245f478778c2e58348a84ab40610056d
Signed-off-by: Prateek Sood <prsood@codeaurora.org>
2019-12-06 01:18:09 -08:00
Waiman Long
9423770eb3 locking/lockdep: Add debug_locks check in __lock_downgrade()
[ Upstream commit 71492580571467fb7177aade19c18ce7486267f5 ]

Tetsuo Handa had reported he saw an incorrect "downgrading a read lock"
warning right after a previous lockdep warning. It is likely that the
previous warning turned off lock debugging causing the lockdep to have
inconsistency states leading to the lock downgrade warning.

Fix that by add a check for debug_locks at the beginning of
__lock_downgrade().

Debugged-by: Tetsuo Handa <penguin-kernel@i-love.sakura.ne.jp>
Reported-by: Tetsuo Handa <penguin-kernel@i-love.sakura.ne.jp>
Reported-by: syzbot+53383ae265fb161ef488@syzkaller.appspotmail.com
Signed-off-by: Waiman Long <longman@redhat.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Will Deacon <will.deacon@arm.com>
Link: https://lkml.kernel.org/r/1547093005-26085-1-git-send-email-longman@redhat.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-10-01 08:26:07 +02:00
Imre Deak
2fbde27465 locking/lockdep: Fix merging of hlocks with non-zero references
[ Upstream commit d9349850e188b8b59e5322fda17ff389a1c0cd7d ]

The sequence

	static DEFINE_WW_CLASS(test_ww_class);

	struct ww_acquire_ctx ww_ctx;
	struct ww_mutex ww_lock_a;
	struct ww_mutex ww_lock_b;
	struct ww_mutex ww_lock_c;
	struct mutex lock_c;

	ww_acquire_init(&ww_ctx, &test_ww_class);

	ww_mutex_init(&ww_lock_a, &test_ww_class);
	ww_mutex_init(&ww_lock_b, &test_ww_class);
	ww_mutex_init(&ww_lock_c, &test_ww_class);

	mutex_init(&lock_c);

	ww_mutex_lock(&ww_lock_a, &ww_ctx);

	mutex_lock(&lock_c);

	ww_mutex_lock(&ww_lock_b, &ww_ctx);
	ww_mutex_lock(&ww_lock_c, &ww_ctx);

	mutex_unlock(&lock_c);	(*)

	ww_mutex_unlock(&ww_lock_c);
	ww_mutex_unlock(&ww_lock_b);
	ww_mutex_unlock(&ww_lock_a);

	ww_acquire_fini(&ww_ctx); (**)

will trigger the following error in __lock_release() when calling
mutex_release() at **:

	DEBUG_LOCKS_WARN_ON(depth <= 0)

The problem is that the hlock merging happening at * updates the
references for test_ww_class incorrectly to 3 whereas it should've
updated it to 4 (representing all the instances for ww_ctx and
ww_lock_[abc]).

Fix this by updating the references during merging correctly taking into
account that we can have non-zero references (both for the hlock that we
merge into another hlock or for the hlock we are merging into).

Signed-off-by: Imre Deak <imre.deak@intel.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: =?UTF-8?q?Ville=20Syrj=C3=A4l=C3=A4?= <ville.syrjala@linux.intel.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Will Deacon <will.deacon@arm.com>
Link: https://lkml.kernel.org/r/20190524201509.9199-2-imre.deak@intel.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-07-26 09:14:03 +02:00
Greg Kroah-Hartman
ac54bc121e Revert "locking/lockdep: Add debug_locks check in __lock_downgrade()"
This reverts commit 0e0f7b3072 which was
commit 71492580571467fb7177aade19c18ce7486267f5 upstream.

Tetsuo rightly points out that the backport here is incorrect, as it
touches the __lock_set_class function instead of the intended
__lock_downgrade function.

Reported-by: Tetsuo Handa <penguin-kernel@i-love.sakura.ne.jp>
Cc: Waiman Long <longman@redhat.com>
Cc: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Will Deacon <will.deacon@arm.com>
Cc: Ingo Molnar <mingo@kernel.org>
Cc: Sasha Levin <sashal@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-04-27 09:36:41 +02:00
Waiman Long
0e0f7b3072 locking/lockdep: Add debug_locks check in __lock_downgrade()
commit 71492580571467fb7177aade19c18ce7486267f5 upstream.

Tetsuo Handa had reported he saw an incorrect "downgrading a read lock"
warning right after a previous lockdep warning. It is likely that the
previous warning turned off lock debugging causing the lockdep to have
inconsistency states leading to the lock downgrade warning.

Fix that by add a check for debug_locks at the beginning of
__lock_downgrade().

Debugged-by: Tetsuo Handa <penguin-kernel@i-love.sakura.ne.jp>
Reported-by: Tetsuo Handa <penguin-kernel@i-love.sakura.ne.jp>
Reported-by: syzbot+53383ae265fb161ef488@syzkaller.appspotmail.com
Signed-off-by: Waiman Long <longman@redhat.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Will Deacon <will.deacon@arm.com>
Link: https://lkml.kernel.org/r/1547093005-26085-1-git-send-email-longman@redhat.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-03-27 14:14:43 +09:00
Waiman Long
117d5fbddd locking/lockdep: Fix debug_locks off performance problem
[ Upstream commit 9506a7425b094d2f1d9c877ed5a78f416669269b ]

It was found that when debug_locks was turned off because of a problem
found by the lockdep code, the system performance could drop quite
significantly when the lock_stat code was also configured into the
kernel. For instance, parallel kernel build time on a 4-socket x86-64
server nearly doubled.

Further analysis into the cause of the slowdown traced back to the
frequent call to debug_locks_off() from the __lock_acquired() function
probably due to some inconsistent lockdep states with debug_locks
off. The debug_locks_off() function did an unconditional atomic xchg
to write a 0 value into debug_locks which had already been set to 0.
This led to severe cacheline contention in the cacheline that held
debug_locks.  As debug_locks is being referenced in quite a few different
places in the kernel, this greatly slow down the system performance.

To prevent that trashing of debug_locks cacheline, lock_acquired()
and lock_contended() now checks the state of debug_locks before
proceeding. The debug_locks_off() function is also modified to check
debug_locks before calling __debug_locks_off().

Signed-off-by: Waiman Long <longman@redhat.com>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Will Deacon <will.deacon@arm.com>
Link: http://lkml.kernel.org/r/1539913518-15598-1-git-send-email-longman@redhat.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2018-11-13 11:08:20 -08:00
Ben Hutchings
dc5591a03f locking/lockdep: Delete unnecessary #include
Commit:

  c3bc8fd637 ("tracing: Centralize preemptirq tracepoints and unify their usage")

added the inclusion of <trace/events/preemptirq.h>.

liblockdep doesn't have a stub version of that header so now fails to build.

However, commit:

  bff1b208a5 ("tracing: Partial revert of "tracing: Centralize preemptirq tracepoints and unify their usage"")

removed the use of functions declared in that header. So delete the #include.

Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Cc: Joel Fernandes <joel@joelfernandes.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Sasha Levin <alexander.levin@verizon.com>
Cc: Steven Rostedt <rostedt@goodmis.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Will Deacon <will.deacon@arm.com>
Fixes: bff1b208a5 ("tracing: Partial revert of "tracing: Centralize ...")
Fixes: c3bc8fd637 ("tracing: Centralize preemptirq tracepoints ...")
Link: http://lkml.kernel.org/r/20180828203315.GD18030@decadent.org.uk
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2018-09-10 13:48:25 +02:00
Steven Rostedt (VMware)
bff1b208a5 tracing: Partial revert of "tracing: Centralize preemptirq tracepoints and unify their usage"
Joel Fernandes created a nice patch that cleaned up the duplicate hooks used
by lockdep and irqsoff latency tracer. It made both use tracepoints. But it
caused lockdep to trigger several false positives. We have not figured out
why yet, but removing lockdep from using the trace event hooks and just call
its helper functions directly (like it use to), makes the problem go away.

This is a partial revert of the clean up patch c3bc8fd637 ("tracing:
Centralize preemptirq tracepoints and unify their usage") that adds direct
calls for lockdep, but also keeps most of the clean up done to get rid of
the horrible preprocessor if statements.

Link: http://lkml.kernel.org/r/20180806155058.5ee875f4@gandalf.local.home

Cc: Peter Zijlstra <peterz@infradead.org>
Reviewed-by: Joel Fernandes (Google) <joel@joelfernandes.org>
Fixes: c3bc8fd637 ("tracing: Centralize preemptirq tracepoints and unify their usage")
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
2018-08-10 15:11:25 -04:00
Joel Fernandes (Google)
c3bc8fd637 tracing: Centralize preemptirq tracepoints and unify their usage
This patch detaches the preemptirq tracepoints from the tracers and
keeps it separate.

Advantages:
* Lockdep and irqsoff event can now run in parallel since they no longer
have their own calls.

* This unifies the usecase of adding hooks to an irqsoff and irqson
event, and a preemptoff and preempton event.
  3 users of the events exist:
  - Lockdep
  - irqsoff and preemptoff tracers
  - irqs and preempt trace events

The unification cleans up several ifdefs and makes the code in preempt
tracer and irqsoff tracers simpler. It gets rid of all the horrific
ifdeferry around PROVE_LOCKING and makes configuration of the different
users of the tracepoints more easy and understandable. It also gets rid
of the time_* function calls from the lockdep hooks used to call into
the preemptirq tracer which is not needed anymore. The negative delta in
lines of code in this patch is quite large too.

In the patch we introduce a new CONFIG option PREEMPTIRQ_TRACEPOINTS
as a single point for registering probes onto the tracepoints. With
this,
the web of config options for preempt/irq toggle tracepoints and its
users becomes:

 PREEMPT_TRACER   PREEMPTIRQ_EVENTS  IRQSOFF_TRACER PROVE_LOCKING
       |                 |     \         |           |
       \    (selects)    /      \        \ (selects) /
      TRACE_PREEMPT_TOGGLE       ----> TRACE_IRQFLAGS
                      \                  /
                       \ (depends on)   /
                     PREEMPTIRQ_TRACEPOINTS

Other than the performance tests mentioned in the previous patch, I also
ran the locking API test suite. I verified that all tests cases are
passing.

I also injected issues by not registering lockdep probes onto the
tracepoints and I see failures to confirm that the probes are indeed
working.

This series + lockdep probes not registered (just to inject errors):
[    0.000000]      hard-irqs-on + irq-safe-A/21:  ok  |  ok  |  ok  |
[    0.000000]      soft-irqs-on + irq-safe-A/21:  ok  |  ok  |  ok  |
[    0.000000]        sirq-safe-A => hirqs-on/12:FAILED|FAILED|  ok  |
[    0.000000]        sirq-safe-A => hirqs-on/21:FAILED|FAILED|  ok  |
[    0.000000]          hard-safe-A + irqs-on/12:FAILED|FAILED|  ok  |
[    0.000000]          soft-safe-A + irqs-on/12:FAILED|FAILED|  ok  |
[    0.000000]          hard-safe-A + irqs-on/21:FAILED|FAILED|  ok  |
[    0.000000]          soft-safe-A + irqs-on/21:FAILED|FAILED|  ok  |
[    0.000000]     hard-safe-A + unsafe-B #1/123:  ok  |  ok  |  ok  |
[    0.000000]     soft-safe-A + unsafe-B #1/123:  ok  |  ok  |  ok  |

With this series + lockdep probes registered, all locking tests pass:

[    0.000000]      hard-irqs-on + irq-safe-A/21:  ok  |  ok  |  ok  |
[    0.000000]      soft-irqs-on + irq-safe-A/21:  ok  |  ok  |  ok  |
[    0.000000]        sirq-safe-A => hirqs-on/12:  ok  |  ok  |  ok  |
[    0.000000]        sirq-safe-A => hirqs-on/21:  ok  |  ok  |  ok  |
[    0.000000]          hard-safe-A + irqs-on/12:  ok  |  ok  |  ok  |
[    0.000000]          soft-safe-A + irqs-on/12:  ok  |  ok  |  ok  |
[    0.000000]          hard-safe-A + irqs-on/21:  ok  |  ok  |  ok  |
[    0.000000]          soft-safe-A + irqs-on/21:  ok  |  ok  |  ok  |
[    0.000000]     hard-safe-A + unsafe-B #1/123:  ok  |  ok  |  ok  |
[    0.000000]     soft-safe-A + unsafe-B #1/123:  ok  |  ok  |  ok  |

Link: http://lkml.kernel.org/r/20180730222423.196630-4-joel@joelfernandes.org

Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Reviewed-by: Namhyung Kim <namhyung@kernel.org>
Signed-off-by: Joel Fernandes (Google) <joel@joelfernandes.org>
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
2018-07-31 11:32:27 -04:00
Joel Fernandes (Google)
01f38497c6 lockdep: Use this_cpu_ptr instead of get_cpu_var stats
get_cpu_var disables preemption which has the potential to call into the
preemption disable trace points causing some complications. There's also
no need to disable preemption in uses of get_lock_stats anyway since
preempt is already disabled. So lets simplify the code.

Link: http://lkml.kernel.org/r/20180730222423.196630-2-joel@joelfernandes.org

Suggested-by: Peter Zijlstra <peterz@infradead.org>
Acked-by: Peter Zijlstra <peterz@infradead.org>
Signed-off-by: Joel Fernandes (Google) <joel@joelfernandes.org>
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
2018-07-30 19:06:54 -04:00
Steven Rostedt (VMware)
fcc784be83 locking/lockdep: Do not record IRQ state within lockdep code
While debugging where things were going wrong with mapping
enabling/disabling interrupts with the lockdep state and actual real
enabling and disabling interrupts, I had to silent the IRQ
disabling/enabling in debug_check_no_locks_freed() because it was
always showing up as it was called before the splat was.

Use raw_local_irq_save/restore() for not only debug_check_no_locks_freed()
but for all internal lockdep functions, as they hide useful information
about where interrupts were used incorrectly last.

Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Will Deacon <will.deacon@arm.com>
Link: https://lkml.kernel.org/lkml/20180404140630.3f4f4c7a@gandalf.local.home
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2018-06-21 18:19:01 +02:00
Tetsuo Handa
8cc05c71ba locking/lockdep: Move sanity check to inside lockdep_print_held_locks()
Calling lockdep_print_held_locks() on a running thread is considered unsafe.

Since all callers should follow that rule and the sanity check is not heavy,
this patch moves the sanity check to inside lockdep_print_held_locks().

As a side effect of this patch, the number of locks held by running threads
will be printed as well. This change will be preferable when we want to
know which threads might be relevant to a problem but are unable to print
any clues because that thread is running.

Signed-off-by: Tetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Dmitry Vyukov <dvyukov@google.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Matthew Wilcox <willy@infradead.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Link: http://lkml.kernel.org/r/1523011279-8206-2-git-send-email-penguin-kernel@I-love.SAKURA.ne.jp
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2018-05-14 09:15:02 +02:00
Tetsuo Handa
0f736a52e4 locking/lockdep: Use for_each_process_thread() for debug_show_all_locks()
debug_show_all_locks() tries to grab the tasklist_lock for two seconds, but
calling while_each_thread() without tasklist_lock held is not safe.

See the following commit for more information:

  4449a51a7c ("vm_is_stack: use for_each_thread() rather then buggy while_each_thread()")

Change debug_show_all_locks() from "do_each_thread()/while_each_thread()
with possibility of missing tasklist_lock" to "for_each_process_thread()
with RCU", and add a call to touch_all_softlockup_watchdogs() like
show_state_filter() does.

Signed-off-by: Tetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Link: http://lkml.kernel.org/r/1523011279-8206-1-git-send-email-penguin-kernel@I-love.SAKURA.ne.jp
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2018-05-14 09:15:02 +02:00
Tetsuo Handa
b3c39758c8 lockdep: Make the lock debug output more useful
The lock debug output in print_lock() has a few shortcomings:

 - It prints the hlock->acquire_ip field in %px and %pS format. That's
   redundant information.

 - It lacks information about the lock object itself. The lock class is
   not helpful to identify a particular instance of a lock.

Change the output so it prints:

 - hlock->instance to allow identification of a particular lock instance.

 - only the %pS format of hlock->ip_acquire which is sufficient to decode
   the actual code line with faddr2line.

The resulting output is:

3 locks held by a.out/31106:
#0: 00000000b0f753ba (&mm->mmap_sem){++++}, at: copy_process.part.41+0x10d5/0x1fe0
#1: 00000000ef64d539 (&mm->mmap_sem/1){+.+.}, at: copy_process.part.41+0x10fe/0x1fe0
#2: 00000000b41a282e (&mapping->i_mmap_rwsem){++++}, at: copy_process.part.41+0x12f2/0x1fe0

[ tglx: Massaged changelog ]

Signed-off-by: Tetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Acked-by: Michal Hocko <mhocko@suse.com>
Acked-by: David Rientjes <rientjes@google.com>
Acked-by: Peter Zijlstra <peterz@infradead.org>
Cc: linux-mm@kvack.org
Cc: Borislav Petkov <bp@suse.de>
Link: https://lkml.kernel.org/r/201803271941.GBE57310.tVSOJLQOFFOHFM@I-love.SAKURA.ne.jp
2018-03-29 14:41:40 +02:00
Borislav Petkov
04860d48a8 locking/lockdep: Show unadorned pointers
Show unadorned pointers in lockdep reports - lockdep is a debugging
facility and hashing pointers there doesn't make a whole lotta sense.

Signed-off-by: Borislav Petkov <bp@suse.de>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: Peter Zijlstra <peterz@infradead.org>
Link: https://lkml.kernel.org/r/20180226134926.23069-1-bp@alien8.de
2018-02-28 15:25:44 +01:00
Linus Torvalds
5e7481a25e Merge branch 'locking-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
Pull locking updates from Ingo Molnar:
 "The main changes relate to making lock_is_held() et al (and external
  wrappers of them) work on const data types - this requires const
  propagation through the depths of lockdep.

  This removes a number of ugly type hacks the external helpers used"

* 'locking-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  lockdep: Convert some users to const
  lockdep: Make lockdep checking constant
  lockdep: Assign lock keys on registration
2018-01-30 10:44:56 -08:00
Tejun Heo
88f1c87de1 locking/lockdep: Avoid triggering hardlockup from debug_show_all_locks()
debug_show_all_locks() iterates all tasks and print held locks whole
holding tasklist_lock.  This can take a while on a slow console device
and may end up triggering NMI hardlockup detector if someone else ends
up waiting for tasklist_lock.

Touch the NMI watchdog while printing the held locks to avoid
spuriously triggering the hardlockup detector.

Signed-off-by: Tejun Heo <tj@kernel.org>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: kernel-team@fb.com
Link: http://lkml.kernel.org/r/20180122220055.GB1771050@devbig577.frc2.facebook.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2018-01-24 10:00:09 +01:00
Matthew Wilcox
08f36ff642 lockdep: Make lockdep checking constant
There are several places in the kernel which would like to pass a const
pointer to lockdep_is_held().  Constify the entire path so nobody has to
trick the compiler.

Signed-off-by: Matthew Wilcox <mawilcox@microsoft.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: "David S. Miller" <davem@davemloft.net>
Link: https://lkml.kernel.org/r/20180117151414.23686-3-willy@infradead.org
2018-01-18 11:56:48 +01:00
Matthew Wilcox
64f29d1bc9 lockdep: Assign lock keys on registration
Lockdep is assigning lock keys when a lock was looked up.  This is
unnecessary; if the lock has never been registered then it is known that it
is not locked.  It also complicates the calling convention.  Switch to
assigning the lock key in register_lock_class().

Signed-off-by: Matthew Wilcox <mawilcox@microsoft.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: "David S. Miller" <davem@davemloft.net>
Link: https://lkml.kernel.org/r/20180117151414.23686-2-willy@infradead.org
2018-01-18 11:56:48 +01:00
Ingo Molnar
e966eaeeb6 locking/lockdep: Remove the cross-release locking checks
This code (CONFIG_LOCKDEP_CROSSRELEASE=y and CONFIG_LOCKDEP_COMPLETIONS=y),
while it found a number of old bugs initially, was also causing too many
false positives that caused people to disable lockdep - which is arguably
a worse overall outcome.

If we disable cross-release by default but keep the code upstream then
in practice the most likely outcome is that we'll allow the situation
to degrade gradually, by allowing entropy to introduce more and more
false positives, until it overwhelms maintenance capacity.

Another bad side effect was that people were trying to work around
the false positives by uglifying/complicating unrelated code. There's
a marked difference between annotating locking operations and
uglifying good code just due to bad lock debugging code ...

This gradual decrease in quality happened to a number of debugging
facilities in the kernel, and lockdep is pretty complex already,
so we cannot risk this outcome.

Either cross-release checking can be done right with no false positives,
or it should not be included in the upstream kernel.

( Note that it might make sense to maintain it out of tree and go through
  the false positives every now and then and see whether new bugs were
  introduced. )

Cc: Byungchul Park <byungchul.park@lge.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2017-12-12 12:38:51 +01:00
Peter Zijlstra
5e351ad106 locking/lockdep: Fix possible NULL deref
We can't invalidate xhlocks when we've not yet allocated any.

Reported-by: Dmitry Vyukov <dvyukov@google.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: linux-kernel@vger.kernel.org
Fixes: f52be57080 ("locking/lockdep: Untangle xhlock history save/restore from task independence")
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2017-12-06 19:29:56 +01:00
Levin, Alexander (Sasha Levin)
4950276672 kmemcheck: remove annotations
Patch series "kmemcheck: kill kmemcheck", v2.

As discussed at LSF/MM, kill kmemcheck.

KASan is a replacement that is able to work without the limitation of
kmemcheck (single CPU, slow).  KASan is already upstream.

We are also not aware of any users of kmemcheck (or users who don't
consider KASan as a suitable replacement).

The only objection was that since KASAN wasn't supported by all GCC
versions provided by distros at that time we should hold off for 2
years, and try again.

Now that 2 years have passed, and all distros provide gcc that supports
KASAN, kill kmemcheck again for the very same reasons.

This patch (of 4):

Remove kmemcheck annotations, and calls to kmemcheck from the kernel.

[alexander.levin@verizon.com: correctly remove kmemcheck call from dma_map_sg_attrs]
  Link: http://lkml.kernel.org/r/20171012192151.26531-1-alexander.levin@verizon.com
Link: http://lkml.kernel.org/r/20171007030159.22241-2-alexander.levin@verizon.com
Signed-off-by: Sasha Levin <alexander.levin@verizon.com>
Cc: Alexander Potapenko <glider@google.com>
Cc: Eric W. Biederman <ebiederm@xmission.com>
Cc: Michal Hocko <mhocko@kernel.org>
Cc: Pekka Enberg <penberg@kernel.org>
Cc: Steven Rostedt <rostedt@goodmis.org>
Cc: Tim Hansen <devtimhansen@gmail.com>
Cc: Vegard Nossum <vegardno@ifi.uio.no>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2017-11-15 18:21:04 -08:00
Byungchul Park
e121d64e16 locking/lockdep: Introduce CONFIG_BOOTPARAM_LOCKDEP_CROSSRELEASE_FULLSTACK=y
Add a Kconfig knob that enables the lockdep "crossrelease_fullstack" boot parameter.

Suggested-by: Ingo Molnar <mingo@kernel.org>
Signed-off-by: Byungchul Park <byungchul.park@lge.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: amir73il@gmail.com
Cc: axboe@kernel.dk
Cc: darrick.wong@oracle.com
Cc: david@fromorbit.com
Cc: hch@infradead.org
Cc: idryomov@gmail.com
Cc: johan@kernel.org
Cc: johannes.berg@intel.com
Cc: kernel-team@lge.com
Cc: linux-block@vger.kernel.org
Cc: linux-fsdevel@vger.kernel.org
Cc: linux-mm@kvack.org
Cc: linux-xfs@vger.kernel.org
Cc: oleg@redhat.com
Cc: tj@kernel.org
Link: http://lkml.kernel.org/r/1508921765-15396-7-git-send-email-byungchul.park@lge.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2017-10-25 12:19:02 +02:00
Byungchul Park
d141babe42 locking/lockdep: Add a boot parameter allowing unwind in cross-release and disable it by default
Johan Hovold reported a heavy performance regression caused by lockdep
cross-release:

 > Boot time (from "Linux version" to login prompt) had in fact doubled
 > since 4.13 where it took 17 seconds (with my current config) compared to
 > the 35 seconds I now see with 4.14-rc4.
 >
 > I quick bisect pointed to lockdep and specifically the following commit:
 >
 >	28a903f63e ("locking/lockdep: Handle non(or multi)-acquisition
 >	               of a crosslock")
 >
 > which I've verified is the commit which doubled the boot time (compared
 > to 28a903f63ec0^) (added by lockdep crossrelease series [1]).

Currently cross-release performs unwind on every acquisition, but that
is very expensive.

This patch makes unwind optional and disables it by default and only
records acquire_ip.

Full stack traces are sometimes required for full analysis, in which
case a boot paramter, crossrelease_fullstack, can be specified.

On my qemu Ubuntu machine (x86_64, 4 cores, 512M), the regression was
fixed. We measure boot times with 'perf stat --null --repeat 10 $QEMU',
where $QEMU launches a kernel with init=/bin/true:

1. No lockdep enabled:

 Performance counter stats for 'qemu_booting_time.sh bzImage' (10 runs):

       2.756558155 seconds time elapsed                    ( +-  0.09% )

2. Lockdep enabled:

 Performance counter stats for 'qemu_booting_time.sh bzImage' (10 runs):

       2.968710420 seconds time elapsed                    ( +-  0.12% )

3. Lockdep enabled + cross-release enabled:

 Performance counter stats for 'qemu_booting_time.sh bzImage' (10 runs):

       3.153839636 seconds time elapsed                    ( +-  0.31% )

4. Lockdep enabled + cross-release enabled + this patch applied:

 Performance counter stats for 'qemu_booting_time.sh bzImage' (10 runs):

       2.963669551 seconds time elapsed                    ( +-  0.11% )

I.e. lockdep cross-release performance is now indistinguishable from
vanilla lockdep.

Bisected-by: Johan Hovold <johan@kernel.org>
Analyzed-by: Thomas Gleixner <tglx@linutronix.de>
Suggested-by: Thomas Gleixner <tglx@linutronix.de>
Reported-by: Johan Hovold <johan@kernel.org>
Signed-off-by: Byungchul Park <byungchul.park@lge.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: amir73il@gmail.com
Cc: axboe@kernel.dk
Cc: darrick.wong@oracle.com
Cc: david@fromorbit.com
Cc: hch@infradead.org
Cc: idryomov@gmail.com
Cc: johannes.berg@intel.com
Cc: kernel-team@lge.com
Cc: linux-block@vger.kernel.org
Cc: linux-fsdevel@vger.kernel.org
Cc: linux-mm@kvack.org
Cc: linux-xfs@vger.kernel.org
Cc: oleg@redhat.com
Cc: tj@kernel.org
Link: http://lkml.kernel.org/r/1508921765-15396-5-git-send-email-byungchul.park@lge.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2017-10-25 12:19:01 +02:00
Peter Zijlstra
8b405d5c5d locking/lockdep: Fix stacktrace mess
There is some complication between check_prevs_add() and
check_prev_add() wrt. saving stack traces. The problem is that we want
to be frugal with saving stack traces, since it consumes static
resources.

We'll only know in check_prev_add() if we need the trace, but we can
call into it multiple times. So we want to do on-demand and re-use.

A further complication is that check_prev_add() can drop graph_lock
and mess with our static resources.

In any case, the current state; after commit:

  ce07a9415f ("locking/lockdep: Make check_prev_add() able to handle external stack_trace")

is that we'll assume the trace contains valid data once
check_prev_add() returns '2'. However, as noted by Josh, this is
false, check_prev_add() can return '2' before having saved a trace,
this then result in the possibility of using uninitialized data.
Testing, as reported by Wu, shows a NULL deref.

So simplify.

Since the graph_lock() thing is a debug path that hasn't
really been used in a long while, take it out back and avoid the
head-ache.

Further initialize the stack_trace to a known 'empty' state; as long
as nr_entries == 0, nothing should deref entries. We can then use the
'entries == NULL' test for a valid trace / on-demand saving.

Analyzed-by: Josh Poimboeuf <jpoimboe@redhat.com>
Reported-by: Fengguang Wu <fengguang.wu@intel.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Byungchul Park <byungchul.park@lge.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Fixes: ce07a9415f ("locking/lockdep: Make check_prev_add() able to handle external stack_trace")
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2017-10-10 10:04:28 +02:00
Peter Zijlstra
f52be57080 locking/lockdep: Untangle xhlock history save/restore from task independence
Where XHLOCK_{SOFT,HARD} are save/restore points in the xhlocks[] to
ensure the temporal IRQ events don't interact with task state, the
XHLOCK_PROC is a fundament different beast that just happens to share
the interface.

The purpose of XHLOCK_PROC is to annotate independent execution inside
one task. For example workqueues, each work should appear to run in its
own 'pristine' 'task'.

Remove XHLOCK_PROC in favour of its own interface to avoid confusion.

Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Byungchul Park <byungchul.park@lge.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: boqun.feng@gmail.com
Cc: david@fromorbit.com
Cc: johannes@sipsolutions.net
Cc: kernel-team@lge.com
Cc: oleg@redhat.com
Cc: tj@kernel.org
Link: http://lkml.kernel.org/r/20170829085939.ggmb6xiohw67micb@hirez.programming.kicks-ass.net
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2017-08-29 15:14:38 +02:00
Peter Zijlstra
e6f3faa734 locking/lockdep: Fix workqueue crossrelease annotation
The new completion/crossrelease annotations interact unfavourable with
the extant flush_work()/flush_workqueue() annotations.

The problem is that when a single work class does:

  wait_for_completion(&C)

and

  complete(&C)

in different executions, we'll build dependencies like:

  lock_map_acquire(W)
  complete_acquire(C)

and

  lock_map_acquire(W)
  complete_release(C)

which results in the dependency chain: W->C->W, which lockdep thinks
spells deadlock, even though there is no deadlock potential since
works are ran concurrently.

One possibility would be to change the work 'lock' to recursive-read,
but that would mean hitting a lockdep limitation on recursive locks.
Also, unconditinoally switching to recursive-read here would fail to
detect the actual deadlock on single-threaded workqueues, which do
have a problem with this.

For now, forcefully disregard these locks for crossrelease.

Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Acked-by: Tejun Heo <tj@kernel.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: boqun.feng@gmail.com
Cc: byungchul.park@lge.com
Cc: david@fromorbit.com
Cc: johannes@sipsolutions.net
Cc: oleg@redhat.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2017-08-25 11:06:33 +02:00
Byungchul Park
907dc16d7e locking/lockdep: Fix the rollback and overwrite detection logic in crossrelease
As Boqun Feng pointed out, current->hist_id should be aligned with the
latest valid xhlock->hist_id so that hist_id_save[] storing current->hist_id
can be comparable with xhlock->hist_id. Fix it.

Additionally, the condition for overwrite-detection should be the
opposite. Fix the code and the comments as well.

           <- direction to visit
hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh (h: history)
                 ^^        ^
                 ||        start from here
                 |previous entry
                 current entry

Reported-by: Boqun Feng <boqun.feng@gmail.com>
Signed-off-by: Byungchul Park <byungchul.park@lge.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: akpm@linux-foundation.org
Cc: kernel-team@lge.com
Cc: kirill@shutemov.name
Cc: linux-mm@kvack.org
Cc: npiggin@gmail.com
Cc: walken@google.com
Cc: willy@infradead.org
Link: http://lkml.kernel.org/r/1502694052-16085-3-git-send-email-byungchul.park@lge.com
[ Improve the comments some more. ]
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2017-08-14 12:52:17 +02:00
Byungchul Park
a10b5c5647 locking/lockdep: Add a comment about crossrelease_hist_end() in lockdep_sys_exit()
In lockdep_sys_exit(), crossrelease_hist_end() is called unconditionally
even when getting here without having started e.g. just after forking.

But it's no problem since it would roll back to an invalid entry anyway.
Add a comment to explain this.

Signed-off-by: Byungchul Park <byungchul.park@lge.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: akpm@linux-foundation.org
Cc: boqun.feng@gmail.com
Cc: kernel-team@lge.com
Cc: kirill@shutemov.name
Cc: linux-mm@kvack.org
Cc: npiggin@gmail.com
Cc: walken@google.com
Cc: willy@infradead.org
Link: http://lkml.kernel.org/r/1502694052-16085-2-git-send-email-byungchul.park@lge.com
[ Improved the description and the comments. ]
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2017-08-14 12:52:17 +02:00
Byungchul Park
383a4bc888 locking/lockdep: Make print_circular_bug() aware of crossrelease
print_circular_bug() reporting circular bug assumes that target hlock is
owned by the current. However, in crossrelease, target hlock can be
owned by other than the current. So the report format needs to be
changed to reflect the change.

Signed-off-by: Byungchul Park <byungchul.park@lge.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: akpm@linux-foundation.org
Cc: boqun.feng@gmail.com
Cc: kernel-team@lge.com
Cc: kirill@shutemov.name
Cc: npiggin@gmail.com
Cc: walken@google.com
Cc: willy@infradead.org
Link: http://lkml.kernel.org/r/1502089981-21272-9-git-send-email-byungchul.park@lge.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2017-08-10 12:29:09 +02:00
Byungchul Park
28a903f63e locking/lockdep: Handle non(or multi)-acquisition of a crosslock
No acquisition might be in progress on commit of a crosslock. Completion
operations enabling crossrelease are the case like:

   CONTEXT X                         CONTEXT Y
   ---------                         ---------
   trigger completion context
                                     complete AX
                                        commit AX
   wait_for_complete AX
      acquire AX
      wait

   where AX is a crosslock.

When no acquisition is in progress, we should not perform commit because
the lock does not exist, which might cause incorrect memory access. So
we have to track the number of acquisitions of a crosslock to handle it.

Moreover, in case that more than one acquisition of a crosslock are
overlapped like:

   CONTEXT W        CONTEXT X        CONTEXT Y        CONTEXT Z
   ---------        ---------        ---------        ---------
   acquire AX (gen_id: 1)
                                     acquire A
                    acquire AX (gen_id: 10)
                                     acquire B
                                     commit AX
                                                      acquire C
                                                      commit AX

   where A, B and C are typical locks and AX is a crosslock.

Current crossrelease code performs commits in Y and Z with gen_id = 10.
However, we can use gen_id = 1 to do it, since not only 'acquire AX in X'
but 'acquire AX in W' also depends on each acquisition in Y and Z until
their commits. So make it use gen_id = 1 instead of 10 on their commits,
which adds an additional dependency 'AX -> A' in the example above.

Signed-off-by: Byungchul Park <byungchul.park@lge.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: akpm@linux-foundation.org
Cc: boqun.feng@gmail.com
Cc: kernel-team@lge.com
Cc: kirill@shutemov.name
Cc: npiggin@gmail.com
Cc: walken@google.com
Cc: willy@infradead.org
Link: http://lkml.kernel.org/r/1502089981-21272-8-git-send-email-byungchul.park@lge.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2017-08-10 12:29:08 +02:00
Byungchul Park
23f873d8f9 locking/lockdep: Detect and handle hist_lock ring buffer overwrite
The ring buffer can be overwritten by hardirq/softirq/work contexts.
That cases must be considered on rollback or commit. For example,

          |<------ hist_lock ring buffer size ----->|
          ppppppppppppiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
wrapped > iiiiiiiiiiiiiiiiiiiiiii....................

          where 'p' represents an acquisition in process context,
          'i' represents an acquisition in irq context.

On irq exit, crossrelease tries to rollback idx to original position,
but it should not because the entry already has been invalid by
overwriting 'i'. Avoid rollback or commit for entries overwritten.

Signed-off-by: Byungchul Park <byungchul.park@lge.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: akpm@linux-foundation.org
Cc: boqun.feng@gmail.com
Cc: kernel-team@lge.com
Cc: kirill@shutemov.name
Cc: npiggin@gmail.com
Cc: walken@google.com
Cc: willy@infradead.org
Link: http://lkml.kernel.org/r/1502089981-21272-7-git-send-email-byungchul.park@lge.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2017-08-10 12:29:08 +02:00
Byungchul Park
b09be676e0 locking/lockdep: Implement the 'crossrelease' feature
Lockdep is a runtime locking correctness validator that detects and
reports a deadlock or its possibility by checking dependencies between
locks. It's useful since it does not report just an actual deadlock but
also the possibility of a deadlock that has not actually happened yet.
That enables problems to be fixed before they affect real systems.

However, this facility is only applicable to typical locks, such as
spinlocks and mutexes, which are normally released within the context in
which they were acquired. However, synchronization primitives like page
locks or completions, which are allowed to be released in any context,
also create dependencies and can cause a deadlock.

So lockdep should track these locks to do a better job. The 'crossrelease'
implementation makes these primitives also be tracked.

Signed-off-by: Byungchul Park <byungchul.park@lge.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: akpm@linux-foundation.org
Cc: boqun.feng@gmail.com
Cc: kernel-team@lge.com
Cc: kirill@shutemov.name
Cc: npiggin@gmail.com
Cc: walken@google.com
Cc: willy@infradead.org
Link: http://lkml.kernel.org/r/1502089981-21272-6-git-send-email-byungchul.park@lge.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2017-08-10 12:29:07 +02:00
Byungchul Park
ce07a9415f locking/lockdep: Make check_prev_add() able to handle external stack_trace
Currently, a space for stack_trace is pinned in check_prev_add(), that
makes us not able to use external stack_trace. The simplest way to
achieve it is to pass an external stack_trace as an argument.

A more suitable solution is to pass a callback additionally along with
a stack_trace so that callers can decide the way to save or whether to
save. Actually crossrelease needs to do other than saving a stack_trace.
So pass a stack_trace and callback to handle it, to check_prev_add().

Signed-off-by: Byungchul Park <byungchul.park@lge.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: akpm@linux-foundation.org
Cc: boqun.feng@gmail.com
Cc: kernel-team@lge.com
Cc: kirill@shutemov.name
Cc: npiggin@gmail.com
Cc: walken@google.com
Cc: willy@infradead.org
Link: http://lkml.kernel.org/r/1502089981-21272-5-git-send-email-byungchul.park@lge.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2017-08-10 12:29:06 +02:00
Byungchul Park
70911fdc95 locking/lockdep: Change the meaning of check_prev_add()'s return value
Firstly, return 1 instead of 2 when 'prev -> next' dependency already
exists. Since the value 2 is not referenced anywhere, just return 1
indicating success in this case.

Secondly, return 2 instead of 1 when successfully added a lock_list
entry with saving stack_trace. With that, a caller can decide whether
to avoid redundant save_trace() on the caller site.

Signed-off-by: Byungchul Park <byungchul.park@lge.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: akpm@linux-foundation.org
Cc: boqun.feng@gmail.com
Cc: kernel-team@lge.com
Cc: kirill@shutemov.name
Cc: npiggin@gmail.com
Cc: walken@google.com
Cc: willy@infradead.org
Link: http://lkml.kernel.org/r/1502089981-21272-4-git-send-email-byungchul.park@lge.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2017-08-10 12:29:06 +02:00
Byungchul Park
49347a986a locking/lockdep: Add a function building a chain between two classes
Crossrelease needs to build a chain between two classes regardless of
their contexts. However, add_chain_cache() cannot be used for that
purpose since it assumes that it's called in the acquisition context
of the hlock. So this patch introduces a new function doing it.

Signed-off-by: Byungchul Park <byungchul.park@lge.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: akpm@linux-foundation.org
Cc: boqun.feng@gmail.com
Cc: kernel-team@lge.com
Cc: kirill@shutemov.name
Cc: npiggin@gmail.com
Cc: walken@google.com
Cc: willy@infradead.org
Link: http://lkml.kernel.org/r/1502089981-21272-3-git-send-email-byungchul.park@lge.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2017-08-10 12:29:05 +02:00
Byungchul Park
545c23f2e9 locking/lockdep: Refactor lookup_chain_cache()
Currently, lookup_chain_cache() provides both 'lookup' and 'add'
functionalities in a function. However, each is useful. So this
patch makes lookup_chain_cache() only do 'lookup' functionality and
makes add_chain_cahce() only do 'add' functionality. And it's more
readable than before.

Signed-off-by: Byungchul Park <byungchul.park@lge.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: akpm@linux-foundation.org
Cc: boqun.feng@gmail.com
Cc: kernel-team@lge.com
Cc: kirill@shutemov.name
Cc: npiggin@gmail.com
Cc: walken@google.com
Cc: willy@infradead.org
Link: http://lkml.kernel.org/r/1502089981-21272-2-git-send-email-byungchul.park@lge.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2017-08-10 12:29:05 +02:00
Peter Zijlstra
ae813308f4 locking/lockdep: Avoid creating redundant links
Two boots + a make defconfig, the first didn't have the redundant bit
in, the second did:

 lock-classes:                         1168       1169 [max: 8191]
 direct dependencies:                  7688       5812 [max: 32768]
 indirect dependencies:               25492      25937
 all direct dependencies:            220113     217512
 dependency chains:                    9005       9008 [max: 65536]
 dependency chain hlocks:             34450      34366 [max: 327680]
 in-hardirq chains:                      55         51
 in-softirq chains:                     371        378
 in-process chains:                    8579       8579
 stack-trace entries:                108073      88474 [max: 524288]
 combined max dependencies:       178738560  169094640

 max locking depth:                      15         15
 max bfs queue depth:                   320        329

 cyclic checks:                        9123       9190

 redundant checks:                                5046
 redundant links:                                 1828

 find-mask forwards checks:            2564       2599
 find-mask backwards checks:          39521      39789

So it saves nearly 2k links and a fair chunk of stack-trace entries, but
as expected, makes no real difference on the indirect dependencies.

At the same time, you see the max BFS depth increase, which is also
expected, although it could easily be boot variance -- these numbers are
not entirely stable between boots.

The down side is that the cycles in the graph become larger and thus
the reports harder to read.

XXX: do we want this as a CONFIG variable, implied by LOCKDEP_SMALL?

Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Byungchul Park <byungchul.park@lge.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Mel Gorman <mgorman@suse.de>
Cc: Michal Hocko <mhocko@kernel.org>
Cc: Nikolay Borisov <nborisov@suse.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: akpm@linux-foundation.org
Cc: boqun.feng@gmail.com
Cc: iamjoonsoo.kim@lge.com
Cc: kernel-team@lge.com
Cc: kirill@shutemov.name
Cc: npiggin@gmail.com
Cc: walken@google.com
Link: http://lkml.kernel.org/r/20170303091338.GH6536@twins.programming.kicks-ass.net
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2017-08-10 12:29:04 +02:00
Peter Zijlstra
d92a8cfcb3 locking/lockdep: Rework FS_RECLAIM annotation
A while ago someone, and I cannot find the email just now, asked if we
could not implement the RECLAIM_FS inversion stuff with a 'fake' lock
like we use for other things like workqueues etc. I think this should
be possible which allows reducing the 'irq' states and will reduce the
amount of __bfs() lookups we do.

Removing the 1 IRQ state results in 4 less __bfs() walks per
dependency, improving lockdep performance. And by moving this
annotation out of the lockdep code it becomes easier for the mm people
to extend.

Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Byungchul Park <byungchul.park@lge.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Mel Gorman <mgorman@suse.de>
Cc: Michal Hocko <mhocko@kernel.org>
Cc: Nikolay Borisov <nborisov@suse.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: akpm@linux-foundation.org
Cc: boqun.feng@gmail.com
Cc: iamjoonsoo.kim@lge.com
Cc: kernel-team@lge.com
Cc: kirill@shutemov.name
Cc: npiggin@gmail.com
Cc: walken@google.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2017-08-10 12:29:03 +02:00