On 17.02.2023 13:46, Arnd Bergmann wrote:
From: Arnd Bergmann <a...@arndb.de>

With gcc-7 and earlier, there are lots of warnings like

In file included from <command-line>:0:0:
In function '__guc_context_policy_add_priority.isra.66',
     inlined from '__guc_context_set_prio.isra.67' at 
drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c:3292:3,
     inlined from 'guc_context_set_prio' at 
drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c:3320:2:
include/linux/compiler_types.h:399:38: error: call to 
'__compiletime_assert_631' declared with attribute error: FIELD_PREP: mask is 
not constant
   _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
                                       ^
...
drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c:2422:3: note: in expansion of 
macro 'FIELD_PREP'
    FIELD_PREP(GUC_KLV_0_KEY, GUC_CONTEXT_POLICIES_KLV_ID_##id) | \
    ^~~~~~~~~~

Make sure that GUC_KLV_0_KEY is an unsigned value to avoid the warning.

Does it mean __builtin_constant_p in gcc7 returns 0 on signed constants?
I guess there should be more similar errors.

Regards
Andrzej



Fixes: 77b6f79df66e ("drm/i915/guc: Update to GuC version 69.0.3")
Signed-off-by: Arnd Bergmann <a...@arndb.de>
---
  drivers/gpu/drm/i915/gt/uc/abi/guc_klvs_abi.h | 6 +++---
  1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/gpu/drm/i915/gt/uc/abi/guc_klvs_abi.h 
b/drivers/gpu/drm/i915/gt/uc/abi/guc_klvs_abi.h
index 58012edd4eb0..4f4f53c42a9c 100644
--- a/drivers/gpu/drm/i915/gt/uc/abi/guc_klvs_abi.h
+++ b/drivers/gpu/drm/i915/gt/uc/abi/guc_klvs_abi.h
@@ -29,9 +29,9 @@
   */
#define GUC_KLV_LEN_MIN 1u
-#define GUC_KLV_0_KEY                          (0xffff << 16)
-#define GUC_KLV_0_LEN                          (0xffff << 0)
-#define GUC_KLV_n_VALUE                                (0xffffffff << 0)
+#define GUC_KLV_0_KEY                          (0xffffu << 16)
+#define GUC_KLV_0_LEN                          (0xffffu << 0)
+#define GUC_KLV_n_VALUE                                (0xffffffffu << 0)
/**
   * DOC: GuC Self Config KLVs

Reply via email to