diff mbox series

ASoC: wm_adsp: Fix compilation when debugfs is disabled

Message ID 20210929145040.793252-1-simont@opensource.cirrus.com (mailing list archive)
State New, archived
Headers show
Series ASoC: wm_adsp: Fix compilation when debugfs is disabled | expand

Commit Message

Simon Trimmer Sept. 29, 2021, 2:50 p.m. UTC
Guard the use of component->debufs_root against CONFIG_DEBUG_FS

Reported-by: kernel test robot <lkp@intel.com>
Signed-off-by: Simon Trimmer <simont@opensource.cirrus.com>
---
 sound/soc/codecs/wm_adsp.c | 2 ++
 1 file changed, 2 insertions(+)

Comments

Mark Brown Sept. 29, 2021, 2:52 p.m. UTC | #1
On Wed, Sep 29, 2021 at 03:50:40PM +0100, Simon Trimmer wrote:

> +#if IS_ENABLED(CONFIG_DEBUG_FS)
>  	cs_dsp_init_debugfs(&dsp->cs_dsp, component->debugfs_root);
> +#endif

The more common pattern is to declare a static inline stub function
instead of the prototype if debugfs is disabled.
Simon Trimmer Sept. 29, 2021, 3:27 p.m. UTC | #2
> On Wednesday, September 29, 2021 3:52 PM, Mark Brown wrote:
> The more common pattern is to declare a static inline stub function
> instead of the prototype if debugfs is disabled.

Hi Mark,
Yes there is one for the cs_dsp_init_debugfs function though the compilation
failure the bot
detected is with the parameter dereferencing the disappearing
snd_soc_component member.

I could make a utility inline for use in this function that would do the
dereference or return NULL
based on the state of the config option if you think that would be neater?
(For the expense of a
new function it would separate the call of the stub from the conditional
access of the member
based on IS_ENABLED)

Thanks,
Simon
Mark Brown Sept. 29, 2021, 8:35 p.m. UTC | #3
On Wed, Sep 29, 2021 at 04:27:19PM +0100, Simon Trimmer wrote:

> Yes there is one for the cs_dsp_init_debugfs function though the compilation
> failure the bot
> detected is with the parameter dereferencing the disappearing
> snd_soc_component member.

At that point just remove the conditional definition in the struct, it's
not like a single pointer in a struct we are likely to have well under
10 of in the system is going to make an appreciable difference to memory
consumption.
diff mbox series

Patch

diff --git a/sound/soc/codecs/wm_adsp.c b/sound/soc/codecs/wm_adsp.c
index f17c749c24c3..03cfaa82b031 100644
--- a/sound/soc/codecs/wm_adsp.c
+++ b/sound/soc/codecs/wm_adsp.c
@@ -1028,7 +1028,9 @@  int wm_adsp2_component_probe(struct wm_adsp *dsp, struct snd_soc_component *comp
 	snprintf(preload, ARRAY_SIZE(preload), "%s Preload", dsp->cs_dsp.name);
 	snd_soc_component_disable_pin(component, preload);
 
+#if IS_ENABLED(CONFIG_DEBUG_FS)
 	cs_dsp_init_debugfs(&dsp->cs_dsp, component->debugfs_root);
+#endif
 
 	dsp->component = component;