linux/drivers/base/regmap
Guenter Roeck fd1090c256 regmap: regcache-rbtree: Clean new present bits on present bitmap resize
commit 8ef9724bf9 upstream.

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>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
History 2015-09-13 09:07:44 -07:00
..
internal.h regmap: introduce regmap_name to fix syscon regmap trace events 2015-03-19 20:04:55 +00:00
Kconfig regmap: ac97: Add generic AC'97 callbacks 2014-11-19 10:28:14 +00:00
Makefile regmap: Move tracing header into drivers/base/regmap 2015-03-19 22:22:45 +00:00
regcache-flat.c regmap: cache: Sort include headers alphabetically 2014-10-20 12:25:06 +01:00
regcache-lzo.c regmap: cache: Sort include headers alphabetically 2014-10-20 12:25:06 +01:00
regcache-rbtree.c regmap: regcache-rbtree: Clean new present bits on present bitmap resize 2015-09-13 09:07:44 -07:00
regcache.c regmap: Patch for v4.1 2015-04-13 15:00:55 -07:00
regmap-ac97.c regmap: ac97: Clean up indentation 2015-02-02 12:13:39 +00:00
regmap-debugfs.c Merge remote-tracking branch 'regmap/fix/debugfs' into regmap-linus 2014-09-29 20:49:40 +01:00
regmap-i2c.c regmap: Fix i2c word access when using SMBus access functions 2015-02-04 20:48:13 +00:00
regmap-irq.c regmap-irq: set IRQF_ONESHOT flag to ensure IRQ request 2015-02-14 14:26:36 +09:00
regmap-mmio.c Merge remote-tracking branches 'regmap/topic/irq', 'regmap/topic/le', 'regmap/topic/mmio' and 'regmap/topic/rbtree' into regmap-next 2014-06-02 17:07:39 +01:00
regmap-spi.c regmap: add DT endianness binding support. 2014-08-16 16:56:23 -05:00
regmap-spmi.c regmap: spmi: support base and extended register spaces 2014-02-15 11:55:28 -08:00
regmap.c regmap: Fix possible shift overflow in regmap_field_init() 2015-07-21 10:10:04 -07:00
trace.h regmap: Move tracing header into drivers/base/regmap 2015-03-19 22:22:45 +00:00