[alsa-devel] [PATCH] ASoC: codecs: Fix to avoid potential NULL pointer dereferences
In sirf_audio_codec_driver_probe, of_match_node may fail and return a NULL pointer. The patch avoids a potential NULL pointer dereference.
Signed-off-by: Aditya Pakki pakki001@umn.edu --- sound/soc/codecs/sirf-audio-codec.c | 2 ++ 1 file changed, 2 insertions(+)
diff --git a/sound/soc/codecs/sirf-audio-codec.c b/sound/soc/codecs/sirf-audio-codec.c index e424499a8450..fd2bbd6a3c58 100644 --- a/sound/soc/codecs/sirf-audio-codec.c +++ b/sound/soc/codecs/sirf-audio-codec.c @@ -464,6 +464,8 @@ static int sirf_audio_codec_driver_probe(struct platform_device *pdev) const struct of_device_id *match;
match = of_match_node(sirf_audio_codec_of_match, pdev->dev.of_node); + if (!match) + return -ENXIO;
sirf_audio_codec = devm_kzalloc(&pdev->dev, sizeof(struct sirf_audio_codec), GFP_KERNEL);
Apologies for the incorrect patch. "match" is dead code and I will send a correct patch again.
On Mon, Mar 18, 2019 at 7:58 PM Aditya Pakki pakki001@umn.edu wrote:
In sirf_audio_codec_driver_probe, of_match_node may fail and return a NULL pointer. The patch avoids a potential NULL pointer dereference.
Signed-off-by: Aditya Pakki pakki001@umn.edu
sound/soc/codecs/sirf-audio-codec.c | 2 ++ 1 file changed, 2 insertions(+)
diff --git a/sound/soc/codecs/sirf-audio-codec.c b/sound/soc/codecs/sirf-audio-codec.c index e424499a8450..fd2bbd6a3c58 100644 --- a/sound/soc/codecs/sirf-audio-codec.c +++ b/sound/soc/codecs/sirf-audio-codec.c @@ -464,6 +464,8 @@ static int sirf_audio_codec_driver_probe(struct platform_device *pdev) const struct of_device_id *match;
match = of_match_node(sirf_audio_codec_of_match,
pdev->dev.of_node);
if (!match)
return -ENXIO; sirf_audio_codec = devm_kzalloc(&pdev->dev, sizeof(struct sirf_audio_codec), GFP_KERNEL);
-- 2.17.1
On 19/03/2019 00:58, Aditya Pakki wrote:
In sirf_audio_codec_driver_probe, of_match_node may fail and return a NULL pointer. The patch avoids a potential NULL pointer dereference.
Actually 'match' isn't used in this function... So there's no chance of a NULL dereference. You might as well remove the call.
Steve
Signed-off-by: Aditya Pakki pakki001@umn.edu
sound/soc/codecs/sirf-audio-codec.c | 2 ++ 1 file changed, 2 insertions(+)
diff --git a/sound/soc/codecs/sirf-audio-codec.c b/sound/soc/codecs/sirf-audio-codec.c index e424499a8450..fd2bbd6a3c58 100644 --- a/sound/soc/codecs/sirf-audio-codec.c +++ b/sound/soc/codecs/sirf-audio-codec.c @@ -464,6 +464,8 @@ static int sirf_audio_codec_driver_probe(struct platform_device *pdev) const struct of_device_id *match;
match = of_match_node(sirf_audio_codec_of_match, pdev->dev.of_node);
if (!match)
return -ENXIO;
sirf_audio_codec = devm_kzalloc(&pdev->dev, sizeof(struct sirf_audio_codec), GFP_KERNEL);
participants (2)
-
Aditya Pakki
-
Steven Price