diff options
author | Linus Walleij <linus.walleij@linaro.org> | 2022-08-23 15:57:00 +0200 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2022-08-23 18:47:16 +0200 |
commit | b7059927c3e32c96d2ff50c206549d8fac0ba69e (patch) | |
tree | 708ebd0db948c50b25c1fe9bd6ee9aa4ce36693f /drivers/base | |
parent | regmap: introduce value tracing for regmap bulk operations (diff) | |
download | linux-b7059927c3e32c96d2ff50c206549d8fac0ba69e.tar.xz linux-b7059927c3e32c96d2ff50c206549d8fac0ba69e.zip |
regmap: check right noinc bounds in debug print
We were using the wrong bound in the debug prints: this
needs to be the number of elements, not the number of bytes,
since we're indexing into an element-size typed array.
Fixes: c20cc099b30a ("regmap: Support accelerated noinc operations")
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Link: https://lore.kernel.org/r/20220823135700.265019-1-linus.walleij@linaro.org
Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'drivers/base')
-rw-r--r-- | drivers/base/regmap/regmap.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/base/regmap/regmap.c b/drivers/base/regmap/regmap.c index 63d9c6ab237e..c6d6d53e8cd3 100644 --- a/drivers/base/regmap/regmap.c +++ b/drivers/base/regmap/regmap.c @@ -2193,7 +2193,7 @@ static int regmap_noinc_readwrite(struct regmap *map, unsigned int reg, if (!ret && regmap_should_log(map)) { dev_info(map->dev, "%x %s [", reg, write ? "<=" : "=>"); - for (i = 0; i < val_len; i++) { + for (i = 0; i < val_count; i++) { switch (val_bytes) { case 1: pr_cont("%x", u8p[i]); @@ -2212,7 +2212,7 @@ static int regmap_noinc_readwrite(struct regmap *map, unsigned int reg, default: break; } - if (i == (val_len - 1)) + if (i == (val_count - 1)) pr_cont("]\n"); else pr_cont(","); |