Hi Chris, Thank you for the patch! Yet something to improve: [auto build test ERROR on next-20200109] [cannot apply to drm-intel/for-linux-next drm-tip/drm-tip v5.5-rc5 v5.5-rc4 v5.5-rc3 v5.5-rc5] [if your patch is applied to the wrong git tree, please drop us a note to help improve the system. BTW, we also suggest to use '--base' option to specify the base tree in git format-patch, please see https://stackoverflow.com/a/37406982] url: https://github.com/0day-ci/linux/commits/Chris-Wilson/drm-i915-gt-Push-context-state-allocation-earlier/20200110-090110 base: 85cff1ab64327cee3090050b3dd6b5f1df3e5e1f config: x86_64-randconfig-g001-20200109 (attached as .config) compiler: gcc-7 (Debian 7.5.0-3) 7.5.0 reproduce: # save the attached .config to linux build tree make ARCH=x86_64 If you fix the issue, kindly add following tag Reported-by: kbuild test robot All error/warnings (new ones prefixed by >>): In file included from drivers/gpu/drm/i915/i915_drv.h:97:0, from drivers/gpu/drm/i915/gt/intel_lrc.c:136: drivers/gpu/drm/i915/i915_gpu_error.h:312:6: error: conflicting types for 'i915_vma_compress_prepare' void i915_vma_compress_prepare(struct i915_vma_compress *compress) ^~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/i915/i915_gpu_error.h:307:1: note: previous definition of 'i915_vma_compress_prepare' was here i915_vma_compress_prepare(struct intel_gt_coredump *gt) ^~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/i915/gt/intel_lrc.c: In function 'execlists_capture_work': >> drivers/gpu/drm/i915/gt/intel_lrc.c:2471:10: error: implicit declaration of function 'i915_vma_capture_prepare'; did you mean 'i915_vma_compress_prepare'? [-Werror=implicit-function-declaration] comp = i915_vma_capture_prepare(gt); ^~~~~~~~~~~~~~~~~~~~~~~~ i915_vma_compress_prepare >> drivers/gpu/drm/i915/gt/intel_lrc.c:2471:8: warning: assignment makes pointer from integer without a cast [-Wint-conversion] comp = i915_vma_capture_prepare(gt); ^ >> drivers/gpu/drm/i915/gt/intel_lrc.c:2474:4: error: implicit declaration of function 'i915_vma_capture_finish'; did you mean 'i915_vma_clock_flush'? [-Werror=implicit-function-declaration] i915_vma_capture_finish(gt, comp); ^~~~~~~~~~~~~~~~~~~~~~~ i915_vma_clock_flush >> drivers/gpu/drm/i915/gt/intel_lrc.c:2481:25: error: passing argument 1 of 'i915_error_state_store' from incompatible pointer type [-Werror=incompatible-pointer-types] i915_error_state_store(cap->error); ^~~ In file included from drivers/gpu/drm/i915/i915_drv.h:97:0, from drivers/gpu/drm/i915/gt/intel_lrc.c:136: drivers/gpu/drm/i915/i915_gpu_error.h:317:1: note: expected 'struct drm_i915_private *' but argument is of type 'struct i915_gpu_coredump *' i915_error_state_store(struct drm_i915_private *i915, ^~~~~~~~~~~~~~~~~~~~~~ >> drivers/gpu/drm/i915/gt/intel_lrc.c:2481:2: error: too few arguments to function 'i915_error_state_store' i915_error_state_store(cap->error); ^~~~~~~~~~~~~~~~~~~~~~ In file included from drivers/gpu/drm/i915/i915_drv.h:97:0, from drivers/gpu/drm/i915/gt/intel_lrc.c:136: drivers/gpu/drm/i915/i915_gpu_error.h:317:1: note: declared here i915_error_state_store(struct drm_i915_private *i915, ^~~~~~~~~~~~~~~~~~~~~~ >> drivers/gpu/drm/i915/gt/intel_lrc.c:2482:2: error: implicit declaration of function 'i915_gpu_coredump_put'; did you mean 'i915_gpu_coredump_alloc'? [-Werror=implicit-function-declaration] i915_gpu_coredump_put(cap->error); ^~~~~~~~~~~~~~~~~~~~~ i915_gpu_coredump_alloc cc1: some warnings being treated as errors vim +2471 drivers/gpu/drm/i915/gt/intel_lrc.c 2458 2459 static void execlists_capture_work(struct work_struct *work) 2460 { 2461 struct execlists_capture *cap = container_of(work, typeof(*cap), work); 2462 const gfp_t gfp = GFP_KERNEL | __GFP_RETRY_MAYFAIL | __GFP_NOWARN; 2463 struct intel_engine_cs *engine = cap->rq->engine; 2464 struct intel_gt_coredump *gt = cap->error->gt; 2465 struct intel_engine_capture_vma *vma; 2466 2467 vma = intel_engine_coredump_add_request(gt->engine, cap->rq, gfp); 2468 if (vma) { 2469 struct i915_vma_compress *comp; 2470 > 2471 comp = i915_vma_capture_prepare(gt); 2472 if (comp) { 2473 intel_engine_coredump_add_vma(gt->engine, vma, comp); > 2474 i915_vma_capture_finish(gt, comp); 2475 } 2476 } 2477 2478 gt->simulated = gt->engine->simulated; 2479 cap->error->simulated = gt->simulated; 2480 > 2481 i915_error_state_store(cap->error); > 2482 i915_gpu_coredump_put(cap->error); 2483 2484 execlists_unhold(engine, cap->rq); 2485 2486 kfree(cap); 2487 } 2488 --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org Intel Corporation