linux_dsm_epyc7002/drivers/gpu/drm/i915
Chris Wilson f494960d5e drm/i915/gt: Defend against concurrent updates to execlists->active
[  206.875637] BUG: KCSAN: data-race in __i915_schedule+0x7fc/0x930 [i915]
[  206.875654]
[  206.875666] race at unknown origin, with read to 0xffff8881f7644480 of 8 bytes by task 703 on cpu 3:
[  206.875901]  __i915_schedule+0x7fc/0x930 [i915]
[  206.876130]  __bump_priority+0x63/0x80 [i915]
[  206.876361]  __i915_sched_node_add_dependency+0x258/0x300 [i915]
[  206.876593]  i915_sched_node_add_dependency+0x50/0xa0 [i915]
[  206.876824]  i915_request_await_dma_fence+0x1da/0x530 [i915]
[  206.877057]  i915_request_await_object+0x2fe/0x470 [i915]
[  206.877287]  i915_gem_do_execbuffer+0x45dc/0x4c20 [i915]
[  206.877517]  i915_gem_execbuffer2_ioctl+0x2c3/0x580 [i915]
[  206.877535]  drm_ioctl_kernel+0xe4/0x120
[  206.877549]  drm_ioctl+0x297/0x4c7
[  206.877563]  ksys_ioctl+0x89/0xb0
[  206.877577]  __x64_sys_ioctl+0x42/0x60
[  206.877591]  do_syscall_64+0x6e/0x2c0
[  206.877606]  entry_SYSCALL_64_after_hwframe+0x44/0xa9

v2: Be safe and include mb

