linux-uconsole/drivers/base
Nikita Yushchenko 756d9ad548 UPSTREAM: regmap: fix deadlock on _regmap_raw_write() error path
Commit 815806e39b ("regmap: drop cache if the bus transfer error")
added a call to regcache_drop_region() to error path in
_regmap_raw_write(). However that path runs with regmap lock taken,
and regcache_drop_region() tries to re-take it, causing a deadlock.
Fix that by calling map->cache_ops->drop() directly.

Change-Id: I55c6d3ed490c47e8b3f5ca774d051a700f707b6e
Signed-off-by: Nikita Yushchenko <nikita.yoush@cogentembedded.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Huang, Tao <huangtao@rock-chips.com>
(cherry picked from git.kernel.org broonie/regmap.git for-next
 commit f0aa1ce625)
2016-09-23 10:05:03 +08:00
..
power Merge branch 'linux-linaro-lsk-v4.4-android' of git://git.linaro.org/kernel/linux-linaro-stable.git 2016-07-25 19:37:09 +08:00
regmap UPSTREAM: regmap: fix deadlock on _regmap_raw_write() error path 2016-09-23 10:05:03 +08:00
attribute_container.c attribute_container: fix missing blank lines after declarations 2015-03-25 14:35:09 +01:00
base.h driver core: correct device's shutdown order 2015-08-05 17:07:19 -07:00
bus.c rk: revert to v3.10 2015-11-11 15:57:28 +08:00
cacheinfo.c cpu/cacheinfo: Fix teardown path 2015-09-17 06:06:54 -07:00
class.c class_find_device: fix reference to argument "match" 2015-09-29 15:23:14 +02:00
component.c
container.c
core.c rk: revert to v3.10 2015-11-11 15:57:28 +08:00
cpu.c rk: revert to v3.10 2015-11-11 15:57:28 +08:00
dd.c BACKPORT: PM / sleep: Go direct_complete if driver has no callbacks 2016-07-11 12:43:04 +05:30
devcoredump.c devcoredump: provide a one-way disable function 2014-11-26 19:40:12 -08:00
devices_filter.h
devres.c rk: revert to v3.10 2015-11-11 15:57:28 +08:00
devtmpfs.c VFS: assorted weird filesystems: d_inode() annotations 2015-04-15 15:06:58 -04:00
dma-coherent.c drivers: dma-coherent: add initialization from device tree 2014-10-14 02:18:12 +02:00
dma-contiguous.c rk: revert to v3.10 2015-11-11 15:57:28 +08:00
dma-mapping.c rk: revert to v3.10 2015-11-11 15:57:28 +08:00
driver.c rk: temp revert rk change 2015-11-11 15:54:30 +08:00
firmware.c
firmware_class.c rk: revert to v3.10 2015-11-11 15:57:28 +08:00
hypervisor.c
init.c drivers: of/base: move of_init to driver_init 2015-05-26 19:55:56 -07:00
isa.c
Kconfig rk: revert to v3.10 2015-11-11 15:57:28 +08:00
Makefile rk: revert to v3.10 2015-11-11 15:57:28 +08:00
map.c drivers: base: map: Use kmalloc_array instead of kmalloc 2015-03-25 14:35:08 +01:00
memory.c drivers/base/memory.c: prohibit offlining of memory blocks with missing sections 2015-12-12 10:15:34 -08:00
module.c base: make module_create_drivers_dir race-free 2016-07-27 09:47:32 -07:00
node.c Revert "mm: Check if section present during memory block (un)registering" 2015-10-13 10:57:25 -07:00
pinctrl.c rk: temp revert rk change 2015-11-11 15:54:30 +08:00
platform-msi.c irqdomain/msi: Use fwnode instead of of_node 2015-10-13 19:01:25 +02:00
platform.c UPSTREAM: platform: Do not detach from PM domains on shutdown 2016-06-22 15:16:58 +08:00
property.c device property: ACPI: Remove unused DMA APIs 2015-11-07 01:29:22 +01:00
soc.c base: soc: siplify ida usage 2015-10-04 19:42:22 +01:00
syscore.c power: Adds functionality to log the last suspend abort reason. 2016-02-16 13:53:38 -08:00
topology.c rk: revert to v3.10 2015-11-11 15:57:28 +08:00
transport_class.c