Messages in this thread | | | Date | Thu, 14 Oct 2021 01:55:11 +0800 | From | kernel test robot <> | Subject | drivers/gpu/drm/i915/gem/i915_gem_shrinker.c:231:4: error: implicit declaration of function 'dma_resv_prune' |
| |
tree: https://github.com/0day-ci/linux/commits/UPDATE-20211013-203254/Maarten-Lankhorst/drm-i915-Use-dma_resv_iter-for-waiting-in-i915_gem_object_wait_reservation/20211013-184219 head: 0d2072c5f543d90f7d41c24e6340faf083d73ab8 commit: 0d2072c5f543d90f7d41c24e6340faf083d73ab8 drm/i915: Use dma_resv_iter for waiting in i915_gem_object_wait_reservation. date: 5 hours ago config: i386-randconfig-a003-20211013 (attached as .config) compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project b6a8c695542b2987eb9a203d5663a0740cb4725f) 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/0d2072c5f543d90f7d41c24e6340faf083d73ab8 git remote add linux-review https://github.com/0day-ci/linux git fetch --no-tags linux-review UPDATE-20211013-203254/Maarten-Lankhorst/drm-i915-Use-dma_resv_iter-for-waiting-in-i915_gem_object_wait_reservation/20211013-184219 git checkout 0d2072c5f543d90f7d41c24e6340faf083d73ab8 # save the attached .config to linux build tree COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 ARCH=i386
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/gem/i915_gem_shrinker.c:231:4: error: implicit declaration of function 'dma_resv_prune' [-Werror,-Wimplicit-function-declaration] dma_resv_prune(obj->base.resv); ^ drivers/gpu/drm/i915/gem/i915_gem_shrinker.c:231:4: note: did you mean 'dma_resv_fini'? include/linux/dma-resv.h:460:6: note: 'dma_resv_fini' declared here void dma_resv_fini(struct dma_resv *obj); ^ 1 error generated.
vim +/dma_resv_prune +231 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c
2d6692e642e7ca drivers/gpu/drm/i915/i915_gem_shrinker.c Chris Wilson 2019-04-20 72 eb0b44adc08c0b drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 73 /** eb0b44adc08c0b drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 74 * i915_gem_shrink - Shrink buffer object caches 772f7bb75dffd4 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Maarten Lankhorst 2021-04-21 75 * @ww: i915 gem ww acquire ctx, or NULL 56fa4bf2b2f084 drivers/gpu/drm/i915/i915_gem_shrinker.c Chris Wilson 2017-11-23 76 * @i915: i915 device eb0b44adc08c0b drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 77 * @target: amount of memory to make available, in pages 912d572d63b8cd drivers/gpu/drm/i915/i915_gem_shrinker.c Chris Wilson 2017-09-06 78 * @nr_scanned: optional output for number of pages scanned (incremental) 70972f51819a22 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Chris Wilson 2019-06-12 79 * @shrink: control flags for selecting cache types eb0b44adc08c0b drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 80 * eb0b44adc08c0b drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 81 * This function is the main interface to the shrinker. It will try to release eb0b44adc08c0b drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 82 * up to @target pages of main memory backing storage from buffer objects. eb0b44adc08c0b drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 83 * Selection of the specific caches can be done with @flags. This is e.g. useful eb0b44adc08c0b drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 84 * when purgeable objects should be removed from caches preferentially. eb0b44adc08c0b drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 85 * eb0b44adc08c0b drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 86 * Note that it's not guaranteed that released amount is actually available as eb0b44adc08c0b drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 87 * free system memory - the pages might still be in-used to due to other reasons eb0b44adc08c0b drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 88 * (like cpu mmaps) or the mm core has reused them before we could grab them. eb0b44adc08c0b drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 89 * Therefore code that needs to explicitly shrink buffer objects caches (e.g. to eb0b44adc08c0b drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 90 * avoid deadlocks in memory reclaim) must fall back to i915_gem_shrink_all(). eb0b44adc08c0b drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 91 * eb0b44adc08c0b drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 92 * Also note that any kind of pinning (both per-vma address space pins and eb0b44adc08c0b drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 93 * backing storage pins at the buffer object level) result in the shrinker code eb0b44adc08c0b drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 94 * having to skip the object. eb0b44adc08c0b drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 95 * eb0b44adc08c0b drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 96 * Returns: eb0b44adc08c0b drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 97 * The number of pages of backing storage actually released. eb0b44adc08c0b drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 98 */ be6a0376950475 drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 99 unsigned long cf41a8f1dc1e47 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Maarten Lankhorst 2021-03-23 100 i915_gem_shrink(struct i915_gem_ww_ctx *ww, cf41a8f1dc1e47 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Maarten Lankhorst 2021-03-23 101 struct drm_i915_private *i915, 912d572d63b8cd drivers/gpu/drm/i915/i915_gem_shrinker.c Chris Wilson 2017-09-06 102 unsigned long target, 912d572d63b8cd drivers/gpu/drm/i915/i915_gem_shrinker.c Chris Wilson 2017-09-06 103 unsigned long *nr_scanned, a8cff4c8283af3 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Chris Wilson 2019-06-10 104 unsigned int shrink) be6a0376950475 drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 105 { be6a0376950475 drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 106 const struct { be6a0376950475 drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 107 struct list_head *list; be6a0376950475 drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 108 unsigned int bit; be6a0376950475 drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 109 } phases[] = { 3b4fa9640ccded drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Chris Wilson 2019-05-30 110 { &i915->mm.purge_list, ~0u }, ecab9be174d98f drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Chris Wilson 2019-06-12 111 { ecab9be174d98f drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Chris Wilson 2019-06-12 112 &i915->mm.shrink_list, ecab9be174d98f drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Chris Wilson 2019-06-12 113 I915_SHRINK_BOUND | I915_SHRINK_UNBOUND ecab9be174d98f drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Chris Wilson 2019-06-12 114 }, be6a0376950475 drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 115 { NULL, 0 }, be6a0376950475 drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 116 }, *phase; 538ef96b9dae7f drivers/gpu/drm/i915/i915_gem_shrinker.c Chris Wilson 2019-01-14 117 intel_wakeref_t wakeref = 0; be6a0376950475 drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 118 unsigned long count = 0; 912d572d63b8cd drivers/gpu/drm/i915/i915_gem_shrinker.c Chris Wilson 2017-09-06 119 unsigned long scanned = 0; 239f3c2ee18376 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Maarten Lankhorst 2021-07-28 120 int err = 0; be6a0376950475 drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 121 bc6f80cce9ae7c drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Maarten Lankhorst 2021-04-26 122 /* CHV + VTD workaround use stop_machine(); need to trylock vm->mutex */ bc6f80cce9ae7c drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Maarten Lankhorst 2021-04-26 123 bool trylock_vm = !ww && intel_vm_no_concurrent_access_wa(i915); bc6f80cce9ae7c drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Maarten Lankhorst 2021-04-26 124 a8cff4c8283af3 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Chris Wilson 2019-06-10 125 trace_i915_gem_shrink(i915, target, shrink); 3abafa539d2c17 drivers/gpu/drm/i915/i915_gem_shrinker.c Chris Wilson 2015-10-01 126 178a30c90ac74e drivers/gpu/drm/i915/i915_gem_shrinker.c Praveen Paneri 2016-05-02 127 /* 178a30c90ac74e drivers/gpu/drm/i915/i915_gem_shrinker.c Praveen Paneri 2016-05-02 128 * Unbinding of objects will require HW access; Let us not wake the 178a30c90ac74e drivers/gpu/drm/i915/i915_gem_shrinker.c Praveen Paneri 2016-05-02 129 * device just to recover a little memory. If absolutely necessary, 178a30c90ac74e drivers/gpu/drm/i915/i915_gem_shrinker.c Praveen Paneri 2016-05-02 130 * we will force the wake during oom-notifier. 178a30c90ac74e drivers/gpu/drm/i915/i915_gem_shrinker.c Praveen Paneri 2016-05-02 131 */ a8cff4c8283af3 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Chris Wilson 2019-06-10 132 if (shrink & I915_SHRINK_BOUND) { d858d5695f3897 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Daniele Ceraolo Spurio 2019-06-13 133 wakeref = intel_runtime_pm_get_if_in_use(&i915->runtime_pm); 538ef96b9dae7f drivers/gpu/drm/i915/i915_gem_shrinker.c Chris Wilson 2019-01-14 134 if (!wakeref) a8cff4c8283af3 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Chris Wilson 2019-06-10 135 shrink &= ~I915_SHRINK_BOUND; 538ef96b9dae7f drivers/gpu/drm/i915/i915_gem_shrinker.c Chris Wilson 2019-01-14 136 } 178a30c90ac74e drivers/gpu/drm/i915/i915_gem_shrinker.c Praveen Paneri 2016-05-02 137 09137e94543761 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Chris Wilson 2020-07-08 138 /* 09137e94543761 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Chris Wilson 2020-07-08 139 * When shrinking the active list, we should also consider active 09137e94543761 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Chris Wilson 2020-07-08 140 * contexts. Active contexts are pinned until they are retired, and 09137e94543761 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Chris Wilson 2020-07-08 141 * so can not be simply unbound to retire and unpin their pages. To 09137e94543761 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Chris Wilson 2020-07-08 142 * shrink the contexts, we must wait until the gpu is idle and 09137e94543761 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Chris Wilson 2020-07-08 143 * completed its switch to the kernel context. In short, we do 09137e94543761 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Chris Wilson 2020-07-08 144 * not have a good mechanism for idling a specific context, but 09137e94543761 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Chris Wilson 2020-07-08 145 * what we can do is give them a kick so that we do not keep idle 09137e94543761 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Chris Wilson 2020-07-08 146 * contexts around longer than is necessary. 09137e94543761 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Chris Wilson 2020-07-08 147 */ 09137e94543761 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Chris Wilson 2020-07-08 148 if (shrink & I915_SHRINK_ACTIVE) 09137e94543761 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Chris Wilson 2020-07-08 149 /* Retire requests to unpin all idle contexts */ 09137e94543761 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Chris Wilson 2020-07-08 150 intel_gt_retire_requests(&i915->gt); 09137e94543761 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Chris Wilson 2020-07-08 151 be6a0376950475 drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 152 /* be6a0376950475 drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 153 * As we may completely rewrite the (un)bound list whilst unbinding be6a0376950475 drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 154 * (due to retiring requests) we have to strictly process only be6a0376950475 drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 155 * one element of the list at the time, and recheck the list be6a0376950475 drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 156 * on every iteration. be6a0376950475 drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 157 * be6a0376950475 drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 158 * In particular, we must hold a reference whilst removing the be6a0376950475 drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 159 * object as we may end up waiting for and/or retiring the objects. be6a0376950475 drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 160 * This might release the final reference (held by the active list) be6a0376950475 drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 161 * and result in the object being freed from under us. This is be6a0376950475 drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 162 * similar to the precautions the eviction code must take whilst be6a0376950475 drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 163 * removing objects. be6a0376950475 drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 164 * be6a0376950475 drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 165 * Also note that although these lists do not hold a reference to be6a0376950475 drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 166 * the object we can safely grab one here: The final object be6a0376950475 drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 167 * unreferencing and the bound_list are both protected by the be6a0376950475 drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 168 * dev->struct_mutex and so we won't ever be able to observe an be6a0376950475 drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 169 * object on the bound_list with a reference count equals 0. be6a0376950475 drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 170 */ be6a0376950475 drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 171 for (phase = phases; phase->list; phase++) { be6a0376950475 drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 172 struct list_head still_in_list; 2a1d775201081c drivers/gpu/drm/i915/i915_gem_shrinker.c Chris Wilson 2016-07-26 173 struct drm_i915_gem_object *obj; a8cff4c8283af3 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Chris Wilson 2019-06-10 174 unsigned long flags; be6a0376950475 drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 175 a8cff4c8283af3 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Chris Wilson 2019-06-10 176 if ((shrink & phase->bit) == 0) be6a0376950475 drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 177 continue; be6a0376950475 drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 178 be6a0376950475 drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 179 INIT_LIST_HEAD(&still_in_list); f2123818ffad03 drivers/gpu/drm/i915/i915_gem_shrinker.c Chris Wilson 2017-10-16 180 f2123818ffad03 drivers/gpu/drm/i915/i915_gem_shrinker.c Chris Wilson 2017-10-16 181 /* f2123818ffad03 drivers/gpu/drm/i915/i915_gem_shrinker.c Chris Wilson 2017-10-16 182 * We serialize our access to unreferenced objects through f2123818ffad03 drivers/gpu/drm/i915/i915_gem_shrinker.c Chris Wilson 2017-10-16 183 * the use of the struct_mutex. While the objects are not f2123818ffad03 drivers/gpu/drm/i915/i915_gem_shrinker.c Chris Wilson 2017-10-16 184 * yet freed (due to RCU then a workqueue) we still want f2123818ffad03 drivers/gpu/drm/i915/i915_gem_shrinker.c Chris Wilson 2017-10-16 185 * to be able to shrink their pages, so they remain on f2123818ffad03 drivers/gpu/drm/i915/i915_gem_shrinker.c Chris Wilson 2017-10-16 186 * the unbound/bound list until actually freed. f2123818ffad03 drivers/gpu/drm/i915/i915_gem_shrinker.c Chris Wilson 2017-10-16 187 */ a8cff4c8283af3 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Chris Wilson 2019-06-10 188 spin_lock_irqsave(&i915->mm.obj_lock, flags); 2a1d775201081c drivers/gpu/drm/i915/i915_gem_shrinker.c Chris Wilson 2016-07-26 189 while (count < target && 2a1d775201081c drivers/gpu/drm/i915/i915_gem_shrinker.c Chris Wilson 2016-07-26 190 (obj = list_first_entry_or_null(phase->list, 2a1d775201081c drivers/gpu/drm/i915/i915_gem_shrinker.c Chris Wilson 2016-07-26 191 typeof(*obj), f2123818ffad03 drivers/gpu/drm/i915/i915_gem_shrinker.c Chris Wilson 2017-10-16 192 mm.link))) { f2123818ffad03 drivers/gpu/drm/i915/i915_gem_shrinker.c Chris Wilson 2017-10-16 193 list_move_tail(&obj->mm.link, &still_in_list); be6a0376950475 drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 194 a8cff4c8283af3 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Chris Wilson 2019-06-10 195 if (shrink & I915_SHRINK_VMAPS && a4f5ea64f0a818 drivers/gpu/drm/i915/i915_gem_shrinker.c Chris Wilson 2016-10-28 196 !is_vmalloc_addr(obj->mm.mapping)) eae2c43b1233f8 drivers/gpu/drm/i915/i915_gem_shrinker.c Chris Wilson 2016-04-08 197 continue; eae2c43b1233f8 drivers/gpu/drm/i915/i915_gem_shrinker.c Chris Wilson 2016-04-08 198 a8cff4c8283af3 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Chris Wilson 2019-06-10 199 if (!(shrink & I915_SHRINK_ACTIVE) && c03467ba40f783 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Chris Wilson 2019-07-03 200 i915_gem_object_is_framebuffer(obj)) 5763ff04dc4ebd drivers/gpu/drm/i915/i915_gem_shrinker.c Chris Wilson 2015-10-01 201 continue; 5763ff04dc4ebd drivers/gpu/drm/i915/i915_gem_shrinker.c Chris Wilson 2015-10-01 202 c1a415e261aad0 drivers/gpu/drm/i915/i915_gem_shrinker.c Chris Wilson 2015-12-04 203 if (!can_release_pages(obj)) c1a415e261aad0 drivers/gpu/drm/i915/i915_gem_shrinker.c Chris Wilson 2015-12-04 204 continue; c1a415e261aad0 drivers/gpu/drm/i915/i915_gem_shrinker.c Chris Wilson 2015-12-04 205 0bd6cb6b58f733 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Chris Wilson 2019-06-18 206 if (!kref_get_unless_zero(&obj->base.refcount)) 0bd6cb6b58f733 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Chris Wilson 2019-06-18 207 continue; 0bd6cb6b58f733 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Chris Wilson 2019-06-18 208 a8cff4c8283af3 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Chris Wilson 2019-06-10 209 spin_unlock_irqrestore(&i915->mm.obj_lock, flags); f2123818ffad03 drivers/gpu/drm/i915/i915_gem_shrinker.c Chris Wilson 2017-10-16 210 cf41a8f1dc1e47 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Maarten Lankhorst 2021-03-23 211 err = 0; bc6f80cce9ae7c drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Maarten Lankhorst 2021-04-26 212 if (unsafe_drop_pages(obj, shrink, trylock_vm)) { 7b7a119e8546e2 drivers/gpu/drm/i915/i915_gem_shrinker.c Chris Wilson 2016-10-31 213 /* May arrive from get_pages on another bo */ cf41a8f1dc1e47 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Maarten Lankhorst 2021-03-23 214 if (!ww) { cf41a8f1dc1e47 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Maarten Lankhorst 2021-03-23 215 if (!i915_gem_object_trylock(obj)) cf41a8f1dc1e47 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Maarten Lankhorst 2021-03-23 216 goto skip; cf41a8f1dc1e47 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Maarten Lankhorst 2021-03-23 217 } else { cf41a8f1dc1e47 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Maarten Lankhorst 2021-03-23 218 err = i915_gem_object_lock(obj, ww); cf41a8f1dc1e47 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Maarten Lankhorst 2021-03-23 219 if (err) cf41a8f1dc1e47 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Maarten Lankhorst 2021-03-23 220 goto skip; cf41a8f1dc1e47 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Maarten Lankhorst 2021-03-23 221 } cf41a8f1dc1e47 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Maarten Lankhorst 2021-03-23 222 cf41a8f1dc1e47 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Maarten Lankhorst 2021-03-23 223 if (!__i915_gem_object_put_pages(obj)) { a8cff4c8283af3 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Chris Wilson 2019-06-10 224 try_to_writeback(obj, shrink); be6a0376950475 drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 225 count += obj->base.size >> PAGE_SHIFT; be6a0376950475 drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 226 } cf41a8f1dc1e47 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Maarten Lankhorst 2021-03-23 227 if (!ww) cf41a8f1dc1e47 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Maarten Lankhorst 2021-03-23 228 i915_gem_object_unlock(obj); 1233e2db199dea drivers/gpu/drm/i915/i915_gem_shrinker.c Chris Wilson 2016-10-28 229 } 0bd6cb6b58f733 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Chris Wilson 2019-06-18 230 6d393ef5ff5cac drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Chris Wilson 2020-12-23 @231 dma_resv_prune(obj->base.resv); 6d393ef5ff5cac drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Chris Wilson 2020-12-23 232 4e773c3a8a693e drivers/gpu/drm/i915/i915_gem_shrinker.c Chris Wilson 2017-10-13 233 scanned += obj->base.size >> PAGE_SHIFT; cf41a8f1dc1e47 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Maarten Lankhorst 2021-03-23 234 skip: 0bd6cb6b58f733 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Chris Wilson 2019-06-18 235 i915_gem_object_put(obj); f2123818ffad03 drivers/gpu/drm/i915/i915_gem_shrinker.c Chris Wilson 2017-10-16 236 a8cff4c8283af3 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Chris Wilson 2019-06-10 237 spin_lock_irqsave(&i915->mm.obj_lock, flags); cf41a8f1dc1e47 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Maarten Lankhorst 2021-03-23 238 if (err) cf41a8f1dc1e47 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Maarten Lankhorst 2021-03-23 239 break; be6a0376950475 drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 240 } 535972771d8c99 drivers/gpu/drm/i915/i915_gem_shrinker.c Chris Wilson 2016-11-01 241 list_splice_tail(&still_in_list, phase->list); a8cff4c8283af3 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Chris Wilson 2019-06-10 242 spin_unlock_irqrestore(&i915->mm.obj_lock, flags); cf41a8f1dc1e47 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Maarten Lankhorst 2021-03-23 243 if (err) 239f3c2ee18376 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Maarten Lankhorst 2021-07-28 244 break; be6a0376950475 drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 245 } be6a0376950475 drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 246 a8cff4c8283af3 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Chris Wilson 2019-06-10 247 if (shrink & I915_SHRINK_BOUND) d858d5695f3897 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Daniele Ceraolo Spurio 2019-06-13 248 intel_runtime_pm_put(&i915->runtime_pm, wakeref); 178a30c90ac74e drivers/gpu/drm/i915/i915_gem_shrinker.c Praveen Paneri 2016-05-02 249 239f3c2ee18376 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Maarten Lankhorst 2021-07-28 250 if (err) 239f3c2ee18376 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Maarten Lankhorst 2021-07-28 251 return err; 239f3c2ee18376 drivers/gpu/drm/i915/gem/i915_gem_shrinker.c Maarten Lankhorst 2021-07-28 252 912d572d63b8cd drivers/gpu/drm/i915/i915_gem_shrinker.c Chris Wilson 2017-09-06 253 if (nr_scanned) 912d572d63b8cd drivers/gpu/drm/i915/i915_gem_shrinker.c Chris Wilson 2017-09-06 254 *nr_scanned += scanned; be6a0376950475 drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 255 return count; be6a0376950475 drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 256 } be6a0376950475 drivers/gpu/drm/i915/i915_gem_shrinker.c Daniel Vetter 2015-03-18 257
--- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org [unhandled content-type:application/gzip] | |