Messages in this thread Patch in this message | | | From | Fabio Estevam <> | Subject | [PATCH v2] regmap: debugfs: Free debugfs_name buffer after usage | Date | Thu, 6 Jan 2022 14:50:19 -0300 |
| |
The following error message is seen when booting an imx6q-sabresd:
debugfs: Directory 'dummy-iomuxc-gpr@20e0000' with parent 'regmap' already present!
The reason for the duplicate name is that map->debugfs_name is never freed, which can cause a directory to be created with the same name used in the previous debugfs entry allocation.
Fix this problem by freeing map->debugfs_name and setting it to NULL after its usage.
Signed-off-by: Fabio Estevam <festevam@gmail.com> --- Changes since v1: - Avoid use after free (Mark).
drivers/base/regmap/regmap-debugfs.c | 3 +++ 1 file changed, 3 insertions(+)
diff --git a/drivers/base/regmap/regmap-debugfs.c b/drivers/base/regmap/regmap-debugfs.c index ad684d37c2da..e1017ca65be0 100644 --- a/drivers/base/regmap/regmap-debugfs.c +++ b/drivers/base/regmap/regmap-debugfs.c @@ -605,6 +605,9 @@ void regmap_debugfs_init(struct regmap *map) map->debugfs = debugfs_create_dir(name, regmap_debugfs_root); + kfree(map->debugfs_name); + map->debugfs_name = NULL; + debugfs_create_file("name", 0400, map->debugfs, map, ®map_name_fops); -- 2.25.1
| |