Merge 5.10.40 into android12-5.10
Changes in 5.10.40 firmware: arm_scpi: Prevent the ternary sign expansion bug openrisc: Fix a memory leak tee: amdtee: unload TA only when its refcount becomes 0 RDMA/siw: Properly check send and receive CQ pointers RDMA/siw: Release xarray entry RDMA/core: Prevent divide-by-zero error triggered by the user RDMA/rxe: Clear all QP fields if creation failed scsi: ufs: core: Increase the usable queue depth scsi: qedf: Add pointer checks in qedf_update_link_speed() scsi: qla2xxx: Fix error return code in qla82xx_write_flash_dword() RDMA/mlx5: Recover from fatal event in dual port mode RDMA/core: Don't access cm_id after its destruction nvmet: remove unused ctrl->cqs nvmet: fix memory leak in nvmet_alloc_ctrl() nvme-loop: fix memory leak in nvme_loop_create_ctrl() nvme-tcp: rerun io_work if req_list is not empty nvme-fc: clear q_live at beginning of association teardown platform/mellanox: mlxbf-tmfifo: Fix a memory barrier issue platform/x86: intel_int0002_vgpio: Only call enable_irq_wake() when using s2idle platform/x86: dell-smbios-wmi: Fix oops on rmmod dell_smbios RDMA/mlx5: Fix query DCT via DEVX RDMA/uverbs: Fix a NULL vs IS_ERR() bug tools/testing/selftests/exec: fix link error powerpc/pseries: Fix hcall tracing recursion in pv queued spinlocks ptrace: make ptrace() fail if the tracee changed its pid unexpectedly nvmet: seset ns->file when open fails perf/x86: Avoid touching LBR_TOS MSR for Arch LBR locking/lockdep: Correct calling tracepoints locking/mutex: clear MUTEX_FLAGS if wait_list is empty due to signal powerpc: Fix early setup to make early_ioremap() work btrfs: avoid RCU stalls while running delayed iputs cifs: fix memory leak in smb2_copychunk_range misc: eeprom: at24: check suspend status before disable regulator ALSA: dice: fix stream format for TC Electronic Konnekt Live at high sampling transfer frequency ALSA: intel8x0: Don't update period unless prepared ALSA: firewire-lib: fix amdtp_packet tracepoints event for packet_index field ALSA: line6: Fix racy initialization of LINE6 MIDI ALSA: dice: fix stream format at middle sampling rate for Alesis iO 26 ALSA: firewire-lib: fix calculation for size of IR context payload ALSA: usb-audio: Validate MS endpoint descriptors ALSA: bebob/oxfw: fix Kconfig entry for Mackie d.2 Pro ALSA: hda: fixup headset for ASUS GU502 laptop Revert "ALSA: sb8: add a check for request_region" ALSA: firewire-lib: fix check for the size of isochronous packet payload ALSA: hda/realtek: reset eapd coeff to default value for alc287 ALSA: hda/realtek: Add some CLOVE SSIDs of ALC293 ALSA: hda/realtek: Fix silent headphone output on ASUS UX430UA ALSA: hda/realtek: Add fixup for HP OMEN laptop ALSA: hda/realtek: Add fixup for HP Spectre x360 15-df0xxx uio_hv_generic: Fix a memory leak in error handling paths Revert "rapidio: fix a NULL pointer dereference when create_workqueue() fails" rapidio: handle create_workqueue() failure Revert "serial: mvebu-uart: Fix to avoid a potential NULL pointer dereference" nvme-tcp: fix possible use-after-completion x86/sev-es: Move sev_es_put_ghcb() in prep for follow on patch x86/sev-es: Invalidate the GHCB after completing VMGEXIT x86/sev-es: Don't return NULL from sev_es_get_ghcb() x86/sev-es: Use __put_user()/__get_user() for data accesses x86/sev-es: Forward page-faults which happen during emulation drm/amdgpu: Fix GPU TLB update error when PAGE_SIZE > AMDGPU_PAGE_SIZE drm/amdgpu: disable 3DCGCG on picasso/raven1 to avoid compute hang drm/amdgpu: update gc golden setting for Navi12 drm/amdgpu: update sdma golden setting for Navi12 powerpc/64s/syscall: Use pt_regs.trap to distinguish syscall ABI difference between sc and scv syscalls powerpc/64s/syscall: Fix ptrace syscall info with scv syscalls mmc: sdhci-pci-gli: increase 1.8V regulator wait xen-pciback: redo VF placement in the virtual topology xen-pciback: reconfigure also from backend watch handler ipc/mqueue, msg, sem: avoid relying on a stack reference past its expiry dm snapshot: fix crash with transient storage and zero chunk size kcsan: Fix debugfs initcall return type Revert "video: hgafb: fix potential NULL pointer dereference" Revert "net: stmicro: fix a missing check of clk_prepare" Revert "leds: lp5523: fix a missing check of return value of lp55xx_read" Revert "hwmon: (lm80) fix a missing check of bus read in lm80 probe" Revert "video: imsttfb: fix potential NULL pointer dereferences" Revert "ecryptfs: replace BUG_ON with error handling code" Revert "scsi: ufs: fix a missing check of devm_reset_control_get" Revert "gdrom: fix a memory leak bug" cdrom: gdrom: deallocate struct gdrom_unit fields in remove_gdrom cdrom: gdrom: initialize global variable at init time Revert "media: rcar_drif: fix a memory disclosure" Revert "rtlwifi: fix a potential NULL pointer dereference" Revert "qlcnic: Avoid potential NULL pointer dereference" Revert "niu: fix missing checks of niu_pci_eeprom_read" ethernet: sun: niu: fix missing checks of niu_pci_eeprom_read() net: stmicro: handle clk_prepare() failure during init scsi: ufs: handle cleanup correctly on devm_reset_control_get error net: rtlwifi: properly check for alloc_workqueue() failure ics932s401: fix broken handling of errors when word reading fails leds: lp5523: check return value of lp5xx_read and jump to cleanup code qlcnic: Add null check after calling netdev_alloc_skb video: hgafb: fix potential NULL pointer dereference vgacon: Record video mode changes with VT_RESIZEX vt_ioctl: Revert VT_RESIZEX parameter handling removal vt: Fix character height handling with VT_RESIZEX tty: vt: always invoke vc->vc_sw->con_resize callback drm/i915/gt: Disable HiZ Raw Stall Optimization on broken gen7 openrisc: mm/init.c: remove unused memblock_region variable in map_ram() x86/Xen: swap NX determination and GDT setup on BSP nvme-multipath: fix double initialization of ANA state rtc: pcf85063: fallback to parent of_node x86/boot/compressed/64: Check SEV encryption in the 32-bit boot-path nvmet: use new ana_log_size instead the old one video: hgafb: correctly handle card detect failure during probe Bluetooth: SMP: Fail if remote and local public keys are identical Linux 5.10.40 Signed-off-by: Greg Kroah-Hartman <gregkh@google.com> Change-Id: I4523cf43d1da6bea507e4027bd83bc491a574f41
This commit is contained in:
@@ -206,7 +206,7 @@ static inline bool __mutex_waiter_is_first(struct mutex *lock, struct mutex_wait
|
||||
* Add @waiter to a given location in the lock wait_list and set the
|
||||
* FLAG_WAITERS flag if it's the first waiter.
|
||||
*/
|
||||
static void __sched
|
||||
static void
|
||||
__mutex_add_waiter(struct mutex *lock, struct mutex_waiter *waiter,
|
||||
struct list_head *list)
|
||||
{
|
||||
@@ -220,6 +220,16 @@ __mutex_add_waiter(struct mutex *lock, struct mutex_waiter *waiter,
|
||||
__mutex_set_flag(lock, MUTEX_FLAG_WAITERS);
|
||||
}
|
||||
|
||||
static void
|
||||
__mutex_remove_waiter(struct mutex *lock, struct mutex_waiter *waiter)
|
||||
{
|
||||
list_del(&waiter->list);
|
||||
if (likely(list_empty(&lock->wait_list)))
|
||||
__mutex_clear_flag(lock, MUTEX_FLAGS);
|
||||
|
||||
debug_mutex_remove_waiter(lock, waiter, current);
|
||||
}
|
||||
|
||||
/*
|
||||
* Give up ownership to a specific task, when @task = NULL, this is equivalent
|
||||
* to a regular unlock. Sets PICKUP on a handoff, clears HANDOF, preserves
|
||||
@@ -1078,9 +1088,7 @@ acquired:
|
||||
__ww_mutex_check_waiters(lock, ww_ctx);
|
||||
}
|
||||
|
||||
mutex_remove_waiter(lock, &waiter, current);
|
||||
if (likely(list_empty(&lock->wait_list)))
|
||||
__mutex_clear_flag(lock, MUTEX_FLAGS);
|
||||
__mutex_remove_waiter(lock, &waiter);
|
||||
|
||||
debug_mutex_free_waiter(&waiter);
|
||||
|
||||
@@ -1098,7 +1106,7 @@ skip_wait:
|
||||
err:
|
||||
__set_current_state(TASK_RUNNING);
|
||||
trace_android_vh_mutex_wait_finish(lock);
|
||||
mutex_remove_waiter(lock, &waiter, current);
|
||||
__mutex_remove_waiter(lock, &waiter);
|
||||
err_early_kill:
|
||||
spin_unlock(&lock->wait_lock);
|
||||
debug_mutex_free_waiter(&waiter);
|
||||
|
Reference in New Issue
Block a user