From patchwork Mon Jan 7 20:12:32 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Yizhuo Zhai X-Patchwork-Id: 10751213 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id F009D13B4 for ; Mon, 7 Jan 2019 21:08:33 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id DFAE9289E5 for ; Mon, 7 Jan 2019 21:08:33 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id D3130289F4; Mon, 7 Jan 2019 21:08:33 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-2.7 required=2.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_NONE autolearn=ham version=3.3.1 Received: from alsa0.perex.cz (alsa0.perex.cz [77.48.224.243]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id DA2B5289E5 for ; Mon, 7 Jan 2019 21:08:32 +0000 (UTC) Received: from alsa0.perex.cz (localhost [127.0.0.1]) by alsa0.perex.cz (Postfix) with ESMTP id 8093226699F; Mon, 7 Jan 2019 21:13:38 +0100 (CET) X-Original-To: alsa-devel@alsa-project.org Delivered-To: alsa-devel@alsa-project.org Received: by alsa0.perex.cz (Postfix, from userid 1000) id 83980266BD4; Mon, 7 Jan 2019 21:13:35 +0100 (CET) Received: from mx1.ucr.edu (mx1.ucr.edu [138.23.248.2]) by alsa0.perex.cz (Postfix) with ESMTP id 1E78C26699F for ; Mon, 7 Jan 2019 21:13:32 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=ucr.edu; i=@ucr.edu; q=dns/txt; s=selector3; t=1546892014; x=1578428014; h=from:to:cc:subject:date:message-id; bh=NdKpoJfbcWZP6rBGXWSEedWUj6BFUZYqn7eq8HXskQg=; b=uCgY4BsSjc4zG/qpmwKo3tga+kU/1tLVFjKPFpvTkrizzYW0eiebpQtS EygJC4VZurvnVhUvOUVbzfyJk3jtQ8IXagQ+GrA6hSxvYoHzFjvZrVB5Q 0XLndg+6i7JjYyhOFHDS8ThY1ZLkG5oWtfoJ5SsOEQoQ6exnm/qUQh8fQ eI6wgS0tIf2Y7uVD+ydB8JC9EmbQtlmgvdBR7/C5FhJ8GknjsHwbs7d3f YZbpDHtrXBdTXuSWaojFqZ8vAlCkdiJFbaJ8iur7PHZS6mP6TW9DM/Tue IHxnw5DTe6k2RR/dL2gZ9lHhMBykHggqpwRz0EoSPCNKw7leOHiI2UTNk w==; IronPort-PHdr: 9a23:7h9qhxf+j46djpfHwsxQRLZOlGMj4u6mDksu8pMizoh2WeGdxcuyZB7h7PlgxGXEQZ/co6odzbaO4+a4ASQp2tWoiDg6aptCVhsI2409vjcLJ4q7M3D9N+PgdCcgHc5PBxdP9nC/NlVJSo6lPwWB6nK94iQPFRrhKAF7Ovr6GpLIj8Swyuu+54Dfbx9HiTahYr5+Ngm6oRnMvcQKnIVuLbo8xAHUqXVSYeRWwm1oJVOXnxni48q74YBu/SdNtf8/7sBMSar1cbg2QrxeFzQmLns65Nb3uhnZTAuA/WUTX2MLmRdVGQfF7RX6XpDssivms+d2xSeXMdHqQb0yRD+v9LlgRgP2hygbNj456GDXhdJ2jKJHuxKquhhzz5fJbI2JKPZye6XQfdYbRWpaRcZRVipBAoyhZIURFuQKIOhYr4jjqFsKsBS1GA2gCe3zxjNNgHL9wK803Pk7EQze3AIuAc8AvnrXotvyL6oeTfy5wbPUwTjZc/9axTHw45XIfBA7pvGMWKp9fsjQyUguFwPFk1KQopHiMjKV1+UNs3KU7+t8We6zhWMqsBxxrSS1xss2lIbGm58Vx0nC+C5kw4g1PcW1RFBnbdOgCpddtCGXO5FoTs8/X21kojs2x7kCtJKjYSQHyZAqywTBZ/GJc4WE+AzvWeeLLTp6i39ofq+0iQyo/ki60OL8U9G50FNNriVYjNbBrmsN1xnP6sifTft941uh1S6P1w/N7uFEJlg5la/BJJ4gxr48j4ITsUreEiPvlkX6kaube0E+9uin7OTnZbrmppuCOINulg7+NaEultS+AeQ+LAcOQ3CW9fqg2LDn50H0Q7VHguconqXErJzWP9kXq6q9DgNN14Ys8Re/DzOo0NQCmnkHKUpIeRKGjojpIV7OIez0Aeuxjlm3jTdk2+rGMqf/DZrQM3jPiK3hcqpl605A1AozyshS6IhQCrEaOv3/Q1L+u8LGDhAnNwy52PzoCNFm1owEQG6PGrWZMKTQsVCW+u0vP/OAZIgPuDbyeLAL/fnr2E44i18AeuH9zIkXYXHgRq9OPk6DJ3fgn4FSQi8xogMiQbmy2xW5WjlJaiP3APox X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: A2BEAACbsjNcgMfSVdFiHQEBBQEHBQGBUQgBCwGEAw+MGV+LDE8BAQEGilsYbIVTgnCFAYF7AQoBASyEQIIGIjQJDQEDAQECAQECARMBAQkNCQgnMYI6KYJfNlKBFQEFATVbgkcBgXQNm2Q8jBUziFkBB4FMCQEIh2yEQYEPgQeDbohSgkMCgSoBAQGKHoUekHIBBgIBgVyBOY5QJIMihl2HbwEtmWkCBAIEBQIFDyGBJYIOTSWBbAqBRIInFxOOLB4zgQeJewE X-IPAS-Result: A2BEAACbsjNcgMfSVdFiHQEBBQEHBQGBUQgBCwGEAw+MGV+LDE8BAQEGilsYbIVTgnCFAYF7AQoBASyEQIIGIjQJDQEDAQECAQECARMBAQkNCQgnMYI6KYJfNlKBFQEFATVbgkcBgXQNm2Q8jBUziFkBB4FMCQEIh2yEQYEPgQeDbohSgkMCgSoBAQGKHoUekHIBBgIBgVyBOY5QJIMihl2HbwEtmWkCBAIEBQIFDyGBJYIOTSWBbAqBRIInFxOOLB4zgQeJewE X-IronPort-AV: E=Sophos;i="5.56,451,1539673200"; d="scan'208";a="1051581249" Received: from mail-pf1-f199.google.com ([209.85.210.199]) by smtp1.ucr.edu with ESMTP/TLS/AES128-GCM-SHA256; 07 Jan 2019 12:12:54 -0800 Received: by mail-pf1-f199.google.com with SMTP id p15so977895pfk.7 for ; Mon, 07 Jan 2019 12:12:54 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=EE5h6degJKpPRjRNKC3WOaHToYIlkncg20CLavTqYJ8=; b=MTmkvp74sRxoBCLln3bJq3xvdBBHrX3AZElnpzg4MKqtGhtdbGb3Y96pu8fTWgY1g6 co/1sUJVAQILNpdzcD1AUJKvLV5G1+RcjabKb+agtO1TMTcQkPEW5++2wQ5tmSibckfA ti9DfFkfv4czNGN352gnVUpnbnPGxt2JdVdsfs8u3TH5RG5og9iUZzJwGXoJta5jrjps 64PK/teQJsecKD1gT63axAmOWFFd7waGBA+kAEIWanWR2N/0dtze9iBI7f29bLKuTCHV Yd3IrCPiHgYyIr3lb7rIm0klMzp/E2zn9XBzBU4lWLIZAOQmCHExROF32CaHdJZ/Wj2C De2Q== X-Gm-Message-State: AJcUukez/8CCxctBehzbjhoXv47GGjh8arZp/AxxpCTcqkFVkrpra+O2 9/TYekQYzmLQqW16zjVRKezdfC61pAujesC6yE0JnMZiOTs2wjLrShFpOuQbxWeD51EeA4FhdMq oR1OFrLBkq3luTgQn1vqJvw8n X-Received: by 2002:a17:902:f64:: with SMTP id 91mr62299875ply.132.1546891973687; Mon, 07 Jan 2019 12:12:53 -0800 (PST) X-Google-Smtp-Source: ALg8bN71tEseuucLL61wMFGdPFfhHlAAvxhvjWPzDSNdWh6iP+nZmOOeQgS37g6GGtn6dVSRDcJ4gg== X-Received: by 2002:a17:902:f64:: with SMTP id 91mr62299849ply.132.1546891973247; Mon, 07 Jan 2019 12:12:53 -0800 (PST) Received: from Yizhuo.cs.ucr.edu (yizhuo.cs.ucr.edu. [169.235.26.74]) by smtp.googlemail.com with ESMTPSA id u29sm93112997pgn.23.2019.01.07.12.12.51 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 07 Jan 2019 12:12:52 -0800 (PST) From: Yizhuo To: Date: Mon, 7 Jan 2019 12:12:32 -0800 Message-Id: <20190107201232.19464-1-yzhai003@ucr.edu> X-Mailer: git-send-email 2.17.1 Cc: csong@cs.ucr.edu, Oder Chiou , alsa-devel@alsa-project.org, linux-kernel@vger.kernel.org, Takashi Iwai , zhiyunq@cs.ucr.edu, Liam Girdwood , Yizhuo , Mark Brown , Bard Liao Subject: [alsa-devel] [PATCH] ASoC: rt274: Variable "buf" in function rt274_jack_detect() could be uninitialized X-BeenThere: alsa-devel@alsa-project.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Alsa-devel mailing list for ALSA developers - http://www.alsa-project.org" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: alsa-devel-bounces@alsa-project.org Sender: alsa-devel-bounces@alsa-project.org X-Virus-Scanned: ClamAV using ClamSMTP In function rt274_jack_detect(), local variable "buf" could be uninitialized if function regmap_read() returns -EINVAL. However, it will be used to calculate "hp" and "mic" and make their value unpredictable while those value are used in the caller. This is potentially unsafe. Signed-off-by: Yizhuo --- sound/soc/codecs/rt274.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/sound/soc/codecs/rt274.c b/sound/soc/codecs/rt274.c index 8f92e5c4dd9d..332a3e955bdb 100644 --- a/sound/soc/codecs/rt274.c +++ b/sound/soc/codecs/rt274.c @@ -353,6 +353,7 @@ static void rt274_index_sync(struct snd_soc_codec *codec) static int rt274_jack_detect(struct rt274_priv *rt274, bool *hp, bool *mic) { unsigned int buf; + int ret; *hp = false; *mic = false; @@ -360,9 +361,15 @@ static int rt274_jack_detect(struct rt274_priv *rt274, bool *hp, bool *mic) if (!rt274->codec) return -EINVAL; - regmap_read(rt274->regmap, RT274_GET_HP_SENSE, &buf); + ret = regmap_read(rt274->regmap, RT274_GET_HP_SENSE, &buf); + if (ret) + return ret; + *hp = buf & 0x80000000; - regmap_read(rt274->regmap, RT274_GET_MIC_SENSE, &buf); + ret = regmap_read(rt274->regmap, RT274_GET_MIC_SENSE, &buf); + if (ret) + return ret; + *mic = buf & 0x80000000; pr_debug("*hp = %d *mic = %d\n", *hp, *mic);