From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.8 required=3.0 tests=DKIM_INVALID,DKIM_SIGNED, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY, SPF_PASS autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 33922C43381 for ; Mon, 25 Mar 2019 06:54:29 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id F251A20863 for ; Mon, 25 Mar 2019 06:54:28 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="key not found in DNS" (0-bit key) header.d=codeaurora.org header.i=@codeaurora.org header.b="B7gscBnN"; dkim=fail reason="key not found in DNS" (0-bit key) header.d=codeaurora.org header.i=@codeaurora.org header.b="B7gscBnN" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729792AbfCYGy1 (ORCPT ); Mon, 25 Mar 2019 02:54:27 -0400 Received: from smtp.codeaurora.org ([198.145.29.96]:59730 "EHLO smtp.codeaurora.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729656AbfCYGy0 (ORCPT ); Mon, 25 Mar 2019 02:54:26 -0400 Received: by smtp.codeaurora.org (Postfix, from userid 1000) id EF41D602BA; Mon, 25 Mar 2019 06:54:25 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=codeaurora.org; s=default; t=1553496865; bh=1ovQDx4GGPKRoJdCnAe8rb5ACCsjCYaqsSigR07mCCc=; h=Subject:From:To:Cc:References:Date:In-Reply-To:From; b=B7gscBnNEjeJ72a6pzNSO+e3uKNT/2LJvOQlBxUVFZeaQm6cMNI0NL7BXuf/loVUM 5pn9qKE1VpBeaPZ5+VYE6EUE7f+KTxjC2IKwWdRqtuyk998BRsaDsa2/Of/Y00roA0 bcFTNE7/qgRQmP4F5BIortKFeHA0znM3wU09FdS0= Received: from [10.204.79.83] (blr-c-bdr-fw-01_globalnat_allzones-outside.qualcomm.com [103.229.19.19]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) (Authenticated sender: mojha@smtp.codeaurora.org) by smtp.codeaurora.org (Postfix) with ESMTPSA id 41DE0602BA; Mon, 25 Mar 2019 06:54:20 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=codeaurora.org; s=default; t=1553496865; bh=1ovQDx4GGPKRoJdCnAe8rb5ACCsjCYaqsSigR07mCCc=; h=Subject:From:To:Cc:References:Date:In-Reply-To:From; b=B7gscBnNEjeJ72a6pzNSO+e3uKNT/2LJvOQlBxUVFZeaQm6cMNI0NL7BXuf/loVUM 5pn9qKE1VpBeaPZ5+VYE6EUE7f+KTxjC2IKwWdRqtuyk998BRsaDsa2/Of/Y00roA0 bcFTNE7/qgRQmP4F5BIortKFeHA0znM3wU09FdS0= DMARC-Filter: OpenDMARC Filter v1.3.2 smtp.codeaurora.org 41DE0602BA Authentication-Results: pdx-caf-mail.web.codeaurora.org; dmarc=none (p=none dis=none) header.from=codeaurora.org Authentication-Results: pdx-caf-mail.web.codeaurora.org; spf=none smtp.mailfrom=mojha@codeaurora.org Subject: Re: [PATCH] sound: codecs: fix a potential NULL pointer dereference From: Mukesh Ojha To: Kangjie Lu Cc: pakki001@umn.edu, Bard Liao , Oder Chiou , Liam Girdwood , Mark Brown , Jaroslav Kysela , Takashi Iwai , alsa-devel@alsa-project.org, linux-kernel@vger.kernel.org References: <20190324231237.2246-1-kjlu@umn.edu> <4fa0e2cb-7044-12e1-33b3-14015c94e48d@codeaurora.org> Message-ID: Date: Mon, 25 Mar 2019 12:24:18 +0530 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:60.0) Gecko/20100101 Thunderbird/60.6.0 MIME-Version: 1.0 In-Reply-To: <4fa0e2cb-7044-12e1-33b3-14015c94e48d@codeaurora.org> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit Content-Language: en-US Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Kangjje/Aditya, Please do take care of the return value you are sending upstream whether still is checked or not otherwise NULL pointer dereference will still come. Also resource release properly otherwise your patch may looks simple but it can introduce memory leak as well in other path. Thanks, Mukesh On 3/25/2019 12:15 PM, Mukesh Ojha wrote: > > On 3/25/2019 4:42 AM, Kangjie Lu wrote: >> In case devm_kzalloc fails, the patch returns -ENOMEM to avoid >> potential NULL pointer dereference. >> >> Signed-off-by: Kangjie Lu >> --- >>   sound/soc/codecs/rt5663.c | 2 ++ >>   1 file changed, 2 insertions(+) >> >> diff --git a/sound/soc/codecs/rt5663.c b/sound/soc/codecs/rt5663.c >> index da6647015708..909ab99a1995 100644 >> --- a/sound/soc/codecs/rt5663.c >> +++ b/sound/soc/codecs/rt5663.c >> @@ -3480,6 +3480,8 @@ static int rt5663_parse_dp(struct rt5663_priv >> *rt5663, struct device *dev) >>           table_size = sizeof(struct impedance_mapping_table) * >>               rt5663->pdata.impedance_sensing_num; >>           rt5663->imp_table = devm_kzalloc(dev, table_size, GFP_KERNEL); >> +        if (!rt5663->imp_table) >> +            return -ENOMEM; > > add checks in rt5663_parse_dp  as well. > > Thanks. > Mukesh > > >> device_property_read_u32_array(dev, >>               "realtek,impedance_sensing_table", >>               (u32 *)rt5663->imp_table, table_size);