[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <79f75c67-b230-62f0-ac69-88c66b8c6461@gmail.com>
Date: Sat, 16 Sep 2017 14:20:21 +0200
From: Christian König <ckoenig.leichtzumerken@...il.com>
To: Arnd Bergmann <arnd@...db.de>,
Alex Deucher <alexander.deucher@....com>,
Christian König <christian.koenig@....com>,
David Airlie <airlied@...ux.ie>
Cc: dri-devel@...ts.freedesktop.org, amd-gfx@...ts.freedesktop.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH] drm/radeon: properly initialize r600_audio_status() data
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 <arnd@...db.de>
Reviewed-by: Christian König <christian.koenig@....com>
> ---
> 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);
Powered by blists - more mailing lists