Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751445AbdIPMU0 (ORCPT ); Sat, 16 Sep 2017 08:20:26 -0400 Received: from mail-wr0-f193.google.com ([209.85.128.193]:35866 "EHLO mail-wr0-f193.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751256AbdIPMUY (ORCPT ); Sat, 16 Sep 2017 08:20:24 -0400 X-Google-Smtp-Source: ADKCNb7SSc2ae1i9pfXEjJiwYSFgYIreNh/6oZaGc4oHy3ey44qj0/fplvO6c6feSX2L6DaH5ALwNw== Reply-To: christian.koenig@amd.com Subject: Re: [PATCH] drm/radeon: properly initialize r600_audio_status() data To: Arnd Bergmann , Alex Deucher , =?UTF-8?Q?Christian_K=c3=b6nig?= , David Airlie Cc: dri-devel@lists.freedesktop.org, amd-gfx@lists.freedesktop.org, linux-kernel@vger.kernel.org References: <20170915200705.1639795-1-arnd@arndb.de> From: =?UTF-8?Q?Christian_K=c3=b6nig?= Message-ID: <79f75c67-b230-62f0-ac69-88c66b8c6461@gmail.com> Date: Sat, 16 Sep 2017 14:20:21 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.2.1 MIME-Version: 1.0 In-Reply-To: <20170915200705.1639795-1-arnd@arndb.de> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit Content-Language: en-US Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1548 Lines: 36 Am 15.09.2017 um 22:06 schrieb Arnd Bergmann: > The structure returned from r600_audio_status() is only partially > initialized, and older gcc versions (4.3 and 4.4) warn about this: > > drivers/gpu/drm/radeon/r600_hdmi.c: In function 'r600_audio_status': > drivers/gpu/drm/radeon/r600_hdmi.c:108: error: 'status.id' is used uninitialized in this function > drivers/gpu/drm/radeon/r600_hdmi.c:108: error: 'status.connected' is used uninitialized in this function > drivers/gpu/drm/radeon/r600_hdmi.c:108: error: 'status.offset' is used uninitialized in this function > > This is harmless and surprisingly correct in C99, as the caller > only accesses the fields that got initialized, so newer compilers > don't warn about it, but initializing the entire structure feels > like the right thing to do here and avoids the warning. > > Signed-off-by: Arnd Bergmann Reviewed-by: Christian König > --- > drivers/gpu/drm/radeon/r600_hdmi.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/radeon/r600_hdmi.c b/drivers/gpu/drm/radeon/r600_hdmi.c > index e82a99cb2459..ab32830c4e23 100644 > --- a/drivers/gpu/drm/radeon/r600_hdmi.c > +++ b/drivers/gpu/drm/radeon/r600_hdmi.c > @@ -58,7 +58,7 @@ enum r600_hdmi_iec_status_bits { > > static struct r600_audio_pin r600_audio_status(struct radeon_device *rdev) > { > - struct r600_audio_pin status; > + struct r600_audio_pin status = {}; > uint32_t value; > > value = RREG32(R600_AUDIO_RATE_BPS_CHANNEL);