Commit graph

58448 commits

Author SHA1 Message Date
NeilBrown
a1ac400e39
VFS: use synchronize_rcu_expedited() in namespace_unlock()
The synchronize_rcu() in namespace_unlock() is called every time
a filesystem is unmounted.  If a great many filesystems are mounted,
this can cause a noticable slow-down in, for example, system shutdown.

The sequence:
  mkdir -p /tmp/Mtest/{0..5000}
  time for i in /tmp/Mtest/*; do mount -t tmpfs tmpfs $i ; done
  time umount /tmp/Mtest/*

on a 4-cpu VM can report 8 seconds to mount the tmpfs filesystems, and
100 seconds to unmount them.

Boot the same VM with 1 CPU and it takes 18 seconds to mount the
tmpfs filesystems, but only 36 to unmount.

If we change the synchronize_rcu() to synchronize_rcu_expedited()
the umount time on a 4-cpu VM drop to 0.6 seconds

I think this 200-fold speed up is worth the slightly high system
impact of using synchronize_rcu_expedited().

Acked-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com> (from general rcu perspective)
Signed-off-by: NeilBrown <neilb@suse.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2021-08-23 17:41:46 +02:00
Park Ju Hyung
a6f98d3fb0
fs: Expose exFAT for building.
Change-Id: Ib047ebf4e32f43ca77009d8e7c887c0585e7cac6
2021-08-21 16:13:01 +02:00
Tetsuhiro Kohada
017e4b3ec2
exfat: remove useless check in exfat_move_file()
In exfat_move_file(), the identity of source and target directory has been
checked by the caller.
Also, it gets stream.start_clu from file dir-entry, which is an invalid
determination.

Signed-off-by: Tetsuhiro Kohada <kohada.t2@gmail.com>
Acked-by: Sungjong Seo <sj1557.seo@samsung.com>
Signed-off-by: Namjae Jeon <namjae.jeon@samsung.com>
2021-08-21 16:13:01 +02:00
Tetsuhiro Kohada
487d998a94
exfat: remove 'rwoffset' in exfat_inode_info
Remove 'rwoffset' in exfat_inode_info and replace it with the parameter of
exfat_readdir().
Since rwoffset is referenced only by exfat_readdir(), it is not necessary
a exfat_inode_info's member.
Also, change cpos to point to the next of entry-set, and return the index
of dir-entry via dir_entry->entry.

Signed-off-by: Tetsuhiro Kohada <kohada.t2@gmail.com>
Acked-by: Sungjong Seo <sj1557.seo@samsung.com>
Signed-off-by: Namjae Jeon <namjae.jeon@samsung.com>
2021-08-21 16:13:01 +02:00
Tetsuhiro Kohada
0af5cfbd0e
exfat: replace memcpy with structure assignment
Use structure assignment instead of memcpy.

Signed-off-by: Tetsuhiro Kohada <kohada.t2@gmail.com>
Acked-by: Sungjong Seo <sj1557.seo@samsung.com>
Signed-off-by: Namjae Jeon <namjae.jeon@samsung.com>
2021-08-21 16:13:01 +02:00
Tetsuhiro Kohada
5d9d5f907f
exfat: remove useless directory scan in exfat_add_entry()
There is nothing in directory just created, so there is no need to scan.

Signed-off-by: Tetsuhiro Kohada <kohada.t2@gmail.com>
Acked-by: Sungjong Seo <sj1557.seo@samsung.com>
Signed-off-by: Namjae Jeon <namjae.jeon@samsung.com>
2021-08-21 16:13:00 +02:00
Tetsuhiro Kohada
5b2bd51bed
exfat: eliminate dead code in exfat_find()
The exfat_find_dir_entry() called by exfat_find() doesn't return -EEXIST.
Therefore, the root-dir information setting is never executed.

Signed-off-by: Tetsuhiro Kohada <kohada.t2@gmail.com>
Acked-by: Sungjong Seo <sj1557.seo@samsung.com>
Signed-off-by: Namjae Jeon <namjae.jeon@samsung.com>
2021-08-21 16:13:00 +02:00
Xianting Tian
5906a75ace
exfat: use i_blocksize() to get blocksize
We alreday has the interface i_blocksize() to get blocksize,
so use it.

Signed-off-by: Xianting Tian <tian.xianting@h3c.com>
Signed-off-by: Namjae Jeon <namjae.jeon@samsung.com>
2021-08-21 16:13:00 +02:00
Namjae Jeon
7fbbd8aa00
exfat: fix misspellings using codespell tool
Sedat reported typos using codespell tool.

 $ codespell fs/exfat/*.c | grep -v iput
 fs/exfat/namei.c:293: upto ==> up to
 fs/exfat/nls.c:14: tabel ==> table

 $ codespell fs/exfat/*.h
 fs/exfat/exfat_fs.h:133: usally ==> usually

Fix typos found by codespell.

Reported-by: Sedat Dilek <sedat.dilek@gmail.com>
Signed-off-by: Namjae Jeon <namjae.jeon@samsung.com>
2021-08-21 16:13:00 +02:00
Namjae Jeon
40e33a34f3
exfat: fix use of uninitialized spinlock on error path
syzbot reported warning message:

Call Trace:
 __dump_stack lib/dump_stack.c:77 [inline]
 dump_stack+0x1d6/0x29e lib/dump_stack.c:118
 register_lock_class+0xf06/0x1520 kernel/locking/lockdep.c:893
 __lock_acquire+0xfd/0x2ae0 kernel/locking/lockdep.c:4320
 lock_acquire+0x148/0x720 kernel/locking/lockdep.c:5029
 __raw_spin_lock include/linux/spinlock_api_smp.h:142 [inline]
 _raw_spin_lock+0x2a/0x40 kernel/locking/spinlock.c:151
 spin_lock include/linux/spinlock.h:354 [inline]
 exfat_cache_inval_inode+0x30/0x280 fs/exfat/cache.c:226
 exfat_evict_inode+0x124/0x270 fs/exfat/inode.c:660
 evict+0x2bb/0x6d0 fs/inode.c:576
 exfat_fill_super+0x1e07/0x27d0 fs/exfat/super.c:681
 get_tree_bdev+0x3e9/0x5f0 fs/super.c:1342
 vfs_get_tree+0x88/0x270 fs/super.c:1547
 do_new_mount fs/namespace.c:2875 [inline]
 path_mount+0x179d/0x29e0 fs/namespace.c:3192
 do_mount fs/namespace.c:3205 [inline]
 __do_sys_mount fs/namespace.c:3413 [inline]
 __se_sys_mount+0x126/0x180 fs/namespace.c:3390
 do_syscall_64+0x31/0x70 arch/x86/entry/common.c:46
 entry_SYSCALL_64_after_hwframe+0x44/0xa9

If exfat_read_root() returns an error, spinlock is used in
exfat_evict_inode() without initialization. This patch combines
exfat_cache_init_inode() with exfat_inode_init_once() to initialize
spinlock by slab constructor.

Fixes: c35b6810c495 ("exfat: add exfat cache")
Cc: stable@vger.kernel.org # v5.7+
Reported-by: syzbot <syzbot+b91107320911a26c9a95@syzkaller.appspotmail.com>
Signed-off-by: Namjae Jeon <namjae.jeon@samsung.com>
2021-08-21 16:13:00 +02:00
Tetsuhiro Kohada
d5362e854c
exfat: fix pointer error checking
Fix missing result check of exfat_build_inode().
And use PTR_ERR_OR_ZERO instead of PTR_ERR.

Signed-off-by: Tetsuhiro Kohada <kohada.t2@gmail.com>
Signed-off-by: Namjae Jeon <namjae.jeon@samsung.com>
2021-08-21 16:13:00 +02:00
Tetsuhiro Kohada
55952cbd45
exfat: retain 'VolumeFlags' properly
MediaFailure and VolumeDirty should be retained if these are set before
mounting.

In '3.1.13.3 Media Failure Field' of exfat specification describe:

 If, upon mounting a volume, the value of this field is 1,
 implementations which scan the entire volume for media failures and
 record all failures as "bad" clusters in the FAT (or otherwise resolve
 media failures) may clear the value of  this field to 0.

Therefore, We should not clear MediaFailure without scanning volume.

In '8.1 Recommended Write Ordering' of exfat specification describe:

 Clear the value of the VolumeDirty field to 0, if its value prior to
 the first step was 0.

Therefore, We should not clear VolumeDirty after mounting.
Also rename ERR_MEDIUM to MEDIA_FAILURE.

Signed-off-by: Tetsuhiro Kohada <kohada.t2@gmail.com>
Signed-off-by: Namjae Jeon <namjae.jeon@samsung.com>
2021-08-21 16:13:00 +02:00
Tetsuhiro Kohada
f40eb4fc08
exfat: optimize exfat_zeroed_cluster()
Replace part of exfat_zeroed_cluster() with exfat_update_bhs().
And remove exfat_sync_bhs().

Signed-off-by: Tetsuhiro Kohada <kohada.t2@gmail.com>
Reviewed-by: Sungjong Seo <sj1557.seo@samsung.com>
Signed-off-by: Namjae Jeon <namjae.jeon@samsung.com>
2021-08-21 16:12:59 +02:00
Tetsuhiro Kohada
d46997a980
exfat: add error check when updating dir-entries
Add error check when synchronously updating dir-entries.

Suggested-by: Sungjong Seo <sj1557.seo@samsung.com>
Signed-off-by: Tetsuhiro Kohada <kohada.t2@gmail.com>
Signed-off-by: Namjae Jeon <namjae.jeon@samsung.com>
2021-08-21 16:12:59 +02:00
Tetsuhiro Kohada
52ef604213
exfat: write multiple sectors at once
Write multiple sectors at once when updating dir-entries.
Add exfat_update_bhs() for that. It wait for write completion once
instead of sector by sector.
It's only effective if sync enabled.

Signed-off-by: Tetsuhiro Kohada <kohada.t2@gmail.com>
Signed-off-by: Namjae Jeon <namjae.jeon@samsung.com>
2021-08-21 16:12:59 +02:00
Tetsuhiro Kohada
03403e12fe
exfat: remove EXFAT_SB_DIRTY flag
This flag is set/reset in exfat_put_super()/exfat_sync_fs()
to avoid sync_blockdev().
- exfat_put_super():
Before calling this, the VFS has already called sync_filesystem(),
so sync is never performed here.
- exfat_sync_fs():
After calling this, the VFS calls sync_blockdev(), so, it is meaningless
to check EXFAT_SB_DIRTY or to bypass sync_blockdev() here.

Remove the EXFAT_SB_DIRTY check to ensure synchronization.
And remove the code related to the flag.

Signed-off-by: Tetsuhiro Kohada <kohada.t2@gmail.com>
Reviewed-by: Sungjong Seo <sj1557.seo@samsung.com>
Signed-off-by: Namjae Jeon <namjae.jeon@samsung.com>
2021-08-21 16:12:59 +02:00
Ilya Ponetayev
f564c70c44
exfat: fix name_hash computation on big endian systems
On-disk format for name_hash field is LE, so it must be explicitly
transformed on BE system for proper result.

Fixes: 370e812b3ec1 ("exfat: add nls operations")
Cc: stable@vger.kernel.org # v5.7
Signed-off-by: Chen Minqiang <ptpt52@gmail.com>
Signed-off-by: Ilya Ponetayev <i.ponetaev@ndmsystems.com>
Reviewed-by: Sungjong Seo <sj1557.seo@samsung.com>
Signed-off-by: Namjae Jeon <namjae.jeon@samsung.com>
2021-08-21 16:12:59 +02:00
Hyeongseok Kim
5c3af28113
exfat: fix wrong size update of stream entry by typo
The stream.size field is updated to the value of create timestamp
of the file entry. Fix this to use correct stream entry pointer.

Fixes: 29bbb14bfc80 ("exfat: fix incorrect update of stream entry in __exfat_truncate()")
Signed-off-by: Hyeongseok Kim <hyeongseok@gmail.com>
Signed-off-by: Namjae Jeon <namjae.jeon@samsung.com>
2021-08-21 16:12:59 +02:00
Namjae Jeon
3d7bd6b5ee
exfat: fix wrong hint_stat initialization in exfat_find_dir_entry()
We found the wrong hint_stat initialization in exfat_find_dir_entry().
It should be initialized when cluster is EXFAT_EOF_CLUSTER.

Fixes: ca06197382bd ("exfat: add directory operations")
Cc: stable@vger.kernel.org # v5.7
Reviewed-by: Sungjong Seo <sj1557.seo@samsung.com>
Signed-off-by: Namjae Jeon <namjae.jeon@samsung.com>
2021-08-21 16:12:59 +02:00
Namjae Jeon
fa2e177211
exfat: fix overflow issue in exfat_cluster_to_sector()
An overflow issue can occur while calculating sector in
exfat_cluster_to_sector(). It needs to cast clus's type to sector_t
before left shifting.

Fixes: 1acf1a564b60 ("exfat: add in-memory and on-disk structures and headers")
Cc: stable@vger.kernel.org # v5.7
Reviewed-by: Sungjong Seo <sj1557.seo@samsung.com>
Signed-off-by: Namjae Jeon <namjae.jeon@samsung.com>
2021-08-21 16:12:59 +02:00
Gagan Malvi
b99ac02f5a
Merge branch 'master' of https://github.com/arter97/exfat-linux into ruby
Change-Id: I83d92081ed680d9cc2b7a476a463c87324b6222b
2021-08-21 16:12:58 +02:00
starlight5234
516f12c56e
fs: pstore: Import xiaomi changes
The Patch based on QualComm release TAG:LA.UM.8.15.r1-06600-KAMORTA.0

Change-Id: I510248ced8c6f61613354ae8ca5e27a2a316e88a
Signed-off-by: starlight5234 <starlight5234@protonmail.ch>
2021-08-21 16:10:46 +02:00
qctecmdr
ba87aa9b05 Merge "Merge android-4.19-stable.152 (13abe23) into msm-4.19" 2020-11-10 06:31:20 -08:00
Phanindra Babu Pabba
91a68a8884 fscrypt: Handle support for v1 encryption policy
FS_IOC_ADD_ENCRYPTION_KEY ioctl need to support both
v1 policy with 'key_descriptor' as well along with
v2 encryption policy.

Change-Id: I7638191bc8926ba306b11c3e8a5dafdb3d396764
Signed-off-by: Phanindra Babu Pabba <pabba@codeaurora.org>
2020-10-30 11:01:16 +05:30
Srinivasarao P
5cf2fb4ea5 Merge android-4.19-stable.152 (13abe23) into msm-4.19
* refs/heads/tmp-13abe23:
  Linux 4.19.152
  crypto: qat - check cipher length for aead AES-CBC-HMAC-SHA
  crypto: bcm - Verify GCM/CCM key length in setkey
  drivers/net/ethernet/marvell/mvmdio.c: Fix non OF case
  reiserfs: Fix oops during mount
  reiserfs: Initialize inode keys properly
  USB: serial: ftdi_sio: add support for FreeCalypso JTAG+UART adapters
  USB: serial: pl2303: add device-id for HP GC device
  staging: comedi: check validity of wMaxPacketSize of usb endpoints found
  USB: serial: option: Add Telit FT980-KS composition
  USB: serial: option: add Cellient MPL200 card
  media: usbtv: Fix refcounting mixup
  Bluetooth: Disconnect if E0 is used for Level 4
  Bluetooth: Fix update of connection state in `hci_encrypt_cfm`
  Bluetooth: Consolidate encryption handling in hci_encrypt_cfm
  Bluetooth: MGMT: Fix not checking if BT_HS is enabled
  Bluetooth: L2CAP: Fix calling sk_filter on non-socket based channel
  Bluetooth: A2MP: Fix not initializing all members
  ARM: 8867/1: vdso: pass --be8 to linker if necessary
  ARM: 8939/1: kbuild: use correct nm executable
  ARM: 8858/1: vdso: use $(LD) instead of $(CC) to link VDSO
  perf cs-etm: Move definition of 'traceid_list' global variable from header file
  FROMLIST: arm64: vdso32: Allow ld.lld to properly link the VDSO
  Linux 4.19.151
  net: usb: rtl8150: set random MAC address when set_ethernet_addr() fails
  mm: khugepaged: recalculate min_free_kbytes after memory hotplug as expected by khugepaged
  mmc: core: don't set limits.discard_granularity as 0
  perf: Fix task_function_call() error handling
  rxrpc: Fix server keyring leak
  rxrpc: Fix some missing _bh annotations on locking conn->state_lock
  rxrpc: Downgrade the BUG() for unsupported token type in rxrpc_read()
  rxrpc: Fix rxkad token xdr encoding
  net/mlx5e: Fix VLAN create flow
  net/mlx5e: Fix VLAN cleanup flow
  net: usb: ax88179_178a: fix missing stop entry in driver_info
  mdio: fix mdio-thunder.c dependency & build error
  bonding: set dev->needed_headroom in bond_setup_by_slave()
  xfrm: Use correct address family in xfrm_state_find
  platform/x86: fix kconfig dependency warning for FUJITSU_LAPTOP
  net: stmmac: removed enabling eee in EEE set callback
  xfrm: clone whole liftime_cur structure in xfrm_do_migrate
  xfrm: clone XFRMA_SEC_CTX in xfrm_do_migrate
  xfrm: clone XFRMA_REPLAY_ESN_VAL in xfrm_do_migrate
  xfrm: clone XFRMA_SET_MARK in xfrm_do_migrate
  drm/amdgpu: prevent double kfree ttm->sg
  openvswitch: handle DNAT tuple collision
  net: team: fix memory leak in __team_options_register
  team: set dev->needed_headroom in team_setup_by_port()
  sctp: fix sctp_auth_init_hmacs() error path
  i2c: owl: Clear NACK and BUS error bits
  i2c: meson: fixup rate calculation with filter delay
  i2c: meson: fix clock setting overwrite
  cifs: Fix incomplete memory allocation on setxattr path
  xfrmi: drop ignore_df check before updating pmtu
  mm/khugepaged: fix filemap page_to_pgoff(page) != offset
  macsec: avoid use-after-free in macsec_handle_frame()
  nvme-core: put ctrl ref when module ref get fail
  arm64: dts: stratix10: add status to qspi dts node
  mtd: rawnand: sunxi: Fix the probe error path
  i2c: i801: Exclude device from suspend direct complete optimization
  perf top: Fix stdio interface input handling with glibc 2.28+
  driver core: Fix probe_count imbalance in really_probe()
  platform/x86: thinkpad_acpi: re-initialize ACPI buffer size when reuse
  platform/x86: intel-vbtn: Switch to an allow-list for SW_TABLET_MODE reporting
  platform/x86: thinkpad_acpi: initialize tp_nvram_state variable
  platform/x86: intel-vbtn: Fix SW_TABLET_MODE always reporting 1 on the HP Pavilion 11 x360
  usermodehelper: reset umask to default before executing user process
  drm/nouveau/mem: guard against NULL pointer access in mem_del
  net: wireless: nl80211: fix out-of-bounds access in nl80211_del_key()
  Revert "ravb: Fixed to be able to unload modules"
  fbcon: Fix global-out-of-bounds read in fbcon_get_font()
  Fonts: Support FONT_EXTRA_WORDS macros for built-in fonts
  fbdev, newport_con: Move FONT_EXTRA_WORDS macros into linux/font.h
  Linux 4.19.150
  netfilter: ctnetlink: add a range check for l3/l4 protonum
  ep_create_wakeup_source(): dentry name can change under you...
  epoll: EPOLL_CTL_ADD: close the race in decision to take fast path
  epoll: replace ->visited/visited_list with generation count
  epoll: do not insert into poll queues until all sanity checks are done
  net/packet: fix overflow in tpacket_rcv
  mm: don't rely on system state to detect hot-plug operations
  mm: replace memmap_context by meminit_context
  random32: Restore __latent_entropy attribute on net_rand_state
  Input: trackpoint - enable Synaptics trackpoints
  i2c: cpm: Fix i2c_ram structure
  iommu/exynos: add missing put_device() call in exynos_iommu_of_xlate()
  clk: samsung: exynos4: mark 'chipid' clock as CLK_IGNORE_UNUSED
  nfs: Fix security label length not being reset
  pinctrl: mvebu: Fix i2c sda definition for 98DX3236
  gpio: sprd: Clear interrupt when setting the type as edge
  nvme-fc: fail new connections to a deleted host or remote port
  spi: fsl-espi: Only process interrupts for expected events
  mac80211: do not allow bigger VHT MPDUs than the hardware supports
  drivers/net/wan/hdlc: Set skb->protocol before transmitting
  drivers/net/wan/lapbether: Make skb->protocol consistent with the header
  nvme-core: get/put ctrl and transport module in nvme_dev_open/release()
  rndis_host: increase sleep time in the query-response loop
  net: dec: de2104x: Increase receive ring size for Tulip
  drm/sun4i: mixer: Extend regmap max_register
  drivers/net/wan/hdlc_fr: Add needed_headroom for PVC devices
  drm/amdgpu: restore proper ref count in amdgpu_display_crtc_set_config
  ftrace: Move RCU is watching check after recursion check
  Input: i8042 - add nopnp quirk for Acer Aspire 5 A515
  net: virtio_vsock: Enhance connection semantics
  vsock/virtio: add transport parameter to the virtio_transport_reset_no_sock()
  vsock/virtio: stop workers during the .remove()
  vsock/virtio: use RCU to avoid use-after-free on the_virtio_vsock
  clk: socfpga: stratix10: fix the divider for the emac_ptp_free_clk
  gpio: tc35894: fix up tc35894 interrupt configuration
  gpio: mockup: fix resource leak in error path
  USB: gadget: f_ncm: Fix NDP16 datagram validation
  mmc: sdhci: Workaround broken command queuing on Intel GLK based IRBIS models
  ANDROID: use arm-linux-androidkernel- for CROSS_COMPILE_COMPAT
  ANDROID: build.config.common: enable LLVM=1

Change-Id: I6e694123520bede70e7216a0c909560f0cd2ba59
Signed-off-by: Srinivasarao P <spathi@codeaurora.org>
2020-10-28 17:52:20 +05:30
Srinivasarao P
5ca1f513f7 Merge android-4.19-stable.149 (9ce79d9) into msm-4.19
* refs/heads/tmp-9ce79d9:
  Linux 4.19.149
  KVM: arm64: Assume write fault on S1PTW permission fault on instruction fetch
  ata: sata_mv, avoid trigerrable BUG_ON
  ata: make qc_prep return ata_completion_errors
  ata: define AC_ERR_OK
  kprobes: Fix compiler warning for !CONFIG_KPROBES_ON_FTRACE
  s390/zcrypt: Fix ZCRYPT_PERDEV_REQCNT ioctl
  mm, THP, swap: fix allocating cluster for swapfile by mistake
  kprobes: Fix to check probe enabled before disarm_kprobe_ftrace()
  s390/dasd: Fix zero write for FBA devices
  tracing: fix double free
  KVM: SVM: Add a dedicated INVD intercept routine
  KVM: x86: Reset MMU context if guest toggles CR4.SMAP or CR4.PKE
  MIPS: Add the missing 'CPU_1074K' into __get_cpu_type()
  regmap: fix page selection for noinc reads
  ALSA: asihpi: fix iounmap in error handler
  bpf: Fix a rcu warning for bpffs map pretty-print
  batman-adv: mcast: fix duplicate mcast packets from BLA backbone to mesh
  batman-adv: mcast: fix duplicate mcast packets in BLA backbone from mesh
  batman-adv: Add missing include for in_interrupt()
  drm/sun4i: sun8i-csc: Secondary CSC register correction
  net: qed: RDMA personality shouldn't fail VF load
  drm/vc4/vc4_hdmi: fill ASoC card owner
  bpf: Fix clobbering of r2 in bpf_gen_ld_abs
  mac802154: tx: fix use-after-free
  batman-adv: mcast/TT: fix wrongly dropped or rerouted packets
  atm: eni: fix the missed pci_disable_device() for eni_init_one()
  batman-adv: bla: fix type misuse for backbone_gw hash indexing
  mwifiex: Increase AES key storage size to 256 bits
  clocksource/drivers/h8300_timer8: Fix wrong return value in h8300_8timer_init()
  ieee802154/adf7242: check status of adf7242_read_reg
  ieee802154: fix one possible memleak in ca8210_dev_com_init
  objtool: Fix noreturn detection for ignored functions
  i2c: core: Call i2c_acpi_install_space_handler() before i2c_acpi_register_devices()
  drm/amdkfd: fix a memory leak issue
  lockdep: fix order in trace_hardirqs_off_caller()
  s390/init: add missing __init annotations
  RISC-V: Take text_mutex in ftrace_init_nop()
  ASoC: Intel: bytcr_rt5640: Add quirk for MPMAN Converter9 2-in-1
  ASoC: wm8994: Ensure the device is resumed in wm89xx_mic_detect functions
  ASoC: wm8994: Skip setting of the WM8994_MICBIAS register for WM1811
  nvme: explicitly update mpath disk capacity on revalidation
  net: openvswitch: use div_u64() for 64-by-32 divisions
  perf parse-events: Use strcmp() to compare the PMU name
  ubi: fastmap: Free unused fastmap anchor peb during detach
  btrfs: qgroup: fix data leak caused by race between writeback and truncate
  vfio/pci: fix racy on error and request eventfd ctx
  selftests/x86/syscall_nt: Clear weird flags after each test
  scsi: libfc: Skip additional kref updating work event
  scsi: libfc: Handling of extra kref
  nvme: fix possible deadlock when I/O is blocked
  cifs: Fix double add page to memcg when cifs_readpages
  vfio/pci: Clear error and request eventfd ctx after releasing
  x86/speculation/mds: Mark mds_user_clear_cpu_buffers() __always_inline
  mtd: parser: cmdline: Support MTD names containing one or more colons
  rapidio: avoid data race between file operation callbacks and mport_cdev_add().
  mm/swap_state: fix a data race in swapin_nr_pages
  ceph: fix potential race in ceph_check_caps
  PCI: tegra: Fix runtime PM imbalance on error
  mtd: rawnand: omap_elm: Fix runtime PM imbalance on error
  wlcore: fix runtime pm imbalance in wlcore_regdomain_config
  wlcore: fix runtime pm imbalance in wl1271_tx_work
  ASoC: img-i2s-out: Fix runtime PM imbalance on error
  perf kcore_copy: Fix module map when there are no modules loaded
  perf metricgroup: Free metric_events on error
  perf util: Fix memory leak of prefix_if_not_in
  perf stat: Fix duration_time value for higher intervals
  perf trace: Fix the selection for architectures to generate the errno name tables
  perf evsel: Fix 2 memory leaks
  vfio/pci: fix memory leaks of eventfd ctx
  btrfs: don't force read-only after error in drop snapshot
  usb: dwc3: Increase timeout for CmdAct cleared by device controller
  printk: handle blank console arguments passed in.
  drm/nouveau/dispnv50: fix runtime pm imbalance on error
  drm/nouveau: fix runtime pm imbalance on error
  drm/nouveau/debugfs: fix runtime pm imbalance on error
  e1000: Do not perform reset in reset_task if we are already down
  arm64/cpufeature: Drop TraceFilt feature exposure from ID_DFR0 register
  scsi: cxlflash: Fix error return code in cxlflash_probe()
  USB: EHCI: ehci-mv: fix less than zero comparison of an unsigned int
  fuse: don't check refcount after stealing page
  powerpc/traps: Make unrecoverable NMIs die instead of panic
  ALSA: hda: Fix potential race in unsol event handler
  tty: serial: samsung: Correct clock selection logic
  tipc: fix memory leak in service subscripting
  USB: EHCI: ehci-mv: fix error handling in mv_ehci_probe()
  Bluetooth: Handle Inquiry Cancel error after Inquiry Complete
  phy: samsung: s5pv210-usb2: Add delay after reset
  power: supply: max17040: Correct voltage reading
  perf mem2node: Avoid double free related to realloc
  atm: fix a memory leak of vcc->user_back
  dt-bindings: sound: wm8994: Correct required supplies based on actual implementaion
  arm64: cpufeature: Relax checks for AArch32 support at EL[0-2]
  sparc64: vcc: Fix error return code in vcc_probe()
  staging:r8188eu: avoid skb_clone for amsdu to msdu conversion
  scsi: aacraid: Fix error handling paths in aac_probe_one()
  net: openvswitch: use u64 for meter bucket
  KVM: arm64: vgic-its: Fix memory leak on the error path of vgic_add_lpi()
  drivers: char: tlclk.c: Avoid data race between init and interrupt handler
  bdev: Reduce time holding bd_mutex in sync in blkdev_close()
  KVM: Remove CREATE_IRQCHIP/SET_PIT2 race
  serial: uartps: Wait for tx_empty in console setup
  scsi: qedi: Fix termination timeouts in session logout
  mm/mmap.c: initialize align_offset explicitly for vm_unmapped_area
  nvmet-rdma: fix double free of rdma queue
  mm/vmscan.c: fix data races using kswapd_classzone_idx
  mm/filemap.c: clear page error before actual read
  mm/kmemleak.c: use address-of operator on section symbols
  NFS: Fix races nfs_page_group_destroy() vs nfs_destroy_unlinked_subrequests()
  PCI: pciehp: Fix MSI interrupt race
  ALSA: usb-audio: Fix case when USB MIDI interface has more than one extra endpoint descriptor
  ubifs: Fix out-of-bounds memory access caused by abnormal value of node_len
  PCI: Use ioremap(), not phys_to_virt() for platform ROM
  svcrdma: Fix leak of transport addresses
  SUNRPC: Fix a potential buffer overflow in 'svc_print_xprts()'
  scsi: hpsa: correct race condition in offload enabled
  RDMA/rxe: Set sys_image_guid to be aligned with HW IB devices
  nvme: Fix controller creation races with teardown flow
  nvme-multipath: do not reset on unknown status
  tools: gpio-hammer: Avoid potential overflow in main
  cpufreq: powernv: Fix frame-size-overflow in powernv_cpufreq_work_fn
  perf cpumap: Fix snprintf overflow check
  serial: 8250: 8250_omap: Terminate DMA before pushing data on RX timeout
  serial: 8250_omap: Fix sleeping function called from invalid context during probe
  serial: 8250_port: Don't service RX FIFO if throttled
  perf parse-events: Fix 3 use after frees found with clang ASAN
  thermal: rcar_thermal: Handle probe error gracefully
  tracing: Use address-of operator on section symbols
  drm/msm/a5xx: Always set an OPP supported hardware value
  drm/msm: fix leaks if initialization fails
  KVM: PPC: Book3S HV: Treat TM-related invalid form instructions on P9 like the valid ones
  RDMA/cm: Remove a race freeing timewait_info
  nfsd: Don't add locks to closed or closing open stateids
  rtc: ds1374: fix possible race condition
  rtc: sa1100: fix possible race condition
  tpm: ibmvtpm: Wait for buffer to be set before proceeding
  ext4: mark block bitmap corrupted when found instead of BUGON
  xfs: mark dir corrupt when lookup-by-hash fails
  xfs: don't ever return a stale pointer from __xfs_dir3_free_read
  media: tda10071: fix unsigned sign extension overflow
  Bluetooth: L2CAP: handle l2cap config request during open state
  scsi: aacraid: Disabling TM path and only processing IOP reset
  ath10k: use kzalloc to read for ath10k_sdio_hif_diag_read
  drm/amd/display: Stop if retimer is not available
  drm/amdgpu: increase atombios cmd timeout
  mm: avoid data corruption on CoW fault into PFN-mapped VMA
  perf jevents: Fix leak of mapfile memory
  ext4: fix a data race at inode->i_disksize
  timekeeping: Prevent 32bit truncation in scale64_check_overflow()
  Bluetooth: guard against controllers sending zero'd events
  media: go7007: Fix URB type for interrupt handling
  bus: hisi_lpc: Fixup IO ports addresses to avoid use-after-free in host removal
  random: fix data races at timer_rand_state
  firmware: arm_sdei: Use cpus_read_lock() to avoid races with cpuhp
  drm/amd/display: dal_ddc_i2c_payloads_create can fail causing panic
  dmaengine: tegra-apb: Prevent race conditions on channel's freeing
  dmaengine: stm32-dma: use vchan_terminate_vdesc() in .terminate_all
  bpf: Remove recursion prevention from rcu free callback
  x86/pkeys: Add check for pkey "overflow"
  media: staging/imx: Missing assignment in imx_media_capture_device_register()
  dmaengine: stm32-mdma: use vchan_terminate_vdesc() in .terminate_all
  KVM: x86: fix incorrect comparison in trace event
  RDMA/rxe: Fix configuration of atomic queue pair attributes
  perf test: Fix test trace+probe_vfs_getname.sh on s390
  ALSA: usb-audio: Don't create a mixer element with bogus volume range
  mt76: clear skb pointers from rx aggregation reorder buffer during cleanup
  crypto: chelsio - This fixes the kernel panic which occurs during a libkcapi test
  clk: stratix10: use do_div() for 64-bit calculation
  drm/omap: fix possible object reference leak
  scsi: lpfc: Fix coverity errors in fmdi attribute handling
  scsi: lpfc: Fix RQ buffer leakage when no IOCBs available
  selinux: sel_avc_get_stat_idx should increase position index
  audit: CONFIG_CHANGE don't log internal bookkeeping as an event
  skbuff: fix a data race in skb_queue_len()
  ALSA: hda: Clear RIRB status before reading WP
  KVM: fix overflow of zero page refcount with ksm running
  Bluetooth: prefetch channel before killing sock
  mm: pagewalk: fix termination condition in walk_pte_range()
  mm/swapfile.c: swap_next should increase position index
  Bluetooth: Fix refcount use-after-free issue
  tools/power/x86/intel_pstate_tracer: changes for python 3 compatibility
  selftests/ftrace: fix glob selftest
  ceph: ensure we have a new cap before continuing in fill_inode
  ar5523: Add USB ID of SMCWUSBT-G2 wireless adapter
  ARM: 8948/1: Prevent OOB access in stacktrace
  tracing: Set kernel_stack's caller size properly
  Bluetooth: btrtl: Use kvmalloc for FW allocations
  powerpc/eeh: Only dump stack once if an MMIO loop is detected
  s390/cpum_sf: Use kzalloc and minor changes
  dmaengine: zynqmp_dma: fix burst length configuration
  scsi: ufs: Fix a race condition in the tracing code
  scsi: ufs: Make ufshcd_add_command_trace() easier to read
  ACPI: EC: Reference count query handlers under lock
  sctp: move trace_sctp_probe_path into sctp_outq_sack
  media: ti-vpe: cal: Restrict DMA to avoid memory corruption
  seqlock: Require WRITE_ONCE surrounding raw_seqcount_barrier
  ipv6_route_seq_next should increase position index
  rt_cpu_seq_next should increase position index
  neigh_stat_seq_next() should increase position index
  xfs: fix log reservation overflows when allocating large rt extents
  KVM: arm/arm64: vgic: Fix potential double free dist->spis in __kvm_vgic_destroy()
  kernel/sys.c: avoid copying possible padding bytes in copy_to_user
  ASoC: max98090: remove msleep in PLL unlocked workaround
  CIFS: Properly process SMB3 lease breaks
  debugfs: Fix !DEBUG_FS debugfs_create_automount
  scsi: pm80xx: Cleanup command when a reset times out
  gfs2: clean up iopen glock mess in gfs2_create_inode
  mmc: core: Fix size overflow for mmc partitions
  ubi: Fix producing anchor PEBs
  RDMA/iw_cgxb4: Fix an error handling path in 'c4iw_connect()'
  xfs: fix attr leaf header freemap.size underflow
  fix dget_parent() fastpath race
  RDMA/i40iw: Fix potential use after free
  RDMA/qedr: Fix potential use after free
  dmaengine: mediatek: hsdma_probe: fixed a memory leak when devm_request_irq fails
  bcache: fix a lost wake-up problem caused by mca_cannibalize_lock
  tracing: Adding NULL checks for trace_array descriptor pointer
  tpm_crb: fix fTPM on AMD Zen+ CPUs
  drm/amdgpu/powerplay/smu7: fix AVFS handling with custom powerplay table
  mfd: mfd-core: Protect against NULL call-back function pointer
  mtd: cfi_cmdset_0002: don't free cfi->cfiq in error path of cfi_amdstd_setup()
  drm/amdgpu/powerplay: fix AVFS handling with custom powerplay table
  clk/ti/adpll: allocate room for terminating null
  net: silence data-races on sk_backlog.tail
  scsi: lpfc: Fix kernel crash at lpfc_nvme_info_show during remote port bounce
  scsi: fnic: fix use after free
  PM / devfreq: tegra30: Fix integer overflow on CPU's freq max out
  leds: mlxreg: Fix possible buffer overflow
  lib/string.c: implement stpcpy
  ALSA: hda/realtek: Enable front panel headset LED on Lenovo ThinkStation P520
  ALSA: hda/realtek - Couldn't detect Mic if booting with headset plugged
  ALSA: usb-audio: Add delay quirk for H570e USB headsets
  x86/ioapic: Unbreak check_timer()
  arch/x86/lib/usercopy_64.c: fix __copy_user_flushcache() cache writeback
  media: smiapp: Fix error handling at NVM reading
  ASoC: kirkwood: fix IRQ error handling
  gma/gma500: fix a memory disclosure bug due to uninitialized bytes
  m68k: q40: Fix info-leak in rtc_ioctl
  scsi: aacraid: fix illegal IO beyond last LBA
  mm: fix double page fault on arm64 if PTE_AF is cleared
  ath10k: fix memory leak for tpc_stats_final
  ath10k: fix array out-of-bounds access
  dma-fence: Serialise signal enabling (dma_fence_enable_sw_signaling)
  media: mc-device.c: fix memleak in media_device_register_entity
  selinux: allow labeling before policy is loaded
  ANDROID: GKI: prevent removal of monitored symbols
  ANDROID: Refresh ABI.xmls with libabigail 1.8.0-98bbf30d
  Linux 4.19.148
  serial: 8250: Avoid error message on reprobe
  tcp_bbr: adapt cwnd based on ack aggregation estimation
  tcp_bbr: refactor bbr_target_cwnd() for general inflight provisioning
  mm: memcg: fix memcg reclaim soft lockup
  kbuild: support LLVM=1 to switch the default tools to Clang/LLVM
  kbuild: replace AS=clang with LLVM_IAS=1
  kbuild: remove AS variable
  x86/boot: kbuild: allow readelf executable to be specified
  net: wan: wanxl: use $(M68KCC) instead of $(M68KAS) for rebuilding firmware
  net: wan: wanxl: use allow to pass CROSS_COMPILE_M68k for rebuilding firmware
  Documentation/llvm: fix the name of llvm-size
  Documentation/llvm: add documentation on building w/ Clang/LLVM
  kbuild: add OBJSIZE variable for the size tool
  MAINTAINERS: add CLANG/LLVM BUILD SUPPORT info
  ipv4: Update exception handling for multipath routes via same device
  net: add __must_check to skb_put_padto()
  net: qrtr: check skb_put_padto() return value
  net: phy: Avoid NPD upon phy_detach() when driver is unbound
  bnxt_en: Protect bnxt_set_eee() and bnxt_set_pauseparam() with mutex.
  bnxt_en: return proper error codes in bnxt_show_temp
  tipc: use skb_unshare() instead in tipc_buf_append()
  tipc: fix shutdown() of connection oriented socket
  tipc: Fix memory leak in tipc_group_create_member()
  nfp: use correct define to return NONE fec
  net: sch_generic: aviod concurrent reset and enqueue op for lockless qdisc
  net: ipv6: fix kconfig dependency warning for IPV6_SEG6_HMAC
  net: dsa: rtl8366: Properly clear member config
  net: DCB: Validate DCB_ATTR_DCB_BUFFER argument
  ipv6: avoid lockdep issue in fib6_del()
  ip: fix tos reflection in ack and reset packets
  hdlc_ppp: add range checks in ppp_cp_parse_cr()
  geneve: add transport ports in route lookup for geneve
  cxgb4: Fix offset when clearing filter byte counters
  mm/thp: fix __split_huge_pmd_locked() for migration PMD
  kprobes: fix kill kprobe which has been marked as gone
  KVM: fix memory leak in kvm_io_bus_unregister_dev()
  af_key: pfkey_dump needs parameter validation
  ANDROID: drop KERNEL_DIR setting in build.config.common
  Linux 4.19.147
  x86/defconfig: Enable CONFIG_USB_XHCI_HCD=y
  powerpc/dma: Fix dma_map_ops::get_required_mask
  ehci-hcd: Move include to keep CRC stable
  x86/boot/compressed: Disable relocation relaxation
  serial: 8250_pci: Add Realtek 816a and 816b
  Input: i8042 - add Entroware Proteus EL07R4 to nomux and reset lists
  Input: trackpoint - add new trackpoint variant IDs
  percpu: fix first chunk size calculation for populated bitmap
  Revert "ALSA: hda - Fix silent audio output and corrupted input on MSI X570-A PRO"
  i2c: i801: Fix resume bug
  usblp: fix race between disconnect() and read()
  USB: UAS: fix disconnect by unplugging a hub
  USB: quirks: Add USB_QUIRK_IGNORE_REMOTE_WAKEUP quirk for BYD zhaoxin notebook
  drm/mediatek: Add missing put_device() call in mtk_hdmi_dt_parse_pdata()
  drm/mediatek: Add exception handing in mtk_drm_probe() if component init fail
  MIPS: SNI: Fix spurious interrupts
  fbcon: Fix user font detection test at fbcon_resize().
  perf test: Free formats for perf pmu parse test
  MIPS: SNI: Fix MIPS_L1_CACHE_SHIFT
  perf test: Fix the "signal" test inline assembly
  Drivers: hv: vmbus: Add timeout to vmbus_wait_for_unload
  ASoC: qcom: Set card->owner to avoid warnings
  clk: rockchip: Fix initialization of mux_pll_src_4plls_p
  clk: davinci: Use the correct size when allocating memory
  KVM: MIPS: Change the definition of kvm type
  spi: Fix memory leak on splited transfers
  i2c: algo: pca: Reapply i2c bus settings after reset
  f2fs: Return EOF on unaligned end of file DIO read
  f2fs: fix indefinite loop scanning for free nid
  nvme-rdma: cancel async events before freeing event struct
  nvme-fc: cancel async events before freeing event struct
  openrisc: Fix cache API compile issue when not inlining
  rapidio: Replace 'select' DMAENGINES 'with depends on'
  SUNRPC: stop printk reading past end of string
  NFS: Zero-stateid SETATTR should first return delegation
  spi: spi-loopback-test: Fix out-of-bounds read
  regulator: pwm: Fix machine constraints application
  scsi: lpfc: Fix FLOGI/PLOGI receive race condition in pt2pt discovery
  scsi: libfc: Fix for double free()
  scsi: pm8001: Fix memleak in pm8001_exec_internal_task_abort
  NFSv4.1 handle ERR_DELAY error reclaiming locking state on delegation recall
  hv_netvsc: Remove "unlikely" from netvsc_select_queue
  net: handle the return value of pskb_carve_frag_list() correctly
  RDMA/bnxt_re: Restrict the max_gids to 256
  gfs2: initialize transaction tr_ailX_lists earlier
  scsi: qla2xxx: Reduce holding sess_lock to prevent CPU lock-up
  scsi: qla2xxx: Move rport registration out of internal work_list
  scsi: qla2xxx: Update rscn_rcvd field to more meaningful scan_needed
  dsa: Allow forwarding of redirected IGMP traffic
  ANDROID: Refresh ABI.xmls with libabigail 1.8.0-1dca710a
  ANDROID: KMI symbol lists: migrate section name

 Conflicts:
	Documentation/devicetree/bindings
	Documentation/devicetree/bindings/sound/wm8994.txt
	Makefile
	drivers/scsi/ufs/ufshcd.c
	drivers/usb/dwc3/gadget.c
	mm/memory.c
	net/qrtr/qrtr.c

Change-Id: I51d2167f5b2aca5ff0e50a5399d6c13b7a9a7e64
Signed-off-by: Srinivasarao P <spathi@codeaurora.org>
2020-10-21 09:25:49 +05:30
Greg Kroah-Hartman
13abe23636 This is the 4.19.152 stable release
-----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAl+Kp6UACgkQONu9yGCS
 aT7aQxAAgsJSnontvgETbOzYuZl46DJlJtp+Ao9ex9zP/ptTH0SytDVL2zum+FBT
 MMwrrDKHaDzHXqfLChGGswo48XqDwAjGhPWmcYWw99PjcCHk4xYlilw3kC6CSRZq
 7k1c8DBX1zBkheBbz3GJYQ+U1B4bASVrpBKLxccXwf4if5gDj/36zkZs/YxEwR/l
 6PQa57klYPXs269E5n28vMZCVs+sZ2DLZ5odnf1AaGZBYYYi54mNTAtQ/RoAKtcN
 bDfmvq+4eVDl34feLwEZLQzWcYi51h6rXvdju4CVih99JDHv42gz2BHDXcp4C86Z
 kYI0BzCIiww6/QcVGL4sb/VdVFo+NwSqbHhyIFWRKej2N4l6djdba1RJ4m1tUb6o
 Ta0tARqlSGmk1SIWVfgIKhvXX8TMp6pYtNsTSsn7EHsztGIYtuY6yU2Ql/YGg7rM
 fJ0tZa8rswRgD2sl9JTTlNmgTRQhv9/3h6xKaMzpYl7m85fvrXKXnJ7NyxLr2iUK
 /h7jPh4QXY9BaNus4qKKLPRcX0FC0X+QOFexTuqAdnR5iD4wrIpgICSxRqL5ScAY
 kB9kjmB8fNLwyolbkTXd7TYQHECsjQ56tCAiXl4zhgjDyr5Ae6gfU7HN8bC1y74d
 IZM2V4Jbb2o7JpF267KfHUhGqEr9DLZSLini8u5DiEPtE+grpR0=
 =zOUG
 -----END PGP SIGNATURE-----

Merge 4.19.152 into android-4.19-stable

Changes in 4.19.152
	perf cs-etm: Move definition of 'traceid_list' global variable from header file
	ARM: 8858/1: vdso: use $(LD) instead of $(CC) to link VDSO
	ARM: 8939/1: kbuild: use correct nm executable
	ARM: 8867/1: vdso: pass --be8 to linker if necessary
	Bluetooth: A2MP: Fix not initializing all members
	Bluetooth: L2CAP: Fix calling sk_filter on non-socket based channel
	Bluetooth: MGMT: Fix not checking if BT_HS is enabled
	Bluetooth: Consolidate encryption handling in hci_encrypt_cfm
	Bluetooth: Fix update of connection state in `hci_encrypt_cfm`
	Bluetooth: Disconnect if E0 is used for Level 4
	media: usbtv: Fix refcounting mixup
	USB: serial: option: add Cellient MPL200 card
	USB: serial: option: Add Telit FT980-KS composition
	staging: comedi: check validity of wMaxPacketSize of usb endpoints found
	USB: serial: pl2303: add device-id for HP GC device
	USB: serial: ftdi_sio: add support for FreeCalypso JTAG+UART adapters
	reiserfs: Initialize inode keys properly
	reiserfs: Fix oops during mount
	drivers/net/ethernet/marvell/mvmdio.c: Fix non OF case
	crypto: bcm - Verify GCM/CCM key length in setkey
	crypto: qat - check cipher length for aead AES-CBC-HMAC-SHA
	Linux 4.19.152

Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I220620fba6634de064782836b2738a9651edd299
2020-10-17 10:26:40 +02:00
Jan Kara
9fd231b255 reiserfs: Fix oops during mount
commit c2bb80b8bdd04dfe32364b78b61b6a47f717af52 upstream.

With suitably crafted reiserfs image and mount command reiserfs will
crash when trying to verify that XATTR_ROOT directory can be looked up
in / as that recurses back to xattr code like:

 xattr_lookup+0x24/0x280 fs/reiserfs/xattr.c:395
 reiserfs_xattr_get+0x89/0x540 fs/reiserfs/xattr.c:677
 reiserfs_get_acl+0x63/0x690 fs/reiserfs/xattr_acl.c:209
 get_acl+0x152/0x2e0 fs/posix_acl.c:141
 check_acl fs/namei.c:277 [inline]
 acl_permission_check fs/namei.c:309 [inline]
 generic_permission+0x2ba/0x550 fs/namei.c:353
 do_inode_permission fs/namei.c:398 [inline]
 inode_permission+0x234/0x4a0 fs/namei.c:463
 lookup_one_len+0xa6/0x200 fs/namei.c:2557
 reiserfs_lookup_privroot+0x85/0x1e0 fs/reiserfs/xattr.c:972
 reiserfs_fill_super+0x2b51/0x3240 fs/reiserfs/super.c:2176
 mount_bdev+0x24f/0x360 fs/super.c:1417

Fix the problem by bailing from reiserfs_xattr_get() when xattrs are not
yet initialized.

CC: stable@vger.kernel.org
Reported-by: syzbot+9b33c9b118d77ff59b6f@syzkaller.appspotmail.com
Signed-off-by: Jan Kara <jack@suse.cz>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2020-10-17 10:12:58 +02:00
Jan Kara
0364aee683 reiserfs: Initialize inode keys properly
commit 4443390e08d34d5771ab444f601cf71b3c9634a4 upstream.

reiserfs_read_locked_inode() didn't initialize key length properly. Use
_make_cpu_key() macro for key initialization so that all key member are
properly initialized.

CC: stable@vger.kernel.org
Reported-by: syzbot+d94d02749498bb7bab4b@syzkaller.appspotmail.com
Signed-off-by: Jan Kara <jack@suse.cz>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2020-10-17 10:12:58 +02:00
Srinivasarao P
c1eee7946a Merge android-4.19-stable.146 (443485d) into msm-4.19
* refs/heads/tmp-443485d:
  Linux 4.19.146
  gcov: add support for GCC 10.1
  usb: typec: ucsi: acpi: Check the _DEP dependencies
  usb: Fix out of sync data toggle if a configured device is reconfigured
  USB: serial: option: add support for SIM7070/SIM7080/SIM7090 modules
  USB: serial: option: support dynamic Quectel USB compositions
  USB: serial: ftdi_sio: add IDs for Xsens Mti USB converter
  usb: core: fix slab-out-of-bounds Read in read_descriptors
  phy: qcom-qmp: Use correct values for ipq8074 PCIe Gen2 PHY init
  staging: greybus: audio: fix uninitialized value issue
  video: fbdev: fix OOB read in vga_8planes_imageblit()
  ARM: dts: vfxxx: Add syscon compatible with OCOTP
  KVM: VMX: Don't freeze guest when event delivery causes an APIC-access exit
  fbcon: remove now unusued 'softback_lines' cursor() argument
  fbcon: remove soft scrollback code
  vgacon: remove software scrollback support
  RDMA/rxe: Fix the parent sysfs read when the interface has 15 chars
  rbd: require global CAP_SYS_ADMIN for mapping and unmapping
  drm/msm: Disable preemption on all 5xx targets
  drm/tve200: Stabilize enable/disable
  scsi: target: iscsi: Fix hang in iscsit_access_np() when getting tpg->np_login_sem
  scsi: target: iscsi: Fix data digest calculation
  regulator: push allocation in set_consumer_device_supply() out of lock
  btrfs: fix wrong address when faulting in pages in the search ioctl
  btrfs: fix lockdep splat in add_missing_dev
  btrfs: require only sector size alignment for parent eb bytenr
  staging: wlan-ng: fix out of bounds read in prism2sta_probe_usb()
  iio:accel:mma8452: Fix timestamp alignment and prevent data leak.
  iio:accel:mma7455: Fix timestamp alignment and prevent data leak.
  iio: accel: kxsd9: Fix alignment of local buffer.
  iio:chemical:ccs811: Fix timestamp alignment and prevent data leak.
  iio:light:max44000 Fix timestamp alignment and prevent data leak.
  iio:magnetometer:ak8975 Fix alignment and data leak issues.
  iio:adc:ti-adc081c Fix alignment and data leak issues
  iio:adc:max1118 Fix alignment of timestamp and data leak issues
  iio:adc:ina2xx Fix timestamp alignment issue.
  iio:adc:ti-adc084s021 Fix alignment and data leak issues.
  iio:accel:bmc150-accel: Fix timestamp alignment and prevent data leak.
  iio:light:ltr501 Fix timestamp alignment issue.
  iio: adc: ti-ads1015: fix conversion when CONFIG_PM is not set
  iio: adc: mcp3422: fix locking on error path
  iio: adc: mcp3422: fix locking scope
  gcov: Disable gcov build with GCC 10
  iommu/amd: Do not use IOMMUv2 functionality when SME is active
  drm/amdgpu: Fix bug in reporting voltage for CIK
  ALSA: hda: fix a runtime pm issue in SOF when integrated GPU is disabled
  cpufreq: intel_pstate: Fix intel_pstate_get_hwp_max() for turbo disabled
  cpufreq: intel_pstate: Refuse to turn off with HWP enabled
  ARC: [plat-hsdk]: Switch ethernet phy-mode to rgmii-id
  HID: elan: Fix memleak in elan_input_configured
  drivers/net/wan/hdlc_cisco: Add hard_header_len
  HID: quirks: Set INCREMENT_USAGE_ON_DUPLICATE for all Saitek X52 devices
  nvme-rdma: serialize controller teardown sequences
  nvme-fabrics: don't check state NVME_CTRL_NEW for request acceptance
  irqchip/eznps: Fix build error for !ARC700 builds
  xfs: initialize the shortform attr header padding entry
  drivers/net/wan/lapbether: Set network_header before transmitting
  ALSA: hda: Fix 2 channel swapping for Tegra
  firestream: Fix memleak in fs_open
  NFC: st95hf: Fix memleak in st95hf_in_send_cmd
  drivers/net/wan/lapbether: Added needed_tailroom
  netfilter: conntrack: allow sctp hearbeat after connection re-use
  dmaengine: acpi: Put the CSRT table after using it
  ARC: HSDK: wireup perf irq
  arm64: dts: ns2: Fixed QSPI compatible string
  ARM: dts: BCM5301X: Fixed QSPI compatible string
  ARM: dts: NSP: Fixed QSPI compatible string
  ARM: dts: bcm: HR2: Fixed QSPI compatible string
  mmc: sdhci-msm: Add retries when all tuning phases are found valid
  RDMA/core: Fix reported speed and width
  scsi: libsas: Set data_dir as DMA_NONE if libata marks qc as NODATA
  drm/sun4i: Fix dsi dcs long write function
  RDMA/bnxt_re: Do not report transparent vlan from QP1
  RDMA/rxe: Drop pointless checks in rxe_init_ports
  RDMA/rxe: Fix memleak in rxe_mem_init_user
  ARM: dts: ls1021a: fix QuadSPI-memory reg range
  ARM: dts: socfpga: fix register entry for timer3 on Arria10
  ARM: dts: logicpd-som-lv-baseboard: Fix broken audio
  ARM: dts: logicpd-torpedo-baseboard: Fix broken audio
  ANDROID: ABI: refresh with latest libabigail 94f5d4ae
  Linux 4.19.145
  net/mlx5e: Don't support phys switch id if not in switchdev mode
  net: disable netpoll on fresh napis
  tipc: fix shutdown() of connectionless socket
  sctp: not disable bh in the whole sctp_get_port_local()
  net: usb: dm9601: Add USB ID of Keenetic Plus DSL
  netlabel: fix problems with mapping removal
  block: ensure bdi->io_pages is always initialized
  ALSA; firewire-tascam: exclude Tascam FE-8 from detection
  FROMGIT: binder: print warnings when detecting oneway spamming.
  Linux 4.19.144
  net: usb: Fix uninit-was-stored issue in asix_read_phy_addr()
  cfg80211: regulatory: reject invalid hints
  mm/hugetlb: fix a race between hugetlb sysctl handlers
  checkpatch: fix the usage of capture group ( ... )
  vfio/pci: Fix SR-IOV VF handling with MMIO blocking
  KVM: arm64: Set HCR_EL2.PTW to prevent AT taking synchronous exception
  KVM: arm64: Survive synchronous exceptions caused by AT instructions
  KVM: arm64: Defer guest entry when an asynchronous exception is pending
  KVM: arm64: Add kvm_extable for vaxorcism code
  mm: slub: fix conversion of freelist_corrupted()
  dm thin metadata: Avoid returning cmd->bm wild pointer on error
  dm cache metadata: Avoid returning cmd->bm wild pointer on error
  dm writecache: handle DAX to partitions on persistent memory correctly
  libata: implement ATA_HORKAGE_MAX_TRIM_128M and apply to Sandisks
  block: allow for_each_bvec to support zero len bvec
  affs: fix basic permission bits to actually work
  media: rc: uevent sysfs file races with rc_unregister_device()
  media: rc: do not access device via sysfs after rc_unregister_device()
  ALSA: hda - Fix silent audio output and corrupted input on MSI X570-A PRO
  ALSA: firewire-digi00x: exclude Avid Adrenaline from detection
  ALSA: hda/hdmi: always check pin power status in i915 pin fixup
  ALSA: pcm: oss: Remove superfluous WARN_ON() for mulaw sanity check
  ALSA: ca0106: fix error code handling
  usb: qmi_wwan: add D-Link DWM-222 A2 device ID
  net: usb: qmi_wwan: add Telit 0x1050 composition
  btrfs: fix potential deadlock in the search ioctl
  uaccess: Add non-pagefault user-space write function
  uaccess: Add non-pagefault user-space read functions
  btrfs: set the lockdep class for log tree extent buffers
  btrfs: Remove extraneous extent_buffer_get from tree_mod_log_rewind
  btrfs: Remove redundant extent_buffer_get in get_old_root
  vfio-pci: Invalidate mmaps and block MMIO access on disabled memory
  vfio-pci: Fault mmaps to enable vma tracking
  vfio/type1: Support faulting PFNMAP vmas
  btrfs: drop path before adding new uuid tree entry
  xfs: don't update mtime on COW faults
  ext2: don't update mtime on COW faults
  include/linux/log2.h: add missing () around n in roundup_pow_of_two()
  thermal: ti-soc-thermal: Fix bogus thermal shutdowns for omap4430
  iommu/vt-d: Serialize IOMMU GCMD register modifications
  x86, fakenuma: Fix invalid starting node ID
  tg3: Fix soft lockup when tg3_reset_task() fails.
  perf jevents: Fix suspicious code in fixregex()
  xfs: fix xfs_bmap_validate_extent_raw when checking attr fork of rt files
  net: gemini: Fix another missing clk_disable_unprepare() in probe
  fix regression in "epoll: Keep a reference on files added to the check list"
  net: ethernet: mlx4: Fix memory allocation in mlx4_buddy_init()
  perf tools: Correct SNOOPX field offset
  nvmet-fc: Fix a missed _irqsave version of spin_lock in 'nvmet_fc_fod_op_done()'
  netfilter: nfnetlink: nfnetlink_unicast() reports EAGAIN instead of ENOBUFS
  selftests/bpf: Fix massive output from test_maps
  bnxt: don't enable NAPI until rings are ready
  xfs: fix boundary test in xfs_attr_shortform_verify
  bnxt_en: fix HWRM error when querying VF temperature
  bnxt_en: Fix PCI AER error recovery flow
  bnxt_en: Check for zero dir entries in NVRAM.
  bnxt_en: Don't query FW when netif_running() is false.
  gtp: add GTPA_LINK info to msg sent to userspace
  dmaengine: pl330: Fix burst length if burst size is smaller than bus width
  net: arc_emac: Fix memleak in arc_mdio_probe
  ravb: Fixed to be able to unload modules
  net: systemport: Fix memleak in bcm_sysport_probe
  net: hns: Fix memleak in hns_nic_dev_probe
  netfilter: nf_tables: fix destination register zeroing
  netfilter: nf_tables: incorrect enum nft_list_attributes definition
  netfilter: nf_tables: add NFTA_SET_USERDATA if not null
  MIPS: BMIPS: Also call bmips_cpu_setup() for secondary cores
  MIPS: mm: BMIPS5000 has inclusive physical caches
  dmaengine: at_hdmac: check return value of of_find_device_by_node() in at_dma_xlate()
  batman-adv: bla: use netif_rx_ni when not in interrupt context
  batman-adv: Fix own OGM check in aggregated OGMs
  batman-adv: Avoid uninitialized chaddr when handling DHCP
  dmaengine: of-dma: Fix of_dma_router_xlate's of_dma_xlate handling
  xen/xenbus: Fix granting of vmalloc'd memory
  s390: don't trace preemption in percpu macros
  cpuidle: Fixup IRQ state
  ceph: don't allow setlease on cephfs
  drm/msm/a6xx: fix gmu start on newer firmware
  nvmet: Disable keep-alive timer when kato is cleared to 0h
  hwmon: (applesmc) check status earlier.
  drm/msm: add shutdown support for display platform_driver
  tty: serial: qcom_geni_serial: Drop __init from qcom_geni_console_setup
  scsi: target: tcmu: Optimize use of flush_dcache_page
  scsi: target: tcmu: Fix size in calls to tcmu_flush_dcache_range
  perf record/stat: Explicitly call out event modifiers in the documentation
  HID: core: Sanitize event code and type when mapping input
  HID: core: Correctly handle ReportSize being zero
  Linux 4.19.143
  ALSA: usb-audio: Update documentation comment for MS2109 quirk
  HID: hiddev: Fix slab-out-of-bounds write in hiddev_ioctl_usage()
  tpm: Unify the mismatching TPM space buffer sizes
  usb: dwc3: gadget: Handle ZLP for sg requests
  usb: dwc3: gadget: Fix handling ZLP
  usb: dwc3: gadget: Don't setup more than requested
  btrfs: check the right error variable in btrfs_del_dir_entries_in_log
  usb: storage: Add unusual_uas entry for Sony PSZ drives
  USB: cdc-acm: rework notification_buffer resizing
  USB: gadget: u_f: Unbreak offset calculation in VLAs
  USB: gadget: f_ncm: add bounds checks to ncm_unwrap_ntb()
  USB: gadget: u_f: add overflow checks to VLA macros
  usb: host: ohci-exynos: Fix error handling in exynos_ohci_probe()
  USB: Ignore UAS for JMicron JMS567 ATA/ATAPI Bridge
  USB: quirks: Ignore duplicate endpoint on Sound Devices MixPre-D
  USB: quirks: Add no-lpm quirk for another Raydium touchscreen
  usb: uas: Add quirk for PNY Pro Elite
  USB: yurex: Fix bad gfp argument
  drm/amd/pm: correct Vega12 swctf limit setting
  drm/amd/pm: correct Vega10 swctf limit setting
  drm/amdgpu: Fix buffer overflow in INFO ioctl
  irqchip/stm32-exti: Avoid losing interrupts due to clearing pending bits by mistake
  genirq/matrix: Deal with the sillyness of for_each_cpu() on UP
  device property: Fix the secondary firmware node handling in set_primary_fwnode()
  PM: sleep: core: Fix the handling of pending runtime resume requests
  xhci: Always restore EP_SOFT_CLEAR_TOGGLE even if ep reset failed
  xhci: Do warm-reset when both CAS and XDEV_RESUME are set
  usb: host: xhci: fix ep context print mismatch in debugfs
  XEN uses irqdesc::irq_data_common::handler_data to store a per interrupt XEN data pointer which contains XEN specific information.
  writeback: Fix sync livelock due to b_dirty_time processing
  writeback: Avoid skipping inode writeback
  writeback: Protect inode->i_io_list with inode->i_lock
  serial: 8250: change lock order in serial8250_do_startup()
  serial: 8250_exar: Fix number of ports for Commtech PCIe cards
  serial: pl011: Don't leak amba_ports entry on driver register error
  serial: pl011: Fix oops on -EPROBE_DEFER
  serial: samsung: Removes the IRQ not found warning
  vt_ioctl: change VT_RESIZEX ioctl to check for error return from vc_resize()
  vt: defer kfree() of vc_screenbuf in vc_do_resize()
  USB: lvtest: return proper error code in probe
  fbcon: prevent user font height or width change from causing potential out-of-bounds access
  btrfs: fix space cache memory leak after transaction abort
  btrfs: reset compression level for lzo on remount
  blk-mq: order adding requests to hctx->dispatch and checking SCHED_RESTART
  HID: i2c-hid: Always sleep 60ms after I2C_HID_PWR_ON commands
  block: loop: set discard granularity and alignment for block device backed loop
  powerpc/perf: Fix soft lockups due to missed interrupt accounting
  net: gianfar: Add of_node_put() before goto statement
  macvlan: validate setting of multiple remote source MAC addresses
  Revert "scsi: qla2xxx: Fix crash on qla2x00_mailbox_command"
  scsi: qla2xxx: Fix null pointer access during disconnect from subsystem
  scsi: qla2xxx: Check if FW supports MQ before enabling
  scsi: ufs: Clean up completed request without interrupt notification
  scsi: ufs: Improve interrupt handling for shared interrupts
  scsi: ufs: Fix possible infinite loop in ufshcd_hold
  scsi: fcoe: Fix I/O path allocation
  ASoC: wm8994: Avoid attempts to read unreadable registers
  s390/cio: add cond_resched() in the slow_eval_known_fn() loop
  spi: stm32: fix stm32_spi_prepare_mbr in case of odd clk_rate
  fs: prevent BUG_ON in submit_bh_wbc()
  ext4: correctly restore system zone info when remount fails
  ext4: handle error of ext4_setup_system_zone() on remount
  ext4: handle option set by mount flags correctly
  jbd2: abort journal if free a async write error metadata buffer
  ext4: handle read only external journal device
  ext4: don't BUG on inconsistent journal feature
  jbd2: make sure jh have b_transaction set in refile/unfile_buffer
  usb: gadget: f_tcm: Fix some resource leaks in some error paths
  i2c: rcar: in slave mode, clear NACK earlier
  null_blk: fix passing of REQ_FUA flag in null_handle_rq
  nvme-fc: Fix wrong return value in __nvme_fc_init_request()
  drm/msm/adreno: fix updating ring fence
  media: gpio-ir-tx: improve precision of transmitted signal due to scheduling
  Revert "ath10k: fix DMA related firmware crashes on multiple devices"
  efi: provide empty efi_enter_virtual_mode implementation
  USB: sisusbvga: Fix a potential UB casued by left shifting a negative value
  powerpc/spufs: add CONFIG_COREDUMP dependency
  KVM: arm64: Fix symbol dependency in __hyp_call_panic_nvhe
  EDAC/ie31200: Fallback if host bridge device is already initialized
  scsi: fcoe: Memory leak fix in fcoe_sysfs_fcf_del()
  ceph: fix potential mdsc use-after-free crash
  scsi: iscsi: Do not put host in iscsi_set_flashnode_param()
  btrfs: file: reserve qgroup space after the hole punch range is locked
  locking/lockdep: Fix overflow in presentation of average lock-time
  drm/nouveau: Fix reference count leak in nouveau_connector_detect
  drm/nouveau: fix reference count leak in nv50_disp_atomic_commit
  drm/nouveau/drm/noveau: fix reference count leak in nouveau_fbcon_open
  f2fs: fix use-after-free issue
  HID: quirks: add NOGET quirk for Logitech GROUP
  cec-api: prevent leaking memory through hole in structure
  mips/vdso: Fix resource leaks in genvdso.c
  rtlwifi: rtl8192cu: Prevent leaking urb
  ARM: dts: ls1021a: output PPS signal on FIPER2
  PCI: Fix pci_create_slot() reference count leak
  omapfb: fix multiple reference count leaks due to pm_runtime_get_sync
  f2fs: fix error path in do_recover_data()
  selftests/powerpc: Purge extra count_pmc() calls of ebb selftests
  xfs: Don't allow logging of XFS_ISTALE inodes
  scsi: lpfc: Fix shost refcount mismatch when deleting vport
  drm/amdgpu/display: fix ref count leak when pm_runtime_get_sync fails
  drm/amdgpu: fix ref count leak in amdgpu_display_crtc_set_config
  drm/amd/display: fix ref count leak in amdgpu_drm_ioctl
  drm/amdgpu: fix ref count leak in amdgpu_driver_open_kms
  drm/radeon: fix multiple reference count leak
  drm/amdkfd: Fix reference count leaks.
  iommu/iova: Don't BUG on invalid PFNs
  scsi: target: tcmu: Fix crash on ARM during cmd completion
  blktrace: ensure our debugfs dir exists
  media: pci: ttpci: av7110: fix possible buffer overflow caused by bad DMA value in debiirq()
  powerpc/xive: Ignore kmemleak false positives
  arm64: dts: qcom: msm8916: Pull down PDM GPIOs during sleep
  mfd: intel-lpss: Add Intel Emmitsburg PCH PCI IDs
  ASoC: tegra: Fix reference count leaks.
  ASoC: img-parallel-out: Fix a reference count leak
  ASoC: img: Fix a reference count leak in img_i2s_in_set_fmt
  ALSA: pci: delete repeated words in comments
  ipvlan: fix device features
  net: ena: Make missed_tx stat incremental
  tipc: fix uninit skb->data in tipc_nl_compat_dumpit()
  net/smc: Prevent kernel-infoleak in __smc_diag_dump()
  net: qrtr: fix usage of idr in port assignment to socket
  net: Fix potential wrong skb->protocol in skb_vlan_untag()
  gre6: Fix reception with IP6_TNL_F_RCV_DSCP_COPY
  powerpc/64s: Don't init FSCR_DSCR in __init_FSCR()
  ANDROID: gki_defconfig: initialize locals with zeroes
  UPSTREAM: security: allow using Clang's zero initialization for stack variables
  Revert "binder: Prevent context manager from incrementing ref 0"
  ANDROID: GKI: update the ABI xml
  BACKPORT: recordmcount: support >64k sections
  UPSTREAM: arm64: vdso: Build vDSO with -ffixed-x18
  UPSTREAM: cgroup: Remove unused cgrp variable
  UPSTREAM: cgroup: freezer: call cgroup_enter_frozen() with preemption disabled in ptrace_stop()
  UPSTREAM: cgroup: freezer: fix frozen state inheritance
  UPSTREAM: signal: unconditionally leave the frozen state in ptrace_stop()
  BACKPORT: cgroup: cgroup v2 freezer
  UPSTREAM: cgroup: implement __cgroup_task_count() helper
  UPSTREAM: cgroup: rename freezer.c into legacy_freezer.c
  UPSTREAM: cgroup: remove extra cgroup_migrate_finish() call
  UPSTREAM: cgroup: saner refcounting for cgroup_root
  UPSTREAM: cgroup: Add named hierarchy disabling to cgroup_no_v1 boot param
  UPSTREAM: cgroup: remove unnecessary unlikely()
  UPSTREAM: cgroup: Simplify cgroup_ancestor
  Linux 4.19.142
  KVM: arm64: Only reschedule if MMU_NOTIFIER_RANGE_BLOCKABLE is not set
  KVM: Pass MMU notifier range flags to kvm_unmap_hva_range()
  clk: Evict unregistered clks from parent caches
  xen: don't reschedule in preemption off sections
  mm/hugetlb: fix calculation of adjust_range_if_pmd_sharing_possible
  do_epoll_ctl(): clean the failure exits up a bit
  epoll: Keep a reference on files added to the check list
  efi: add missed destroy_workqueue when efisubsys_init fails
  powerpc/pseries: Do not initiate shutdown when system is running on UPS
  net: dsa: b53: check for timeout
  hv_netvsc: Fix the queue_mapping in netvsc_vf_xmit()
  net: gemini: Fix missing free_netdev() in error path of gemini_ethernet_port_probe()
  net: ena: Prevent reset after device destruction
  bonding: fix active-backup failover for current ARP slave
  afs: Fix NULL deref in afs_dynroot_depopulate()
  RDMA/bnxt_re: Do not add user qps to flushlist
  Fix build error when CONFIG_ACPI is not set/enabled:
  efi: avoid error message when booting under Xen
  kconfig: qconf: fix signal connection to invalid slots
  kconfig: qconf: do not limit the pop-up menu to the first row
  kvm: x86: Toggling CR4.PKE does not load PDPTEs in PAE mode
  kvm: x86: Toggling CR4.SMAP does not load PDPTEs in PAE mode
  vfio/type1: Add proper error unwind for vfio_iommu_replay()
  ASoC: intel: Fix memleak in sst_media_open
  ASoC: msm8916-wcd-analog: fix register Interrupt offset
  s390/ptrace: fix storage key handling
  s390/runtime_instrumentation: fix storage key handling
  bonding: fix a potential double-unregister
  bonding: show saner speed for broadcast mode
  net: fec: correct the error path for regulator disable in probe
  i40e: Fix crash during removing i40e driver
  i40e: Set RX_ONLY mode for unicast promiscuous on VLAN
  ASoC: q6routing: add dummy register read/write function
  ext4: don't allow overlapping system zones
  ext4: fix potential negative array index in do_split()
  fs/signalfd.c: fix inconsistent return codes for signalfd4
  alpha: fix annotation of io{read,write}{16,32}be()
  xfs: Fix UBSAN null-ptr-deref in xfs_sysfs_init
  tools/testing/selftests/cgroup/cgroup_util.c: cg_read_strcmp: fix null pointer dereference
  virtio_ring: Avoid loop when vq is broken in virtqueue_poll
  scsi: libfc: Free skb in fc_disc_gpn_id_resp() for valid cases
  cpufreq: intel_pstate: Fix cpuinfo_max_freq when MSR_TURBO_RATIO_LIMIT is 0
  ceph: fix use-after-free for fsc->mdsc
  jffs2: fix UAF problem
  xfs: fix inode quota reservation checks
  svcrdma: Fix another Receive buffer leak
  m68knommu: fix overwriting of bits in ColdFire V3 cache control
  Input: psmouse - add a newline when printing 'proto' by sysfs
  media: vpss: clean up resources in init
  rtc: goldfish: Enable interrupt in set_alarm() when necessary
  media: budget-core: Improve exception handling in budget_register()
  scsi: target: tcmu: Fix crash in tcmu_flush_dcache_range on ARM
  scsi: ufs: Add DELAY_BEFORE_LPM quirk for Micron devices
  spi: Prevent adding devices below an unregistering controller
  kthread: Do not preempt current task if it is going to call schedule()
  drm/amd/display: fix pow() crashing when given base 0
  scsi: zfcp: Fix use-after-free in request timeout handlers
  jbd2: add the missing unlock_buffer() in the error path of jbd2_write_superblock()
  ext4: fix checking of directory entry validity for inline directories
  mm, page_alloc: fix core hung in free_pcppages_bulk()
  mm: include CMA pages in lowmem_reserve at boot
  kernel/relay.c: fix memleak on destroy relay channel
  romfs: fix uninitialized memory leak in romfs_dev_read()
  btrfs: sysfs: use NOFS for device creation
  btrfs: inode: fix NULL pointer dereference if inode doesn't need compression
  btrfs: Move free_pages_out label in inline extent handling branch in compress_file_range
  btrfs: don't show full path of bind mounts in subvol=
  btrfs: export helpers for subvolume name/id resolution
  khugepaged: adjust VM_BUG_ON_MM() in __khugepaged_enter()
  khugepaged: khugepaged_test_exit() check mmget_still_valid()
  perf probe: Fix memory leakage when the probe point is not found
  drm/vgem: Replace opencoded version of drm_gem_dumb_map_offset()
  ANDROID: tty: fix tty name overflow
  ANDROID: Revert "PCI: Probe bridge window attributes once at enumeration-time"
  Linux 4.19.141
  drm/amdgpu: Fix bug where DPM is not enabled after hibernate and resume
  drm: Added orientation quirk for ASUS tablet model T103HAF
  arm64: dts: marvell: espressobin: add ethernet alias
  khugepaged: retract_page_tables() remember to test exit
  sh: landisk: Add missing initialization of sh_io_port_base
  tools build feature: Quote CC and CXX for their arguments
  perf bench mem: Always memset source before memcpy
  ALSA: echoaudio: Fix potential Oops in snd_echo_resume()
  mfd: dln2: Run event handler loop under spinlock
  test_kmod: avoid potential double free in trigger_config_run_type()
  fs/ufs: avoid potential u32 multiplication overflow
  fs/minix: remove expected error message in block_to_path()
  fs/minix: fix block limit check for V1 filesystems
  fs/minix: set s_maxbytes correctly
  nfs: Fix getxattr kernel panic and memory overflow
  net: qcom/emac: add missed clk_disable_unprepare in error path of emac_clks_phase1_init
  drm/vmwgfx: Fix two list_for_each loop exit tests
  drm/vmwgfx: Use correct vmw_legacy_display_unit pointer
  Input: sentelic - fix error return when fsp_reg_write fails
  watchdog: initialize device before misc_register
  scsi: lpfc: nvmet: Avoid hang / use-after-free again when destroying targetport
  openrisc: Fix oops caused when dumping stack
  i2c: rcar: avoid race when unregistering slave
  tools build feature: Use CC and CXX from parent
  pwm: bcm-iproc: handle clk_get_rate() return
  clk: clk-atlas6: fix return value check in atlas6_clk_init()
  i2c: rcar: slave: only send STOP event when we have been addressed
  iommu/vt-d: Enforce PASID devTLB field mask
  iommu/omap: Check for failure of a call to omap_iommu_dump_ctx
  selftests/powerpc: ptrace-pkey: Don't update expected UAMOR value
  selftests/powerpc: ptrace-pkey: Update the test to mark an invalid pkey correctly
  selftests/powerpc: ptrace-pkey: Rename variables to make it easier to follow code
  dm rq: don't call blk_mq_queue_stopped() in dm_stop_queue()
  gpu: ipu-v3: image-convert: Combine rotate/no-rotate irq handlers
  mmc: renesas_sdhi_internal_dmac: clean up the code for dma complete
  USB: serial: ftdi_sio: clean up receive processing
  USB: serial: ftdi_sio: make process-packet buffer unsigned
  media: rockchip: rga: Only set output CSC mode for RGB input
  media: rockchip: rga: Introduce color fmt macros and refactor CSC mode logic
  RDMA/ipoib: Fix ABBA deadlock with ipoib_reap_ah()
  RDMA/ipoib: Return void from ipoib_ib_dev_stop()
  mfd: arizona: Ensure 32k clock is put on driver unbind and error
  drm/imx: imx-ldb: Disable both channels for split mode in enc->disable()
  remoteproc: qcom: q6v5: Update running state before requesting stop
  perf intel-pt: Fix FUP packet state
  module: Correctly truncate sysfs sections output
  pseries: Fix 64 bit logical memory block panic
  watchdog: f71808e_wdt: clear watchdog timeout occurred flag
  watchdog: f71808e_wdt: remove use of wrong watchdog_info option
  watchdog: f71808e_wdt: indicate WDIOF_CARDRESET support in watchdog_info.options
  tracing: Use trace_sched_process_free() instead of exit() for pid tracing
  tracing/hwlat: Honor the tracing_cpumask
  kprobes: Fix NULL pointer dereference at kprobe_ftrace_handler
  ftrace: Setup correct FTRACE_FL_REGS flags for module
  mm/page_counter.c: fix protection usage propagation
  ocfs2: change slot number type s16 to u16
  ext2: fix missing percpu_counter_inc
  MIPS: CPU#0 is not hotpluggable
  driver core: Avoid binding drivers to dead devices
  mac80211: fix misplaced while instead of if
  bcache: fix overflow in offset_to_stripe()
  bcache: allocate meta data pages as compound pages
  md/raid5: Fix Force reconstruct-write io stuck in degraded raid5
  net/compat: Add missing sock updates for SCM_RIGHTS
  net: stmmac: dwmac1000: provide multicast filter fallback
  net: ethernet: stmmac: Disable hardware multicast filter
  media: vsp1: dl: Fix NULL pointer dereference on unbind
  powerpc: Fix circular dependency between percpu.h and mmu.h
  powerpc: Allow 4224 bytes of stack expansion for the signal frame
  cifs: Fix leak when handling lease break for cached root fid
  xtensa: fix xtensa_pmu_setup prototype
  iio: dac: ad5592r: fix unbalanced mutex unlocks in ad5592r_read_raw()
  dt-bindings: iio: io-channel-mux: Fix compatible string in example code
  btrfs: fix return value mixup in btrfs_get_extent
  btrfs: fix memory leaks after failure to lookup checksums during inode logging
  btrfs: only search for left_info if there is no right_info in try_merge_free_space
  btrfs: fix messages after changing compression level by remount
  btrfs: open device without device_list_mutex
  btrfs: don't traverse into the seed devices in show_devname
  btrfs: ref-verify: fix memory leak in add_block_entry
  btrfs: don't allocate anonymous block device for user invisible roots
  btrfs: free anon block device right after subvolume deletion
  PCI: Probe bridge window attributes once at enumeration-time
  PCI: qcom: Add support for tx term offset for rev 2.1.0
  PCI: qcom: Define some PARF params needed for ipq8064 SoC
  PCI: Add device even if driver attach failed
  PCI: Mark AMD Navi10 GPU rev 0x00 ATS as broken
  PCI: hotplug: ACPI: Fix context refcounting in acpiphp_grab_context()
  genirq/affinity: Make affinity setting if activated opt-in
  smb3: warn on confusing error scenario with sec=krb5
  ANDROID: ABI: update the ABI xml representation
  Revert "ALSA: usb-audio: work around streaming quirk for MacroSilicon MS2109"
  Linux 4.19.140
  xen/gntdev: Fix dmabuf import with non-zero sgt offset
  xen/balloon: make the balloon wait interruptible
  xen/balloon: fix accounting in alloc_xenballooned_pages error path
  irqdomain/treewide: Free firmware node after domain removal
  ARM: 8992/1: Fix unwind_frame for clang-built kernels
  parisc: mask out enable and reserved bits from sba imask
  parisc: Implement __smp_store_release and __smp_load_acquire barriers
  mtd: rawnand: qcom: avoid write to unavailable register
  spi: spidev: Align buffers for DMA
  include/asm-generic/vmlinux.lds.h: align ro_after_init
  cpufreq: dt: fix oops on armada37xx
  NFS: Don't return layout segments that are in use
  NFS: Don't move layouts to plh_return_segs list while in use
  drm/ttm/nouveau: don't call tt destroy callback on alloc failure.
  9p: Fix memory leak in v9fs_mount
  ALSA: usb-audio: add quirk for Pioneer DDJ-RB
  fs/minix: reject too-large maximum file size
  fs/minix: don't allow getting deleted inodes
  fs/minix: check return value of sb_getblk()
  bitfield.h: don't compile-time validate _val in FIELD_FIT
  crypto: cpt - don't sleep of CRYPTO_TFM_REQ_MAY_SLEEP was not specified
  crypto: ccp - Fix use of merged scatterlists
  crypto: qat - fix double free in qat_uclo_create_batch_init_list
  crypto: hisilicon - don't sleep of CRYPTO_TFM_REQ_MAY_SLEEP was not specified
  pstore: Fix linking when crypto API disabled
  ALSA: usb-audio: work around streaming quirk for MacroSilicon MS2109
  ALSA: usb-audio: fix overeager device match for MacroSilicon MS2109
  ALSA: usb-audio: Creative USB X-Fi Pro SB1095 volume knob support
  ALSA: hda - fix the micmute led status for Lenovo ThinkCentre AIO
  USB: serial: cp210x: enable usb generic throttle/unthrottle
  USB: serial: cp210x: re-enable auto-RTS on open
  net: initialize fastreuse on inet_inherit_port
  net: refactor bind_bucket fastreuse into helper
  net/tls: Fix kmap usage
  net: Set fput_needed iff FDPUT_FPUT is set
  net/nfc/rawsock.c: add CAP_NET_RAW check.
  drivers/net/wan/lapbether: Added needed_headroom and a skb->len check
  af_packet: TPACKET_V3: fix fill status rwlock imbalance
  crypto: aesni - add compatibility with IAS
  x86/fsgsbase/64: Fix NULL deref in 86_fsgsbase_read_task
  svcrdma: Fix page leak in svc_rdma_recv_read_chunk()
  pinctrl-single: fix pcs_parse_pinconf() return value
  ocfs2: fix unbalanced locking
  dlm: Fix kobject memleak
  fsl/fman: fix eth hash table allocation
  fsl/fman: check dereferencing null pointer
  fsl/fman: fix unreachable code
  fsl/fman: fix dereference null return value
  fsl/fman: use 32-bit unsigned integer
  net: spider_net: Fix the size used in a 'dma_free_coherent()' call
  liquidio: Fix wrong return value in cn23xx_get_pf_num()
  net: ethernet: aquantia: Fix wrong return value
  tools, build: Propagate build failures from tools/build/Makefile.build
  wl1251: fix always return 0 error
  s390/qeth: don't process empty bridge port events
  ASoC: meson: axg-tdm-interface: fix link fmt setup
  selftests/powerpc: Fix online CPU selection
  PCI: Release IVRS table in AMD ACS quirk
  selftests/powerpc: Fix CPU affinity for child process
  powerpc/boot: Fix CONFIG_PPC_MPC52XX references
  net: dsa: rtl8366: Fix VLAN set-up
  net: dsa: rtl8366: Fix VLAN semantics
  Bluetooth: hci_serdev: Only unregister device if it was registered
  Bluetooth: hci_h5: Set HCI_UART_RESET_ON_INIT to correct flags
  power: supply: check if calc_soc succeeded in pm860x_init_battery
  Smack: prevent underflow in smk_set_cipso()
  Smack: fix another vsscanf out of bounds
  RDMA/core: Fix return error value in _ib_modify_qp() to negative
  PCI: cadence: Fix updating Vendor ID and Subsystem Vendor ID register
  net: dsa: mv88e6xxx: MV88E6097 does not support jumbo configuration
  scsi: mesh: Fix panic after host or bus reset
  usb: dwc2: Fix error path in gadget registration
  MIPS: OCTEON: add missing put_device() call in dwc3_octeon_device_init()
  coresight: tmc: Fix TMC mode read in tmc_read_unprepare_etb()
  thermal: ti-soc-thermal: Fix reversed condition in ti_thermal_expose_sensor()
  usb: core: fix quirks_param_set() writing to a const pointer
  USB: serial: iuu_phoenix: fix led-activity helpers
  drm/imx: tve: fix regulator_disable error path
  powerpc/book3s64/pkeys: Use PVR check instead of cpu feature
  PCI/ASPM: Add missing newline in sysfs 'policy'
  staging: rtl8192u: fix a dubious looking mask before a shift
  RDMA/rxe: Prevent access to wr->next ptr afrer wr is posted to send queue
  RDMA/qedr: SRQ's bug fixes
  powerpc/vdso: Fix vdso cpu truncation
  mwifiex: Prevent memory corruption handling keys
  scsi: scsi_debug: Add check for sdebug_max_queue during module init
  drm/bridge: sil_sii8620: initialize return of sii8620_readb
  phy: exynos5-usbdrd: Calibrating makes sense only for USB2.0 PHY
  drm: panel: simple: Fix bpc for LG LB070WV8 panel
  leds: core: Flush scheduled work for system suspend
  PCI: Fix pci_cfg_wait queue locking problem
  RDMA/rxe: Skip dgid check in loopback mode
  xfs: fix reflink quota reservation accounting error
  xfs: don't eat an EIO/ENOSPC writeback error when scrubbing data fork
  media: exynos4-is: Add missed check for pinctrl_lookup_state()
  media: firewire: Using uninitialized values in node_probe()
  ipvs: allow connection reuse for unconfirmed conntrack
  scsi: eesox: Fix different dev_id between request_irq() and free_irq()
  scsi: powertec: Fix different dev_id between request_irq() and free_irq()
  drm/radeon: fix array out-of-bounds read and write issues
  cxl: Fix kobject memleak
  drm/mipi: use dcs write for mipi_dsi_dcs_set_tear_scanline
  scsi: cumana_2: Fix different dev_id between request_irq() and free_irq()
  ASoC: Intel: bxt_rt298: add missing .owner field
  media: omap3isp: Add missed v4l2_ctrl_handler_free() for preview_init_entities()
  leds: lm355x: avoid enum conversion warning
  drm/arm: fix unintentional integer overflow on left shift
  drm/etnaviv: Fix error path on failure to enable bus clk
  iio: improve IIO_CONCENTRATION channel type description
  ath10k: Acquire tx_lock in tx error paths
  video: pxafb: Fix the function used to balance a 'dma_alloc_coherent()' call
  console: newport_con: fix an issue about leak related system resources
  video: fbdev: sm712fb: fix an issue about iounmap for a wrong address
  agp/intel: Fix a memory leak on module initialisation failure
  drm/msm: ratelimit crtc event overflow error
  ACPICA: Do not increment operation_region reference counts for field units
  bcache: fix super block seq numbers comparision in register_cache_set()
  dyndbg: fix a BUG_ON in ddebug_describe_flags
  usb: bdc: Halt controller on suspend
  bdc: Fix bug causing crash after multiple disconnects
  usb: gadget: net2280: fix memory leak on probe error handling paths
  gpu: host1x: debug: Fix multiple channels emitting messages simultaneously
  iwlegacy: Check the return value of pcie_capability_read_*()
  brcmfmac: set state of hanger slot to FREE when flushing PSQ
  brcmfmac: To fix Bss Info flag definition Bug
  brcmfmac: keep SDIO watchdog running when console_interval is non-zero
  mm/mmap.c: Add cond_resched() for exit_mmap() CPU stalls
  irqchip/irq-mtk-sysirq: Replace spinlock with raw_spinlock
  drm/radeon: disable AGP by default
  drm/debugfs: fix plain echo to connector "force" attribute
  usb: mtu3: clear dual mode of u3port when disable device
  drm/nouveau: fix multiple instances of reference count leaks
  drm/etnaviv: fix ref count leak via pm_runtime_get_sync
  arm64: dts: hisilicon: hikey: fixes to comply with adi, adv7533 DT binding
  md-cluster: fix wild pointer of unlock_all_bitmaps()
  video: fbdev: neofb: fix memory leak in neo_scan_monitor()
  crypto: aesni - Fix build with LLVM_IAS=1
  drm/radeon: Fix reference count leaks caused by pm_runtime_get_sync
  drm/amdgpu: avoid dereferencing a NULL pointer
  fs/btrfs: Add cond_resched() for try_release_extent_mapping() stalls
  loop: be paranoid on exit and prevent new additions / removals
  Bluetooth: add a mutex lock to avoid UAF in do_enale_set
  soc: qcom: rpmh-rsc: Set suppress_bind_attrs flag
  drm/tilcdc: fix leak & null ref in panel_connector_get_modes
  ARM: socfpga: PM: add missing put_device() call in socfpga_setup_ocram_self_refresh()
  spi: lantiq: fix: Rx overflow error in full duplex mode
  ARM: at91: pm: add missing put_device() call in at91_pm_sram_init()
  ARM: dts: gose: Fix ports node name for adv7612
  ARM: dts: gose: Fix ports node name for adv7180
  platform/x86: intel-vbtn: Fix return value check in check_acpi_dev()
  platform/x86: intel-hid: Fix return value check in check_acpi_dev()
  m68k: mac: Fix IOP status/control register writes
  m68k: mac: Don't send IOP message until channel is idle
  clk: scmi: Fix min and max rate when registering clocks with discrete rates
  arm64: dts: exynos: Fix silent hang after boot on Espresso
  firmware: arm_scmi: Fix SCMI genpd domain probing
  crypto: ccree - fix resource leak on error path
  arm64: dts: qcom: msm8916: Replace invalid bias-pull-none property
  EDAC: Fix reference count leaks
  arm64: dts: rockchip: fix rk3399-puma gmac reset gpio
  arm64: dts: rockchip: fix rk3399-puma vcc5v0-host gpio
  arm64: dts: rockchip: fix rk3368-lion gmac reset gpio
  sched: correct SD_flags returned by tl->sd_flags()
  sched/fair: Fix NOHZ next idle balance
  x86/mce/inject: Fix a wrong assignment of i_mce.status
  cgroup: add missing skcd->no_refcnt check in cgroup_sk_clone()
  HID: input: Fix devices that return multiple bytes in battery report
  tracepoint: Mark __tracepoint_string's __used
  ANDROID: fix a bug in quota2
  ANDROID: Update the ABI xml based on the new driver core padding
  ANDROID: GKI: add some padding to some driver core structures
  ANDROID: GKI: Update the ABI xml representation
  ANDROID: sched: add "frozen" field to task_struct
  ANDROID: cgroups: add v2 freezer ABI changes
  ANDROID: cgroups: ABI padding
  Linux 4.19.139
  Smack: fix use-after-free in smk_write_relabel_self()
  i40e: Memory leak in i40e_config_iwarp_qvlist
  i40e: Fix of memory leak and integer truncation in i40e_virtchnl.c
  i40e: Wrong truncation from u16 to u8
  i40e: add num_vectors checker in iwarp handler
  rxrpc: Fix race between recvmsg and sendmsg on immediate call failure
  selftests/net: relax cpu affinity requirement in msg_zerocopy test
  Revert "vxlan: fix tos value before xmit"
  openvswitch: Prevent kernel-infoleak in ovs_ct_put_key()
  net: thunderx: use spin_lock_bh in nicvf_set_rx_mode_task()
  net: gre: recompute gre csum for sctp over gre tunnels
  hv_netvsc: do not use VF device if link is down
  net: lan78xx: replace bogus endpoint lookup
  vxlan: Ensure FDB dump is performed under RCU
  net: ethernet: mtk_eth_soc: fix MTU warnings
  ipv6: fix memory leaks on IPV6_ADDRFORM path
  ipv4: Silence suspicious RCU usage warning
  xattr: break delegations in {set,remove}xattr
  Drivers: hv: vmbus: Ignore CHANNELMSG_TL_CONNECT_RESULT(23)
  tools lib traceevent: Fix memory leak in process_dynamic_array_len
  atm: fix atm_dev refcnt leaks in atmtcp_remove_persistent
  igb: reinit_locked() should be called with rtnl_lock
  cfg80211: check vendor command doit pointer before use
  firmware: Fix a reference count leak.
  usb: hso: check for return value in hso_serial_common_create()
  i2c: slave: add sanity check when unregistering
  i2c: slave: improve sanity check when registering
  drm/nouveau/fbcon: zero-initialise the mode_cmd2 structure
  drm/nouveau/fbcon: fix module unload when fbcon init has failed for some reason
  net/9p: validate fds in p9_fd_open
  leds: 88pm860x: fix use-after-free on unbind
  leds: lm3533: fix use-after-free on unbind
  leds: da903x: fix use-after-free on unbind
  leds: wm831x-status: fix use-after-free on unbind
  mtd: properly check all write ioctls for permissions
  vgacon: Fix for missing check in scrollback handling
  binder: Prevent context manager from incrementing ref 0
  omapfb: dss: Fix max fclk divider for omap36xx
  Bluetooth: Prevent out-of-bounds read in hci_inquiry_result_with_rssi_evt()
  Bluetooth: Prevent out-of-bounds read in hci_inquiry_result_evt()
  Bluetooth: Fix slab-out-of-bounds read in hci_extended_inquiry_result_evt()
  staging: android: ashmem: Fix lockdep warning for write operation
  ALSA: seq: oss: Serialize ioctls
  Revert "ALSA: hda: call runtime_allow() for all hda controllers"
  usb: xhci: Fix ASMedia ASM1142 DMA addressing
  usb: xhci: define IDs for various ASMedia host controllers
  USB: iowarrior: fix up report size handling for some devices
  USB: serial: qcserial: add EM7305 QDL product ID
  BACKPORT: loop: Fix wrong masking of status flags
  BACKPORT: loop: Add LOOP_CONFIGURE ioctl
  BACKPORT: loop: Clean up LOOP_SET_STATUS lo_flags handling
  BACKPORT: loop: Rework lo_ioctl() __user argument casting
  BACKPORT: loop: Move loop_set_status_from_info() and friends up
  BACKPORT: loop: Factor out configuring loop from status
  BACKPORT: loop: Remove figure_loop_size()
  BACKPORT: loop: Refactor loop_set_status() size calculation
  BACKPORT: loop: Factor out setting loop device size
  BACKPORT: loop: Remove sector_t truncation checks
  BACKPORT: loop: Call loop_config_discard() only after new config is applied
  Linux 4.19.138
  ext4: fix direct I/O read error
  random32: move the pseudo-random 32-bit definitions to prandom.h
  random32: remove net_rand_state from the latent entropy gcc plugin
  random: fix circular include dependency on arm64 after addition of percpu.h
  ARM: percpu.h: fix build error
  random32: update the net random state on interrupt and activity
  ANDROID: GKI: update the ABI xml
  ANDROID: GKI: power: Add property to enable/disable cc toggle
  ANDROID: Enforce KMI stability
  Linux 4.19.137
  x86/i8259: Use printk_deferred() to prevent deadlock
  KVM: LAPIC: Prevent setting the tscdeadline timer if the lapic is hw disabled
  xen-netfront: fix potential deadlock in xennet_remove()
  cxgb4: add missing release on skb in uld_send()
  x86/unwind/orc: Fix ORC for newly forked tasks
  Revert "i2c: cadence: Fix the hold bit setting"
  net: ethernet: ravb: exit if re-initialization fails in tx timeout
  parisc: add support for cmpxchg on u8 pointers
  nfc: s3fwrn5: add missing release on skb in s3fwrn5_recv_frame
  qed: Disable "MFW indication via attention" SPAM every 5 minutes
  usb: hso: Fix debug compile warning on sparc32
  net/mlx5e: fix bpf_prog reference count leaks in mlx5e_alloc_rq
  net: gemini: Fix missing clk_disable_unprepare() in error path of gemini_ethernet_port_probe()
  Bluetooth: fix kernel oops in store_pending_adv_report
  arm64: csum: Fix handling of bad packets
  arm64/alternatives: move length validation inside the subsection
  mac80211: mesh: Free pending skb when destroying a mpath
  mac80211: mesh: Free ie data when leaving mesh
  bpf: Fix map leak in HASH_OF_MAPS map
  ibmvnic: Fix IRQ mapping disposal in error path
  mlxsw: core: Free EMAD transactions using kfree_rcu()
  mlxsw: core: Increase scope of RCU read-side critical section
  mlx4: disable device on shutdown
  net: lan78xx: fix transfer-buffer memory leak
  net: lan78xx: add missing endpoint sanity check
  net/mlx5: Verify Hardware supports requested ptp function on a given pin
  sh: Fix validation of system call number
  selftests/net: psock_fanout: fix clang issues for target arch PowerPC
  selftests/net: rxtimestamp: fix clang issues for target arch PowerPC
  xfrm: Fix crash when the hold queue is used.
  net/x25: Fix null-ptr-deref in x25_disconnect
  net/x25: Fix x25_neigh refcnt leak when x25 disconnect
  xfs: fix missed wakeup on l_flush_wait
  rds: Prevent kernel-infoleak in rds_notify_queue_get()
  drm: hold gem reference until object is no longer accessed
  drm/amdgpu: Prevent kernel-infoleak in amdgpu_info_ioctl()
  Revert "drm/amdgpu: Fix NULL dereference in dpm sysfs handlers"
  ARM: 8986/1: hw_breakpoint: Don't invoke overflow handler on uaccess watchpoints
  wireless: Use offsetof instead of custom macro.
  9p/trans_fd: Fix concurrency del of req_list in p9_fd_cancelled/p9_read_work
  PCI/ASPM: Disable ASPM on ASMedia ASM1083/1085 PCIe-to-PCI bridge
  Btrfs: fix selftests failure due to uninitialized i_mode in test inodes
  sctp: implement memory accounting on tx path
  btrfs: inode: Verify inode mode to avoid NULL pointer dereference
  drm/amd/display: prevent memory leak
  ath9k: release allocated buffer if timed out
  ath9k_htc: release allocated buffer if timed out
  tracing: Have error path in predicate_parse() free its allocated memory
  drm/amdgpu: fix multiple memory leaks in acp_hw_init
  iio: imu: adis16400: fix memory leak
  media: rc: prevent memory leak in cx23888_ir_probe
  crypto: ccp - Release all allocated memory if sha type is invalid
  ANDROID: GKI: kernel: tick-sched: Move wake callback registration code

 Conflicts:
	Documentation/devicetree/bindings
	Documentation/devicetree/bindings/iio/multiplexer/io-channel-mux.txt
	drivers/clk/clk.c
	drivers/hwtracing/coresight/coresight-tmc-etf.c
	drivers/mmc/host/sdhci-msm.c
	drivers/power/supply/power_supply_sysfs.c
	include/linux/power_supply.h
	include/linux/sched.h
	kernel/signal.c
	net/qrtr/qrtr.c

Change-Id: I0d8f44f054a9a56bb292460260cb3062be9e08ed
Signed-off-by: Srinivasarao P <spathi@codeaurora.org>
2020-10-16 11:06:31 +05:30
Srinivasarao P
0cc34620e8 Merge android-4.19-stable.136 (204dd19) into msm-4.19
* refs/heads/tmp-204dd19:
  UPSTREAM: driver core: Avoid deferred probe due to fw_devlink_pause/resume()
  UPSTREAM: driver core: Rename dev_links_info.defer_sync to defer_hook
  UPSTREAM: driver core: Don't do deferred probe in parallel with kernel_init thread
  Restore sdcardfs feature
  Revert rpmh and usb changes
  Linux 4.19.136
  regmap: debugfs: check count when read regmap file
  rtnetlink: Fix memory(net_device) leak when ->newlink fails
  udp: Improve load balancing for SO_REUSEPORT.
  udp: Copy has_conns in reuseport_grow().
  sctp: shrink stream outq when fails to do addstream reconf
  sctp: shrink stream outq only when new outcnt < old outcnt
  AX.25: Prevent integer overflows in connect and sendmsg
  tcp: allow at most one TLP probe per flight
  rxrpc: Fix sendmsg() returning EPIPE due to recvmsg() returning ENODATA
  qrtr: orphan socket in qrtr_release()
  net: udp: Fix wrong clean up for IS_UDPLITE macro
  net-sysfs: add a newline when printing 'tx_timeout' by sysfs
  ip6_gre: fix null-ptr-deref in ip6gre_init_net()
  drivers/net/wan/x25_asy: Fix to make it work
  dev: Defer free of skbs in flush_backlog
  AX.25: Prevent out-of-bounds read in ax25_sendmsg()
  AX.25: Fix out-of-bounds read in ax25_connect()
  Linux 4.19.135
  ath9k: Fix regression with Atheros 9271
  ath9k: Fix general protection fault in ath9k_hif_usb_rx_cb
  dm integrity: fix integrity recalculation that is improperly skipped
  ASoC: qcom: Drop HAS_DMA dependency to fix link failure
  ASoC: rt5670: Add new gpio1_is_ext_spk_en quirk and enable it on the Lenovo Miix 2 10
  x86, vmlinux.lds: Page-align end of ..page_aligned sections
  parisc: Add atomic64_set_release() define to avoid CPU soft lockups
  drm/amd/powerplay: fix a crash when overclocking Vega M
  drm/amdgpu: Fix NULL dereference in dpm sysfs handlers
  io-mapping: indicate mapping failure
  mm: memcg/slab: fix memory leak at non-root kmem_cache destroy
  mm: memcg/slab: synchronize access to kmem_cache dying flag using a spinlock
  mm/memcg: fix refcount error while moving and swapping
  Makefile: Fix GCC_TOOLCHAIN_DIR prefix for Clang cross compilation
  vt: Reject zero-sized screen buffer size.
  fbdev: Detect integer underflow at "struct fbcon_ops"->clear_margins.
  serial: 8250_mtk: Fix high-speed baud rates clamping
  serial: 8250: fix null-ptr-deref in serial8250_start_tx()
  staging: comedi: addi_apci_1564: check INSN_CONFIG_DIGITAL_TRIG shift
  staging: comedi: addi_apci_1500: check INSN_CONFIG_DIGITAL_TRIG shift
  staging: comedi: ni_6527: fix INSN_CONFIG_DIGITAL_TRIG support
  staging: comedi: addi_apci_1032: check INSN_CONFIG_DIGITAL_TRIG shift
  staging: wlan-ng: properly check endpoint types
  Revert "cifs: Fix the target file was deleted when rename failed."
  usb: xhci: Fix ASM2142/ASM3142 DMA addressing
  usb: xhci-mtk: fix the failure of bandwidth allocation
  binder: Don't use mmput() from shrinker function.
  RISC-V: Upgrade smp_mb__after_spinlock() to iorw,iorw
  x86: math-emu: Fix up 'cmp' insn for clang ias
  arm64: Use test_tsk_thread_flag() for checking TIF_SINGLESTEP
  hwmon: (scmi) Fix potential buffer overflow in scmi_hwmon_probe()
  hwmon: (adm1275) Make sure we are reading enough data for different chips
  usb: gadget: udc: gr_udc: fix memleak on error handling path in gr_ep_init()
  Input: synaptics - enable InterTouch for ThinkPad X1E 1st gen
  dmaengine: ioat setting ioat timeout as module parameter
  hwmon: (aspeed-pwm-tacho) Avoid possible buffer overflow
  regmap: dev_get_regmap_match(): fix string comparison
  spi: mediatek: use correct SPI_CFG2_REG MACRO
  Input: add `SW_MACHINE_COVER`
  dmaengine: tegra210-adma: Fix runtime PM imbalance on error
  HID: apple: Disable Fn-key key-re-mapping on clone keyboards
  HID: steam: fixes race in handling device list.
  HID: alps: support devices with report id 2
  HID: i2c-hid: add Mediacom FlexBook edge13 to descriptor override
  scripts/gdb: fix lx-symbols 'gdb.error' while loading modules
  scripts/decode_stacktrace: strip basepath from all paths
  serial: exar: Fix GPIO configuration for Sealevel cards based on XR17V35X
  bonding: check return value of register_netdevice() in bond_newlink()
  i2c: rcar: always clear ICSAR to avoid side effects
  net: ethernet: ave: Fix error returns in ave_init
  ipvs: fix the connection sync failed in some cases
  qed: suppress "don't support RoCE & iWARP" flooding on HW init
  mlxsw: destroy workqueue when trap_register in mlxsw_emad_init
  bonding: check error value of register_netdevice() immediately
  net: smc91x: Fix possible memory leak in smc_drv_probe()
  drm: sun4i: hdmi: Fix inverted HPD result
  ieee802154: fix one possible memleak in adf7242_probe
  net: dp83640: fix SIOCSHWTSTAMP to update the struct with actual configuration
  ax88172a: fix ax88172a_unbind() failures
  hippi: Fix a size used in a 'pci_free_consistent()' in an error handling path
  fpga: dfl: fix bug in port reset handshake
  bnxt_en: Fix race when modifying pause settings.
  btrfs: fix page leaks after failure to lock page for delalloc
  btrfs: fix mount failure caused by race with umount
  btrfs: fix double free on ulist after backref resolution failure
  ASoC: rt5670: Correct RT5670_LDO_SEL_MASK
  ALSA: info: Drop WARN_ON() from buffer NULL sanity check
  uprobes: Change handle_swbp() to send SIGTRAP with si_code=SI_KERNEL, to fix GDB regression
  IB/umem: fix reference count leak in ib_umem_odp_get()
  tipc: clean up skb list lock handling on send path
  spi: spi-fsl-dspi: Exit the ISR with IRQ_NONE when it's not ours
  SUNRPC reverting d03727b248d0 ("NFSv4 fix CLOSE not waiting for direct IO compeletion")
  irqdomain/treewide: Keep firmware node unconditionally allocated
  fuse: fix weird page warning
  drivers/firmware/psci: Fix memory leakage in alloc_init_cpu_groups()
  drm/nouveau/i2c/g94-: increase NV_PMGR_DP_AUXCTL_TRANSACTREQ timeout
  net: sky2: initialize return of gm_phy_read
  drivers/net/wan/lapbether: Fixed the value of hard_header_len
  xtensa: update *pos in cpuinfo_op.next
  xtensa: fix __sync_fetch_and_{and,or}_4 declarations
  scsi: scsi_transport_spi: Fix function pointer check
  mac80211: allow rx of mesh eapol frames with default rx key
  pinctrl: amd: fix npins for uart0 in kerncz_groups
  gpio: arizona: put pm_runtime in case of failure
  gpio: arizona: handle pm_runtime_get_sync failure case
  soc: qcom: rpmh: Dirt can only make you dirtier, not cleaner
  ANDROID: build: update ABI definitions
  ANDROID: update the kernel release format for GKI
  ANDROID: Incremental fs: magic number compatible 32-bit
  ANDROID: kbuild: don't merge .*..compoundliteral in modules
  ANDROID: GKI: preserve ABI for struct sock_cgroup_data
  Revert "genetlink: remove genl_bind"
  Revert "arm64/alternatives: use subsections for replacement sequences"
  Linux 4.19.134
  spi: sprd: switch the sequence of setting WDG_LOAD_LOW and _HIGH
  rxrpc: Fix trace string
  libceph: don't omit recovery_deletes in target_copy()
  printk: queue wake_up_klogd irq_work only if per-CPU areas are ready
  genirq/affinity: Handle affinity setting on inactive interrupts correctly
  sched/fair: handle case of task_h_load() returning 0
  sched: Fix unreliable rseq cpu_id for new tasks
  arm64: compat: Ensure upper 32 bits of x0 are zero on syscall return
  arm64: ptrace: Consistently use pseudo-singlestep exceptions
  arm64: ptrace: Override SPSR.SS when single-stepping is enabled
  thermal/drivers/cpufreq_cooling: Fix wrong frequency converted from power
  misc: atmel-ssc: lock with mutex instead of spinlock
  dmaengine: fsl-edma: Fix NULL pointer exception in fsl_edma_tx_handler
  intel_th: Fix a NULL dereference when hub driver is not loaded
  intel_th: pci: Add Emmitsburg PCH support
  intel_th: pci: Add Tiger Lake PCH-H support
  intel_th: pci: Add Jasper Lake CPU support
  powerpc/book3s64/pkeys: Fix pkey_access_permitted() for execute disable pkey
  hwmon: (emc2103) fix unable to change fan pwm1_enable attribute
  riscv: use 16KB kernel stack on 64-bit
  MIPS: Fix build for LTS kernel caused by backporting lpj adjustment
  timer: Fix wheel index calculation on last level
  timer: Prevent base->clk from moving backward
  uio_pdrv_genirq: fix use without device tree and no interrupt
  Input: i8042 - add Lenovo XiaoXin Air 12 to i8042 nomux list
  mei: bus: don't clean driver pointer
  Revert "zram: convert remaining CLASS_ATTR() to CLASS_ATTR_RO()"
  fuse: Fix parameter for FS_IOC_{GET,SET}FLAGS
  ovl: fix unneeded call to ovl_change_flags()
  ovl: relax WARN_ON() when decoding lower directory file handle
  ovl: inode reference leak in ovl_is_inuse true case.
  serial: mxs-auart: add missed iounmap() in probe failure and remove
  virtio: virtio_console: add missing MODULE_DEVICE_TABLE() for rproc serial
  virt: vbox: Fix guest capabilities mask check
  virt: vbox: Fix VBGL_IOCTL_VMMDEV_REQUEST_BIG and _LOG req numbers to match upstream
  USB: serial: option: add Quectel EG95 LTE modem
  USB: serial: option: add GosunCn GM500 series
  USB: serial: ch341: add new Product ID for CH340
  USB: serial: cypress_m8: enable Simply Automated UPB PIM
  USB: serial: iuu_phoenix: fix memory corruption
  usb: gadget: function: fix missing spinlock in f_uac1_legacy
  usb: chipidea: core: add wakeup support for extcon
  usb: dwc2: Fix shutdown callback in platform
  USB: c67x00: fix use after free in c67x00_giveback_urb
  ALSA: hda/realtek - Enable Speaker for ASUS UX533 and UX534
  ALSA: hda/realtek - change to suitable link model for ASUS platform
  ALSA: usb-audio: Fix race against the error recovery URB submission
  ALSA: line6: Sync the pending work cancel at disconnection
  ALSA: line6: Perform sanity check for each URB creation
  HID: quirks: Ignore Simply Automated UPB PIM
  HID: quirks: Always poll Obins Anne Pro 2 keyboard
  HID: magicmouse: do not set up autorepeat
  slimbus: core: Fix mismatch in of_node_get/put
  mtd: rawnand: oxnas: Release all devices in the _remove() path
  mtd: rawnand: oxnas: Unregister all devices on error
  mtd: rawnand: oxnas: Keep track of registered devices
  mtd: rawnand: brcmnand: fix CS0 layout
  mtd: rawnand: timings: Fix default tR_max and tCCS_min timings
  mtd: rawnand: marvell: Fix probe error path
  mtd: rawnand: marvell: Use nand_cleanup() when the device is not yet registered
  soc: qcom: rpmh-rsc: Allow using free WAKE TCS for active request
  soc: qcom: rpmh-rsc: Clear active mode configuration for wake TCS
  soc: qcom: rpmh: Invalidate SLEEP and WAKE TCSes before flushing new data
  soc: qcom: rpmh: Update dirty flag only when data changes
  perf stat: Zero all the 'ena' and 'run' array slot stats for interval mode
  apparmor: ensure that dfa state tables have entries
  copy_xstate_to_kernel: Fix typo which caused GDB regression
  regmap: debugfs: Don't sleep while atomic for fast_io regmaps
  ARM: dts: socfpga: Align L2 cache-controller nodename with dtschema
  Revert "thermal: mediatek: fix register index error"
  staging: comedi: verify array index is correct before using it
  usb: gadget: udc: atmel: fix uninitialized read in debug printk
  spi: spi-sun6i: sun6i_spi_transfer_one(): fix setting of clock rate
  arm64: dts: meson: add missing gxl rng clock
  phy: sun4i-usb: fix dereference of pointer phy0 before it is null checked
  iio:health:afe4404 Fix timestamp alignment and prevent data leak.
  ALSA: usb-audio: Add registration quirk for Kingston HyperX Cloud Flight S
  ACPI: video: Use native backlight on Acer TravelMate 5735Z
  Input: mms114 - add extra compatible for mms345l
  ALSA: usb-audio: Add registration quirk for Kingston HyperX Cloud Alpha S
  ACPI: video: Use native backlight on Acer Aspire 5783z
  ALSA: usb-audio: Rewrite registration quirk handling
  mmc: sdhci: do not enable card detect interrupt for gpio cd type
  doc: dt: bindings: usb: dwc3: Update entries for disabling SS instances in park mode
  ALSA: usb-audio: Create a registration quirk for Kingston HyperX Amp (0951:16d8)
  scsi: sr: remove references to BLK_DEV_SR_VENDOR, leave it enabled
  ARM: at91: pm: add quirk for sam9x60's ulp1
  HID: quirks: Remove ITE 8595 entry from hid_have_special_driver
  net: sfp: add some quirks for GPON modules
  net: sfp: add support for module quirks
  Revert "usb/ehci-platform: Set PM runtime as active on resume"
  Revert "usb/xhci-plat: Set PM runtime as active on resume"
  Revert "usb/ohci-platform: Fix a warning when hibernating"
  of: of_mdio: Correct loop scanning logic
  net: dsa: bcm_sf2: Fix node reference count
  spi: spi-fsl-dspi: Fix lockup if device is shutdown during SPI transfer
  spi: fix initial SPI_SR value in spi-fsl-dspi
  iio:health:afe4403 Fix timestamp alignment and prevent data leak.
  iio:pressure:ms5611 Fix buffer element alignment
  iio:humidity:hts221 Fix alignment and data leak issues
  iio: pressure: zpa2326: handle pm_runtime_get_sync failure
  iio: mma8452: Add missed iio_device_unregister() call in mma8452_probe()
  iio: magnetometer: ak8974: Fix runtime PM imbalance on error
  iio:humidity:hdc100x Fix alignment and data leak issues
  iio:magnetometer:ak8974: Fix alignment and data leak issues
  arm64/alternatives: don't patch up internal branches
  i2c: eg20t: Load module automatically if ID matches
  gfs2: read-only mounts should grab the sd_freeze_gl glock
  tpm_tis: extra chip->ops check on error path in tpm_tis_core_init
  arm64/alternatives: use subsections for replacement sequences
  m68k: mm: fix node memblock init
  m68k: nommu: register start of the memory with memblock
  drm/exynos: fix ref count leak in mic_pre_enable
  drm/msm: fix potential memleak in error branch
  vlan: consolidate VLAN parsing code and limit max parsing depth
  sched: consistently handle layer3 header accesses in the presence of VLANs
  cgroup: Fix sock_cgroup_data on big-endian.
  cgroup: fix cgroup_sk_alloc() for sk_clone_lock()
  tcp: md5: allow changing MD5 keys in all socket states
  tcp: md5: refine tcp_md5_do_add()/tcp_md5_hash_key() barriers
  tcp: md5: do not send silly options in SYNCOOKIES
  tcp: md5: add missing memory barriers in tcp_md5_do_add()/tcp_md5_hash_key()
  tcp: make sure listeners don't initialize congestion-control state
  tcp: fix SO_RCVLOWAT possible hangs under high mem pressure
  net: usb: qmi_wwan: add support for Quectel EG95 LTE modem
  net_sched: fix a memory leak in atm_tc_init()
  net: Added pointer check for dst->ops->neigh_lookup in dst_neigh_lookup_skb
  llc: make sure applications use ARPHRD_ETHER
  l2tp: remove skb_dst_set() from l2tp_xmit_skb()
  ipv4: fill fl4_icmp_{type,code} in ping_v4_sendmsg
  genetlink: remove genl_bind
  net: rmnet: fix lower interface leak
  perf: Make perf able to build with latest libbfd
  UPSTREAM: media: v4l2-ctrl: Add H264 profile and levels
  UPSTREAM: media: v4l2-ctrl: Add control for h.264 chroma qp offset
  ANDROID: GKI: ASoC: compress: revert some code to avoid race condition
  ANDROID: GKI: Update the ABI xml representation.
  ANDROID: GKI: kernel: tick-sched: Add an API for wakeup callbacks
  ANDROID: ASoC: Compress: Check and set pcm_new driver op
  Revert "ANDROID: GKI: arm64: gki_defconfig: Disable CONFIG_ARM64_TAGGED_ADDR_ABI"
  ANDROID: arm64: configs: enabe CONFIG_TMPFS
  Revert "ALSA: compress: fix partial_drain completion state"
  ANDROID: GKI: enable CONFIG_EXT4_FS_POSIX_ACL.
  ANDROID: GKI: set CONFIG_STATIC_USERMODEHELPER_PATH
  Linux 4.19.133
  s390/mm: fix huge pte soft dirty copying
  ARC: elf: use right ELF_ARCH
  ARC: entry: fix potential EFA clobber when TIF_SYSCALL_TRACE
  dm: use noio when sending kobject event
  drm/radeon: fix double free
  btrfs: fix fatal extent_buffer readahead vs releasepage race
  Revert "ath9k: Fix general protection fault in ath9k_hif_usb_rx_cb"
  bpf: Check correct cred for CAP_SYSLOG in bpf_dump_raw_ok()
  kprobes: Do not expose probe addresses to non-CAP_SYSLOG
  module: Do not expose section addresses to non-CAP_SYSLOG
  module: Refactor section attr into bin attribute
  kernel: module: Use struct_size() helper
  kallsyms: Refactor kallsyms_show_value() to take cred
  KVM: x86: Mark CR4.TSD as being possibly owned by the guest
  KVM: x86: Inject #GP if guest attempts to toggle CR4.LA57 in 64-bit mode
  KVM: x86: bit 8 of non-leaf PDPEs is not reserved
  KVM: arm64: Stop clobbering x0 for HVC_SOFT_RESTART
  KVM: arm64: Fix definition of PAGE_HYP_DEVICE
  ALSA: usb-audio: add quirk for MacroSilicon MS2109
  ALSA: hda - let hs_mic be picked ahead of hp_mic
  ALSA: opl3: fix infoleak in opl3
  mlxsw: spectrum_router: Remove inappropriate usage of WARN_ON()
  net: macb: mark device wake capable when "magic-packet" property present
  bnxt_en: fix NULL dereference in case SR-IOV configuration fails
  cxgb4: fix all-mask IP address comparison
  nbd: Fix memory leak in nbd_add_socket
  arm64: kgdb: Fix single-step exception handling oops
  ALSA: compress: fix partial_drain completion state
  net: hns3: fix use-after-free when doing self test
  smsc95xx: avoid memory leak in smsc95xx_bind
  smsc95xx: check return value of smsc95xx_reset
  net: cxgb4: fix return error value in t4_prep_fw
  drm/mediatek: Check plane visibility in atomic_update
  net: qrtr: Fix an out of bounds read qrtr_endpoint_post()
  x86/entry: Increase entry_stack size to a full page
  nvme-rdma: assign completion vector correctly
  block: release bip in a right way in error path
  usb: dwc3: pci: Fix reference count leak in dwc3_pci_resume_work
  scsi: mptscsih: Fix read sense data size
  ARM: imx6: add missing put_device() call in imx6q_suspend_init()
  cifs: update ctime and mtime during truncate
  s390/kasan: fix early pgm check handler execution
  drm: panel-orientation-quirks: Use generic orientation-data for Acer S1003
  drm: panel-orientation-quirks: Add quirk for Asus T101HA panel
  i40e: protect ring accesses with READ- and WRITE_ONCE
  ixgbe: protect ring accesses with READ- and WRITE_ONCE
  spi: spidev: fix a potential use-after-free in spidev_release()
  spi: spidev: fix a race between spidev_release and spidev_remove
  gpu: host1x: Detach driver on unregister
  drm/tegra: hub: Do not enable orphaned window group
  ARM: dts: omap4-droid4: Fix spi configuration and increase rate
  regmap: fix alignment issue
  spi: spi-fsl-dspi: Fix external abort on interrupt in resume or exit paths
  spi: spi-fsl-dspi: use IRQF_SHARED mode to request IRQ
  spi: spi-fsl-dspi: Fix lockup if device is removed during SPI transfer
  spi: spi-fsl-dspi: Adding shutdown hook
  KVM: s390: reduce number of IO pins to 1
  ANDROID: GKI: update abi based on padding fields being added
  ANDROID: GKI: USB: Gadget: add Android ABI padding to struct usb_gadget
  ANDROID: GKI: sound/usb/card.h: add Android ABI padding to struct snd_usb_endpoint
  ANDROID: fscrypt: fix DUN contiguity with inline encryption + IV_INO_LBLK_32 policies
  ANDROID: f2fs: add back compress inode check
  Linux 4.19.132
  efi: Make it possible to disable efivar_ssdt entirely
  dm zoned: assign max_io_len correctly
  irqchip/gic: Atomically update affinity
  MIPS: Add missing EHB in mtc0 -> mfc0 sequence for DSPen
  cifs: Fix the target file was deleted when rename failed.
  SMB3: Honor lease disabling for multiuser mounts
  SMB3: Honor persistent/resilient handle flags for multiuser mounts
  SMB3: Honor 'seal' flag for multiuser mounts
  Revert "ALSA: usb-audio: Improve frames size computation"
  nfsd: apply umask on fs without ACL support
  i2c: mlxcpld: check correct size of maximum RECV_LEN packet
  i2c: algo-pca: Add 0x78 as SCL stuck low status for PCA9665
  nvme: fix a crash in nvme_mpath_add_disk
  SMB3: Honor 'posix' flag for multiuser mounts
  virtio-blk: free vblk-vqs in error path of virtblk_probe()
  drm: sun4i: hdmi: Remove extra HPD polling
  hwmon: (acpi_power_meter) Fix potential memory leak in acpi_power_meter_add()
  hwmon: (max6697) Make sure the OVERT mask is set correctly
  cxgb4: fix SGE queue dump destination buffer context
  cxgb4: use correct type for all-mask IP address comparison
  cxgb4: parse TC-U32 key values and masks natively
  cxgb4: use unaligned conversion for fetching timestamp
  drm/msm/dpu: fix error return code in dpu_encoder_init
  crypto: af_alg - fix use-after-free in af_alg_accept() due to bh_lock_sock()
  kgdb: Avoid suspicious RCU usage warning
  nvme-multipath: fix deadlock between ana_work and scan_work
  nvme-multipath: set bdi capabilities once
  s390/debug: avoid kernel warning on too large number of pages
  usb: usbtest: fix missing kfree(dev->buf) in usbtest_disconnect
  mm/slub: fix stack overruns with SLUB_STATS
  mm/slub.c: fix corrupted freechain in deactivate_slab()
  usbnet: smsc95xx: Fix use-after-free after removal
  EDAC/amd64: Read back the scrub rate PCI register on F15h
  mm: fix swap cache node allocation mask
  btrfs: fix a block group ref counter leak after failure to remove block group
  ANDROID: Update ABI representation for libabigail update
  ANDROID: Update the ABI representation
  ANDROID: Update the ABI xml representation
  ANDROID: GKI: fix ABI diffs caused by GPU heap and pool vmstat additions
  ANDROID: sched: consider stune boost margin when computing energy
  ANDROID: GKI: move abi files to android/
  ANDROID: GKI: drop unneeded "_whitelist" off of symbol filenames
  UPSTREAM: binder: fix null deref of proc->context
  ANDROID: cpufreq: schedutil: maintain raw cache when next_f is not changed
  UPSTREAM: net: bpf: Make bpf_ktime_get_ns() available to non GPL programs
  UPSTREAM: usb: musb: mediatek: add reset FADDR to zero in reset interrupt handle
  ANDROID: GKI: scripts: Makefile: update the lz4 command (#2)
  ANDROID: Update the ABI xml representation
  Revert "drm/dsi: Fix byte order of DCS set/get brightness"
  Linux 4.19.131
  Revert "tty: hvc: Fix data abort due to race in hvc_open"
  xfs: add agf freeblocks verify in xfs_agf_verify
  dm writecache: add cond_resched to loop in persistent_memory_claim()
  dm writecache: correct uncommitted_block when discarding uncommitted entry
  NFSv4 fix CLOSE not waiting for direct IO compeletion
  pNFS/flexfiles: Fix list corruption if the mirror count changes
  SUNRPC: Properly set the @subbuf parameter of xdr_buf_subsegment()
  sunrpc: fixed rollback in rpc_gssd_dummy_populate()
  Staging: rtl8723bs: prevent buffer overflow in update_sta_support_rate()
  drm/radeon: fix fb_div check in ni_init_smc_spll_table()
  drm: rcar-du: Fix build error
  ring-buffer: Zero out time extend if it is nested and not absolute
  tracing: Fix event trigger to accept redundant spaces
  arm64: perf: Report the PC value in REGS_ABI_32 mode
  ocfs2: fix panic on nfs server over ocfs2
  ocfs2: fix value of OCFS2_INVALID_SLOT
  ocfs2: load global_inode_alloc
  ocfs2: avoid inode removal while nfsd is accessing it
  mm/slab: use memzero_explicit() in kzfree()
  btrfs: fix failure of RWF_NOWAIT write into prealloc extent beyond eof
  btrfs: fix data block group relocation failure due to concurrent scrub
  x86/asm/64: Align start of __clear_user() loop to 16-bytes
  KVM: nVMX: Plumb L2 GPA through to PML emulation
  KVM: X86: Fix MSR range of APIC registers in X2APIC mode
  erofs: fix partially uninitialized misuse in z_erofs_onlinepage_fixup
  ACPI: sysfs: Fix pm_profile_attr type
  ALSA: hda/realtek - Add quirk for MSI GE63 laptop
  ALSA: hda: Add NVIDIA codec IDs 9a & 9d through a0 to patch table
  RISC-V: Don't allow write+exec only page mapping request in mmap
  blktrace: break out of blktrace setup on concurrent calls
  kbuild: improve cc-option to clean up all temporary files
  arm64: sve: Fix build failure when ARM64_SVE=y and SYSCTL=n
  s390/vdso: fix vDSO clock_getres()
  s390/ptrace: fix setting syscall number
  net: alx: fix race condition in alx_remove
  ibmvnic: Harden device login requests
  hwrng: ks-sa - Fix runtime PM imbalance on error
  riscv/atomic: Fix sign extension for RV64I
  drm/amd/display: Use kfree() to free rgb_user in calculate_user_regamma_ramp()
  ata/libata: Fix usage of page address by page_address in ata_scsi_mode_select_xlat function
  sata_rcar: handle pm_runtime_get_sync failure cases
  sched/core: Fix PI boosting between RT and DEADLINE tasks
  sched/deadline: Initialize ->dl_boosted
  i2c: core: check returned size of emulated smbus block read
  i2c: fsi: Fix the port number field in status register
  net: bcmgenet: use hardware padding of runt frames
  netfilter: ipset: fix unaligned atomic access
  usb: gadget: udc: Potential Oops in error handling code
  ARM: imx5: add missing put_device() call in imx_suspend_alloc_ocram()
  cxgb4: move handling L2T ARP failures to caller
  net: qed: fix excessive QM ILT lines consumption
  net: qed: fix NVMe login fails over VFs
  net: qed: fix left elements count calculation
  RDMA/mad: Fix possible memory leak in ib_mad_post_receive_mads()
  ASoC: rockchip: Fix a reference count leak.
  RDMA/cma: Protect bind_list and listen_list while finding matching cm id
  RDMA/qedr: Fix KASAN: use-after-free in ucma_event_handler+0x532
  rxrpc: Fix handling of rwind from an ACK packet
  ARM: dts: NSP: Correct FA2 mailbox node
  regmap: Fix memory leak from regmap_register_patch
  x86/resctrl: Fix a NULL vs IS_ERR() static checker warning in rdt_cdp_peer_get()
  ARM: dts: Fix duovero smsc interrupt for suspend
  ASoC: fsl_ssi: Fix bclk calculation for mono channel
  regualtor: pfuze100: correct sw1a/sw2 on pfuze3000
  efi/esrt: Fix reference count leak in esre_create_sysfs_entry.
  ASoC: q6asm: handle EOS correctly
  xfrm: Fix double ESP trailer insertion in IPsec crypto offload.
  cifs/smb3: Fix data inconsistent when zero file range
  cifs/smb3: Fix data inconsistent when punch hole
  IB/mad: Fix use after free when destroying MAD agent
  loop: replace kill_bdev with invalidate_bdev
  cdc-acm: Add DISABLE_ECHO quirk for Microchip/SMSC chip
  xhci: Return if xHCI doesn't support LPM
  xhci: Fix enumeration issue when setting max packet size for FS devices.
  xhci: Fix incorrect EP_STATE_MASK
  scsi: zfcp: Fix panic on ERP timeout for previously dismissed ERP action
  ALSA: usb-audio: Fix OOB access of mixer element list
  ALSA: usb-audio: add quirk for Samsung USBC Headset (AKG)
  ALSA: usb-audio: add quirk for Denon DCD-1500RE
  usb: typec: tcpci_rt1711h: avoid screaming irq causing boot hangs
  usb: host: ehci-exynos: Fix error check in exynos_ehci_probe()
  xhci: Poll for U0 after disabling USB2 LPM
  usb: host: xhci-mtk: avoid runtime suspend when removing hcd
  USB: ehci: reopen solution for Synopsys HC bug
  usb: add USB_QUIRK_DELAY_INIT for Logitech C922
  usb: dwc2: Postponed gadget registration to the udc class driver
  USB: ohci-sm501: Add missed iounmap() in remove
  net: core: reduce recursion limit value
  net: Do not clear the sock TX queue in sk_set_socket()
  net: Fix the arp error in some cases
  sch_cake: don't call diffserv parsing code when it is not needed
  tcp_cubic: fix spurious HYSTART_DELAY exit upon drop in min RTT
  sch_cake: fix a few style nits
  sch_cake: don't try to reallocate or unshare skb unconditionally
  ip_tunnel: fix use-after-free in ip_tunnel_lookup()
  net: phy: Check harder for errors in get_phy_id()
  ip6_gre: fix use-after-free in ip6gre_tunnel_lookup()
  tg3: driver sleeps indefinitely when EEH errors exceed eeh_max_freezes
  tcp: grow window for OOO packets only for SACK flows
  tcp: don't ignore ECN CWR on pure ACK
  sctp: Don't advertise IPv4 addresses if ipv6only is set on the socket
  rxrpc: Fix notification call on completion of discarded calls
  rocker: fix incorrect error handling in dma_rings_init
  net: usb: ax88179_178a: fix packet alignment padding
  net: increment xmit_recursion level in dev_direct_xmit()
  net: use correct this_cpu primitive in dev_recursion_level
  net: place xmit recursion in softnet data
  net: fix memleak in register_netdevice()
  net: bridge: enfore alignment for ethernet address
  mld: fix memory leak in ipv6_mc_destroy_dev()
  ibmveth: Fix max MTU limit
  apparmor: don't try to replace stale label in ptraceme check
  ALSA: hda/realtek - Enable micmute LED on and HP system
  ALSA: hda/realtek: Enable mute LED on an HP system
  ALSA: hda/realtek - Enable the headset of ASUS B9450FA with ALC294
  fix a braino in "sparc32: fix register window handling in genregs32_[gs]et()"
  i2c: tegra: Fix Maximum transfer size
  i2c: tegra: Add missing kerneldoc for some fields
  i2c: tegra: Cleanup kerneldoc comments
  EDAC/amd64: Add Family 17h Model 30h PCI IDs
  net: sched: export __netdev_watchdog_up()
  net: bcmgenet: remove HFB_CTRL access
  mtd: rawnand: marvell: Fix the condition on a return code
  fanotify: fix ignore mask logic for events on child and on dir
  block/bio-integrity: don't free 'buf' if bio_integrity_add_page() failed
  net: be more gentle about silly gso requests coming from user
  ANDROID: lib/vdso: do not update timespec if clock_getres() fails
  Revert "ANDROID: fscrypt: add key removal notifier chain"
  ANDROID: update the ABI xml and qcom whitelist
  ANDROID: fs: export vfs_{read|write}
  ANDROID: GKI: update abi definitions now that sdcardfs is gone
  Revert "ANDROID: sdcardfs: Enable modular sdcardfs"
  Revert "ANDROID: vfs: Add setattr2 for filesystems with per mount permissions"
  Revert "ANDROID: vfs: fix export symbol type"
  Revert "ANDROID: vfs: Add permission2 for filesystems with per mount permissions"
  Revert "ANDROID: vfs: fix export symbol types"
  Revert "ANDROID: vfs: add d_canonical_path for stacked filesystem support"
  Revert "ANDROID: fs: Restore vfs_path_lookup() export"
  ANDROID: sdcardfs: remove sdcardfs from system
  Revert "ALSA: usb-audio: Improve frames size computation"
  ANDROID: Makefile: append BUILD_NUMBER to version string when defined
  ANDROID: GKI: Update ABI for incremental fs
  ANDROID: GKI: Update cuttlefish whitelist
  ANDROID: GKI: Disable INCREMENTAL_FS on x86 too
  ANDROID: cpufreq: schedutil: drop cache when update skipped due to rate limit
  Linux 4.19.130
  KVM: x86/mmu: Set mmio_value to '0' if reserved #PF can't be generated
  kvm: x86: Fix reserved bits related calculation errors caused by MKTME
  kvm: x86: Move kvm_set_mmio_spte_mask() from x86.c to mmu.c
  md: add feature flag MD_FEATURE_RAID0_LAYOUT
  Revert "dpaa_eth: fix usage as DSA master, try 3"
  net: core: device_rename: Use rwsem instead of a seqcount
  sched/rt, net: Use CONFIG_PREEMPTION.patch
  kretprobe: Prevent triggering kretprobe from within kprobe_flush_task
  net: octeon: mgmt: Repair filling of RX ring
  e1000e: Do not wake up the system via WOL if device wakeup is disabled
  kprobes: Fix to protect kick_kprobe_optimizer() by kprobe_mutex
  crypto: algboss - don't wait during notifier callback
  crypto: algif_skcipher - Cap recv SG list at ctx->used
  drm/i915/icl+: Fix hotplug interrupt disabling after storm detection
  drm/i915: Whitelist context-local timestamp in the gen9 cmdparser
  s390: fix syscall_get_error for compat processes
  mtd: rawnand: tmio: Fix the probe error path
  mtd: rawnand: mtk: Fix the probe error path
  mtd: rawnand: plat_nand: Fix the probe error path
  mtd: rawnand: socrates: Fix the probe error path
  mtd: rawnand: oxnas: Fix the probe error path
  mtd: rawnand: oxnas: Add of_node_put()
  mtd: rawnand: orion: Fix the probe error path
  mtd: rawnand: xway: Fix the probe error path
  mtd: rawnand: sharpsl: Fix the probe error path
  mtd: rawnand: diskonchip: Fix the probe error path
  mtd: rawnand: Pass a nand_chip object to nand_release()
  mtd: rawnand: Pass a nand_chip object to nand_scan()
  block: nr_sects_write(): Disable preemption on seqcount write
  x86/boot/compressed: Relax sed symbol type regex for LLVM ld.lld
  drm/dp_mst: Increase ACT retry timeout to 3s
  ext4: avoid race conditions when remounting with options that change dax
  ext4: fix partial cluster initialization when splitting extent
  selinux: fix double free
  drm/amdgpu: Replace invalid device ID with a valid device ID
  drm/qxl: Use correct notify port address when creating cursor ring
  drm/dp_mst: Reformat drm_dp_check_act_status() a bit
  drm: encoder_slave: fix refcouting error for modules
  libata: Use per port sync for detach
  arm64: hw_breakpoint: Don't invoke overflow handler on uaccess watchpoints
  block: Fix use-after-free in blkdev_get()
  afs: afs_write_end() should change i_size under the right lock
  afs: Fix non-setting of mtime when writing into mmap
  bcache: fix potential deadlock problem in btree_gc_coalesce
  ext4: stop overwrite the errcode in ext4_setup_super
  perf report: Fix NULL pointer dereference in hists__fprintf_nr_sample_events()
  usb/ehci-platform: Set PM runtime as active on resume
  usb: host: ehci-platform: add a quirk to avoid stuck
  usb/xhci-plat: Set PM runtime as active on resume
  xdp: Fix xsk_generic_xmit errno
  net/filter: Permit reading NET in load_bytes_relative when MAC not set
  x86/idt: Keep spurious entries unset in system_vectors
  scsi: acornscsi: Fix an error handling path in acornscsi_probe()
  drm/sun4i: hdmi ddc clk: Fix size of m divider
  ASoC: rt5645: Add platform-data for Asus T101HA
  ASoC: Intel: bytcr_rt5640: Add quirk for Toshiba Encore WT10-A tablet
  ASoC: core: only convert non DPCM link to DPCM link
  afs: Fix memory leak in afs_put_sysnames()
  selftests/net: in timestamping, strncpy needs to preserve null byte
  drivers/perf: hisi: Fix wrong value for all counters enable
  NTB: ntb_test: Fix bug when counting remote files
  NTB: perf: Fix race condition when run with ntb_test
  NTB: perf: Fix support for hardware that doesn't have port numbers
  NTB: perf: Don't require one more memory window than number of peers
  NTB: Revert the change to use the NTB device dev for DMA allocations
  NTB: ntb_tool: reading the link file should not end in a NULL byte
  ntb_tool: pass correct struct device to dma_alloc_coherent
  ntb_perf: pass correct struct device to dma_alloc_coherent
  gfs2: fix use-after-free on transaction ail lists
  blktrace: fix endianness for blk_log_remap()
  blktrace: fix endianness in get_pdu_int()
  blktrace: use errno instead of bi_status
  selftests/vm/pkeys: fix alloc_random_pkey() to make it really random
  elfnote: mark all .note sections SHF_ALLOC
  include/linux/bitops.h: avoid clang shift-count-overflow warnings
  lib/zlib: remove outdated and incorrect pre-increment optimization
  geneve: change from tx_error to tx_dropped on missing metadata
  crypto: omap-sham - add proper load balancing support for multicore
  pinctrl: freescale: imx: Fix an error handling path in 'imx_pinctrl_probe()'
  pinctrl: imxl: Fix an error handling path in 'imx1_pinctrl_core_probe()'
  scsi: ufs: Don't update urgent bkops level when toggling auto bkops
  scsi: iscsi: Fix reference count leak in iscsi_boot_create_kobj
  gfs2: Allow lock_nolock mount to specify jid=X
  openrisc: Fix issue with argument clobbering for clone/fork
  rxrpc: Adjust /proc/net/rxrpc/calls to display call->debug_id not user_ID
  vfio/mdev: Fix reference count leak in add_mdev_supported_type
  ASoC: fsl_asrc_dma: Fix dma_chan leak when config DMA channel failed
  extcon: adc-jack: Fix an error handling path in 'adc_jack_probe()'
  powerpc/4xx: Don't unmap NULL mbase
  of: Fix a refcounting bug in __of_attach_node_sysfs()
  NFSv4.1 fix rpc_call_done assignment for BIND_CONN_TO_SESSION
  net: sunrpc: Fix off-by-one issues in 'rpc_ntop6'
  clk: sprd: return correct type of value for _sprd_pll_recalc_rate
  KVM: PPC: Book3S HV: Ignore kmemleak false positives
  scsi: ufs-qcom: Fix scheduling while atomic issue
  clk: bcm2835: Fix return type of bcm2835_register_gate
  scsi: target: tcmu: Fix a use after free in tcmu_check_expired_queue_cmd()
  ASoC: fix incomplete error-handling in img_i2s_in_probe.
  x86/apic: Make TSC deadline timer detection message visible
  RDMA/iw_cxgb4: cleanup device debugfs entries on ULD remove
  usb: gadget: Fix issue with config_ep_by_speed function
  usb: gadget: fix potential double-free in m66592_probe.
  usb: gadget: lpc32xx_udc: don't dereference ep pointer before null check
  USB: gadget: udc: s3c2410_udc: Remove pointless NULL check in s3c2410_udc_nuke
  usb: dwc2: gadget: move gadget resume after the core is in L0 state
  watchdog: da9062: No need to ping manually before setting timeout
  IB/cma: Fix ports memory leak in cma_configfs
  PCI: dwc: Fix inner MSI IRQ domain registration
  PCI/PTM: Inherit Switch Downstream Port PTM settings from Upstream Port
  dm zoned: return NULL if dmz_get_zone_for_reclaim() fails to find a zone
  powerpc/64s/pgtable: fix an undefined behaviour
  arm64: tegra: Fix ethernet phy-mode for Jetson Xavier
  scsi: target: tcmu: Userspace must not complete queued commands
  clk: samsung: exynos5433: Add IGNORE_UNUSED flag to sclk_i2s1
  fpga: dfl: afu: Corrected error handling levels
  tty: n_gsm: Fix bogus i++ in gsm_data_kick
  USB: host: ehci-mxc: Add error handling in ehci_mxc_drv_probe()
  ASoC: Intel: bytcr_rt5640: Add quirk for Toshiba Encore WT8-A tablet
  drm/msm/mdp5: Fix mdp5_init error path for failed mdp5_kms allocation
  usb/ohci-platform: Fix a warning when hibernating
  vfio-pci: Mask cap zero
  powerpc/ps3: Fix kexec shutdown hang
  powerpc/pseries/ras: Fix FWNMI_VALID off by one
  ipmi: use vzalloc instead of kmalloc for user creation
  HID: Add quirks for Trust Panora Graphic Tablet
  tty: n_gsm: Fix waking up upper tty layer when room available
  tty: n_gsm: Fix SOF skipping
  powerpc/64: Don't initialise init_task->thread.regs
  PCI: Fix pci_register_host_bridge() device_register() error handling
  clk: ti: composite: fix memory leak
  dlm: remove BUG() before panic()
  pinctrl: rockchip: fix memleak in rockchip_dt_node_to_map
  scsi: mpt3sas: Fix double free warnings
  power: supply: smb347-charger: IRQSTAT_D is volatile
  power: supply: lp8788: Fix an error handling path in 'lp8788_charger_probe()'
  scsi: qla2xxx: Fix warning after FC target reset
  PCI/ASPM: Allow ASPM on links to PCIe-to-PCI/PCI-X Bridges
  PCI: rcar: Fix incorrect programming of OB windows
  drivers: base: Fix NULL pointer exception in __platform_driver_probe() if a driver developer is foolish
  serial: amba-pl011: Make sure we initialize the port.lock spinlock
  i2c: pxa: fix i2c_pxa_scream_blue_murder() debug output
  PCI: v3-semi: Fix a memory leak in v3_pci_probe() error handling paths
  staging: sm750fb: add missing case while setting FB_VISUAL
  usb: dwc3: gadget: Properly handle failed kick_transfer
  thermal/drivers/ti-soc-thermal: Avoid dereferencing ERR_PTR
  slimbus: ngd: get drvdata from correct device
  tty: hvc: Fix data abort due to race in hvc_open
  s390/qdio: put thinint indicator after early error
  ALSA: usb-audio: Fix racy list management in output queue
  ALSA: usb-audio: Improve frames size computation
  staging: gasket: Fix mapping refcnt leak when register/store fails
  staging: gasket: Fix mapping refcnt leak when put attribute fails
  firmware: qcom_scm: fix bogous abuse of dma-direct internals
  pinctrl: rza1: Fix wrong array assignment of rza1l_swio_entries
  scsi: qedf: Fix crash when MFW calls for protocol stats while function is still probing
  gpio: dwapb: Append MODULE_ALIAS for platform driver
  ARM: dts: sun8i-h2-plus-bananapi-m2-zero: Fix led polarity
  scsi: qedi: Do not flush offload work if ARP not resolved
  arm64: dts: mt8173: fix unit name warnings
  staging: greybus: fix a missing-check bug in gb_lights_light_config()
  x86/purgatory: Disable various profiling and sanitizing options
  apparmor: fix nnp subset test for unconfined
  scsi: ibmvscsi: Don't send host info in adapter info MAD after LPM
  scsi: sr: Fix sr_probe() missing deallocate of device minor
  ASoC: meson: add missing free_irq() in error path
  apparmor: check/put label on apparmor_sk_clone_security()
  apparmor: fix introspection of of task mode for unconfined tasks
  mksysmap: Fix the mismatch of '.L' symbols in System.map
  NTB: Fix the default port and peer numbers for legacy drivers
  NTB: ntb_pingpong: Choose doorbells based on port number
  yam: fix possible memory leak in yam_init_driver
  pwm: img: Call pm_runtime_put() in pm_runtime_get_sync() failed case
  powerpc/crashkernel: Take "mem=" option into account
  PCI: vmd: Filter resource type bits from shadow register
  nfsd: Fix svc_xprt refcnt leak when setup callback client failed
  powerpc/perf/hv-24x7: Fix inconsistent output values incase multiple hv-24x7 events run
  clk: clk-flexgen: fix clock-critical handling
  scsi: lpfc: Fix lpfc_nodelist leak when processing unsolicited event
  mfd: wm8994: Fix driver operation if loaded as modules
  gpio: dwapb: Call acpi_gpiochip_free_interrupts() on GPIO chip de-registration
  m68k/PCI: Fix a memory leak in an error handling path
  RDMA/mlx5: Add init2init as a modify command
  vfio/pci: fix memory leaks in alloc_perm_bits()
  ps3disk: use the default segment boundary
  PCI: aardvark: Don't blindly enable ASPM L0s and don't write to read-only register
  dm mpath: switch paths in dm_blk_ioctl() code path
  serial: 8250: Fix max baud limit in generic 8250 port
  usblp: poison URBs upon disconnect
  clk: samsung: Mark top ISP and CAM clocks on Exynos542x as critical
  i2c: pxa: clear all master action bits in i2c_pxa_stop_message()
  f2fs: report delalloc reserve as non-free in statfs for project quota
  iio: bmp280: fix compensation of humidity
  scsi: qla2xxx: Fix issue with adapter's stopping state
  PCI: Allow pci_resize_resource() for devices on root bus
  ALSA: isa/wavefront: prevent out of bounds write in ioctl
  ALSA: hda/realtek - Introduce polarity for micmute LED GPIO
  scsi: qedi: Check for buffer overflow in qedi_set_path()
  ARM: integrator: Add some Kconfig selections
  ASoC: davinci-mcasp: Fix dma_chan refcnt leak when getting dma type
  backlight: lp855x: Ensure regulators are disabled on probe failure
  clk: qcom: msm8916: Fix the address location of pll->config_reg
  remoteproc: Fix IDR initialisation in rproc_alloc()
  iio: pressure: bmp280: Tolerate IRQ before registering
  i2c: piix4: Detect secondary SMBus controller on AMD AM4 chipsets
  ASoC: tegra: tegra_wm8903: Support nvidia, headset property
  clk: sunxi: Fix incorrect usage of round_down()
  power: supply: bq24257_charger: Replace depends on REGMAP_I2C with select
  ANDROID: ext4: Optimize match for casefolded encrypted dirs
  ANDROID: ext4: Handle casefolding with encryption
  ANDROID: extcon: Remove redundant EXPORT_SYMBOL_GPL
  ANDROID: update the ABI xml representation
  ANDROID: GKI: cfg80211: add ABI changes for CONFIG_NL80211_TESTMODE
  ANDROID: gki_defconfig: x86: Enable KERNEL_LZ4
  ANDROID: GKI: scripts: Makefile: update the lz4 command
  FROMLIST: f2fs: fix use-after-free when accessing bio->bi_crypt_context
  UPSTREAM: fdt: Update CRC check for rng-seed
  ANDROID: GKI: Update ABI for incremental fs
  ANDROID: GKI: Update whitelist and defconfig for incfs
  ANDROID: Use depmod from the hermetic toolchain
  Linux 4.19.129
  perf symbols: Fix debuginfo search for Ubuntu
  perf probe: Check address correctness by map instead of _etext
  perf probe: Fix to check blacklist address correctly
  perf probe: Do not show the skipped events
  w1: omap-hdq: cleanup to add missing newline for some dev_dbg
  mtd: rawnand: pasemi: Fix the probe error path
  mtd: rawnand: brcmnand: fix hamming oob layout
  sunrpc: clean up properly in gss_mech_unregister()
  sunrpc: svcauth_gss_register_pseudoflavor must reject duplicate registrations.
  kbuild: force to build vmlinux if CONFIG_MODVERSION=y
  powerpc/64s: Save FSCR to init_task.thread.fscr after feature init
  powerpc/64s: Don't let DT CPU features set FSCR_DSCR
  drivers/macintosh: Fix memleak in windfarm_pm112 driver
  ARM: dts: s5pv210: Set keep-power-in-suspend for SDHCI1 on Aries
  ARM: dts: at91: sama5d2_ptc_ek: fix vbus pin
  ARM: dts: exynos: Fix GPIO polarity for thr GalaxyS3 CM36651 sensor's bus
  ARM: tegra: Correct PL310 Auxiliary Control Register initialization
  kernel/cpu_pm: Fix uninitted local in cpu_pm
  alpha: fix memory barriers so that they conform to the specification
  dm crypt: avoid truncating the logical block size
  sparc64: fix misuses of access_process_vm() in genregs32_[sg]et()
  sparc32: fix register window handling in genregs32_[gs]et()
  gnss: sirf: fix error return code in sirf_probe()
  pinctrl: samsung: Save/restore eint_mask over suspend for EINT_TYPE GPIOs
  pinctrl: samsung: Correct setting of eint wakeup mask on s5pv210
  power: vexpress: add suppress_bind_attrs to true
  igb: Report speed and duplex as unknown when device is runtime suspended
  media: ov5640: fix use of destroyed mutex
  b43_legacy: Fix connection problem with WPA3
  b43: Fix connection problem with WPA3
  b43legacy: Fix case where channel status is corrupted
  Bluetooth: hci_bcm: fix freeing not-requested IRQ
  media: go7007: fix a miss of snd_card_free
  carl9170: remove P2P_GO support
  e1000e: Relax condition to trigger reset for ME workaround
  e1000e: Disable TSO for buffer overrun workaround
  PCI: Program MPS for RCiEP devices
  ima: Call ima_calc_boot_aggregate() in ima_eventdigest_init()
  btrfs: fix wrong file range cleanup after an error filling dealloc range
  btrfs: fix error handling when submitting direct I/O bio
  PCI: Generalize multi-function power dependency device links
  PCI: Unify ACS quirk desired vs provided checking
  PCI: Make ACS quirk implementations more uniform
  serial: 8250_pci: Move Pericom IDs to pci_ids.h
  PCI: Add Loongson vendor ID
  x86/amd_nb: Add Family 19h PCI IDs
  PCI: vmd: Add device id for VMD device 8086:9A0B
  PCI: Add Amazon's Annapurna Labs vendor ID
  PCI: Add Genesys Logic, Inc. Vendor ID
  ALSA: lx6464es - add support for LX6464ESe pci express variant
  x86/amd_nb: Add PCI device IDs for family 17h, model 70h
  PCI: mediatek: Add controller support for MT7629
  PCI: Enable NVIDIA HDA controllers
  PCI: Add NVIDIA GPU multi-function power dependencies
  PCI: Add Synopsys endpoint EDDA Device ID
  misc: pci_endpoint_test: Add support to test PCI EP in AM654x
  misc: pci_endpoint_test: Add the layerscape EP device support
  PCI: Move Rohm Vendor ID to generic list
  PCI: Move Synopsys HAPS platform device IDs
  PCI: add USR vendor id and use it in r8169 and w6692 driver
  x86/amd_nb: Add PCI device IDs for family 17h, model 30h
  hwmon/k10temp, x86/amd_nb: Consolidate shared device IDs
  pci:ipmi: Move IPMI PCI class id defines to pci_ids.h
  PCI: Remove unused NFP32xx IDs
  PCI: Add ACS quirk for Intel Root Complex Integrated Endpoints
  PCI: Add ACS quirk for iProc PAXB
  PCI: Avoid FLR for AMD Starship USB 3.0
  PCI: Avoid FLR for AMD Matisse HD Audio & USB 3.0
  PCI: Avoid Pericom USB controller OHCI/EHCI PME# defect
  ext4: fix race between ext4_sync_parent() and rename()
  ext4: fix error pointer dereference
  ext4: fix EXT_MAX_EXTENT/INDEX to check for zeroed eh_max
  evm: Fix possible memory leak in evm_calc_hmac_or_hash()
  ima: Directly assign the ima_default_policy pointer to ima_rules
  ima: Fix ima digest hash table key calculation
  mm: initialize deferred pages with interrupts enabled
  mm: thp: make the THP mapcount atomic against __split_huge_pmd_locked()
  btrfs: send: emit file capabilities after chown
  btrfs: include non-missing as a qualifier for the latest_bdev
  string.h: fix incompatibility between FORTIFY_SOURCE and KASAN
  platform/x86: intel-vbtn: Only blacklist SW_TABLET_MODE on the 9 / "Laptop" chasis-type
  platform/x86: intel-hid: Add a quirk to support HP Spectre X2 (2015)
  platform/x86: hp-wmi: Convert simple_strtoul() to kstrtou32()
  cpuidle: Fix three reference count leaks
  spi: dw: Return any value retrieved from the dma_transfer callback
  mmc: sdhci-esdhc-imx: fix the mask for tuning start point
  ixgbe: fix signed-integer-overflow warning
  mmc: via-sdmmc: Respect the cmd->busy_timeout from the mmc core
  staging: greybus: sdio: Respect the cmd->busy_timeout from the mmc core
  mmc: sdhci-msm: Set SDHCI_QUIRK_MULTIBLOCK_READ_ACMD12 quirk
  bcache: fix refcount underflow in bcache_device_free()
  MIPS: Fix IRQ tracing when call handle_fpe() and handle_msa_fpe()
  PCI: Don't disable decoding when mmio_always_on is set
  macvlan: Skip loopback packets in RX handler
  btrfs: qgroup: mark qgroup inconsistent if we're inherting snapshot to a new qgroup
  m68k: mac: Don't call via_flush_cache() on Mac IIfx
  x86/mm: Stop printing BRK addresses
  crypto: stm32/crc32 - fix multi-instance
  crypto: stm32/crc32 - fix run-time self test issue.
  crypto: stm32/crc32 - fix ext4 chksum BUG_ON()
  mips: Add udelay lpj numbers adjustment
  mips: MAAR: Use more precise address mask
  x86/boot: Correct relocation destination on old linkers
  mwifiex: Fix memory corruption in dump_station
  rtlwifi: Fix a double free in _rtl_usb_tx_urb_setup()
  net/mlx5e: IPoIB, Drop multicast packets that this interface sent
  veth: Adjust hard_start offset on redirect XDP frames
  md: don't flush workqueue unconditionally in md_open
  mt76: avoid rx reorder buffer overflow
  net: qed*: Reduce RX and TX default ring count when running inside kdump kernel
  wcn36xx: Fix error handling path in 'wcn36xx_probe()'
  ath10k: Remove msdu from idr when management pkt send fails
  nvme: refine the Qemu Identify CNS quirk
  platform/x86: intel-vbtn: Also handle tablet-mode switch on "Detachable" and "Portable" chassis-types
  platform/x86: intel-vbtn: Do not advertise switches to userspace if they are not there
  platform/x86: intel-vbtn: Split keymap into buttons and switches parts
  platform/x86: intel-vbtn: Use acpi_evaluate_integer()
  xfs: fix duplicate verification from xfs_qm_dqflush()
  xfs: reset buffer write failure state on successful completion
  kgdb: Fix spurious true from in_dbg_master()
  mips: cm: Fix an invalid error code of INTVN_*_ERR
  MIPS: Truncate link address into 32bit for 32bit kernel
  Crypto/chcr: fix for ccm(aes) failed test
  xfs: clean up the error handling in xfs_swap_extents
  powerpc/spufs: fix copy_to_user while atomic
  net: allwinner: Fix use correct return type for ndo_start_xmit()
  media: cec: silence shift wrapping warning in __cec_s_log_addrs()
  net: lpc-enet: fix error return code in lpc_mii_init()
  drivers/perf: hisi: Fix typo in events attribute array
  sched/core: Fix illegal RCU from offline CPUs
  exit: Move preemption fixup up, move blocking operations down
  lib/mpi: Fix 64-bit MIPS build with Clang
  net: bcmgenet: set Rx mode before starting netif
  selftests/bpf: Fix memory leak in extract_build_id()
  netfilter: nft_nat: return EOPNOTSUPP if type or flags are not supported
  audit: fix a net reference leak in audit_list_rules_send()
  Bluetooth: btbcm: Add 2 missing models to subver tables
  MIPS: Make sparse_init() using top-down allocation
  media: platform: fcp: Set appropriate DMA parameters
  media: dvb: return -EREMOTEIO on i2c transfer failure.
  audit: fix a net reference leak in audit_send_reply()
  dt-bindings: display: mediatek: control dpi pins mode to avoid leakage
  e1000: Distribute switch variables for initialization
  tools api fs: Make xxx__mountpoint() more scalable
  brcmfmac: fix wrong location to get firmware feature
  staging: android: ion: use vmap instead of vm_map_ram
  net: vmxnet3: fix possible buffer overflow caused by bad DMA value in vmxnet3_get_rss()
  x86/kvm/hyper-v: Explicitly align hcall param for kvm_hyperv_exit
  spi: dw: Fix Rx-only DMA transfers
  mmc: meson-mx-sdio: trigger a soft reset after a timeout or CRC error
  batman-adv: Revert "disable ethtool link speed detection when auto negotiation off"
  ARM: 8978/1: mm: make act_mm() respect THREAD_SIZE
  btrfs: do not ignore error from btrfs_next_leaf() when inserting checksums
  clocksource: dw_apb_timer_of: Fix missing clockevent timers
  clocksource: dw_apb_timer: Make CPU-affiliation being optional
  spi: dw: Enable interrupts in accordance with DMA xfer mode
  kgdb: Prevent infinite recursive entries to the debugger
  kgdb: Disable WARN_CONSOLE_UNLOCKED for all kgdb
  Bluetooth: Add SCO fallback for invalid LMP parameters error
  MIPS: Loongson: Build ATI Radeon GPU driver as module
  ixgbe: Fix XDP redirect on archs with PAGE_SIZE above 4K
  arm64: insn: Fix two bugs in encoding 32-bit logical immediates
  spi: dw: Zero DMA Tx and Rx configurations on stack
  arm64: cacheflush: Fix KGDB trap detection
  efi/libstub/x86: Work around LLVM ELF quirk build regression
  net: ena: fix error returning in ena_com_get_hash_function()
  net: atlantic: make hw_get_regs optional
  spi: pxa2xx: Apply CS clk quirk to BXT
  objtool: Ignore empty alternatives
  media: si2157: Better check for running tuner in init
  crypto: ccp -- don't "select" CONFIG_DMADEVICES
  drm: bridge: adv7511: Extend list of audio sample rates
  ACPI: GED: use correct trigger type field in _Exx / _Lxx handling
  KVM: arm64: Synchronize sysreg state on injecting an AArch32 exception
  xen/pvcalls-back: test for errors when calling backend_connect()
  mmc: sdio: Fix potential NULL pointer error in mmc_sdio_init_card()
  ARM: dts: at91: sama5d2_ptc_ek: fix sdmmc0 node description
  mmc: sdhci-msm: Clear tuning done flag while hs400 tuning
  agp/intel: Reinforce the barrier after GTT updates
  perf: Add cond_resched() to task_function_call()
  fat: don't allow to mount if the FAT length == 0
  mm/slub: fix a memory leak in sysfs_slab_add()
  drm/vkms: Hold gem object while still in-use
  Smack: slab-out-of-bounds in vsscanf
  ath9k: Fix general protection fault in ath9k_hif_usb_rx_cb
  ath9x: Fix stack-out-of-bounds Write in ath9k_hif_usb_rx_cb
  ath9k: Fix use-after-free Write in ath9k_htc_rx_msg
  ath9k: Fix use-after-free Read in ath9k_wmi_ctrl_rx
  scsi: megaraid_sas: TM command refire leads to controller firmware crash
  KVM: arm64: Make vcpu_cp1x() work on Big Endian hosts
  KVM: MIPS: Fix VPN2_MASK definition for variable cpu_vmbits
  KVM: MIPS: Define KVM_ENTRYHI_ASID to cpu_asid_mask(&boot_cpu_data)
  KVM: nVMX: Consult only the "basic" exit reason when routing nested exit
  KVM: nSVM: leave ASID aside in copy_vmcb_control_area
  KVM: nSVM: fix condition for filtering async PF
  video: fbdev: w100fb: Fix a potential double free.
  proc: Use new_inode not new_inode_pseudo
  ovl: initialize error in ovl_copy_xattr
  selftests/net: in rxtimestamp getopt_long needs terminating null entry
  crypto: virtio: Fix dest length calculation in __virtio_crypto_skcipher_do_req()
  crypto: virtio: Fix src/dst scatterlist calculation in __virtio_crypto_skcipher_do_req()
  crypto: virtio: Fix use-after-free in virtio_crypto_skcipher_finalize_req()
  spi: pxa2xx: Fix runtime PM ref imbalance on probe error
  spi: pxa2xx: Balance runtime PM enable/disable on error
  spi: bcm2835: Fix controller unregister order
  spi: pxa2xx: Fix controller unregister order
  spi: Fix controller unregister order
  spi: No need to assign dummy value in spi_unregister_controller()
  x86/speculation: PR_SPEC_FORCE_DISABLE enforcement for indirect branches.
  x86/speculation: Avoid force-disabling IBPB based on STIBP and enhanced IBRS.
  x86/speculation: Add support for STIBP always-on preferred mode
  x86/speculation: Change misspelled STIPB to STIBP
  KVM: x86: only do L1TF workaround on affected processors
  KVM: x86/mmu: Consolidate "is MMIO SPTE" code
  kvm: x86: Fix L1TF mitigation for shadow MMU
  KVM: x86: Fix APIC page invalidation race
  x86/{mce,mm}: Unmap the entire page if the whole page is affected and poisoned
  ALSA: pcm: disallow linking stream to itself
  crypto: cavium/nitrox - Fix 'nitrox_get_first_device()' when ndevlist is fully iterated
  PM: runtime: clk: Fix clk_pm_runtime_get() error path
  spi: bcm-qspi: when tx/rx buffer is NULL set to 0
  spi: bcm2835aux: Fix controller unregister order
  spi: dw: Fix controller unregister order
  nilfs2: fix null pointer dereference at nilfs_segctor_do_construct()
  cgroup, blkcg: Prepare some symbols for module and !CONFIG_CGROUP usages
  ACPI: PM: Avoid using power resources if there are none for D0
  ACPI: GED: add support for _Exx / _Lxx handler methods
  ACPI: CPPC: Fix reference count leak in acpi_cppc_processor_probe()
  ACPI: sysfs: Fix reference count leak in acpi_sysfs_add_hotplug_profile()
  ALSA: usb-audio: Add vendor, product and profile name for HP Thunderbolt Dock
  ALSA: usb-audio: Fix inconsistent card PM state after resume
  ALSA: hda/realtek - add a pintbl quirk for several Lenovo machines
  ALSA: es1688: Add the missed snd_card_free()
  efi/efivars: Add missing kobject_put() in sysfs entry creation error path
  x86/reboot/quirks: Add MacBook6,1 reboot quirk
  x86/speculation: Prevent rogue cross-process SSBD shutdown
  x86/PCI: Mark Intel C620 MROMs as having non-compliant BARs
  x86_64: Fix jiffies ODR violation
  btrfs: tree-checker: Check level for leaves and nodes
  aio: fix async fsync creds
  mm: add kvfree_sensitive() for freeing sensitive data objects
  perf probe: Accept the instance number of kretprobe event
  x86/cpu/amd: Make erratum #1054 a legacy erratum
  RDMA/uverbs: Make the event_queue fds return POLLERR when disassociated
  ath9k_htc: Silence undersized packet warnings
  powerpc/xive: Clear the page tables for the ESB IO mapping
  drivers/net/ibmvnic: Update VNIC protocol version reporting
  Input: synaptics - add a second working PNP_ID for Lenovo T470s
  sched/fair: Don't NUMA balance for kthreads
  ARM: 8977/1: ptrace: Fix mask for thumb breakpoint hook
  Input: mms114 - fix handling of mms345l
  crypto: talitos - fix ECB and CBC algs ivsize
  btrfs: Detect unbalanced tree with empty leaf before crashing btree operations
  btrfs: merge btrfs_find_device and find_device
  lib: Reduce user_access_begin() boundaries in strncpy_from_user() and strnlen_user()
  x86: uaccess: Inhibit speculation past access_ok() in user_access_begin()
  arch/openrisc: Fix issues with access_ok()
  Fix 'acccess_ok()' on alpha and SH
  make 'user_access_begin()' do 'access_ok()'
  selftests: bpf: fix use of undeclared RET_IF macro
  tun: correct header offsets in napi frags mode
  vxlan: Avoid infinite loop when suppressing NS messages with invalid options
  bridge: Avoid infinite loop when suppressing NS messages with invalid options
  net_failover: fixed rollback in net_failover_open()
  ipv6: fix IPV6_ADDRFORM operation logic
  writeback: Drop I_DIRTY_TIME_EXPIRE
  writeback: Fix sync livelock due to b_dirty_time processing
  writeback: Avoid skipping inode writeback
  writeback: Protect inode->i_io_list with inode->i_lock
  Revert "writeback: Avoid skipping inode writeback"
  ANDROID: gki_defconfig: increase vbus_draw to 500mA
  fscrypt: remove stale definition
  fs-verity: remove unnecessary extern keywords
  fs-verity: fix all kerneldoc warnings
  fscrypt: add support for IV_INO_LBLK_32 policies
  fscrypt: make test_dummy_encryption use v2 by default
  fscrypt: support test_dummy_encryption=v2
  fscrypt: add fscrypt_add_test_dummy_key()
  linux/parser.h: add include guards
  fscrypt: remove unnecessary extern keywords
  fscrypt: name all function parameters
  fscrypt: fix all kerneldoc warnings
  ANDROID: Update the ABI
  ANDROID: GKI: power: power-supply: Add POWER_SUPPLY_PROP_CHARGER_STATUS property
  ANDROID: GKI: add dev to usb_gsi_request
  ANDROID: GKI: dma-buf: add dent_count to dma_buf
  ANDROID: Update the ABI xml and whitelist
  ANDROID: GKI: update whitelist
  ANDROID: extcon: Export symbol of `extcon_get_edev_name`
  ANDROID: kbuild: merge more sections with LTO
  UPSTREAM: timekeeping/vsyscall: Update VDSO data unconditionally
  ANDROID: GKI: Revert "genetlink: disallow subscribing to unknown mcast groups"
  BACKPORT: usb: musb: Add support for MediaTek musb controller
  UPSTREAM: usb: musb: Add musb_clearb/w() interface
  UPSTREAM: usb: musb: Add noirq type of dma create interface
  UPSTREAM: usb: musb: Add get/set toggle hooks
  UPSTREAM: dt-bindings: usb: musb: Add support for MediaTek musb controller
  FROMGIT: driver core: Remove unnecessary is_fwnode_dev variable in device_add()
  FROMGIT: driver core: Remove check in driver_deferred_probe_force_trigger()
  FROMGIT: of: platform: Batch fwnode parsing when adding all top level devices
  FROMGIT: BACKPORT: driver core: fw_devlink: Add support for batching fwnode parsing
  BACKPORT: driver core: Look for waiting consumers only for a fwnode's primary device
  BACKPORT: driver core: Add device links from fwnode only for the primary device
  Linux 4.19.128
  Revert "net/mlx5: Annotate mutex destroy for root ns"
  uprobes: ensure that uprobe->offset and ->ref_ctr_offset are properly aligned
  x86/speculation: Add Ivy Bridge to affected list
  x86/speculation: Add SRBDS vulnerability and mitigation documentation
  x86/speculation: Add Special Register Buffer Data Sampling (SRBDS) mitigation
  x86/cpu: Add 'table' argument to cpu_matches()
  x86/cpu: Add a steppings field to struct x86_cpu_id
  nvmem: qfprom: remove incorrect write support
  CDC-ACM: heed quirk also in error handling
  staging: rtl8712: Fix IEEE80211_ADDBA_PARAM_BUF_SIZE_MASK
  tty: hvc_console, fix crashes on parallel open/close
  vt: keyboard: avoid signed integer overflow in k_ascii
  usb: musb: Fix runtime PM imbalance on error
  usb: musb: start session in resume for host port
  iio: vcnl4000: Fix i2c swapped word reading.
  USB: serial: option: add Telit LE910C1-EUX compositions
  USB: serial: usb_wwan: do not resubmit rx urb on fatal errors
  USB: serial: qcserial: add DW5816e QDL support
  net: check untrusted gso_size at kernel entry
  vsock: fix timeout in vsock_accept()
  NFC: st21nfca: add missed kfree_skb() in an error path
  net: usb: qmi_wwan: add Telit LE910C1-EUX composition
  l2tp: do not use inet_hash()/inet_unhash()
  l2tp: add sk_family checks to l2tp_validate_socket
  devinet: fix memleak in inetdev_init()
  Revert "ANDROID: Remove default y on BRIDGE_IGMP_SNOOPING"
  ANDROID: Update the ABI xml and whitelist
  ANDROID: GKI: update whitelist
  ANDROID: arch: arm64: vdso: export the symbols for time()
  ANDROID: Incremental fs: Remove dependency on PKCS7_MESSAGE_PARSER
  ANDROID: dm-bow: Add block_size option
  f2fs: attach IO flags to the missing cases
  f2fs: add node_io_flag for bio flags likewise data_io_flag
  f2fs: remove unused parameter of f2fs_put_rpages_mapping()
  f2fs: handle readonly filesystem in f2fs_ioc_shutdown()
  f2fs: avoid utf8_strncasecmp() with unstable name
  f2fs: don't return vmalloc() memory from f2fs_kmalloc()
  ANDROID: GKI: set CONFIG_BLK_DEV_LOOP_MIN_COUNT to 16
  ANDROID: Incremental fs: Cache successful hash calculations
  ANDROID: Incremental fs: Fix four error-path bugs
  Linux 4.19.127
  net: smsc911x: Fix runtime PM imbalance on error
  net: ethernet: stmmac: Enable interface clocks on probe for IPQ806x
  net/ethernet/freescale: rework quiesce/activate for ucc_geth
  null_blk: return error for invalid zone size
  s390/mm: fix set_huge_pte_at() for empty ptes
  drm/edid: Add Oculus Rift S to non-desktop list
  net: bmac: Fix read of MAC address from ROM
  x86/mmiotrace: Use cpumask_available() for cpumask_var_t variables
  i2c: altera: Fix race between xfer_msg and isr thread
  evm: Fix RCU list related warnings
  ARC: [plat-eznps]: Restrict to CONFIG_ISA_ARCOMPACT
  ARC: Fix ICCM & DCCM runtime size checks
  s390/ftrace: save traced function caller
  spi: dw: use "smp_mb()" to avoid sending spi data error
  powerpc/powernv: Avoid re-registration of imc debugfs directory
  scsi: hisi_sas: Check sas_port before using it
  drm/i915: fix port checks for MST support on gen >= 11
  airo: Fix read overflows sending packets
  net: dsa: mt7530: set CPU port to fallback mode
  scsi: ufs: Release clock if DMA map fails
  mmc: fix compilation of user API
  kernel/relay.c: handle alloc_percpu returning NULL in relay_open
  p54usb: add AirVasT USB stick device-id
  HID: i2c-hid: add Schneider SCL142ALM to descriptor override
  HID: sony: Fix for broken buttons on DS3 USB dongles
  mm: Fix mremap not considering huge pmd devmap
  libnvdimm: Fix endian conversion issues 
  Revert "cgroup: Add memory barriers to plug cgroup_rstat_updated() race window"
  f2fs: fix retry logic in f2fs_write_cache_pages()
  ANDROID: Update ABI representation
  Linux 4.19.126
  mm/vmalloc.c: don't dereference possible NULL pointer in __vunmap()
  netfilter: nf_conntrack_pptp: fix compilation warning with W=1 build
  bonding: Fix reference count leak in bond_sysfs_slave_add.
  crypto: chelsio/chtls: properly set tp->lsndtime
  qlcnic: fix missing release in qlcnic_83xx_interrupt_test.
  xsk: Add overflow check for u64 division, stored into u32
  bnxt_en: Fix accumulation of bp->net_stats_prev.
  esp6: get the right proto for transport mode in esp6_gso_encap
  netfilter: nf_conntrack_pptp: prevent buffer overflows in debug code
  netfilter: nfnetlink_cthelper: unbreak userspace helper support
  netfilter: ipset: Fix subcounter update skip
  netfilter: nft_reject_bridge: enable reject with bridge vlan
  ip_vti: receive ipip packet by calling ip_tunnel_rcv
  vti4: eliminated some duplicate code.
  xfrm: fix error in comment
  xfrm: fix a NULL-ptr deref in xfrm_local_error
  xfrm: fix a warning in xfrm_policy_insert_list
  xfrm interface: fix oops when deleting a x-netns interface
  xfrm: call xfrm_output_gso when inner_protocol is set in xfrm_output
  xfrm: allow to accept packets with ipv6 NEXTHDR_HOP in xfrm_input
  copy_xstate_to_kernel(): don't leave parts of destination uninitialized
  x86/dma: Fix max PFN arithmetic overflow on 32 bit systems
  mac80211: mesh: fix discovery timer re-arming issue / crash
  RDMA/core: Fix double destruction of uobject
  mmc: core: Fix recursive locking issue in CQE recovery path
  parisc: Fix kernel panic in mem_init()
  iommu: Fix reference count leak in iommu_group_alloc.
  include/asm-generic/topology.h: guard cpumask_of_node() macro argument
  fs/binfmt_elf.c: allocate initialized memory in fill_thread_core_info()
  mm: remove VM_BUG_ON(PageSlab()) from page_mapcount()
  IB/ipoib: Fix double free of skb in case of multicast traffic in CM mode
  libceph: ignore pool overlay and cache logic on redirects
  ALSA: hda/realtek - Add new codec supported for ALC287
  ALSA: usb-audio: Quirks for Gigabyte TRX40 Aorus Master onboard audio
  exec: Always set cap_ambient in cap_bprm_set_creds
  ALSA: usb-audio: mixer: volume quirk for ESS Technology Asus USB DAC
  ALSA: hda/realtek - Add a model for Thinkpad T570 without DAC workaround
  ALSA: hwdep: fix a left shifting 1 by 31 UB bug
  RDMA/pvrdma: Fix missing pci disable in pvrdma_pci_probe()
  mmc: block: Fix use-after-free issue for rpmb
  ARM: dts: bcm: HR2: Fix PPI interrupt types
  ARM: dts: bcm2835-rpi-zero-w: Fix led polarity
  ARM: dts/imx6q-bx50v3: Set display interface clock parents
  IB/qib: Call kobject_put() when kobject_init_and_add() fails
  gpio: exar: Fix bad handling for ida_simple_get error path
  ARM: uaccess: fix DACR mismatch with nested exceptions
  ARM: uaccess: integrate uaccess_save and uaccess_restore
  ARM: uaccess: consolidate uaccess asm to asm/uaccess-asm.h
  ARM: 8843/1: use unified assembler in headers
  ARM: 8970/1: decompressor: increase tag size
  Input: synaptics-rmi4 - fix error return code in rmi_driver_probe()
  Input: synaptics-rmi4 - really fix attn_data use-after-free
  Input: i8042 - add ThinkPad S230u to i8042 reset list
  Input: dlink-dir685-touchkeys - fix a typo in driver name
  Input: xpad - add custom init packet for Xbox One S controllers
  Input: evdev - call input_flush_device() on release(), not flush()
  Input: usbtouchscreen - add support for BonXeon TP
  samples: bpf: Fix build error
  cifs: Fix null pointer check in cifs_read
  riscv: stacktrace: Fix undefined reference to `walk_stackframe'
  IB/i40iw: Remove bogus call to netdev_master_upper_dev_get()
  net: freescale: select CONFIG_FIXED_PHY where needed
  usb: gadget: legacy: fix redundant initialization warnings
  usb: dwc3: pci: Enable extcon driver for Intel Merrifield
  cachefiles: Fix race between read_waiter and read_copier involving op->to_do
  gfs2: move privileged user check to gfs2_quota_lock_check
  net: microchip: encx24j600: add missed kthread_stop
  ALSA: usb-audio: add mapping for ASRock TRX40 Creator
  gpio: tegra: mask GPIO IRQs during IRQ shutdown
  ARM: dts: rockchip: fix pinctrl sub nodename for spi in rk322x.dtsi
  ARM: dts: rockchip: swap clock-names of gpu nodes
  arm64: dts: rockchip: swap interrupts interrupt-names rk3399 gpu node
  arm64: dts: rockchip: fix status for &gmac2phy in rk3328-evb.dts
  ARM: dts: rockchip: fix phy nodename for rk3228-evb
  mlxsw: spectrum: Fix use-after-free of split/unsplit/type_set in case reload fails
  net/mlx4_core: fix a memory leak bug.
  net: sun: fix missing release regions in cas_init_one().
  net/mlx5: Annotate mutex destroy for root ns
  net/mlx5e: Update netdev txq on completions during closure
  sctp: Start shutdown on association restart if in SHUTDOWN-SENT state and socket is closed
  sctp: Don't add the shutdown timer if its already been added
  r8152: support additional Microsoft Surface Ethernet Adapter variant
  net sched: fix reporting the first-time use timestamp
  net: revert "net: get rid of an signed integer overflow in ip_idents_reserve()"
  net: qrtr: Fix passing invalid reference to qrtr_local_enqueue()
  net/mlx5: Add command entry handling completion
  net: ipip: fix wrong address family in init error path
  net: inet_csk: Fix so_reuseport bind-address cache in tb->fast*
  __netif_receive_skb_core: pass skb by reference
  net: dsa: mt7530: fix roaming from DSA user ports
  dpaa_eth: fix usage as DSA master, try 3
  ax25: fix setsockopt(SO_BINDTODEVICE)
  ANDROID: modules: fix lockprove warning
  FROMGIT: USB: dummy-hcd: use configurable endpoint naming scheme
  UPSTREAM: usb: raw-gadget: fix null-ptr-deref when reenabling endpoints
  UPSTREAM: usb: raw-gadget: documentation updates
  UPSTREAM: usb: raw-gadget: support stalling/halting/wedging endpoints
  UPSTREAM: usb: raw-gadget: fix gadget endpoint selection
  UPSTREAM: usb: raw-gadget: improve uapi headers comments
  UPSTREAM: usb: raw-gadget: fix return value of ep read ioctls
  UPSTREAM: usb: raw-gadget: fix raw_event_queue_fetch locking
  UPSTREAM: usb: raw-gadget: Fix copy_to/from_user() checks
  f2fs: fix wrong discard space
  f2fs: compress: don't compress any datas after cp stop
  f2fs: remove unneeded return value of __insert_discard_tree()
  f2fs: fix wrong value of tracepoint parameter
  f2fs: protect new segment allocation in expand_inode_data
  f2fs: code cleanup by removing ifdef macro surrounding
  writeback: Avoid skipping inode writeback
  ANDROID: GKI: Update the ABI
  ANDROID: GKI: update whitelist
  ANDROID: GKI: support mm_event for FS/IO/UFS path
  ANDROID: net: bpf: permit redirect from ingress L3 to egress L2 devices at near max mtu
  FROMGIT: driver core: Update device link status correctly for SYNC_STATE_ONLY links
  UPSTREAM: driver core: Fix handling of SYNC_STATE_ONLY + STATELESS device links
  BACKPORT: driver core: Fix SYNC_STATE_ONLY device link implementation
  ANDROID: Bulk update the ABI xml and qcom whitelist
  Revert "ANDROID: Incremental fs: Avoid continually recalculating hashes"
  f2fs: avoid inifinite loop to wait for flushing node pages at cp_error
  f2fs: compress: fix zstd data corruption
  f2fs: add compressed/gc data read IO stat
  f2fs: fix potential use-after-free issue
  f2fs: compress: don't handle non-compressed data in workqueue
  f2fs: remove redundant assignment to variable err
  f2fs: refactor resize_fs to avoid meta updates in progress
  f2fs: use round_up to enhance calculation
  f2fs: introduce F2FS_IOC_RESERVE_COMPRESS_BLOCKS
  f2fs: Avoid double lock for cp_rwsem during checkpoint
  f2fs: report delalloc reserve as non-free in statfs for project quota
  f2fs: Fix wrong stub helper update_sit_info
  f2fs: compress: let lz4 compressor handle output buffer budget properly
  f2fs: remove blk_plugging in block_operations
  f2fs: introduce F2FS_IOC_RELEASE_COMPRESS_BLOCKS
  f2fs: shrink spinlock coverage
  f2fs: correctly fix the parent inode number during fsync()
  f2fs: introduce mempool for {,de}compress intermediate page allocation
  f2fs: introduce f2fs_bmap_compress()
  f2fs: support fiemap on compressed inode
  f2fs: support partial truncation on compressed inode
  f2fs: remove redundant compress inode check
  f2fs: use strcmp() in parse_options()
  f2fs: Use the correct style for SPDX License Identifier

 Conflicts:
	Documentation/devicetree/bindings
	Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.txt
	Documentation/devicetree/bindings/usb/dwc3.txt
	drivers/media/v4l2-core/v4l2-ctrls.c
	drivers/mmc/core/queue.c
	drivers/mmc/host/sdhci-msm.c
	drivers/scsi/ufs/ufs-qcom.c
	drivers/slimbus/qcom-ngd-ctrl.c
	drivers/usb/gadget/composite.c
	fs/crypto/keyring.c
	fs/f2fs/data.c
	include/linux/fs.h
	include/linux/usb/gadget.h
	include/uapi/linux/v4l2-controls.h
	kernel/sched/cpufreq_schedutil.c
	kernel/sched/fair.c
	kernel/time/tick-sched.c
	mm/vmalloc.c
	net/netlink/genetlink.c
	net/qrtr/qrtr.c
	sound/core/compress_offload.c
	sound/soc/soc-compress.c

 Fixed errors:
	drivers/scsi/ufs/ufshcd.c
	drivers/soc/qcom/rq_stats.c

Change-Id: I06ea6a6c3f239045e2947f27af617aa6f523bfdb
Signed-off-by: Srinivasarao P <spathi@codeaurora.org>
2020-10-14 20:04:29 +05:30
Greg Kroah-Hartman
9f80205d66 This is the 4.19.151 stable release
-----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAl+Gt3oACgkQONu9yGCS
 aT4MAQ/+NmMSJHbPu5DRX4qfg+toj9SRdDJfv0H6+dmJ/Wabeogq3GF6VB5ku8fJ
 N5uJLVb+iz/n4cbvTvE1sI+5WEPzK/nRVRnwUUH3SDycB+tCk4loKbGwV+gZTvYi
 PsHqHQ9UUKpdBs4gJm9I/FCOlA4mtcdK2W0JDMfdCmZc3ACyCWo+y83ESAfjOcO9
 vda/1xaeqNPaPFxteVKpmXujlHQw3meH8ZzpkQi7t1HeZ6bnpoObMIy8c1gtYjSt
 jeLvw9pnvgQEpAidIZb3MwVyxHE/mFGRcoQmI0WYoWWXOnRAHUfFQTsK7ZWbTYAF
 MUvJlGg3zchhBetfo2523rdGM9/AHMnwmGAuTs5PkZdPDRwLaWjeFs2u8njmjEk9
 R8SrtF+2zxuO92SPp37jXqRUb7G69vPnlZ6IIcMpr61qeUAf78dWN67VW0kVMs/K
 hMHsl0E1Ax3K9GV9ZSQc7oe7/fMj+xXabpeuDZ/5lxvbBKrIP/UZLMJeZg28y+91
 0JbFhMfEN71sTfCHXpxe9bAvmI1XKlYh37RLAOJtNQRqwKsP2Tuim5C+tJsREmF9
 eAPZq0QrjjTb1t8wii7HKXyjnrSfTpOS7HUPsGbeiU4JSVmWGeLy6IxmjZh1fjY+
 WLr+Hn0Q62w5OGXBxS7rEfq3FMnAEkT/27a5IwrDPoGje+rO6WY=
 =TSOP
 -----END PGP SIGNATURE-----

Merge 4.19.151 into android-4.19-stable

Changes in 4.19.151
	fbdev, newport_con: Move FONT_EXTRA_WORDS macros into linux/font.h
	Fonts: Support FONT_EXTRA_WORDS macros for built-in fonts
	fbcon: Fix global-out-of-bounds read in fbcon_get_font()
	Revert "ravb: Fixed to be able to unload modules"
	net: wireless: nl80211: fix out-of-bounds access in nl80211_del_key()
	drm/nouveau/mem: guard against NULL pointer access in mem_del
	usermodehelper: reset umask to default before executing user process
	platform/x86: intel-vbtn: Fix SW_TABLET_MODE always reporting 1 on the HP Pavilion 11 x360
	platform/x86: thinkpad_acpi: initialize tp_nvram_state variable
	platform/x86: intel-vbtn: Switch to an allow-list for SW_TABLET_MODE reporting
	platform/x86: thinkpad_acpi: re-initialize ACPI buffer size when reuse
	driver core: Fix probe_count imbalance in really_probe()
	perf top: Fix stdio interface input handling with glibc 2.28+
	i2c: i801: Exclude device from suspend direct complete optimization
	mtd: rawnand: sunxi: Fix the probe error path
	arm64: dts: stratix10: add status to qspi dts node
	nvme-core: put ctrl ref when module ref get fail
	macsec: avoid use-after-free in macsec_handle_frame()
	mm/khugepaged: fix filemap page_to_pgoff(page) != offset
	xfrmi: drop ignore_df check before updating pmtu
	cifs: Fix incomplete memory allocation on setxattr path
	i2c: meson: fix clock setting overwrite
	i2c: meson: fixup rate calculation with filter delay
	i2c: owl: Clear NACK and BUS error bits
	sctp: fix sctp_auth_init_hmacs() error path
	team: set dev->needed_headroom in team_setup_by_port()
	net: team: fix memory leak in __team_options_register
	openvswitch: handle DNAT tuple collision
	drm/amdgpu: prevent double kfree ttm->sg
	xfrm: clone XFRMA_SET_MARK in xfrm_do_migrate
	xfrm: clone XFRMA_REPLAY_ESN_VAL in xfrm_do_migrate
	xfrm: clone XFRMA_SEC_CTX in xfrm_do_migrate
	xfrm: clone whole liftime_cur structure in xfrm_do_migrate
	net: stmmac: removed enabling eee in EEE set callback
	platform/x86: fix kconfig dependency warning for FUJITSU_LAPTOP
	xfrm: Use correct address family in xfrm_state_find
	bonding: set dev->needed_headroom in bond_setup_by_slave()
	mdio: fix mdio-thunder.c dependency & build error
	net: usb: ax88179_178a: fix missing stop entry in driver_info
	net/mlx5e: Fix VLAN cleanup flow
	net/mlx5e: Fix VLAN create flow
	rxrpc: Fix rxkad token xdr encoding
	rxrpc: Downgrade the BUG() for unsupported token type in rxrpc_read()
	rxrpc: Fix some missing _bh annotations on locking conn->state_lock
	rxrpc: Fix server keyring leak
	perf: Fix task_function_call() error handling
	mmc: core: don't set limits.discard_granularity as 0
	mm: khugepaged: recalculate min_free_kbytes after memory hotplug as expected by khugepaged
	net: usb: rtl8150: set random MAC address when set_ethernet_addr() fails
	Linux 4.19.151

Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I9ee2b0fc4fc39f27be6ae680529e1046f249a3e6
2020-10-14 12:11:08 +02:00
Vladimir Zapolskiy
eb13209e0c cifs: Fix incomplete memory allocation on setxattr path
commit 64b7f674c292207624b3d788eda2dde3dc1415df upstream.

On setxattr() syscall path due to an apprent typo the size of a dynamically
allocated memory chunk for storing struct smb2_file_full_ea_info object is
computed incorrectly, to be more precise the first addend is the size of
a pointer instead of the wanted object size. Coincidentally it makes no
difference on 64-bit platforms, however on 32-bit targets the following
memcpy() writes 4 bytes of data outside of the dynamically allocated memory.

  =============================================================================
  BUG kmalloc-16 (Not tainted): Redzone overwritten
  -----------------------------------------------------------------------------

  Disabling lock debugging due to kernel taint
  INFO: 0x79e69a6f-0x9e5cdecf @offset=368. First byte 0x73 instead of 0xcc
  INFO: Slab 0xd36d2454 objects=85 used=51 fp=0xf7d0fc7a flags=0x35000201
  INFO: Object 0x6f171df3 @offset=352 fp=0x00000000

  Redzone 5d4ff02d: cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc  ................
  Object 6f171df3: 00 00 00 00 00 05 06 00 73 6e 72 75 62 00 66 69  ........snrub.fi
  Redzone 79e69a6f: 73 68 32 0a                                      sh2.
  Padding 56254d82: 5a 5a 5a 5a 5a 5a 5a 5a                          ZZZZZZZZ
  CPU: 0 PID: 8196 Comm: attr Tainted: G    B             5.9.0-rc8+ #3
  Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.13.0-1 04/01/2014
  Call Trace:
   dump_stack+0x54/0x6e
   print_trailer+0x12c/0x134
   check_bytes_and_report.cold+0x3e/0x69
   check_object+0x18c/0x250
   free_debug_processing+0xfe/0x230
   __slab_free+0x1c0/0x300
   kfree+0x1d3/0x220
   smb2_set_ea+0x27d/0x540
   cifs_xattr_set+0x57f/0x620
   __vfs_setxattr+0x4e/0x60
   __vfs_setxattr_noperm+0x4e/0x100
   __vfs_setxattr_locked+0xae/0xd0
   vfs_setxattr+0x4e/0xe0
   setxattr+0x12c/0x1a0
   path_setxattr+0xa4/0xc0
   __ia32_sys_lsetxattr+0x1d/0x20
   __do_fast_syscall_32+0x40/0x70
   do_fast_syscall_32+0x29/0x60
   do_SYSENTER_32+0x15/0x20
   entry_SYSENTER_32+0x9f/0xf2

Fixes: 5517554e43 ("cifs: Add support for writing attributes on SMB2+")
Signed-off-by: Vladimir Zapolskiy <vladimir@tuxera.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2020-10-14 10:31:23 +02:00
Neeraj Soni
2d6fc51fcd Fix OTA issue with vts fixes for new fbe framework
Fixes for kernel encryption vts test need multiple encryption
flag support which needs additional changes to ensure IV is
generated and calculated correctly for all file systems and
storage types.

Ported and fixed the merged conflicts in cqhci-crypto-qti.c file
(cherry picked from kernel_msm-4.14 commit: 3309411)

Conflicts:
	drivers/mmc/host/cqhci-crypto-qti.c

Test:
1) Flashed Q meta, create multiple files under /data.
2) Build R (include changes topic: 660_OTA_FIXES) and flash
   APPS images of R except userdata and boot the device.
3) Device booted upto UI.
4) Files created with Q build retained.
5) Created new files under /data and checked retention across
   multiple re-boots.

Change-Id: I78ffe24be53056270caebcb6d37924c7c25c1ece
Signed-off-by: Neeraj Soni <neersoni@codeaurora.org>
Signed-off-by: Jiten Patel <jitepate@codeaurora.org>
2020-10-13 18:17:43 +05:30
Greg Kroah-Hartman
2dce03a5c2 This is the 4.19.150 stable release
-----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAl99WYoACgkQONu9yGCS
 aT75hA/+Lu0udzlCD/Uw1SDFKPo3Xed6hFiFUOHHtQxVel9r3DNOX1+kfNAH5ifo
 G2NW6O25Bl4qxmG02QRW85r7JRHhoMQOx1DldLGlJCfcgmVcwEaiRg6HgMh+9OiC
 qPAuE6zbB5h97dPQppe5u7e6pzjrsTgR6pYlnuwPVF6TSmTYXM3OGubXItOyneRZ
 ePnzH9w4bk/n4UAARYOowfFhRnO/Qml+QPxc8rFbK2inGXCJ31QLITJCa3Y3KXP3
 AC2aM2M8B04GJBFhXH8pLFrzvB/+S1DwzmtT3d6TWdQRqdSr+GAPJ/3jX2eKMuwK
 6vfF/caGvfYpomEFCHFKyLxmFwhbSEfVD0ht4jr3aiF/E0ii8sXKN8mnnowpNFpG
 23kG+baxxe1ZbjXw4VjtGGXruJQ6im5o7siRnmfKYv18Fo5O3yEga9pCjOdkHT20
 gjes0GfTtgr3nrlW19B03ZYL7p3ri46NlY7Zlawvtz3dlWY9rTkII3nxD5k5Ywxs
 KgDVpREwr7LuKOgGTxkwLGHNEF7b1mJrjdrlX/X2SDJD/IQc3xdD5382lXSQRaem
 QaZhu6S6SNCjI9fGQ7jOYMR3ouGegFsPOnr6BQxvKmoolsUzXTeTxR0u2R5dqYGI
 1RwmuTIQTvURoFy1XyhNyLJAbCvk+9BeNp8I5/YTNbvkFKlnawM=
 =qKZh
 -----END PGP SIGNATURE-----

Merge 4.19.150 into android-4.19-stable

Changes in 4.19.150
	mmc: sdhci: Workaround broken command queuing on Intel GLK based IRBIS models
	USB: gadget: f_ncm: Fix NDP16 datagram validation
	gpio: mockup: fix resource leak in error path
	gpio: tc35894: fix up tc35894 interrupt configuration
	clk: socfpga: stratix10: fix the divider for the emac_ptp_free_clk
	vsock/virtio: use RCU to avoid use-after-free on the_virtio_vsock
	vsock/virtio: stop workers during the .remove()
	vsock/virtio: add transport parameter to the virtio_transport_reset_no_sock()
	net: virtio_vsock: Enhance connection semantics
	Input: i8042 - add nopnp quirk for Acer Aspire 5 A515
	ftrace: Move RCU is watching check after recursion check
	drm/amdgpu: restore proper ref count in amdgpu_display_crtc_set_config
	drivers/net/wan/hdlc_fr: Add needed_headroom for PVC devices
	drm/sun4i: mixer: Extend regmap max_register
	net: dec: de2104x: Increase receive ring size for Tulip
	rndis_host: increase sleep time in the query-response loop
	nvme-core: get/put ctrl and transport module in nvme_dev_open/release()
	drivers/net/wan/lapbether: Make skb->protocol consistent with the header
	drivers/net/wan/hdlc: Set skb->protocol before transmitting
	mac80211: do not allow bigger VHT MPDUs than the hardware supports
	spi: fsl-espi: Only process interrupts for expected events
	nvme-fc: fail new connections to a deleted host or remote port
	gpio: sprd: Clear interrupt when setting the type as edge
	pinctrl: mvebu: Fix i2c sda definition for 98DX3236
	nfs: Fix security label length not being reset
	clk: samsung: exynos4: mark 'chipid' clock as CLK_IGNORE_UNUSED
	iommu/exynos: add missing put_device() call in exynos_iommu_of_xlate()
	i2c: cpm: Fix i2c_ram structure
	Input: trackpoint - enable Synaptics trackpoints
	random32: Restore __latent_entropy attribute on net_rand_state
	mm: replace memmap_context by meminit_context
	mm: don't rely on system state to detect hot-plug operations
	net/packet: fix overflow in tpacket_rcv
	epoll: do not insert into poll queues until all sanity checks are done
	epoll: replace ->visited/visited_list with generation count
	epoll: EPOLL_CTL_ADD: close the race in decision to take fast path
	ep_create_wakeup_source(): dentry name can change under you...
	netfilter: ctnetlink: add a range check for l3/l4 protonum
	Linux 4.19.150

Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: Ib6f1b6fce01bec80efd4a905d03903ff20ca89be
2020-10-07 08:45:35 +02:00
Al Viro
ced8ce5d21 ep_create_wakeup_source(): dentry name can change under you...
commit 3701cb59d892b88d569427586f01491552f377b1 upstream.

or get freed, for that matter, if it's a long (separately stored)
name.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2020-10-07 08:00:09 +02:00
Al Viro
90ef231ba5 epoll: EPOLL_CTL_ADD: close the race in decision to take fast path
commit fe0a916c1eae8e17e86c3753d13919177d63ed7e upstream.

Checking for the lack of epitems refering to the epoll we want to insert into
is not enough; we might have an insertion of that epoll into another one that
has already collected the set of files to recheck for excessive reverse paths,
but hasn't gotten to creating/inserting the epitem for it.

However, any such insertion in progress can be detected - it will update the
generation count in our epoll when it's done looking through it for files
to check.  That gets done under ->mtx of our epoll and that allows us to
detect that safely.

We are *not* holding epmutex here, so the generation count is not stable.
However, since both the update of ep->gen by loop check and (later)
insertion into ->f_ep_link are done with ep->mtx held, we are fine -
the sequence is
	grab epmutex
	bump loop_check_gen
	...
	grab tep->mtx		// 1
	tep->gen = loop_check_gen
	...
	drop tep->mtx		// 2
	...
	grab tep->mtx		// 3
	...
	insert into ->f_ep_link
	...
	drop tep->mtx		// 4
	bump loop_check_gen
	drop epmutex
and if the fastpath check in another thread happens for that
eventpoll, it can come
	* before (1) - in that case fastpath is just fine
	* after (4) - we'll see non-empty ->f_ep_link, slow path
taken
	* between (2) and (3) - loop_check_gen is stable,
with ->mtx providing barriers and we end up taking slow path.

Note that ->f_ep_link emptiness check is slightly racy - we are protected
against insertions into that list, but removals can happen right under us.
Not a problem - in the worst case we'll end up taking a slow path for
no good reason.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2020-10-07 08:00:09 +02:00
Al Viro
ff329915a5 epoll: replace ->visited/visited_list with generation count
commit 18306c404abe18a0972587a6266830583c60c928 upstream.

removes the need to clear it, along with the races.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2020-10-07 08:00:08 +02:00
Al Viro
3e3bbc4d23 epoll: do not insert into poll queues until all sanity checks are done
commit f8d4f44df056c5b504b0d49683fb7279218fd207 upstream.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2020-10-07 08:00:08 +02:00
Jeffrey Mitchell
345c6f260c nfs: Fix security label length not being reset
[ Upstream commit d33030e2ee3508d65db5644551435310df86010e ]

nfs_readdir_page_filler() iterates over entries in a directory, reusing
the same security label buffer, but does not reset the buffer's length.
This causes decode_attr_security_label() to return -ERANGE if an entry's
security label is longer than the previous one's. This error, in
nfs4_decode_dirent(), only gets passed up as -EAGAIN, which causes another
failed attempt to copy into the buffer. The second error is ignored and
the remaining entries do not show up in ls, specifically the getdents64()
syscall.

Reproduce by creating multiple files in NFS and giving one of the later
files a longer security label. ls will not see that file nor any that are
added afterwards, though they will exist on the backend.

In nfs_readdir_page_filler(), reset security label buffer length before
every reuse

Signed-off-by: Jeffrey Mitchell <jeffrey.mitchell@starlab.io>
Fixes: b4487b935452 ("nfs: Fix getxattr kernel panic and memory overflow")
Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2020-10-07 08:00:07 +02:00
Greg Kroah-Hartman
9ce79d9bed This is the 4.19.149 stable release
-----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAl91ulMACgkQONu9yGCS
 aT7ezhAArTOQxPGkhktgdGfCMYgjvIHdny8o4pNGumnxW6TG7FCiJHoZuj8OLkdx
 2x5brOOvSGgcGTOwJXyUjL6opQzD5syTCuzbgEpGB2Tyd1x5q8vgqvI2XPxZeYHy
 x+mUDgacT+4m7FNbFDhNMZoTS4KCiJ3IcTevjeQexDtIs6R38HhxNl0Ee67gkqxZ
 p7c6L3kbUuR5T9EWGE1DPPLhOFGeOMk592qzkFsCGERsuswQOpXrxyw6zkik/0UG
 6Losmo2i+OtQFeiDz0WYJZNO9ySI511j+7R2Ewch/nFuTp6yFzy9kJZnP0YWK/KE
 U4BLmopgzCs9q+TQ/QNjxlCltl4eOrrjkFXF3Zz8o5ddbKwrugEsJUdUUDIpva71
 qEUgSw7vguGKoCttBenCDwyYOcjIVJRBFSWTVDzkgw5pXrz3m7qePF1Kj+KzG0pN
 8gTqosXPlYPzH1mh+2vRVntiCpZRMJYo18CX+ifqN20dHH3dsM4vA5NiWwjTJVY8
 JddRXfujxBQ0jxs2jFKvPZNrgqeY3Mh51L0a5G+HbHCIb+4kgD+2jl+C/X38TKch
 osTM1/qQriFVxtlH9TkTa8opYvrYBWO+G+XhNVc2tSpmd8T2EaKokMAVVvGiK3l9
 ZPq06SytJyKDPsSLvk4BKxCUv5CY0VT18k6mCYd1fq4oxTR92A4=
 =5bC5
 -----END PGP SIGNATURE-----

Merge 4.19.149 into android-4.19-stable

Changes in 4.19.149
	selinux: allow labeling before policy is loaded
	media: mc-device.c: fix memleak in media_device_register_entity
	dma-fence: Serialise signal enabling (dma_fence_enable_sw_signaling)
	ath10k: fix array out-of-bounds access
	ath10k: fix memory leak for tpc_stats_final
	mm: fix double page fault on arm64 if PTE_AF is cleared
	scsi: aacraid: fix illegal IO beyond last LBA
	m68k: q40: Fix info-leak in rtc_ioctl
	gma/gma500: fix a memory disclosure bug due to uninitialized bytes
	ASoC: kirkwood: fix IRQ error handling
	media: smiapp: Fix error handling at NVM reading
	arch/x86/lib/usercopy_64.c: fix __copy_user_flushcache() cache writeback
	x86/ioapic: Unbreak check_timer()
	ALSA: usb-audio: Add delay quirk for H570e USB headsets
	ALSA: hda/realtek - Couldn't detect Mic if booting with headset plugged
	ALSA: hda/realtek: Enable front panel headset LED on Lenovo ThinkStation P520
	lib/string.c: implement stpcpy
	leds: mlxreg: Fix possible buffer overflow
	PM / devfreq: tegra30: Fix integer overflow on CPU's freq max out
	scsi: fnic: fix use after free
	scsi: lpfc: Fix kernel crash at lpfc_nvme_info_show during remote port bounce
	net: silence data-races on sk_backlog.tail
	clk/ti/adpll: allocate room for terminating null
	drm/amdgpu/powerplay: fix AVFS handling with custom powerplay table
	mtd: cfi_cmdset_0002: don't free cfi->cfiq in error path of cfi_amdstd_setup()
	mfd: mfd-core: Protect against NULL call-back function pointer
	drm/amdgpu/powerplay/smu7: fix AVFS handling with custom powerplay table
	tpm_crb: fix fTPM on AMD Zen+ CPUs
	tracing: Adding NULL checks for trace_array descriptor pointer
	bcache: fix a lost wake-up problem caused by mca_cannibalize_lock
	dmaengine: mediatek: hsdma_probe: fixed a memory leak when devm_request_irq fails
	RDMA/qedr: Fix potential use after free
	RDMA/i40iw: Fix potential use after free
	fix dget_parent() fastpath race
	xfs: fix attr leaf header freemap.size underflow
	RDMA/iw_cgxb4: Fix an error handling path in 'c4iw_connect()'
	ubi: Fix producing anchor PEBs
	mmc: core: Fix size overflow for mmc partitions
	gfs2: clean up iopen glock mess in gfs2_create_inode
	scsi: pm80xx: Cleanup command when a reset times out
	debugfs: Fix !DEBUG_FS debugfs_create_automount
	CIFS: Properly process SMB3 lease breaks
	ASoC: max98090: remove msleep in PLL unlocked workaround
	kernel/sys.c: avoid copying possible padding bytes in copy_to_user
	KVM: arm/arm64: vgic: Fix potential double free dist->spis in __kvm_vgic_destroy()
	xfs: fix log reservation overflows when allocating large rt extents
	neigh_stat_seq_next() should increase position index
	rt_cpu_seq_next should increase position index
	ipv6_route_seq_next should increase position index
	seqlock: Require WRITE_ONCE surrounding raw_seqcount_barrier
	media: ti-vpe: cal: Restrict DMA to avoid memory corruption
	sctp: move trace_sctp_probe_path into sctp_outq_sack
	ACPI: EC: Reference count query handlers under lock
	scsi: ufs: Make ufshcd_add_command_trace() easier to read
	scsi: ufs: Fix a race condition in the tracing code
	dmaengine: zynqmp_dma: fix burst length configuration
	s390/cpum_sf: Use kzalloc and minor changes
	powerpc/eeh: Only dump stack once if an MMIO loop is detected
	Bluetooth: btrtl: Use kvmalloc for FW allocations
	tracing: Set kernel_stack's caller size properly
	ARM: 8948/1: Prevent OOB access in stacktrace
	ar5523: Add USB ID of SMCWUSBT-G2 wireless adapter
	ceph: ensure we have a new cap before continuing in fill_inode
	selftests/ftrace: fix glob selftest
	tools/power/x86/intel_pstate_tracer: changes for python 3 compatibility
	Bluetooth: Fix refcount use-after-free issue
	mm/swapfile.c: swap_next should increase position index
	mm: pagewalk: fix termination condition in walk_pte_range()
	Bluetooth: prefetch channel before killing sock
	KVM: fix overflow of zero page refcount with ksm running
	ALSA: hda: Clear RIRB status before reading WP
	skbuff: fix a data race in skb_queue_len()
	audit: CONFIG_CHANGE don't log internal bookkeeping as an event
	selinux: sel_avc_get_stat_idx should increase position index
	scsi: lpfc: Fix RQ buffer leakage when no IOCBs available
	scsi: lpfc: Fix coverity errors in fmdi attribute handling
	drm/omap: fix possible object reference leak
	clk: stratix10: use do_div() for 64-bit calculation
	crypto: chelsio - This fixes the kernel panic which occurs during a libkcapi test
	mt76: clear skb pointers from rx aggregation reorder buffer during cleanup
	ALSA: usb-audio: Don't create a mixer element with bogus volume range
	perf test: Fix test trace+probe_vfs_getname.sh on s390
	RDMA/rxe: Fix configuration of atomic queue pair attributes
	KVM: x86: fix incorrect comparison in trace event
	dmaengine: stm32-mdma: use vchan_terminate_vdesc() in .terminate_all
	media: staging/imx: Missing assignment in imx_media_capture_device_register()
	x86/pkeys: Add check for pkey "overflow"
	bpf: Remove recursion prevention from rcu free callback
	dmaengine: stm32-dma: use vchan_terminate_vdesc() in .terminate_all
	dmaengine: tegra-apb: Prevent race conditions on channel's freeing
	drm/amd/display: dal_ddc_i2c_payloads_create can fail causing panic
	firmware: arm_sdei: Use cpus_read_lock() to avoid races with cpuhp
	random: fix data races at timer_rand_state
	bus: hisi_lpc: Fixup IO ports addresses to avoid use-after-free in host removal
	media: go7007: Fix URB type for interrupt handling
	Bluetooth: guard against controllers sending zero'd events
	timekeeping: Prevent 32bit truncation in scale64_check_overflow()
	ext4: fix a data race at inode->i_disksize
	perf jevents: Fix leak of mapfile memory
	mm: avoid data corruption on CoW fault into PFN-mapped VMA
	drm/amdgpu: increase atombios cmd timeout
	drm/amd/display: Stop if retimer is not available
	ath10k: use kzalloc to read for ath10k_sdio_hif_diag_read
	scsi: aacraid: Disabling TM path and only processing IOP reset
	Bluetooth: L2CAP: handle l2cap config request during open state
	media: tda10071: fix unsigned sign extension overflow
	xfs: don't ever return a stale pointer from __xfs_dir3_free_read
	xfs: mark dir corrupt when lookup-by-hash fails
	ext4: mark block bitmap corrupted when found instead of BUGON
	tpm: ibmvtpm: Wait for buffer to be set before proceeding
	rtc: sa1100: fix possible race condition
	rtc: ds1374: fix possible race condition
	nfsd: Don't add locks to closed or closing open stateids
	RDMA/cm: Remove a race freeing timewait_info
	KVM: PPC: Book3S HV: Treat TM-related invalid form instructions on P9 like the valid ones
	drm/msm: fix leaks if initialization fails
	drm/msm/a5xx: Always set an OPP supported hardware value
	tracing: Use address-of operator on section symbols
	thermal: rcar_thermal: Handle probe error gracefully
	perf parse-events: Fix 3 use after frees found with clang ASAN
	serial: 8250_port: Don't service RX FIFO if throttled
	serial: 8250_omap: Fix sleeping function called from invalid context during probe
	serial: 8250: 8250_omap: Terminate DMA before pushing data on RX timeout
	perf cpumap: Fix snprintf overflow check
	cpufreq: powernv: Fix frame-size-overflow in powernv_cpufreq_work_fn
	tools: gpio-hammer: Avoid potential overflow in main
	nvme-multipath: do not reset on unknown status
	nvme: Fix controller creation races with teardown flow
	RDMA/rxe: Set sys_image_guid to be aligned with HW IB devices
	scsi: hpsa: correct race condition in offload enabled
	SUNRPC: Fix a potential buffer overflow in 'svc_print_xprts()'
	svcrdma: Fix leak of transport addresses
	PCI: Use ioremap(), not phys_to_virt() for platform ROM
	ubifs: Fix out-of-bounds memory access caused by abnormal value of node_len
	ALSA: usb-audio: Fix case when USB MIDI interface has more than one extra endpoint descriptor
	PCI: pciehp: Fix MSI interrupt race
	NFS: Fix races nfs_page_group_destroy() vs nfs_destroy_unlinked_subrequests()
	mm/kmemleak.c: use address-of operator on section symbols
	mm/filemap.c: clear page error before actual read
	mm/vmscan.c: fix data races using kswapd_classzone_idx
	nvmet-rdma: fix double free of rdma queue
	mm/mmap.c: initialize align_offset explicitly for vm_unmapped_area
	scsi: qedi: Fix termination timeouts in session logout
	serial: uartps: Wait for tx_empty in console setup
	KVM: Remove CREATE_IRQCHIP/SET_PIT2 race
	bdev: Reduce time holding bd_mutex in sync in blkdev_close()
	drivers: char: tlclk.c: Avoid data race between init and interrupt handler
	KVM: arm64: vgic-its: Fix memory leak on the error path of vgic_add_lpi()
	net: openvswitch: use u64 for meter bucket
	scsi: aacraid: Fix error handling paths in aac_probe_one()
	staging:r8188eu: avoid skb_clone for amsdu to msdu conversion
	sparc64: vcc: Fix error return code in vcc_probe()
	arm64: cpufeature: Relax checks for AArch32 support at EL[0-2]
	dt-bindings: sound: wm8994: Correct required supplies based on actual implementaion
	atm: fix a memory leak of vcc->user_back
	perf mem2node: Avoid double free related to realloc
	power: supply: max17040: Correct voltage reading
	phy: samsung: s5pv210-usb2: Add delay after reset
	Bluetooth: Handle Inquiry Cancel error after Inquiry Complete
	USB: EHCI: ehci-mv: fix error handling in mv_ehci_probe()
	tipc: fix memory leak in service subscripting
	tty: serial: samsung: Correct clock selection logic
	ALSA: hda: Fix potential race in unsol event handler
	powerpc/traps: Make unrecoverable NMIs die instead of panic
	fuse: don't check refcount after stealing page
	USB: EHCI: ehci-mv: fix less than zero comparison of an unsigned int
	scsi: cxlflash: Fix error return code in cxlflash_probe()
	arm64/cpufeature: Drop TraceFilt feature exposure from ID_DFR0 register
	e1000: Do not perform reset in reset_task if we are already down
	drm/nouveau/debugfs: fix runtime pm imbalance on error
	drm/nouveau: fix runtime pm imbalance on error
	drm/nouveau/dispnv50: fix runtime pm imbalance on error
	printk: handle blank console arguments passed in.
	usb: dwc3: Increase timeout for CmdAct cleared by device controller
	btrfs: don't force read-only after error in drop snapshot
	vfio/pci: fix memory leaks of eventfd ctx
	perf evsel: Fix 2 memory leaks
	perf trace: Fix the selection for architectures to generate the errno name tables
	perf stat: Fix duration_time value for higher intervals
	perf util: Fix memory leak of prefix_if_not_in
	perf metricgroup: Free metric_events on error
	perf kcore_copy: Fix module map when there are no modules loaded
	ASoC: img-i2s-out: Fix runtime PM imbalance on error
	wlcore: fix runtime pm imbalance in wl1271_tx_work
	wlcore: fix runtime pm imbalance in wlcore_regdomain_config
	mtd: rawnand: omap_elm: Fix runtime PM imbalance on error
	PCI: tegra: Fix runtime PM imbalance on error
	ceph: fix potential race in ceph_check_caps
	mm/swap_state: fix a data race in swapin_nr_pages
	rapidio: avoid data race between file operation callbacks and mport_cdev_add().
	mtd: parser: cmdline: Support MTD names containing one or more colons
	x86/speculation/mds: Mark mds_user_clear_cpu_buffers() __always_inline
	vfio/pci: Clear error and request eventfd ctx after releasing
	cifs: Fix double add page to memcg when cifs_readpages
	nvme: fix possible deadlock when I/O is blocked
	scsi: libfc: Handling of extra kref
	scsi: libfc: Skip additional kref updating work event
	selftests/x86/syscall_nt: Clear weird flags after each test
	vfio/pci: fix racy on error and request eventfd ctx
	btrfs: qgroup: fix data leak caused by race between writeback and truncate
	ubi: fastmap: Free unused fastmap anchor peb during detach
	perf parse-events: Use strcmp() to compare the PMU name
	net: openvswitch: use div_u64() for 64-by-32 divisions
	nvme: explicitly update mpath disk capacity on revalidation
	ASoC: wm8994: Skip setting of the WM8994_MICBIAS register for WM1811
	ASoC: wm8994: Ensure the device is resumed in wm89xx_mic_detect functions
	ASoC: Intel: bytcr_rt5640: Add quirk for MPMAN Converter9 2-in-1
	RISC-V: Take text_mutex in ftrace_init_nop()
	s390/init: add missing __init annotations
	lockdep: fix order in trace_hardirqs_off_caller()
	drm/amdkfd: fix a memory leak issue
	i2c: core: Call i2c_acpi_install_space_handler() before i2c_acpi_register_devices()
	objtool: Fix noreturn detection for ignored functions
	ieee802154: fix one possible memleak in ca8210_dev_com_init
	ieee802154/adf7242: check status of adf7242_read_reg
	clocksource/drivers/h8300_timer8: Fix wrong return value in h8300_8timer_init()
	mwifiex: Increase AES key storage size to 256 bits
	batman-adv: bla: fix type misuse for backbone_gw hash indexing
	atm: eni: fix the missed pci_disable_device() for eni_init_one()
	batman-adv: mcast/TT: fix wrongly dropped or rerouted packets
	mac802154: tx: fix use-after-free
	bpf: Fix clobbering of r2 in bpf_gen_ld_abs
	drm/vc4/vc4_hdmi: fill ASoC card owner
	net: qed: RDMA personality shouldn't fail VF load
	drm/sun4i: sun8i-csc: Secondary CSC register correction
	batman-adv: Add missing include for in_interrupt()
	batman-adv: mcast: fix duplicate mcast packets in BLA backbone from mesh
	batman-adv: mcast: fix duplicate mcast packets from BLA backbone to mesh
	bpf: Fix a rcu warning for bpffs map pretty-print
	ALSA: asihpi: fix iounmap in error handler
	regmap: fix page selection for noinc reads
	MIPS: Add the missing 'CPU_1074K' into __get_cpu_type()
	KVM: x86: Reset MMU context if guest toggles CR4.SMAP or CR4.PKE
	KVM: SVM: Add a dedicated INVD intercept routine
	tracing: fix double free
	s390/dasd: Fix zero write for FBA devices
	kprobes: Fix to check probe enabled before disarm_kprobe_ftrace()
	mm, THP, swap: fix allocating cluster for swapfile by mistake
	s390/zcrypt: Fix ZCRYPT_PERDEV_REQCNT ioctl
	kprobes: Fix compiler warning for !CONFIG_KPROBES_ON_FTRACE
	ata: define AC_ERR_OK
	ata: make qc_prep return ata_completion_errors
	ata: sata_mv, avoid trigerrable BUG_ON
	KVM: arm64: Assume write fault on S1PTW permission fault on instruction fetch
	Linux 4.19.149

Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: Idfc1b35ec63b4b464aeb6e32709102bee0efc872
2020-10-01 16:49:05 +02:00
Qu Wenruo
803b2f2f9c btrfs: qgroup: fix data leak caused by race between writeback and truncate
[ Upstream commit fa91e4aa1716004ea8096d5185ec0451e206aea0 ]

[BUG]
When running tests like generic/013 on test device with btrfs quota
enabled, it can normally lead to data leak, detected at unmount time:

  BTRFS warning (device dm-3): qgroup 0/5 has unreleased space, type 0 rsv 4096
  ------------[ cut here ]------------
  WARNING: CPU: 11 PID: 16386 at fs/btrfs/disk-io.c:4142 close_ctree+0x1dc/0x323 [btrfs]
  RIP: 0010:close_ctree+0x1dc/0x323 [btrfs]
  Call Trace:
   btrfs_put_super+0x15/0x17 [btrfs]
   generic_shutdown_super+0x72/0x110
   kill_anon_super+0x18/0x30
   btrfs_kill_super+0x17/0x30 [btrfs]
   deactivate_locked_super+0x3b/0xa0
   deactivate_super+0x40/0x50
   cleanup_mnt+0x135/0x190
   __cleanup_mnt+0x12/0x20
   task_work_run+0x64/0xb0
   __prepare_exit_to_usermode+0x1bc/0x1c0
   __syscall_return_slowpath+0x47/0x230
   do_syscall_64+0x64/0xb0
   entry_SYSCALL_64_after_hwframe+0x44/0xa9
  ---[ end trace caf08beafeca2392 ]---
  BTRFS error (device dm-3): qgroup reserved space leaked

[CAUSE]
In the offending case, the offending operations are:
2/6: writev f2X[269 1 0 0 0 0] [1006997,67,288] 0
2/7: truncate f2X[269 1 0 0 48 1026293] 18388 0

The following sequence of events could happen after the writev():
	CPU1 (writeback)		|		CPU2 (truncate)
-----------------------------------------------------------------
btrfs_writepages()			|
|- extent_write_cache_pages()		|
   |- Got page for 1003520		|
   |  1003520 is Dirty, no writeback	|
   |  So (!clear_page_dirty_for_io())   |
   |  gets called for it		|
   |- Now page 1003520 is Clean.	|
   |					| btrfs_setattr()
   |					| |- btrfs_setsize()
   |					|    |- truncate_setsize()
   |					|       New i_size is 18388
   |- __extent_writepage()		|
   |  |- page_offset() > i_size		|
      |- btrfs_invalidatepage()		|
	 |- Page is clean, so no qgroup |
	    callback executed

This means, the qgroup reserved data space is not properly released in
btrfs_invalidatepage() as the page is Clean.

[FIX]
Instead of checking the dirty bit of a page, call
btrfs_qgroup_free_data() unconditionally in btrfs_invalidatepage().

As qgroup rsv are completely bound to the QGROUP_RESERVED bit of
io_tree, not bound to page status, thus we won't cause double freeing
anyway.

Fixes: 0b34c261e2 ("btrfs: qgroup: Prevent qgroup->reserved from going subzero")
CC: stable@vger.kernel.org # 4.14+
Reviewed-by: Josef Bacik <josef@toxicpanda.com>
Signed-off-by: Qu Wenruo <wqu@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2020-10-01 13:14:49 +02:00
Zhang Xiaoxu
5f7ca306c7 cifs: Fix double add page to memcg when cifs_readpages
[ Upstream commit 95a3d8f3af9b0d63b43f221b630beaab9739d13a ]

When xfstests generic/451, there is an BUG at mm/memcontrol.c:
  page:ffffea000560f2c0 refcount:2 mapcount:0 mapping:000000008544e0ea
       index:0xf
  mapping->aops:cifs_addr_ops dentry name:"tst-aio-dio-cycle-write.451"
  flags: 0x2fffff80000001(locked)
  raw: 002fffff80000001 ffffc90002023c50 ffffea0005280088 ffff88815cda0210
  raw: 000000000000000f 0000000000000000 00000002ffffffff ffff88817287d000
  page dumped because: VM_BUG_ON_PAGE(page->mem_cgroup)
  page->mem_cgroup:ffff88817287d000
  ------------[ cut here ]------------
  kernel BUG at mm/memcontrol.c:2659!
  invalid opcode: 0000 [#1] SMP
  CPU: 2 PID: 2038 Comm: xfs_io Not tainted 5.8.0-rc1 #44
  Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS ?-20190727_
    073836-buildvm-ppc64le-16.ppc.4
  RIP: 0010:commit_charge+0x35/0x50
  Code: 0d 48 83 05 54 b2 02 05 01 48 89 77 38 c3 48 c7
        c6 78 4a ea ba 48 83 05 38 b2 02 05 01 e8 63 0d9
  RSP: 0018:ffffc90002023a50 EFLAGS: 00010202
  RAX: 0000000000000000 RBX: ffff88817287d000 RCX: 0000000000000000
  RDX: 0000000000000000 RSI: ffff88817ac97ea0 RDI: ffff88817ac97ea0
  RBP: ffffea000560f2c0 R08: 0000000000000203 R09: 0000000000000005
  R10: 0000000000000030 R11: ffffc900020237a8 R12: 0000000000000000
  R13: 0000000000000001 R14: 0000000000000001 R15: ffff88815a1272c0
  FS:  00007f5071ab0800(0000) GS:ffff88817ac80000(0000) knlGS:0000000000000000
  CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
  CR2: 000055efcd5ca000 CR3: 000000015d312000 CR4: 00000000000006e0
  DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
  DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
  Call Trace:
   mem_cgroup_charge+0x166/0x4f0
   __add_to_page_cache_locked+0x4a9/0x710
   add_to_page_cache_locked+0x15/0x20
   cifs_readpages+0x217/0x1270
   read_pages+0x29a/0x670
   page_cache_readahead_unbounded+0x24f/0x390
   __do_page_cache_readahead+0x3f/0x60
   ondemand_readahead+0x1f1/0x470
   page_cache_async_readahead+0x14c/0x170
   generic_file_buffered_read+0x5df/0x1100
   generic_file_read_iter+0x10c/0x1d0
   cifs_strict_readv+0x139/0x170
   new_sync_read+0x164/0x250
   __vfs_read+0x39/0x60
   vfs_read+0xb5/0x1e0
   ksys_pread64+0x85/0xf0
   __x64_sys_pread64+0x22/0x30
   do_syscall_64+0x69/0x150
   entry_SYSCALL_64_after_hwframe+0x44/0xa9
  RIP: 0033:0x7f5071fcb1af
  Code: Bad RIP value.
  RSP: 002b:00007ffde2cdb8e0 EFLAGS: 00000293 ORIG_RAX: 0000000000000011
  RAX: ffffffffffffffda RBX: 00007ffde2cdb990 RCX: 00007f5071fcb1af
  RDX: 0000000000001000 RSI: 000055efcd5ca000 RDI: 0000000000000003
  RBP: 0000000000000003 R08: 0000000000000000 R09: 0000000000000000
  R10: 0000000000001000 R11: 0000000000000293 R12: 0000000000000001
  R13: 000000000009f000 R14: 0000000000000000 R15: 0000000000001000
  Modules linked in:
  ---[ end trace 725fa14a3e1af65c ]---

Since commit 3fea5a499d57 ("mm: memcontrol: convert page cache to a new
mem_cgroup_charge() API") not cancel the page charge, the pages maybe
double add to pagecache:
thread1                       | thread2
cifs_readpages
readpages_get_pages
 add_to_page_cache_locked(head,index=n)=0
                              | readpages_get_pages
                              | add_to_page_cache_locked(head,index=n+1)=0
 add_to_page_cache_locked(head, index=n+1)=-EEXIST
 then, will next loop with list head page's
 index=n+1 and the page->mapping not NULL
readpages_get_pages
add_to_page_cache_locked(head, index=n+1)
 commit_charge
  VM_BUG_ON_PAGE

So, we should not do the next loop when any page add to page cache
failed.

Reported-by: Hulk Robot <hulkci@huawei.com>
Signed-off-by: Zhang Xiaoxu <zhangxiaoxu5@huawei.com>
Signed-off-by: Steve French <stfrench@microsoft.com>
Acked-by: Ronnie Sahlberg <lsahlber@redhat.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2020-10-01 13:14:48 +02:00
Jeff Layton
c42c61e982 ceph: fix potential race in ceph_check_caps
[ Upstream commit dc3da0461cc4b76f2d0c5b12247fcb3b520edbbf ]

Nothing ensures that session will still be valid by the time we
dereference the pointer. Take and put a reference.

In principle, we should always be able to get a reference here, but
throw a warning if that's ever not the case.

Signed-off-by: Jeff Layton <jlayton@kernel.org>
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2020-10-01 13:14:47 +02:00
David Sterba
5915b8ecb1 btrfs: don't force read-only after error in drop snapshot
[ Upstream commit 7c09c03091ac562ddca2b393e5d65c1d37da79f1 ]

Deleting a subvolume on a full filesystem leads to ENOSPC followed by a
forced read-only. This is not a transaction abort and the filesystem is
otherwise ok, so the error should be just propagated to the callers.

This is caused by unnecessary call to btrfs_handle_fs_error for all
errors, except EAGAIN. This does not make sense as the standard
transaction abort mechanism is in btrfs_drop_snapshot so all relevant
failures are handled.

Originally in commit cb1b69f450 ("Btrfs: forced readonly when
btrfs_drop_snapshot() fails") there was no return value at all, so the
btrfs_std_error made some sense but once the error handling and
propagation has been implemented we don't need it anymore.

Signed-off-by: David Sterba <dsterba@suse.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2020-10-01 13:14:46 +02:00
Miklos Szeredi
59da76a171 fuse: don't check refcount after stealing page
[ Upstream commit 32f98877c57bee6bc27f443a96f49678a2cd6a50 ]

page_count() is unstable.  Unless there has been an RCU grace period
between when the page was removed from the page cache and now, a
speculative reference may exist from the page cache.

Reported-by: Matthew Wilcox <willy@infradead.org>
Signed-off-by: Miklos Szeredi <mszeredi@redhat.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2020-10-01 13:14:44 +02:00
Douglas Anderson
b6256c2966 bdev: Reduce time holding bd_mutex in sync in blkdev_close()
[ Upstream commit b849dd84b6ccfe32622988b79b7b073861fcf9f7 ]

While trying to "dd" to the block device for a USB stick, I
encountered a hung task warning (blocked for > 120 seconds).  I
managed to come up with an easy way to reproduce this on my system
(where /dev/sdb is the block device for my USB stick) with:

  while true; do dd if=/dev/zero of=/dev/sdb bs=4M; done

With my reproduction here are the relevant bits from the hung task
detector:

 INFO: task udevd:294 blocked for more than 122 seconds.
 ...
 udevd           D    0   294      1 0x00400008
 Call trace:
  ...
  mutex_lock_nested+0x40/0x50
  __blkdev_get+0x7c/0x3d4
  blkdev_get+0x118/0x138
  blkdev_open+0x94/0xa8
  do_dentry_open+0x268/0x3a0
  vfs_open+0x34/0x40
  path_openat+0x39c/0xdf4
  do_filp_open+0x90/0x10c
  do_sys_open+0x150/0x3c8
  ...

 ...
 Showing all locks held in the system:
 ...
 1 lock held by dd/2798:
  #0: ffffff814ac1a3b8 (&bdev->bd_mutex){+.+.}, at: __blkdev_put+0x50/0x204
 ...
 dd              D    0  2798   2764 0x00400208
 Call trace:
  ...
  schedule+0x8c/0xbc
  io_schedule+0x1c/0x40
  wait_on_page_bit_common+0x238/0x338
  __lock_page+0x5c/0x68
  write_cache_pages+0x194/0x500
  generic_writepages+0x64/0xa4
  blkdev_writepages+0x24/0x30
  do_writepages+0x48/0xa8
  __filemap_fdatawrite_range+0xac/0xd8
  filemap_write_and_wait+0x30/0x84
  __blkdev_put+0x88/0x204
  blkdev_put+0xc4/0xe4
  blkdev_close+0x28/0x38
  __fput+0xe0/0x238
  ____fput+0x1c/0x28
  task_work_run+0xb0/0xe4
  do_notify_resume+0xfc0/0x14bc
  work_pending+0x8/0x14

The problem appears related to the fact that my USB disk is terribly
slow and that I have a lot of RAM in my system to cache things.
Specifically my writes seem to be happening at ~15 MB/s and I've got
~4 GB of RAM in my system that can be used for buffering.  To write 4
GB of buffer to disk thus takes ~4000 MB / ~15 MB/s = ~267 seconds.

The 267 second number is a problem because in __blkdev_put() we call
sync_blockdev() while holding the bd_mutex.  Any other callers who
want the bd_mutex will be blocked for the whole time.

The problem is made worse because I believe blkdev_put() specifically
tells other tasks (namely udev) to go try to access the device at right
around the same time we're going to hold the mutex for a long time.

Putting some traces around this (after disabling the hung task detector),
I could confirm:
 dd:    437.608600: __blkdev_put() right before sync_blockdev() for sdb
 udevd: 437.623901: blkdev_open() right before blkdev_get() for sdb
 dd:    661.468451: __blkdev_put() right after sync_blockdev() for sdb
 udevd: 663.820426: blkdev_open() right after blkdev_get() for sdb

A simple fix for this is to realize that sync_blockdev() works fine if
you're not holding the mutex.  Also, it's not the end of the world if
you sync a little early (though it can have performance impacts).
Thus we can make a guess that we're going to need to do the sync and
then do it without holding the mutex.  We still do one last sync with
the mutex but it should be much, much faster.

With this, my hung task warnings for my test case are gone.

Signed-off-by: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Guenter Roeck <groeck@chromium.org>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2020-10-01 13:14:42 +02:00
Trond Myklebust
1f39a7cc5d NFS: Fix races nfs_page_group_destroy() vs nfs_destroy_unlinked_subrequests()
[ Upstream commit 08ca8b21f760c0ed5034a5c122092eec22ccf8f4 ]

When a subrequest is being detached from the subgroup, we want to
ensure that it is not holding the group lock, or in the process
of waiting for the group lock.

Fixes: 5b2b5187fa ("NFS: Fix nfs_page_group_destroy() and nfs_lock_and_join_requests() race cases")
Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2020-10-01 13:14:41 +02:00
Liu Song
2f0a77ccae ubifs: Fix out-of-bounds memory access caused by abnormal value of node_len
[ Upstream commit acc5af3efa303d5f36cc8c0f61716161f6ca1384 ]

In “ubifs_check_node”, when the value of "node_len" is abnormal,
the code will goto label of "out_len" for execution. Then, in the
following "ubifs_dump_node", if inode type is "UBIFS_DATA_NODE",
in "print_hex_dump", an out-of-bounds access may occur due to the
wrong "ch->len".

Therefore, when the value of "node_len" is abnormal, data length
should to be adjusted to a reasonable safe range. At this time,
structured data is not credible, so dump the corrupted data directly
for analysis.

Signed-off-by: Liu Song <liu.song11@zte.com.cn>
Signed-off-by: Richard Weinberger <richard@nod.at>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2020-10-01 13:14:40 +02:00
Trond Myklebust
1ab250aaba nfsd: Don't add locks to closed or closing open stateids
[ Upstream commit a451b12311aa8c96c6f6e01c783a86995dc3ec6b ]

In NFSv4, the lock stateids are tied to the lockowner, and the open stateid,
so that the action of closing the file also results in either an automatic
loss of the locks, or an error of the form NFS4ERR_LOCKS_HELD.

In practice this means we must not add new locks to the open stateid
after the close process has been invoked. In fact doing so, can result
in the following panic:

 kernel BUG at lib/list_debug.c:51!
 invalid opcode: 0000 [#1] SMP NOPTI
 CPU: 2 PID: 1085 Comm: nfsd Not tainted 5.6.0-rc3+ #2
 Hardware name: VMware, Inc. VMware7,1/440BX Desktop Reference Platform, BIOS VMW71.00V.14410784.B64.1908150010 08/15/2019
 RIP: 0010:__list_del_entry_valid.cold+0x31/0x55
 Code: 1a 3d 9b e8 74 10 c2 ff 0f 0b 48 c7 c7 f0 1a 3d 9b e8 66 10 c2 ff 0f 0b 48 89 f2 48 89 fe 48 c7 c7 b0 1a 3d 9b e8 52 10 c2 ff <0f> 0b 48 89 fe 4c 89 c2 48 c7 c7 78 1a 3d 9b e8 3e 10 c2 ff 0f 0b
 RSP: 0018:ffffb296c1d47d90 EFLAGS: 00010246
 RAX: 0000000000000054 RBX: ffff8ba032456ec8 RCX: 0000000000000000
 RDX: 0000000000000000 RSI: ffff8ba039e99cc8 RDI: ffff8ba039e99cc8
 RBP: ffff8ba032456e60 R08: 0000000000000781 R09: 0000000000000003
 R10: 0000000000000000 R11: 0000000000000001 R12: ffff8ba009a4abe0
 R13: ffff8ba032456e8c R14: 0000000000000000 R15: ffff8ba00adb01d8
 FS:  0000000000000000(0000) GS:ffff8ba039e80000(0000) knlGS:0000000000000000
 CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
 CR2: 00007fb213f0b008 CR3: 00000001347de006 CR4: 00000000003606e0
 Call Trace:
  release_lock_stateid+0x2b/0x80 [nfsd]
  nfsd4_free_stateid+0x1e9/0x210 [nfsd]
  nfsd4_proc_compound+0x414/0x700 [nfsd]
  ? nfs4svc_decode_compoundargs+0x407/0x4c0 [nfsd]
  nfsd_dispatch+0xc1/0x200 [nfsd]
  svc_process_common+0x476/0x6f0 [sunrpc]
  ? svc_sock_secure_port+0x12/0x30 [sunrpc]
  ? svc_recv+0x313/0x9c0 [sunrpc]
  ? nfsd_svc+0x2d0/0x2d0 [nfsd]
  svc_process+0xd4/0x110 [sunrpc]
  nfsd+0xe3/0x140 [nfsd]
  kthread+0xf9/0x130
  ? nfsd_destroy+0x50/0x50 [nfsd]
  ? kthread_park+0x90/0x90
  ret_from_fork+0x1f/0x40

The fix is to ensure that lock creation tests for whether or not the
open stateid is unhashed, and to fail if that is the case.

Fixes: 659aefb68e ("nfsd: Ensure we don't recognise lock stateids after freeing them")
Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2020-10-01 13:14:38 +02:00