tree: git://anongit.freedesktop.org/drm-intel for-linux-next head: 64b95df91f44837f961321a6c555409885ca59c4 commit: 64b95df91f44837f961321a6c555409885ca59c4 [3/3] drm/i915: Assume exclusive access to objects inside resume config: x86_64-randconfig-f002-201933 (attached as .config) compiler: gcc-7 (Debian 7.4.0-10) 7.4.0 reproduce: git checkout 64b95df91f44837f961321a6c555409885ca59c4 # 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 <lkp@xxxxxxxxx> All errors (new ones prefixed by >>): drivers/gpu/drm/i915/i915_gem_gtt.c: In function 'ggtt_restore_mappings': >> drivers/gpu/drm/i915/i915_gem_gtt.c:3317:3: error: implicit declaration of function 'wbinvd_on_all_cpus'; did you mean 'wrmsr_on_cpus'? [-Werror=implicit-function-declaration] wbinvd_on_all_cpus(); ^~~~~~~~~~~~~~~~~~ wrmsr_on_cpus Cyclomatic Complexity 5 include/linux/compiler.h:__read_once_size Cyclomatic Complexity 5 include/linux/compiler.h:__write_once_size Cyclomatic Complexity 1 include/linux/kasan-checks.h:kasan_check_read Cyclomatic Complexity 1 include/linux/kasan-checks.h:kasan_check_write Cyclomatic Complexity 1 arch/x86/include/asm/bitops.h:fls64 Cyclomatic Complexity 1 include/linux/log2.h:__ilog2_u64 Cyclomatic Complexity 1 include/linux/list.h:INIT_LIST_HEAD Cyclomatic Complexity 1 include/linux/list.h:__list_del Cyclomatic Complexity 1 include/linux/math64.h:div64_u64_rem Cyclomatic Complexity 1 arch/x86/include/asm/current.h:get_current Cyclomatic Complexity 1 include/asm-generic/getorder.h:__get_order Cyclomatic Complexity 2 arch/x86/include/asm/jump_label.h:arch_static_branch Cyclomatic Complexity 1 include/linux/jump_label.h:static_key_false Cyclomatic Complexity 1 arch/x86/include/asm/string_64.h:memset32 Cyclomatic Complexity 1 arch/x86/include/asm/string_64.h:memset64 Cyclomatic Complexity 1 include/linux/string.h:memset_p Cyclomatic Complexity 1 arch/x86/include/asm/atomic.h:arch_atomic_read Cyclomatic Complexity 1 arch/x86/include/asm/atomic.h:arch_atomic_set Cyclomatic Complexity 1 arch/x86/include/asm/atomic.h:arch_atomic_add Cyclomatic Complexity 1 arch/x86/include/asm/atomic.h:arch_atomic_sub Cyclomatic Complexity 1 arch/x86/include/asm/atomic.h:arch_atomic_inc Cyclomatic Complexity 1 arch/x86/include/asm/atomic.h:arch_atomic_dec Cyclomatic Complexity 1 arch/x86/include/asm/atomic.h:arch_atomic_dec_and_test Cyclomatic Complexity 1 arch/x86/include/asm/atomic.h:arch_atomic_add_return Cyclomatic Complexity 1 arch/x86/include/asm/atomic.h:arch_atomic_sub_return Cyclomatic Complexity 1 arch/x86/include/asm/atomic.h:arch_atomic_fetch_add Cyclomatic Complexity 2 arch/x86/include/asm/atomic.h:arch_atomic_try_cmpxchg Cyclomatic Complexity 1 arch/x86/include/asm/atomic64_64.h:arch_atomic64_read Cyclomatic Complexity 1 include/asm-generic/atomic-instrumented.h:atomic_read Cyclomatic Complexity 1 include/asm-generic/atomic-instrumented.h:atomic_set Cyclomatic Complexity 1 include/asm-generic/atomic-instrumented.h:atomic_add Cyclomatic Complexity 1 include/asm-generic/atomic-instrumented.h:atomic_fetch_add Cyclomatic Complexity 1 include/asm-generic/atomic-instrumented.h:atomic_sub Cyclomatic Complexity 1 include/asm-generic/atomic-instrumented.h:atomic_sub_return Cyclomatic Complexity 1 include/asm-generic/atomic-instrumented.h:atomic_inc Cyclomatic Complexity 1 include/asm-generic/atomic-instrumented.h:atomic_dec Cyclomatic Complexity 1 include/asm-generic/atomic-instrumented.h:atomic_try_cmpxchg Cyclomatic Complexity 1 include/asm-generic/atomic-instrumented.h:atomic_dec_and_test Cyclomatic Complexity 1 include/asm-generic/atomic-instrumented.h:atomic64_read Cyclomatic Complexity 1 include/linux/atomic-fallback.h:atomic_fetch_inc Cyclomatic Complexity 1 include/asm-generic/atomic-long.h:atomic_long_read Cyclomatic Complexity 1 include/linux/err.h:ERR_PTR Cyclomatic Complexity 1 include/linux/err.h:PTR_ERR Cyclomatic Complexity 1 arch/x86/include/asm/irqflags.h:native_save_fl Cyclomatic Complexity 1 arch/x86/include/asm/irqflags.h:native_restore_fl Cyclomatic Complexity 1 arch/x86/include/asm/irqflags.h:native_irq_disable Cyclomatic Complexity 1 arch/x86/include/asm/irqflags.h:arch_local_save_flags Cyclomatic Complexity 1 arch/x86/include/asm/irqflags.h:arch_local_irq_restore Cyclomatic Complexity 1 arch/x86/include/asm/irqflags.h:arch_local_irq_disable Cyclomatic Complexity 1 arch/x86/include/asm/irqflags.h:arch_local_irq_save Cyclomatic Complexity 1 arch/x86/include/asm/irqflags.h:arch_irqs_disabled_flags Cyclomatic Complexity 5 arch/x86/include/asm/preempt.h:__preempt_count_add Cyclomatic Complexity 5 arch/x86/include/asm/preempt.h:__preempt_count_sub Cyclomatic Complexity 1 include/linux/spinlock.h:spinlock_check Cyclomatic Complexity 1 include/linux/spinlock.h:spin_lock Cyclomatic Complexity 1 include/linux/spinlock.h:spin_unlock Cyclomatic Complexity 1 include/linux/nodemask.h:node_state Cyclomatic Complexity 1 include/linux/rcupdate.h:rcu_read_lock_sched_notrace Cyclomatic Complexity 1 include/linux/rcupdate.h:rcu_read_unlock_sched_notrace Cyclomatic Complexity 1 include/linux/workqueue.h:__init_work Cyclomatic Complexity 1 include/linux/mmzone.h:pfn_to_section_nr Cyclomatic Complexity 3 include/linux/mmzone.h:__nr_to_section Cyclomatic Complexity 1 include/linux/mmzone.h:__section_mem_map_addr Cyclomatic Complexity 1 include/linux/mmzone.h:__pfn_to_section Cyclomatic Complexity 1 arch/x86/include/asm/topology.h:numa_node_id Cyclomatic Complexity 1 include/linux/topology.h:numa_mem_id Cyclomatic Complexity 1 include/linux/slab.h:kmalloc_type Cyclomatic Complexity 28 include/linux/slab.h:kmalloc_index Cyclomatic Complexity 68 include/linux/slab.h:kmalloc_large Cyclomatic Complexity 4 include/linux/slab.h:kmalloc Cyclomatic Complexity 1 include/linux/slab.h:kzalloc Cyclomatic Complexity 1 include/linux/refcount.h:refcount_set Cyclomatic Complexity 2 include/linux/random.h:__seed Cyclomatic Complexity 1 include/linux/random.h:prandom_seed_state Cyclomatic Complexity 1 include/linux/ioport.h:resource_size Cyclomatic Complexity 1 include/linux/kref.h:kref_init Cyclomatic Complexity 1 include/linux/uaccess.h:pagefault_disabled_inc Cyclomatic Complexity 1 include/linux/uaccess.h:pagefault_disabled_dec Cyclomatic Complexity 1 include/linux/uaccess.h:pagefault_disable Cyclomatic Complexity 1 include/linux/uaccess.h:pagefault_enable Cyclomatic Complexity 1 include/linux/mm.h:totalram_pages Cyclomatic Complexity 1 arch/x86/include/asm/io.h:writel Cyclomatic Complexity 1 arch/x86/include/asm/io.h:writeq Cyclomatic Complexity 1 include/linux/mm.h:page_to_section Cyclomatic Complexity 1 include/linux/mm.h:lowmem_page_address Cyclomatic Complexity 1 drivers/gpu/drm/i915/i915_reg.h:i915_mmio_reg_offset Cyclomatic Complexity 1 drivers/gpu/drm/i915/intel_uncore.h:__raw_uncore_write32 Cyclomatic Complexity 1 drivers/gpu/drm/i915/intel_uncore.h:intel_uncore_read Cyclomatic Complexity 1 drivers/gpu/drm/i915/intel_uncore.h:intel_uncore_read_notrace Cyclomatic Complexity 1 drivers/gpu/drm/i915/intel_uncore.h:intel_uncore_write Cyclomatic Complexity 1 drivers/gpu/drm/i915/intel_uncore.h:intel_uncore_rmw Cyclomatic Complexity 1 drivers/gpu/drm/i915/gt/uc/intel_uc_fw.h:__intel_uc_fw_status Cyclomatic Complexity 1 drivers/gpu/drm/i915/gt/uc/intel_uc_fw.h:intel_uc_fw_is_enabled Cyclomatic Complexity 1 include/linux/io-mapping.h:io_mapping_map_wc Cyclomatic Complexity 1 include/linux/io-mapping.h:io_mapping_unmap Cyclomatic Complexity 1 include/linux/io-mapping.h:io_mapping_map_atomic_wc Cyclomatic Complexity 1 include/linux/io-mapping.h:io_mapping_unmap_atomic vim +3317 drivers/gpu/drm/i915/i915_gem_gtt.c 3273 3274 static void ggtt_restore_mappings(struct i915_ggtt *ggtt) 3275 { 3276 struct i915_vma *vma, *vn; 3277 bool flush = false; 3278 3279 intel_gt_check_and_clear_faults(ggtt->vm.gt); 3280 3281 mutex_lock(&ggtt->vm.mutex); 3282 3283 /* First fill our portion of the GTT with scratch pages */ 3284 ggtt->vm.clear_range(&ggtt->vm, 0, ggtt->vm.total); 3285 ggtt->vm.closed = true; /* skip rewriting PTE on VMA unbind */ 3286 3287 /* clflush objects bound into the GGTT and rebind them. */ 3288 list_for_each_entry_safe(vma, vn, &ggtt->vm.bound_list, vm_link) { 3289 struct drm_i915_gem_object *obj = vma->obj; 3290 3291 if (!(vma->flags & I915_VMA_GLOBAL_BIND)) 3292 continue; 3293 3294 mutex_unlock(&ggtt->vm.mutex); 3295 3296 if (!i915_vma_unbind(vma)) 3297 goto lock; 3298 3299 WARN_ON(i915_vma_bind(vma, 3300 obj ? obj->cache_level : 0, 3301 PIN_UPDATE)); 3302 if (obj) { /* only used during resume => exclusive access */ 3303 flush |= fetch_and_zero(&obj->write_domain); 3304 obj->read_domains |= I915_GEM_DOMAIN_GTT; 3305 } 3306 3307 lock: 3308 mutex_lock(&ggtt->vm.mutex); 3309 } 3310 3311 ggtt->vm.closed = false; 3312 ggtt->invalidate(ggtt); 3313 3314 mutex_unlock(&ggtt->vm.mutex); 3315 3316 if (flush) > 3317 wbinvd_on_all_cpus(); 3318 } 3319 --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation
Attachment:
.config.gz
Description: application/gzip
_______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel