Re: [git pull] drm for 5.12-rc1

From: Nathan Chancellor
Date: Sun Feb 21 2021 - 18:46:35 EST


On Sun, Feb 21, 2021 at 03:07:17PM -0800, Linus Torvalds wrote:
> On Thu, Feb 18, 2021 at 10:06 PM Dave Airlie <airlied@xxxxxxxxx> wrote:
> >
> > Let me know if there are any issues,
>
> gcc was happy, and I obviously already pushed out my merge, but then
> when I did my clang build afterwards, it reports:
>
> drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu_cmn.c:764:2: warning:
> variable 'structure_size' is used uninitialized whenever switch
> default is taken [-Wsometimes-uninitialized]
> default:
> ^~~~~~~
> drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu_cmn.c:770:23: note:
> uninitialized use occurs here
> memset(header, 0xFF, structure_size);
> ^~~~~~~~~~~~~~
>
> and clang is very very right. That "default" case is completely
> broken, and will generate a randomly sized memset. Not good.
>
> Presumably that default case never happens, but if so it shouldn't exist.
>
> Perhaps better yet, make the "default" case just do a "return" instead
> of a break. Breaking out of the switch statement to code that cannot
> possibly work is all kinds of mindless.
>
> Kevin/Alex? This was introduced by commit de4b7cd8cb87
> ("drm/amd/pm/swsmu: unify the init soft gpu metrics function")
>
> Linus

I sent https://lore.kernel.org/r/20210218224849.5591-1-nathan@xxxxxxxxxx/
a few days ago and Kevin reviewed it, just seems like Alex needs to pick
it up.

Cheers,
Nathan