From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933061AbcBPQpK (ORCPT ); Tue, 16 Feb 2016 11:45:10 -0500 Received: from mout.kundenserver.de ([212.227.126.131]:59177 "EHLO mout.kundenserver.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932117AbcBPQpG (ORCPT ); Tue, 16 Feb 2016 11:45:06 -0500 From: Arnd Bergmann To: Takashi Iwai Cc: linux-arm-kernel@lists.infradead.org, Arnd Bergmann , Jaroslav Kysela , alsa-devel@alsa-project.org, linux-kernel@vger.kernel.org Subject: [PATCH v2] sound: hdmi: avoid dereferencing uninitialized 'jack' pointer Date: Tue, 16 Feb 2016 17:44:15 +0100 Message-Id: <1455641066-4014858-1-git-send-email-arnd@arndb.de> X-Mailer: git-send-email 2.7.0 X-Provags-ID: V03:K0:+/yNSPAG3xJFOyn54PVLLHNjAD9WUjcUQLvo1T3U+Ek2QRYbNdC KrZzaDatLdLMgR7ddYJnC4XS7pyy4VLb2kAKWbHkv21/iK86eGXR5AfB7FNnV/b2voa7PiN xIgzsGB0Hyoje1X7sPAsH90sZ1Zk+lkaNPIy69oqn5HVqBa2dJvj7usrQ16rc9D/jsG94wl ko8zfitLRNvtBO59bR48g== X-UI-Out-Filterresults: notjunk:1;V01:K0:nFobo6C/RBc=:DSNO1K8xVrJDvW2GzjBHMd VgjLGgvNZpOikScTj91d9yBe8oAkBQfdSPfpBZC5Fy1Ymryx9aah2ND0ZfhY/vD2spYs7iLIR aT+Qhfe/mMiLN2LNzDNqWY0fv3GlFgVz5cm7R8fB3t4fwsDjyMeu3Y3mR91PqxVU5Ue0MV3C5 UDO7fSCoIDmkNRUF87U3rFC+F7YvI+rN9/PsV5KhMcg4F12hAYvcVT3z5nAv7xY+HH/ltYgBu rRBbIwk1VGP4r3BJcdLQdZUZJPgCen6yqNJa0dN69bMDaRzp2kY/oWLH3tvHz1SrmNnrDLxYl UA/muliyHeZiqQB9K2gGcD21punp9C4i6TsUKHeIDh1w0dweI0YOHHJPuzs8hP37nXh/05xfG Za/YDp21qSbIz1Fc/tqPuEd7IvcuBMAyqU93maaNWHTo+uDgAgWU5ONcxPLoyCP2X5S1Fw4an l1dXfKyA67VLe9AvY+YmyWluf6ZJj69Cl2erY3MmIUbDVRlB5K2Xb5dxhV/R3wEP3vGblTa/e TmDExpAIDz2rFi90YcnVFw7FqR3t5dSZ/13n4LzHLXI8Y7aEfISM6IPjx6WYrFqORN4J2XVy5 PK9Zq+KPBM9twd3jXXxuDFiU9oaZTc8XgPRFpl5HRA5RD5TrAjWv6BZX/Ch30tsJ3GQk1Gwtd 4fOEt7erPUVL+l5YZDvoaMggcz/dWzs0X+zCNqQsFQkJlfveOtqIw4mrfYMwMDG1M33g= 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 makes snd_jack_new() return an error when SND_JACK is disabled, forcing all users to handle errors gracefully and avoiding the problem in all callers that correctly check the return code. Signed-off-by: Arnd Bergmann Fixes: 788d441a164c ("ALSA: hda - Use component ops for i915 HDMI/DP audio jack handling") --- include/sound/jack.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/sound/jack.h b/include/sound/jack.h index 23bede121c78..1e84a2e413f8 100644 --- a/include/sound/jack.h +++ b/include/sound/jack.h @@ -99,7 +99,7 @@ void snd_jack_report(struct snd_jack *jack, int status); static inline int snd_jack_new(struct snd_card *card, const char *id, int type, struct snd_jack **jack, bool initial_kctl, bool phantom_jack) { - return 0; + return -ENXIO; } static inline int snd_jack_add_new_kctl(struct snd_jack *jack, const char * name, int mask) -- 2.7.0