Compiler warnings from RAS code

Michel Dänzer michel at daenzer.net
Thu Feb 28 12:01:58 UTC 2019


It's pretty noisy:

In file included from ./include/linux/list.h:9,
                 from ./include/linux/agp_backend.h:33,
                 from ./include/drm/drmP.h:35,
                 from drivers/gpu/drm//amd/amdgpu/amdgpu_kms.c:28:
drivers/gpu/drm//amd/amdgpu/amdgpu_kms.c: In function ‘amdgpu_info_ioctl’:
./include/linux/kernel.h:846:29: warning: comparison of distinct pointer
types lacks a cast
   (!!(sizeof((typeof(x) *)1 == (typeof(y) *)1)))
                             ^~
./include/linux/kernel.h:860:4: note: in expansion of macro ‘__typecheck’
   (__typecheck(x, y) && __no_side_effects(x, y))
    ^~~~~~~~~~~
./include/linux/kernel.h:870:24: note: in expansion of macro ‘__safe_cmp’
  __builtin_choose_expr(__safe_cmp(x, y), \
                        ^~~~~~~~~~
./include/linux/kernel.h:879:19: note: in expansion of macro ‘__careful_cmp’
 #define min(x, y) __careful_cmp(x, y, <)
                   ^~~~~~~~~~~~~
drivers/gpu/drm//amd/amdgpu/amdgpu_kms.c:930:5: note: in expansion of
macro ‘min’
     min(size, sizeof(ras->features))) ? -EFAULT : 0;
     ^~~
[...]
drivers/gpu/drm//amd/amdgpu/amdgpu_psp.c: In function ‘psp_ras_initialize’:
drivers/gpu/drm//amd/amdgpu/amdgpu_psp.c:657:31: warning: unused
variable ‘ras_cmd’ [-Wunused-variable]
  struct ta_ras_shared_memory *ras_cmd;
                               ^~~~~~~
[...]
drivers/gpu/drm//amd/amdgpu/psp_v11_0.c: In function
‘psp_v11_0_init_microcode’:
drivers/gpu/drm//amd/amdgpu/psp_v11_0.c:123:21: warning: ‘ta_hdr’ may be
used uninitialized in this function [-Wmaybe-uninitialized]
   le32_to_cpu(ta_hdr->ta_ras_offset_bytes);
                     ^~
[...]
drivers/gpu/drm//amd/amdgpu/gfx_v9_0.c: In function
‘gfx_v9_0_cp_ecc_error_irq’:
drivers/gpu/drm//amd/amdgpu/gfx_v9_0.c:4817:2: warning: ISO C90 forbids
mixed declarations and code [-Wdeclaration-after-statement]
  struct ras_dispatch_if ih_data = {
  ^~~~~~
[...]
In file included from ./include/linux/list.h:9,
                 from ./include/linux/wait.h:7,
                 from ./include/linux/wait_bit.h:8,
                 from ./include/linux/fs.h:6,
                 from ./include/linux/debugfs.h:15,
                 from drivers/gpu/drm//amd/amdgpu/amdgpu_ras.c:24:
drivers/gpu/drm//amd/amdgpu/amdgpu_ras.c: In function
‘amdgpu_ras_debugfs_read’:
./include/linux/kernel.h:846:29: warning: comparison of distinct pointer
types lacks a cast
   (!!(sizeof((typeof(x) *)1 == (typeof(y) *)1)))
                             ^~
./include/linux/kernel.h:860:4: note: in expansion of macro ‘__typecheck’
   (__typecheck(x, y) && __no_side_effects(x, y))
    ^~~~~~~~~~~
./include/linux/kernel.h:870:24: note: in expansion of macro ‘__safe_cmp’
  __builtin_choose_expr(__safe_cmp(x, y), \
                        ^~~~~~~~~~
./include/linux/kernel.h:879:19: note: in expansion of macro ‘__careful_cmp’
 #define min(x, y) __careful_cmp(x, y, <)
                   ^~~~~~~~~~~~~
drivers/gpu/drm//amd/amdgpu/amdgpu_ras.c:145:6: note: in expansion of
macro ‘min’
  s = min(s, size);
      ^~~
drivers/gpu/drm//amd/amdgpu/amdgpu_ras.c: In function
‘amdgpu_ras_debugfs_write’:
./include/linux/kernel.h:846:29: warning: comparison of distinct pointer
types lacks a cast
   (!!(sizeof((typeof(x) *)1 == (typeof(y) *)1)))
                             ^~
./include/linux/kernel.h:860:4: note: in expansion of macro ‘__typecheck’
   (__typecheck(x, y) && __no_side_effects(x, y))
    ^~~~~~~~~~~
./include/linux/kernel.h:870:24: note: in expansion of macro ‘__safe_cmp’
  __builtin_choose_expr(__safe_cmp(x, y), \
                        ^~~~~~~~~~
./include/linux/kernel.h:879:19: note: in expansion of macro ‘__careful_cmp’
 #define min(x, y) __careful_cmp(x, y, <)
                   ^~~~~~~~~~~~~
drivers/gpu/drm//amd/amdgpu/amdgpu_ras.c:162:14: note: in expansion of
macro ‘min’
  ssize_t s = min(64ULL, size);
              ^~~



-- 
Earthling Michel Dänzer               |              https://www.amd.com
Libre software enthusiast             |             Mesa and X developer


More information about the amd-gfx mailing list