References: https://gitlab.freedesktop.org/drm/intel/issues/1318
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com>
Reviewed-by: Mika Kuoppala <mika.kuoppala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20200309170540.10332-1-chris@chris-wilson.co.uk
2020-03-09 20:38:57 +00:00
..
display drm/i915: Lock gmbus/aux mutexes while changing cdclk 2020-03-09 22:28:33 +02:00
gem drm/i915/gem: Limit struct_mutex to eb_reserve 2020-03-06 10:58:05 +00:00
gt drm/i915/gt: Defend against concurrent updates to execlists->active 2020-03-09 20:38:57 +00:00
gvt drm/i915/gvt: Inlcude intel_gvt.h where needed 2020-03-04 10:04:50 +00:00
oa
selftests drm/i915/selftests: Apply a heavy handed flush to i915_active 2020-03-07 00:05:54 +00:00
.gitignore
i915_active_types.h
i915_active.c drm/i915: Skip barriers inside waits 2020-02-28 09:24:29 +00:00
i915_active.h drm/i915/gt: Acquire ce->active before ce->pin_count/ce->pin_mutex 2020-02-12 13:24:45 +02:00
i915_buddy.c drm/i915/buddy: avoid double list_add 2020-03-06 14:33:08 +00:00
i915_buddy.h
i915_cmd_parser.c drm/i915/cmd_parser: conversion to struct drm_device logging macros. 2020-02-04 11:29:40 +02:00
i915_debugfs_params.c
i915_debugfs_params.h
i915_debugfs.c drm/i915/guc: Kill USES_GUC_SUBMISSION macro 2020-02-20 17:48:03 +00:00
i915_debugfs.h drm/i915: split out display debugfs to a separate file 2020-02-14 13:26:51 +02:00
i915_drv.c drm/i915/gvt: only include intel_gvt.h where needed 2020-03-03 17:47:07 +02:00
i915_drv.h drm/i915/hotplug: Use phy to get the hpd_pin instead of the port (v5) 2020-03-06 14:31:14 -08:00
i915_fixed.h
i915_gem_evict.c drm/i915: Drop inspection of execbuf flags during evict 2020-03-03 21:52:51 +00:00
i915_gem_fence_reg.c drm/i915/vgpu: improve vgpu abstractions 2020-03-03 17:46:54 +02:00
i915_gem_fence_reg.h
i915_gem_gtt.c drm/i915: significantly reduce the use of <drm/i915_drm.h> 2020-02-27 08:35:09 +02:00
i915_gem_gtt.h
i915_gem.c drm/i915: significantly reduce the use of <drm/i915_drm.h> 2020-02-27 08:35:09 +02:00
i915_gem.h
i915_getparam.c
i915_globals.c
i915_globals.h
i915_gpu_error.c drm/i915: Update drm/i915 bug filing URL 2020-02-17 11:16:05 +02:00
i915_gpu_error.h drm/i915: Track hw reported context runtime 2020-02-16 15:16:22 +00:00
i915_ioc32.c drm/i915: add i915_ioc32.h for compat 2020-03-02 13:32:37 +02:00
i915_ioc32.h drm/i915: add i915_ioc32.h for compat 2020-03-02 13:32:37 +02:00
i915_irq.c drm/i915/crc: move pipe_crc from drm_i915_private to intel_crtc 2020-03-02 12:58:26 +02:00
i915_irq.h
i915_memcpy.c
i915_memcpy.h
i915_mm.c
i915_params.c
i915_params.h drm/i915: Mark i915.reset as unsigned 2020-02-05 18:51:52 +00:00
i915_pci.c drm/i915: significantly reduce the use of <drm/i915_drm.h> 2020-02-27 08:35:09 +02:00
i915_perf_types.h drm/i915/perf: Reintroduce wait on OA configuration completion 2020-03-02 20:34:18 +00:00
i915_perf.c drm/i915/perf: Reintroduce wait on OA configuration completion 2020-03-02 20:34:18 +00:00
i915_perf.h
i915_pmu.c drm/i915/pmu: Avoid using globals for PMU events 2020-02-21 17:31:15 +00:00
i915_pmu.h drm/i915: significantly reduce the use of <drm/i915_drm.h> 2020-02-27 08:35:09 +02:00
i915_priolist_types.h
i915_pvinfo.h
i915_query.c
i915_query.h
i915_reg.h drm/i915: Fix readout of PIPEGCMAX 2020-03-09 22:11:36 +02:00
i915_request.c drm/i915: Mark racy read of intel_engine_cs.saturated 2020-03-09 17:08:52 +00:00
i915_request.h drm/i915: Mark up unlocked update of i915_request.hwsp_seqno 2020-03-09 18:23:59 +00:00
i915_scatterlist.c
i915_scatterlist.h
i915_scheduler_types.h
i915_scheduler.c drm/i915/execlsts: Mark up racy inspection of current i915_request priority 2020-03-09 18:24:13 +00:00
i915_scheduler.h
i915_selftest.h
i915_suspend.c drm/i915: significantly reduce the use of <drm/i915_drm.h> 2020-02-27 08:35:09 +02:00
i915_suspend.h
i915_sw_fence_work.c
i915_sw_fence_work.h
i915_sw_fence.c drm/i915/gem: Don't leak non-persistent requests on changing engines 2020-02-11 21:58:39 +00:00
i915_sw_fence.h drm/i915/gem: Don't leak non-persistent requests on changing engines 2020-02-11 21:58:39 +00:00
i915_switcheroo.c
i915_switcheroo.h
i915_syncmap.c
i915_syncmap.h
i915_sysfs.c drm/i915/gt: Expose engine properties via sysfs 2020-02-28 22:03:19 +00:00
i915_sysfs.h
i915_trace_points.c
i915_trace.h
i915_user_extensions.c
i915_user_extensions.h
i915_utils.c drm/i915: Force DPCD backlight mode on X1 Extreme 2nd Gen 4K AMOLED panel 2020-03-03 20:34:32 -05:00
i915_utils.h drm/i915/gt: Mark up racy check of last list element 2020-03-09 18:23:59 +00:00
i915_vgpu.c drm/i915/vgpu: improve vgpu abstractions 2020-03-03 17:46:54 +02:00
i915_vgpu.h drm/i915/vgpu: improve vgpu abstractions 2020-03-03 17:46:54 +02:00
i915_vma_types.h drm/i915/gem: Extract transient execbuf flags from i915_vma 2020-03-03 21:52:51 +00:00
i915_vma.c drm/i915: Drop vma is-closed assertion on insert 2020-03-03 17:30:20 +00:00
i915_vma.h drm/i915: Use the async worker to avoid reclaim tainting the ggtt->mutex 2020-01-30 21:35:43 +00:00
intel_device_info.c drm/i915: significantly reduce the use of <drm/i915_drm.h> 2020-02-27 08:35:09 +02:00
intel_device_info.h drm/i915: Read rawclk_freq earlier 2020-02-19 14:09:18 +00:00
intel_dram.c drm/i915/dram: hide the dram structs better 2020-03-02 13:32:27 +02:00
intel_dram.h drm/i915: split out intel_dram.[ch] from i915_drv.c 2020-02-27 09:16:01 +02:00
intel_gvt.c drm/i915/gvt: make intel_gvt_active internal to intel_gvt 2020-03-03 17:47:03 +02:00
intel_gvt.h
intel_memory_region.c
intel_memory_region.h
intel_pch.c
intel_pch.h
intel_pm.c drm/i915: Implement display w/a 1140 for glk/cnl 2020-03-05 15:53:33 +02:00
intel_pm.h drm/i915: Manipulate DBuf slices properly 2020-02-05 19:19:23 +02:00
intel_region_lmem.c
intel_region_lmem.h
intel_runtime_pm.c
intel_runtime_pm.h
intel_sideband.c
intel_sideband.h
intel_uncore.c
intel_uncore.h
intel_wakeref.c
intel_wakeref.h
intel_wopcm.c
intel_wopcm.h
Kconfig drm/i915: Update drm/i915 bug filing URL 2020-02-17 11:16:05 +02:00
Kconfig.debug
Kconfig.profile drm/i915/gt: Expose heartbeat interval via sysfs 2020-02-28 22:03:49 +00:00
Kconfig.unstable
Makefile drm/i915/gen7: Clear all EU/L3 residual contexts 2020-03-06 08:59:06 +00:00
vlv_suspend.c drm/i915: switch vlv_suspend to use intel uncore register accessors 2020-02-17 11:29:51 +02:00
vlv_suspend.h drm/i915: split out vlv/chv specific suspend/resume code 2020-02-17 11:29:35 +02:00