linux/drivers
Mark Brown a83b02fc81 UPSTREAM: regulator: Fix lockdep warning resolving supplies
With commit eaa7995c52 (regulator: core: avoid
regulator_resolve_supply() race condition) we started holding the rdev
lock while resolving supplies, an operation that requires holding the
regulator_list_mutex. This results in lockdep warnings since in other
places we take the list mutex then the mutex on an individual rdev.

Since the goal is to make sure that we don't call set_supply() twice
rather than a concern about the cost of resolution pull the rdev lock
and check for duplicate resolution down to immediately before we do the
set_supply() and drop it again once the allocation is done.

Fixes: eaa7995c52 (regulator: core: avoid regulator_resolve_supply() race condition)
Reported-by: Marek Szyprowski <m.szyprowski@samsung.com>
Tested-by: Marek Szyprowski <m.szyprowski@samsung.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
Link: https://lore.kernel.org/r/20210122132042.10306-1-broonie@kernel.org
Signed-off-by: Mark Brown <broonie@kernel.org>
(cherry picked from commit 14a71d509a)
Bug: 177002490
Change-Id: I4b39edb5bf765d6d7ded275d70dfcf0839842f64
Signed-off-by: David Collins <collinsd@codeaurora.org>
2021-02-10 17:10:30 -08:00
..
accessibility speakup: fix uninitialized flush_lock 2020-12-30 11:53:44 +01:00
acpi Merge 5.10.13 into android12-5.10 2021-02-05 10:38:34 +01:00
amba
android ANDROID: iommu: Add vendor hook 2021-02-10 01:54:31 +00:00
ata libata-5.10-2020-10-30 2020-10-30 14:51:01 -07:00
atm atm: idt77252: call pci_disable_device() on error path 2021-01-12 20:18:09 +01:00
auxdisplay
base This is the 5.10.11 stable release 2021-01-27 12:12:33 +01:00
bcma
block Merge 5.10.13 into android12-5.10 2021-02-05 10:38:34 +01:00
bluetooth Bluetooth: revert: hci_h5: close serdev device and free hu in h5_close 2021-01-12 20:18:16 +01:00
bus bus: fsl-mc: fix error return code in fsl_mc_object_allocate() 2020-12-30 11:53:46 +01:00
cdrom
char Merge 5.10.5 into android12-5.10 2021-01-10 12:19:03 +01:00
clk Merge 5.10.13 into android12-5.10 2021-02-05 10:38:34 +01:00
clocksource Merge 5.10.4 into android12-5.10 2020-12-30 12:47:03 +01:00
connector
counter counter:ti-eqep: remove floor 2021-01-27 11:55:12 +01:00
cpufreq Merge 5.10.8 into android12-5.10 2021-01-19 09:33:21 +01:00
cpuidle ANDROID: cpuidle: export cpuidle_driver_state_disabled 2021-01-13 02:35:14 +00:00
crypto crypto: marvel/cesa - Fix tdma descriptor on 64-bit 2021-02-03 23:28:40 +01:00
dax device-dax: Fix range release 2021-01-06 14:56:56 +01:00
dca
devfreq
dio
dma dmaengine: xilinx_dma: fix mixed_enum_type coverity warning 2021-01-17 14:17:02 +01:00
dma-buf ANDROID: Add EXPORT_SYMBOL_GPL for dma_heap_get_name 2021-02-10 19:42:33 +00:00
edac EDAC/amd64: Fix PCI component registration 2020-12-30 11:54:11 +01:00
eisa
extcon extcon: max77693: Fix modalias string 2020-12-30 11:53:49 +01:00
firewire
firmware Merge 5.10.13 into android12-5.10 2021-02-05 10:38:34 +01:00
fpga fpga: Specify HAS_IOMEM dependency for FPGA_DFL 2020-12-01 18:46:24 +01:00
fsi fsi: Aspeed: Add mutex to protect HW access 2020-12-30 11:53:46 +01:00
gnss
gpio gpiolib: free device name on error path to fix kmemleak 2021-02-10 09:29:16 +01:00
gpu This is the 5.10.15 stable release 2021-02-10 09:53:50 +01:00
greybus
hid This is the 5.10.12 stable release 2021-01-30 14:29:02 +01:00
hsi HSI: omap_ssi: Don't jump to free ID in ssi_add_controller() 2020-12-30 11:53:24 +01:00
hv x86/hyperv: Fix kexec panic/hang issues 2021-01-27 11:54:57 +01:00
hwmon hwmon: (pwm-fan) Ensure that calculation doesn't discard big period values 2021-01-19 18:27:25 +01:00
hwspinlock
hwtracing stm class: Fix module init return on allocation failure 2021-01-27 11:55:15 +01:00
i2c i2c: tegra: Create i2c_writesl_vi() to use with VI I2C for filling TX FIFO 2021-02-07 15:37:15 +01:00
i3c i3c master: fix missing destroy_workqueue() on error in i3c_master_register 2021-01-06 14:56:53 +01:00
ide scsi: ide: Mark power management requests with RQF_PM instead of RQF_PREEMPT 2021-01-12 20:18:15 +01:00
idle intel_idle: Build fix 2020-12-03 10:00:23 +01:00
iio iio: adc: ti_am335x_adc: remove omitted iio_kfifo_free() 2021-01-27 11:55:12 +01:00
infiniband RDMA/cxgb4: Fix the reported max_recv_sge value 2021-02-03 23:28:46 +01:00
input Input: ili210x - implement pressure reporting for ILI251x 2021-02-10 09:29:22 +01:00
interconnect interconnect: imx8mq: Use icc_sync_state 2021-01-27 11:55:29 +01:00
iommu Merge 5.10.14 into android12-5.10 2021-02-08 20:05:12 -08:00
ipack
irqchip UPSTREAM: KVM: arm64: Delay the polling of the GICR_VPENDBASER.Dirty bit 2021-01-28 17:57:10 +00:00
isdn misdn: dsp: select CONFIG_BITREVERSE 2021-01-19 18:27:26 +01:00
leds leds: trigger: fix potential deadlock with libata 2021-02-03 23:28:41 +01:00
lightnvm lightnvm: fix memory leak when submit fails 2021-01-27 11:55:22 +01:00
macintosh macintosh/adb-iop: Send correct poll command 2020-12-30 11:53:39 +01:00
mailbox mailbox: arm_mhu_db: Fix mhu_db_shutdown by replacing kfree with devm_kfree 2020-12-30 11:53:28 +01:00
mcb
md This is the 5.10.15 stable release 2021-02-10 09:53:50 +01:00
media Merge 5.10.13 into android12-5.10 2021-02-05 10:38:34 +01:00
memory memory: renesas-rpc-if: Fix unbalanced pm_runtime_enable in rpcif_{enable,disable}_rpm 2020-12-30 11:54:27 +01:00
memstick memstick: r592: Fix error return in r592_probe() 2020-12-30 11:53:34 +01:00
message scsi: mptfusion: Fix null pointer dereferences in mptscsih_remove() 2020-10-26 16:57:18 -04:00
mfd mfd: cpcap: Fix interrupt regression with regmap clear_ack 2020-12-30 11:53:16 +01:00
misc Merge 5.10.14 into android12-5.10 2021-02-08 20:05:12 -08:00
mmc This is the 5.10.15 stable release 2021-02-10 09:53:50 +01:00
most
mtd mtd: rawnand: nandsim: Fix the logic when selecting Hamming soft ECC engine 2021-01-27 11:54:50 +01:00
mux
net This is the 5.10.15 stable release 2021-02-10 09:53:50 +01:00
nfc nfc: s3fwrn5: Release the nfc firmware 2020-12-30 11:53:53 +01:00
ntb Bug fixes for v5.10 2020-10-25 11:12:31 -07:00
nubus
nvdimm libnvdimm/dimm: Avoid race between probe and available_slots_show() 2021-02-10 09:29:17 +01:00
nvme nvme-pci: avoid the deepest sleep state on Kingston A2000 SSDs 2021-02-10 09:29:19 +01:00
nvmem
of Merge 5.10.13 into android12-5.10 2021-02-05 10:38:34 +01:00
opp opp: Call the missing clk_put() on error 2021-01-06 14:56:49 +01:00
oprofile
parisc
parport
pci Merge 5.10.4 into android12-5.10 2020-12-30 12:47:03 +01:00
pcmcia
perf
phy phy: cpcap-usb: Fix warning for missing regulator_disable 2021-02-07 15:37:13 +01:00
pinctrl This is the 5.10.11 stable release 2021-01-27 12:12:33 +01:00
platform Merge 5.10.14 into android12-5.10 2021-02-08 20:05:12 -08:00
pnp PNP: fix kernel-doc markups 2020-10-27 19:23:04 +01:00
power Merge 5.10.4 into android12-5.10 2020-12-30 12:47:03 +01:00
powercap Merge branch 'turbostat' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux 2020-11-10 10:02:31 -08:00
pps
ps3 powerpc/ps3: use dma_mapping_error() 2020-12-30 11:53:53 +01:00
ptp phy: dp83640: select CONFIG_CRC32 2021-01-17 14:17:02 +01:00
pwm Merge 5.10.4 into android12-5.10 2020-12-30 12:47:03 +01:00
rapidio rapidio: fix the missed put_device() for rio_mport_add_riodev 2020-10-16 11:11:22 -07:00
ras
regulator UPSTREAM: regulator: Fix lockdep warning resolving supplies 2021-02-10 17:10:30 -08:00
remoteproc remoteproc: sysmon: Ensure remote notification ordering 2020-12-30 11:54:28 +01:00
reset ARM: SoC-related driver updates 2020-10-24 10:39:22 -07:00
rpmsg Merge 2b71482060 ("Merge tag 'modules-for-v5.10' of git://git.kernel.org/pub/scm/linux/kernel/git/jeyu/linux") into android-mainline 2020-10-27 11:41:53 +01:00
rtc rtc: pcf2127: only use watchdog when explicitly available 2021-01-09 13:46:22 +01:00
s390 Merge 5.10.13 into android12-5.10 2021-02-05 10:38:34 +01:00
sbus
scsi Merge 5.10.14 into android12-5.10 2021-02-08 20:05:12 -08:00
sfi
sh
siox
slimbus slimbus: qcom: fix potential NULL dereference in qcom_slim_prg_slew() 2020-12-30 11:53:47 +01:00
soc Merge 5.10.13 into android12-5.10 2021-02-05 10:38:34 +01:00
soundwire soundwire: master: use pm_runtime_set_active() on add 2020-12-30 11:53:28 +01:00
spi Merge 5.10.13 into android12-5.10 2021-02-05 10:38:34 +01:00
spmi
ssb
staging Merge 5.10.13 into android12-5.10 2021-02-05 10:38:34 +01:00
target scsi: target: tcmu: Fix use-after-free of se_cmd->priv 2021-01-27 11:54:50 +01:00
tc
tee tee: optee: replace might_sleep with cond_resched 2021-02-03 23:28:43 +01:00
thermal Merge 5.10.4 into android12-5.10 2020-12-30 12:47:03 +01:00
thunderbolt thunderbolt: Fix possible NULL pointer dereference in tb_acpi_add_link() 2021-02-10 09:29:15 +01:00
tty Merge 5.10.13 into android12-5.10 2021-02-05 10:38:34 +01:00
uio uio: Fix use-after-free in uio_unregister_device() 2020-11-09 18:54:30 +01:00
usb This is the 5.10.15 stable release 2021-02-10 09:53:50 +01:00
vdpa vdpa/mlx5: Restore the hardware used index after change map 2021-02-10 09:29:15 +01:00
vfio vfio/pci/nvlink2: Do not attempt NPU2 setup on POWER8NVL NPU 2020-12-30 11:54:03 +01:00
vhost vhost_net: fix ubuf refcount incorrectly when sendmsg fails 2021-01-12 20:18:13 +01:00
video fbcon: Disable accelerated scrolling 2021-01-06 14:56:51 +01:00
virt nitro_enclaves: Fixup type and simplify logic of the poll mask setup 2020-11-09 18:20:36 +01:00
virtio ANDROID: virtio: disable virtio_dma_buf callback checks with CFI 2021-01-28 22:14:14 +00:00
visorbus
vlynq
vme
w1
watchdog watchdog: rti-wdt: fix reference leak in rti_wdt_probe 2021-01-06 14:56:54 +01:00
xen xen: Fix XenStore initialisation for XS_LOCAL 2021-02-03 23:28:41 +01:00
zorro
Kconfig
Makefile vdpa: mlx5: fix vdpa/vhost dependencies 2020-12-02 04:09:56 -05:00