Message ID | 20210218224849.5591-1-nathan@kernel.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | drm/amd/pm/swsmu: Avoid using structure_size uninitialized in smu_cmn_init_soft_gpu_metrics | expand |
thanks, Reviewed-by: Kevin Wang <kevin1.wang@amd.com> Regards, Kevin > 在 2021年2月19日,06:49,Nathan Chancellor <nathan@kernel.org> 写道: > > Clang warns: > > 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); > ^~~~~~~~~~~~~~ > drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu_cmn.c:753:25: note: > initialize the variable 'structure_size' to silence this warning > uint16_t structure_size; > ^ > = 0 > 1 warning generated. > > Return in the default case, as the size of the header will not be known. > > Fixes: de4b7cd8cb87 ("drm/amd/pm/swsmu: unify the init soft gpu metrics function") > Link: https://github.com/ClangBuiltLinux/linux/issues/1304 > Signed-off-by: Nathan Chancellor <nathan@kernel.org> > --- > drivers/gpu/drm/amd/pm/swsmu/smu_cmn.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/amd/pm/swsmu/smu_cmn.c b/drivers/gpu/drm/amd/pm/swsmu/smu_cmn.c > index bb620fdd4cd2..bcedd4d92e35 100644 > --- a/drivers/gpu/drm/amd/pm/swsmu/smu_cmn.c > +++ b/drivers/gpu/drm/amd/pm/swsmu/smu_cmn.c > @@ -762,7 +762,7 @@ void smu_cmn_init_soft_gpu_metrics(void *table, uint8_t frev, uint8_t crev) > structure_size = sizeof(struct gpu_metrics_v2_0); > break; > default: > - break; > + return; > } > > #undef METRICS_VERSION > -- > 2.30.1 >
Applied. Thanks! Alex On Thu, Feb 18, 2021 at 6:12 PM Wang, Kevin(Yang) <Kevin1.Wang@amd.com> wrote: > > thanks, > > Reviewed-by: Kevin Wang <kevin1.wang@amd.com> > > Regards, > Kevin > > > 在 2021年2月19日,06:49,Nathan Chancellor <nathan@kernel.org> 写道: > > > > Clang warns: > > > > 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); > > ^~~~~~~~~~~~~~ > > drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu_cmn.c:753:25: note: > > initialize the variable 'structure_size' to silence this warning > > uint16_t structure_size; > > ^ > > = 0 > > 1 warning generated. > > > > Return in the default case, as the size of the header will not be known. > > > > Fixes: de4b7cd8cb87 ("drm/amd/pm/swsmu: unify the init soft gpu metrics function") > > Link: https://github.com/ClangBuiltLinux/linux/issues/1304 > > Signed-off-by: Nathan Chancellor <nathan@kernel.org> > > --- > > drivers/gpu/drm/amd/pm/swsmu/smu_cmn.c | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > diff --git a/drivers/gpu/drm/amd/pm/swsmu/smu_cmn.c b/drivers/gpu/drm/amd/pm/swsmu/smu_cmn.c > > index bb620fdd4cd2..bcedd4d92e35 100644 > > --- a/drivers/gpu/drm/amd/pm/swsmu/smu_cmn.c > > +++ b/drivers/gpu/drm/amd/pm/swsmu/smu_cmn.c > > @@ -762,7 +762,7 @@ void smu_cmn_init_soft_gpu_metrics(void *table, uint8_t frev, uint8_t crev) > > structure_size = sizeof(struct gpu_metrics_v2_0); > > break; > > default: > > - break; > > + return; > > } > > > > #undef METRICS_VERSION > > -- > > 2.30.1 > > > _______________________________________________ > amd-gfx mailing list > amd-gfx@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/amd-gfx
On Thu, Feb 18, 2021 at 11:49 PM Nathan Chancellor <nathan@kernel.org> wrote: > > Clang warns: > > 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); > ^~~~~~~~~~~~~~ > drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu_cmn.c:753:25: note: > initialize the variable 'structure_size' to silence this warning > uint16_t structure_size; > ^ > = 0 > 1 warning generated. > > Return in the default case, as the size of the header will not be known. > > Fixes: de4b7cd8cb87 ("drm/amd/pm/swsmu: unify the init soft gpu metrics function") > Link: https://github.com/ClangBuiltLinux/linux/issues/1304 > Signed-off-by: Nathan Chancellor <nathan@kernel.org> I fell over this today with Linux v5.11-10201-gc03c21ba6f4e. Tested-by: Sedat Dilek <sedat.dilek@gmail.com> # LLVM/Clang v13-git - Sedat - > --- > drivers/gpu/drm/amd/pm/swsmu/smu_cmn.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/amd/pm/swsmu/smu_cmn.c b/drivers/gpu/drm/amd/pm/swsmu/smu_cmn.c > index bb620fdd4cd2..bcedd4d92e35 100644 > --- a/drivers/gpu/drm/amd/pm/swsmu/smu_cmn.c > +++ b/drivers/gpu/drm/amd/pm/swsmu/smu_cmn.c > @@ -762,7 +762,7 @@ void smu_cmn_init_soft_gpu_metrics(void *table, uint8_t frev, uint8_t crev) > structure_size = sizeof(struct gpu_metrics_v2_0); > break; > default: > - break; > + return; > } > > #undef METRICS_VERSION > -- > 2.30.1 > > -- > You received this message because you are subscribed to the Google Groups "Clang Built Linux" group. > To unsubscribe from this group and stop receiving emails from it, send an email to clang-built-linux+unsubscribe@googlegroups.com. > To view this discussion on the web visit https://groups.google.com/d/msgid/clang-built-linux/20210218224849.5591-1-nathan%40kernel.org.
diff --git a/drivers/gpu/drm/amd/pm/swsmu/smu_cmn.c b/drivers/gpu/drm/amd/pm/swsmu/smu_cmn.c index bb620fdd4cd2..bcedd4d92e35 100644 --- a/drivers/gpu/drm/amd/pm/swsmu/smu_cmn.c +++ b/drivers/gpu/drm/amd/pm/swsmu/smu_cmn.c @@ -762,7 +762,7 @@ void smu_cmn_init_soft_gpu_metrics(void *table, uint8_t frev, uint8_t crev) structure_size = sizeof(struct gpu_metrics_v2_0); break; default: - break; + return; } #undef METRICS_VERSION
Clang warns: 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); ^~~~~~~~~~~~~~ drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu_cmn.c:753:25: note: initialize the variable 'structure_size' to silence this warning uint16_t structure_size; ^ = 0 1 warning generated. Return in the default case, as the size of the header will not be known. Fixes: de4b7cd8cb87 ("drm/amd/pm/swsmu: unify the init soft gpu metrics function") Link: https://github.com/ClangBuiltLinux/linux/issues/1304 Signed-off-by: Nathan Chancellor <nathan@kernel.org> --- drivers/gpu/drm/amd/pm/swsmu/smu_cmn.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)