[PATCH] drm/xe: Fix total initialization in xe_ggtt_print_holes()

Lucas De Marchi lucas.demarchi at intel.com
Sat Aug 24 13:10:21 UTC 2024


On Fri, Aug 23, 2024 at 08:47:13PM GMT, Nathan Chancellor wrote:
>Clang warns (or errors with CONFIG_DRM_WERROR or CONFIG_WERROR):
>
>  drivers/gpu/drm/xe/xe_ggtt.c:810:3: error: variable 'total' is uninitialized when used here [-Werror,-Wuninitialized]
>    810 |                 total += hole_size;
>        |                 ^~~~~
>  drivers/gpu/drm/xe/xe_ggtt.c:798:11: note: initialize the variable 'total' to silence this warning
>    798 |         u64 total;
>        |                  ^
>        |                   = 0
>  1 error generated.
>
>Move the zero initialization of total from
>xe_gt_sriov_pf_config_print_available_ggtt() to xe_ggtt_print_holes() to
>resolve the warning.
>
>Fixes: 136367290ea5 ("drm/xe: Introduce xe_ggtt_print_holes")
>Signed-off-by: Nathan Chancellor <nathan at kernel.org>


Reviewed-by: Lucas De Marchi <lucas.demarchi at intel.com>

I will push it soon to drm-xe-next, thanks.

Lucas De Marchi

>---
> drivers/gpu/drm/xe/xe_ggtt.c               | 2 +-
> drivers/gpu/drm/xe/xe_gt_sriov_pf_config.c | 2 +-
> 2 files changed, 2 insertions(+), 2 deletions(-)
>
>diff --git a/drivers/gpu/drm/xe/xe_ggtt.c b/drivers/gpu/drm/xe/xe_ggtt.c
>index a3ce91decdce..86fc6afa43bd 100644
>--- a/drivers/gpu/drm/xe/xe_ggtt.c
>+++ b/drivers/gpu/drm/xe/xe_ggtt.c
>@@ -795,7 +795,7 @@ u64 xe_ggtt_print_holes(struct xe_ggtt *ggtt, u64 alignment, struct drm_printer
> 	const struct drm_mm_node *entry;
> 	u64 hole_min_start = xe_wopcm_size(tile_to_xe(ggtt->tile));
> 	u64 hole_start, hole_end, hole_size;
>-	u64 total;
>+	u64 total = 0;
> 	char buf[10];
>
> 	mutex_lock(&ggtt->lock);
>diff --git a/drivers/gpu/drm/xe/xe_gt_sriov_pf_config.c b/drivers/gpu/drm/xe/xe_gt_sriov_pf_config.c
>index c8835d9eead6..41ed07b153b5 100644
>--- a/drivers/gpu/drm/xe/xe_gt_sriov_pf_config.c
>+++ b/drivers/gpu/drm/xe/xe_gt_sriov_pf_config.c
>@@ -2110,7 +2110,7 @@ int xe_gt_sriov_pf_config_print_available_ggtt(struct xe_gt *gt, struct drm_prin
> {
> 	struct xe_ggtt *ggtt = gt_to_tile(gt)->mem.ggtt;
> 	u64 alignment = pf_get_ggtt_alignment(gt);
>-	u64 spare, avail, total = 0;
>+	u64 spare, avail, total;
> 	char buf[10];
>
> 	xe_gt_assert(gt, IS_SRIOV_PF(gt_to_xe(gt)));
>
>---
>base-commit: 66a0f6b9f5fc205272035b6ffa4830be51e3f787
>change-id: 20240823-drm-xe-fix-total-in-xe_ggtt_print_holes-0cf2c399aa2a
>
>Best regards,
>-- 
>Nathan Chancellor <nathan at kernel.org>
>


More information about the dri-devel mailing list