]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
ASoC: core: Adapt for debugfs API change
authorMark Brown <broonie@kernel.org>
Fri, 21 Jun 2019 11:33:56 +0000 (12:33 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 26 Jul 2019 07:12:58 +0000 (09:12 +0200)
commit c2c928c93173f220955030e8440517b87ec7df92 upstream.

Back in ff9fb72bc07705c (debugfs: return error values, not NULL) the
debugfs APIs were changed to return error pointers rather than NULL
pointers on error, breaking the error checking in ASoC. Update the
code to use IS_ERR() and log the codes that are returned as part of
the error messages.

Fixes: ff9fb72bc07705c (debugfs: return error values, not NULL)
Signed-off-by: Mark Brown <broonie@kernel.org>
Cc: stable@vger.kernel.org
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
sound/soc/soc-core.c

index f05a5c0a8aff1f93f4eada05c6eaaf1806e53255..c58af17228c31dd0210459d87a1382641604df31 100644 (file)
@@ -158,9 +158,10 @@ static void soc_init_component_debugfs(struct snd_soc_component *component)
                                component->card->debugfs_card_root);
        }
 
-       if (!component->debugfs_root) {
+       if (IS_ERR(component->debugfs_root)) {
                dev_warn(component->dev,
-                       "ASoC: Failed to create component debugfs directory\n");
+                       "ASoC: Failed to create component debugfs directory: %ld\n",
+                       PTR_ERR(component->debugfs_root));
                return;
        }
 
@@ -212,18 +213,21 @@ static void soc_init_card_debugfs(struct snd_soc_card *card)
 
        card->debugfs_card_root = debugfs_create_dir(card->name,
                                                     snd_soc_debugfs_root);
-       if (!card->debugfs_card_root) {
+       if (IS_ERR(card->debugfs_card_root)) {
                dev_warn(card->dev,
-                        "ASoC: Failed to create card debugfs directory\n");
+                        "ASoC: Failed to create card debugfs directory: %ld\n",
+                        PTR_ERR(card->debugfs_card_root));
+               card->debugfs_card_root = NULL;
                return;
        }
 
        card->debugfs_pop_time = debugfs_create_u32("dapm_pop_time", 0644,
                                                    card->debugfs_card_root,
                                                    &card->pop_time);
-       if (!card->debugfs_pop_time)
+       if (IS_ERR(card->debugfs_pop_time))
                dev_warn(card->dev,
-                        "ASoC: Failed to create pop time debugfs file\n");
+                        "ASoC: Failed to create pop time debugfs file: %ld\n",
+                        PTR_ERR(card->debugfs_pop_time));
 }
 
 static void soc_cleanup_card_debugfs(struct snd_soc_card *card)