From: kernel test robot <lkp@intel.com> To: "Thomas Hellström" <thomas.hellstrom@linux.intel.com>, intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org Cc: llvm@lists.linux.dev, kbuild-all@lists.01.org, maarten.lankhorst@linux.intel.com, matthew.auld@intel.com, "Thomas Hellström" <thomas.hellstrom@linux.intel.com> Subject: Re: [Intel-gfx] [PATCH v4 2/4] drm/i915: Update error capture code to avoid using the current vma state Date: Sat, 30 Oct 2021 20:57:18 +0800 [thread overview] Message-ID: <202110302046.cJDdzLXb-lkp@intel.com> (raw) In-Reply-To: <20211029082156.194003-3-thomas.hellstrom@linux.intel.com> [-- Attachment #1: Type: text/plain, Size: 5752 bytes --] Hi "Thomas, Thank you for the patch! Yet something to improve: [auto build test ERROR on drm-tip/drm-tip] [cannot apply to drm-intel/for-linux-next drm-exynos/exynos-drm-next drm/drm-next tegra-drm/drm/tegra/for-next airlied/drm-next v5.15-rc7 next-20211029] [If your patch is applied to the wrong git tree, kindly drop us a note. And when submitting patch, we suggest to use '--base' as documented in https://git-scm.com/docs/git-format-patch] url: https://github.com/0day-ci/linux/commits/Thomas-Hellstr-m/Prepare-error-capture-for-asynchronous-migration/20211029-162401 base: git://anongit.freedesktop.org/drm/drm-tip drm-tip config: x86_64-randconfig-a013-20211028 (attached as .config) compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 5db7568a6a1fcb408eb8988abdaff2a225a8eb72) reproduce (this is a W=1 build): wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # https://github.com/0day-ci/linux/commit/8f96eab37bc957404f16471b6dea28c82a1b7d40 git remote add linux-review https://github.com/0day-ci/linux git fetch --no-tags linux-review Thomas-Hellstr-m/Prepare-error-capture-for-asynchronous-migration/20211029-162401 git checkout 8f96eab37bc957404f16471b6dea28c82a1b7d40 # save the attached .config to linux build tree COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 ARCH=x86_64 If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <lkp@intel.com> All errors (new ones prefixed by >>): >> drivers/gpu/drm/i915/i915_request.c:116:2: error: implicit declaration of function 'i915_request_free_capture_list' [-Werror,-Wimplicit-function-declaration] i915_request_free_capture_list(fetch_and_zero(&rq->capture_list)); ^ >> drivers/gpu/drm/i915/i915_request.c:116:53: error: no member named 'capture_list' in 'struct i915_request' i915_request_free_capture_list(fetch_and_zero(&rq->capture_list)); ~~ ^ drivers/gpu/drm/i915/i915_utils.h:199:10: note: expanded from macro 'fetch_and_zero' typeof(*ptr) __T = *(ptr); \ ^~~ >> drivers/gpu/drm/i915/i915_request.c:116:53: error: no member named 'capture_list' in 'struct i915_request' i915_request_free_capture_list(fetch_and_zero(&rq->capture_list)); ~~ ^ drivers/gpu/drm/i915/i915_utils.h:199:23: note: expanded from macro 'fetch_and_zero' typeof(*ptr) __T = *(ptr); \ ^~~ >> drivers/gpu/drm/i915/i915_request.c:116:53: error: no member named 'capture_list' in 'struct i915_request' i915_request_free_capture_list(fetch_and_zero(&rq->capture_list)); ~~ ^ drivers/gpu/drm/i915/i915_utils.h:200:4: note: expanded from macro 'fetch_and_zero' *(ptr) = (typeof(*ptr))0; \ ^~~ >> drivers/gpu/drm/i915/i915_request.c:116:53: error: no member named 'capture_list' in 'struct i915_request' i915_request_free_capture_list(fetch_and_zero(&rq->capture_list)); ~~ ^ drivers/gpu/drm/i915/i915_utils.h:200:20: note: expanded from macro 'fetch_and_zero' *(ptr) = (typeof(*ptr))0; \ ^~~ >> drivers/gpu/drm/i915/i915_request.c:116:33: error: argument type 'void' is incomplete i915_request_free_capture_list(fetch_and_zero(&rq->capture_list)); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/i915/i915_utils.h:198:29: note: expanded from macro 'fetch_and_zero' #define fetch_and_zero(ptr) ({ \ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 6 errors generated. vim +/i915_request_free_capture_list +116 drivers/gpu/drm/i915/i915_request.c 108 109 static void i915_fence_release(struct dma_fence *fence) 110 { 111 struct i915_request *rq = to_request(fence); 112 113 GEM_BUG_ON(rq->guc_prio != GUC_PRIO_INIT && 114 rq->guc_prio != GUC_PRIO_FINI); 115 > 116 i915_request_free_capture_list(fetch_and_zero(&rq->capture_list)); 117 if (i915_vma_snapshot_present(&rq->batch_snapshot)) 118 i915_vma_snapshot_put_onstack(&rq->batch_snapshot); 119 120 /* 121 * The request is put onto a RCU freelist (i.e. the address 122 * is immediately reused), mark the fences as being freed now. 123 * Otherwise the debugobjects for the fences are only marked as 124 * freed when the slab cache itself is freed, and so we would get 125 * caught trying to reuse dead objects. 126 */ 127 i915_sw_fence_fini(&rq->submit); 128 i915_sw_fence_fini(&rq->semaphore); 129 130 /* 131 * Keep one request on each engine for reserved use under mempressure, 132 * do not use with virtual engines as this really is only needed for 133 * kernel contexts. 134 */ 135 if (!intel_engine_is_virtual(rq->engine) && 136 !cmpxchg(&rq->engine->request_pool, NULL, rq)) { 137 intel_context_put(rq->context); 138 return; 139 } 140 141 intel_context_put(rq->context); 142 143 kmem_cache_free(slab_requests, rq); 144 } 145 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org [-- Attachment #2: .config.gz --] [-- Type: application/gzip, Size: 34953 bytes --]
WARNING: multiple messages have this Message-ID (diff)
From: kernel test robot <lkp@intel.com> To: kbuild-all@lists.01.org Subject: Re: [Intel-gfx] [PATCH v4 2/4] drm/i915: Update error capture code to avoid using the current vma state Date: Sat, 30 Oct 2021 20:57:18 +0800 [thread overview] Message-ID: <202110302046.cJDdzLXb-lkp@intel.com> (raw) In-Reply-To: <20211029082156.194003-3-thomas.hellstrom@linux.intel.com> [-- Attachment #1: Type: text/plain, Size: 5863 bytes --] Hi "Thomas, Thank you for the patch! Yet something to improve: [auto build test ERROR on drm-tip/drm-tip] [cannot apply to drm-intel/for-linux-next drm-exynos/exynos-drm-next drm/drm-next tegra-drm/drm/tegra/for-next airlied/drm-next v5.15-rc7 next-20211029] [If your patch is applied to the wrong git tree, kindly drop us a note. And when submitting patch, we suggest to use '--base' as documented in https://git-scm.com/docs/git-format-patch] url: https://github.com/0day-ci/linux/commits/Thomas-Hellstr-m/Prepare-error-capture-for-asynchronous-migration/20211029-162401 base: git://anongit.freedesktop.org/drm/drm-tip drm-tip config: x86_64-randconfig-a013-20211028 (attached as .config) compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 5db7568a6a1fcb408eb8988abdaff2a225a8eb72) reproduce (this is a W=1 build): wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # https://github.com/0day-ci/linux/commit/8f96eab37bc957404f16471b6dea28c82a1b7d40 git remote add linux-review https://github.com/0day-ci/linux git fetch --no-tags linux-review Thomas-Hellstr-m/Prepare-error-capture-for-asynchronous-migration/20211029-162401 git checkout 8f96eab37bc957404f16471b6dea28c82a1b7d40 # save the attached .config to linux build tree COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 ARCH=x86_64 If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <lkp@intel.com> All errors (new ones prefixed by >>): >> drivers/gpu/drm/i915/i915_request.c:116:2: error: implicit declaration of function 'i915_request_free_capture_list' [-Werror,-Wimplicit-function-declaration] i915_request_free_capture_list(fetch_and_zero(&rq->capture_list)); ^ >> drivers/gpu/drm/i915/i915_request.c:116:53: error: no member named 'capture_list' in 'struct i915_request' i915_request_free_capture_list(fetch_and_zero(&rq->capture_list)); ~~ ^ drivers/gpu/drm/i915/i915_utils.h:199:10: note: expanded from macro 'fetch_and_zero' typeof(*ptr) __T = *(ptr); \ ^~~ >> drivers/gpu/drm/i915/i915_request.c:116:53: error: no member named 'capture_list' in 'struct i915_request' i915_request_free_capture_list(fetch_and_zero(&rq->capture_list)); ~~ ^ drivers/gpu/drm/i915/i915_utils.h:199:23: note: expanded from macro 'fetch_and_zero' typeof(*ptr) __T = *(ptr); \ ^~~ >> drivers/gpu/drm/i915/i915_request.c:116:53: error: no member named 'capture_list' in 'struct i915_request' i915_request_free_capture_list(fetch_and_zero(&rq->capture_list)); ~~ ^ drivers/gpu/drm/i915/i915_utils.h:200:4: note: expanded from macro 'fetch_and_zero' *(ptr) = (typeof(*ptr))0; \ ^~~ >> drivers/gpu/drm/i915/i915_request.c:116:53: error: no member named 'capture_list' in 'struct i915_request' i915_request_free_capture_list(fetch_and_zero(&rq->capture_list)); ~~ ^ drivers/gpu/drm/i915/i915_utils.h:200:20: note: expanded from macro 'fetch_and_zero' *(ptr) = (typeof(*ptr))0; \ ^~~ >> drivers/gpu/drm/i915/i915_request.c:116:33: error: argument type 'void' is incomplete i915_request_free_capture_list(fetch_and_zero(&rq->capture_list)); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/i915/i915_utils.h:198:29: note: expanded from macro 'fetch_and_zero' #define fetch_and_zero(ptr) ({ \ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 6 errors generated. vim +/i915_request_free_capture_list +116 drivers/gpu/drm/i915/i915_request.c 108 109 static void i915_fence_release(struct dma_fence *fence) 110 { 111 struct i915_request *rq = to_request(fence); 112 113 GEM_BUG_ON(rq->guc_prio != GUC_PRIO_INIT && 114 rq->guc_prio != GUC_PRIO_FINI); 115 > 116 i915_request_free_capture_list(fetch_and_zero(&rq->capture_list)); 117 if (i915_vma_snapshot_present(&rq->batch_snapshot)) 118 i915_vma_snapshot_put_onstack(&rq->batch_snapshot); 119 120 /* 121 * The request is put onto a RCU freelist (i.e. the address 122 * is immediately reused), mark the fences as being freed now. 123 * Otherwise the debugobjects for the fences are only marked as 124 * freed when the slab cache itself is freed, and so we would get 125 * caught trying to reuse dead objects. 126 */ 127 i915_sw_fence_fini(&rq->submit); 128 i915_sw_fence_fini(&rq->semaphore); 129 130 /* 131 * Keep one request on each engine for reserved use under mempressure, 132 * do not use with virtual engines as this really is only needed for 133 * kernel contexts. 134 */ 135 if (!intel_engine_is_virtual(rq->engine) && 136 !cmpxchg(&rq->engine->request_pool, NULL, rq)) { 137 intel_context_put(rq->context); 138 return; 139 } 140 141 intel_context_put(rq->context); 142 143 kmem_cache_free(slab_requests, rq); 144 } 145 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org [-- Attachment #2: config.gz --] [-- Type: application/gzip, Size: 34953 bytes --]
next prev parent reply other threads:[~2021-10-30 12:57 UTC|newest] Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top 2021-10-29 8:21 [PATCH v4 0/4] Prepare error capture for asynchronous migration Thomas Hellström 2021-10-29 8:21 ` [Intel-gfx] " Thomas Hellström 2021-10-29 8:21 ` [PATCH v4 1/4] drm/i915: Introduce refcounted sg-tables Thomas Hellström 2021-10-29 8:21 ` [Intel-gfx] " Thomas Hellström 2021-11-01 11:51 ` Matthew Auld 2021-10-29 8:21 ` [PATCH v4 2/4] drm/i915: Update error capture code to avoid using the current vma state Thomas Hellström 2021-10-29 8:21 ` [Intel-gfx] " Thomas Hellström 2021-10-30 11:47 ` kernel test robot 2021-10-30 11:47 ` kernel test robot 2021-10-30 12:57 ` kernel test robot [this message] 2021-10-30 12:57 ` kernel test robot 2021-10-29 8:21 ` [PATCH v4 3/4] drm/i915: Use GFP_NOWAIT in the capture code Thomas Hellström 2021-10-29 8:21 ` [Intel-gfx] " Thomas Hellström 2021-10-29 8:21 ` [PATCH v4 4/4] drm/i915: Initial introduction of vma resources Thomas Hellström 2021-10-29 8:21 ` [Intel-gfx] " Thomas Hellström 2021-10-29 11:11 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for Prepare error capture for asynchronous migration (rev5) Patchwork 2021-10-29 11:43 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork 2021-10-29 19:33 ` [Intel-gfx] ✗ Fi.CI.IGT: failure " Patchwork
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=202110302046.cJDdzLXb-lkp@intel.com \ --to=lkp@intel.com \ --cc=dri-devel@lists.freedesktop.org \ --cc=intel-gfx@lists.freedesktop.org \ --cc=kbuild-all@lists.01.org \ --cc=llvm@lists.linux.dev \ --cc=maarten.lankhorst@linux.intel.com \ --cc=matthew.auld@intel.com \ --cc=thomas.hellstrom@linux.intel.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.