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@xxxxxxxxx/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@xxxxxxxxx/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@xxxxxxxxx> | Closes: https://lore.kernel.org/oe-kbuild-all/202402110100.VAaZBzr1-lkp@xxxxxxxxx/ 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@xxxxxxxxx> :::::: CC: Rodrigo Vivi <rodrigo.vivi@xxxxxxxxx> -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki