[drm-misc:for-linux-next 40/49] drivers/gpu/drm/xe/xe_guc_submit.c:814:48: error: passing argument 1 of 'drm_err_printer' from incompatible pointer type
kernel test robot
lkp at intel.com
Sat Feb 10 17:23:54 UTC 2024
tree: git://anongit.freedesktop.org/drm/drm-misc for-linux-next
head: 7edd06233958d9086a9e3eb723a8768d3c5a9ce1
commit: 5e0c04c8c40b69ab165d52964433859d8b666376 [40/49] drm/print: make drm_err_printer() device specific by using drm_err()
config: loongarch-allmodconfig (https://download.01.org/0day-ci/archive/20240211/202402110100.VAaZBzr1-lkp@intel.com/config)
compiler: loongarch64-linux-gcc (GCC) 13.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240211/202402110100.VAaZBzr1-lkp@intel.com/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp at intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202402110100.VAaZBzr1-lkp@intel.com/
All errors (new ones prefixed by >>):
drivers/gpu/drm/xe/xe_guc_submit.c: In function 'simple_error_capture':
>> drivers/gpu/drm/xe/xe_guc_submit.c:814:48: error: passing argument 1 of 'drm_err_printer' from incompatible pointer type [-Werror=incompatible-pointer-types]
814 | struct drm_printer p = drm_err_printer("");
| ^~
| |
| char *
In file included from drivers/gpu/drm/xe/xe_assert.h:11,
from drivers/gpu/drm/xe/xe_guc_submit.c:19:
include/drm/drm_print.h:247:69: note: expected 'struct drm_device *' but argument is of type 'char *'
247 | static inline struct drm_printer drm_err_printer(struct drm_device *drm,
| ~~~~~~~~~~~~~~~~~~~^~~
>> drivers/gpu/drm/xe/xe_guc_submit.c:814:32: error: too few arguments to function 'drm_err_printer'
814 | struct drm_printer p = drm_err_printer("");
| ^~~~~~~~~~~~~~~
include/drm/drm_print.h:247:34: note: declared here
247 | static inline struct drm_printer drm_err_printer(struct drm_device *drm,
| ^~~~~~~~~~~~~~~
cc1: some warnings being treated as errors
vim +/drm_err_printer +814 drivers/gpu/drm/xe/xe_guc_submit.c
dd08ebf6c3525a Matthew Brost 2023-03-30 809
dd08ebf6c3525a Matthew Brost 2023-03-30 810 #if IS_ENABLED(CONFIG_DRM_XE_SIMPLE_ERROR_CAPTURE)
9b9529ce379a08 Francois Dugast 2023-07-31 811 static void simple_error_capture(struct xe_exec_queue *q)
dd08ebf6c3525a Matthew Brost 2023-03-30 812 {
9b9529ce379a08 Francois Dugast 2023-07-31 813 struct xe_guc *guc = exec_queue_to_guc(q);
dd08ebf6c3525a Matthew Brost 2023-03-30 @814 struct drm_printer p = drm_err_printer("");
dd08ebf6c3525a Matthew Brost 2023-03-30 815 struct xe_hw_engine *hwe;
dd08ebf6c3525a Matthew Brost 2023-03-30 816 enum xe_hw_engine_id id;
9b9529ce379a08 Francois Dugast 2023-07-31 817 u32 adj_logical_mask = q->logical_mask;
9b9529ce379a08 Francois Dugast 2023-07-31 818 u32 width_mask = (0x1 << q->width) - 1;
dd08ebf6c3525a Matthew Brost 2023-03-30 819 int i;
dd08ebf6c3525a Matthew Brost 2023-03-30 820 bool cookie;
dd08ebf6c3525a Matthew Brost 2023-03-30 821
9b9529ce379a08 Francois Dugast 2023-07-31 822 if (q->vm && !q->vm->error_capture.capture_once) {
9b9529ce379a08 Francois Dugast 2023-07-31 823 q->vm->error_capture.capture_once = true;
dd08ebf6c3525a Matthew Brost 2023-03-30 824 cookie = dma_fence_begin_signalling();
9b9529ce379a08 Francois Dugast 2023-07-31 825 for (i = 0; q->width > 1 && i < XE_HW_ENGINE_MAX_INSTANCE;) {
dd08ebf6c3525a Matthew Brost 2023-03-30 826 if (adj_logical_mask & BIT(i)) {
dd08ebf6c3525a Matthew Brost 2023-03-30 827 adj_logical_mask |= width_mask << i;
9b9529ce379a08 Francois Dugast 2023-07-31 828 i += q->width;
dd08ebf6c3525a Matthew Brost 2023-03-30 829 } else {
dd08ebf6c3525a Matthew Brost 2023-03-30 830 ++i;
dd08ebf6c3525a Matthew Brost 2023-03-30 831 }
dd08ebf6c3525a Matthew Brost 2023-03-30 832 }
dd08ebf6c3525a Matthew Brost 2023-03-30 833
dd08ebf6c3525a Matthew Brost 2023-03-30 834 xe_force_wake_get(gt_to_fw(guc_to_gt(guc)), XE_FORCEWAKE_ALL);
513260dfd150a4 Rodrigo Vivi 2023-05-16 835 xe_guc_ct_print(&guc->ct, &p, true);
9b9529ce379a08 Francois Dugast 2023-07-31 836 guc_exec_queue_print(q, &p);
dd08ebf6c3525a Matthew Brost 2023-03-30 837 for_each_hw_engine(hwe, guc_to_gt(guc), id) {
9b9529ce379a08 Francois Dugast 2023-07-31 838 if (hwe->class != q->hwe->class ||
dd08ebf6c3525a Matthew Brost 2023-03-30 839 !(BIT(hwe->logical_instance) & adj_logical_mask))
dd08ebf6c3525a Matthew Brost 2023-03-30 840 continue;
a4db5555878519 Rodrigo Vivi 2023-05-16 841 xe_hw_engine_print(hwe, &p);
dd08ebf6c3525a Matthew Brost 2023-03-30 842 }
9b9529ce379a08 Francois Dugast 2023-07-31 843 xe_analyze_vm(&p, q->vm, q->gt->info.id);
dd08ebf6c3525a Matthew Brost 2023-03-30 844 xe_force_wake_put(gt_to_fw(guc_to_gt(guc)), XE_FORCEWAKE_ALL);
dd08ebf6c3525a Matthew Brost 2023-03-30 845 dma_fence_end_signalling(cookie);
dd08ebf6c3525a Matthew Brost 2023-03-30 846 }
dd08ebf6c3525a Matthew Brost 2023-03-30 847 }
dd08ebf6c3525a Matthew Brost 2023-03-30 848 #else
9b9529ce379a08 Francois Dugast 2023-07-31 849 static void simple_error_capture(struct xe_exec_queue *q)
dd08ebf6c3525a Matthew Brost 2023-03-30 850 {
dd08ebf6c3525a Matthew Brost 2023-03-30 851 }
dd08ebf6c3525a Matthew Brost 2023-03-30 852 #endif
dd08ebf6c3525a Matthew Brost 2023-03-30 853
:::::: The code at line 814 was first introduced by commit
:::::: dd08ebf6c3525a7ea2186e636df064ea47281987 drm/xe: Introduce a new DRM driver for Intel GPUs
:::::: TO: Matthew Brost <matthew.brost at intel.com>
:::::: CC: Rodrigo Vivi <rodrigo.vivi at intel.com>
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
More information about the dri-devel
mailing list