lkml.org 
[lkml]   [2019]   [Feb]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH AUTOSEL 4.20 17/77] ASoC: core: Make snd_soc_find_component() more robust
    Date
    From: Mark Brown <broonie@kernel.org>

    [ Upstream commit 5a7b2aabc1aa0393f067d9325ada96fdf67f8cb7 ]

    There are some use cases where you're checking for a lot of things on a
    card and it makes sense that you might end up trying to call
    snd_soc_find_component() without either a name or an of_node. Currently
    in that case we try to dereference the name and crash but it's more
    useful to allow the caller to just treat that as a case where we don't
    find anything, that error handling will already exist.

    Inspired by a patch from Ajit Pandey fixing some callers.

    Fixes: 8780cf1142a5 ("ASoC: soc-core: defer card probe until all component is added to list")
    Reported-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
    Signed-off-by: Mark Brown <broonie@kernel.org>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    sound/soc/soc-core.c | 2 +-
    1 file changed, 1 insertion(+), 1 deletion(-)

    diff --git a/sound/soc/soc-core.c b/sound/soc/soc-core.c
    index 17632da21ba7..e4da6656f65f 100644
    --- a/sound/soc/soc-core.c
    +++ b/sound/soc/soc-core.c
    @@ -742,7 +742,7 @@ static struct snd_soc_component *soc_find_component(
    if (of_node) {
    if (component->dev->of_node == of_node)
    return component;
    - } else if (strcmp(component->name, name) == 0) {
    + } else if (name && strcmp(component->name, name) == 0) {
    return component;
    }
    }
    --
    2.19.1
    \
     
     \ /
      Last update: 2019-02-15 03:42    [W:4.113 / U:0.024 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site