From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932661AbcBPOsc (ORCPT ); Tue, 16 Feb 2016 09:48:32 -0500 Received: from mout.kundenserver.de ([212.227.126.131]:56573 "EHLO mout.kundenserver.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932493AbcBPOsa (ORCPT ); Tue, 16 Feb 2016 09:48:30 -0500 From: Arnd Bergmann To: Jaroslav Kysela , Takashi Iwai Cc: linux-arm-kernel@lists.infradead.org, Arnd Bergmann , Libin Yang , David Henningsson , Thierry Reding , "Lu, Han" , alsa-devel@alsa-project.org, linux-kernel@vger.kernel.org Subject: [PATCH] sound: hdmi: avoid dereferencing uninitialized 'jack' pointer Date: Tue, 16 Feb 2016 15:47:28 +0100 Message-Id: <1455634059-1896914-1-git-send-email-arnd@arndb.de> X-Mailer: git-send-email 2.7.0 X-Provags-ID: V03:K0:sHCnwdz1Dt91eFJMOH53KA2tcueyD0MI/s5v8uC5ps6IhBQx++o VeimzQ2urSsv071RlwJGpVmO2WkkfGAqjhGWzjq+WA0zwtfkV2rTGunWnOTReMVSnR+ojv7 eaHutFDlBIC4HAHDgmDCcDSCsDgJzxNfji1vAU0aWrkGfikW8rcRomeX+MSn/Wk3/6XO0RP sS9EXa3QBN+J/iQkuR0Cw== X-UI-Out-Filterresults: notjunk:1;V01:K0:Vk1W4ylO94E=:VZnfNMLmLYALp6aOP+HEqK vCgQKfRXLMshu9B6wQAXdJJzEPsfZX+8JVQQqba5zfbX8wtHfPgn2ZT77SR8kvaH4RWoDZdkU 2JL/w0wK57xbs8jvOrfjzbTDkazi97dz8i0Q/N5ozZ1clW/yAIA372oTOOSnfN0nmoQD4s/fc qkKC/cRPtDD/Pahb28eePvd5W42xCG2zrzXt37oDlgig+L+ZRHXWpft1wJdX0XT1bqKKodw3m QhebSP0TPWdViDHpCzAVDom6HeMjw8BzyagO2oES5J2UPWVdJxvly8GU3YywyJicvwG1JCPT/ SXPp1tUtoYwlv+0GYnAUp9oExl8wUpc+8Fb2HXtmPiI8rMH2F3e+FWrDbtAZ7bU2nlXWOSkXQ 1qYy07K+HoTrL4DqaVtTVwcNOmsLA3lHqvsPN4vEJLaNqB1HXvqU2DKolQ/hfgZxYAUMmyTPl F4BbZQ4ctLwmUoh21e8ancbE1+BqIJ0Mh88X0i7EENN+qBsN7lYNLVtUGiBAyUv3wTSXnDeSn li/c4JQnNOMRShSaHMYozjpLEQBUvK6ruLu/qiARm1rJbgxGGP2ioODqGyF9djas4DWPSW4WF wLp5n+tIq1fWb4UCJUEIIBnf+BvpkU+XK/Qzb3IW/3mlJ/QMFD+8WuiHDcNs95SqUW4nsD1Ar 8+RR950IDohAz1/mJWorq2cxMUDX4JPewencSttXheipzERt3CeOpyLtNw6NNd5ywxvA= Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org When CONFIG_SND_JACK is disabled, the hdmi driver tries to create a new output jack structure and dereferences it even though the pointer is never assigned: sound/pci/hda/patch_hdmi.c: In function 'generic_hdmi_build_jack': sound/pci/hda/patch_hdmi.c:2534:30: error: 'jack' may be used uninitialized in this function [-Werror=maybe-uninitialized] sound/pci/hda/patch_hdmi.c:2526:19: note: 'jack' was declared here This uses a compile-time check to avoid calling a nonworking snd_jack_new() function, and sets an explicit NULL pointer instead. Signed-off-by: Arnd Bergmann Fixes: 788d441a164c ("ALSA: hda - Use component ops for i915 HDMI/DP audio jack handling") --- sound/pci/hda/patch_hdmi.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/sound/pci/hda/patch_hdmi.c b/sound/pci/hda/patch_hdmi.c index f4443b5fbf6e..c0872ad80aa0 100644 --- a/sound/pci/hda/patch_hdmi.c +++ b/sound/pci/hda/patch_hdmi.c @@ -2526,6 +2526,11 @@ static int add_hdmi_jack_kctl(struct hda_codec *codec, struct snd_jack *jack; int err; + if (!IS_ENABLED(CONFIG_SND_JACK)) { + spec->pcm_rec[pcm_idx].jack = NULL; + return 0; + } + err = snd_jack_new(codec->card, name, SND_JACK_AVOUT, &jack, true, false); if (err < 0) -- 2.7.0