linux-stable/drivers/base
Guenter Roeck 8ef9724bf9 regmap: regcache-rbtree: Clean new present bits on present bitmap resize
When inserting a new register into a block, the present bit map size is
increased using krealloc. krealloc does not clear the additionally
allocated memory, leaving it filled with random values. Result is that
some registers are considered cached even though this is not the case.

Fix the problem by clearing the additionally allocated memory. Also, if
the bitmap size does not increase, do not reallocate the bitmap at all
to reduce overhead.

Fixes: 3f4ff561bc ("regmap: rbtree: Make cache_present bitmap per node")
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Mark Brown <broonie@kernel.org>
Cc: stable@vger.kernel.org
2015-07-29 15:10:13 +01:00
..
power Merge branches 'pm-clk', 'pm-domains' and 'powercap' 2015-06-19 01:18:30 +02:00
regmap regmap: regcache-rbtree: Clean new present bits on present bitmap resize 2015-07-29 15:10:13 +01:00
attribute_container.c attribute_container: fix missing blank lines after declarations 2015-03-25 14:35:09 +01:00
base.h driver-core: add asynchronous probing support for drivers 2015-05-20 00:25:24 -07:00
bus.c driver-core: add asynchronous probing support for drivers 2015-05-20 00:25:24 -07:00
cacheinfo.c Merge 4.1-rc7 into driver-core-next 2015-06-08 10:19:40 -07:00
class.c drivers: base: class: Add a blank line after declarations 2015-03-25 14:36:19 +01:00
component.c component: fix bug with legacy API 2014-07-04 18:05:05 +01:00
container.c ACPI / hotplug / driver core: Handle containers in a special way 2013-12-29 15:25:48 +01:00
core.c drivers/base/core.c: use strreplace() 2015-06-25 17:00:40 -07:00
cpu.c show nohz_full cpus in sysfs 2015-05-20 00:15:09 -07:00
dd.c base:dd - Fix for typo in comment to function driver_deferred_probe_trigger(). 2015-06-01 10:15:17 +09:00
devcoredump.c devcoredump: provide a one-way disable function 2014-11-26 19:40:12 -08:00
devres.c devres: Improve devm_kasprintf()/kvasprintf() support 2014-09-23 23:32:50 -07: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 drivers: of: add return value to of_reserved_mem_device_init() 2014-10-29 16:33:14 -07:00
dma-mapping.c drivers: base: dma-mapping: Erase blank space after pointer 2015-03-25 14:36:19 +01:00
driver.c driver core: add missing blank line after declaration 2015-03-25 14:36:30 +01:00
firmware.c
firmware_class.c firmware: add missing kfree for work on async call 2015-06-01 10:22:34 +09: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 cma: make default CMA area size zero for x86 2014-12-10 17:41:06 -08:00
Makefile Driver core patches for 3.19-rc1 2014-12-14 16:10:09 -08:00
map.c drivers: base: map: Use kmalloc_array instead of kmalloc 2015-03-25 14:35:08 +01:00
memory.c mm, hotplug: fix concurrent memory hot-add deadlock 2015-04-14 16:49:00 -07:00
module.c
node.c mm: meminit: initialise a subset of struct pages if CONFIG_DEFERRED_STRUCT_PAGE_INIT is set 2015-06-30 19:44:56 -07:00
pinctrl.c drivers: pinctrl sleep and idle states in the core 2013-06-16 11:56:52 +02:00
platform.c Revert "base/platform: Only insert MEM and IO resources" 2015-06-10 08:38:29 -07:00
property.c Merge branches 'acpi-video', 'device-properties', 'pm-sleep' and 'pm-cpuidle' 2015-06-26 03:30:37 +02:00
soc.c drivers/base: use tabs where possible in code indentation 2015-03-25 14:37:35 +01:00
syscore.c genirq: Simplify wakeup mechanism 2014-09-01 13:48:59 +02:00
topology.c sched/topology: Rename topology_thread_cpumask() to topology_sibling_cpumask() 2015-05-27 15:22:15 +02:00
transport_class.c