linux_dsm_epyc7002/drivers/gpu/drm/i915
Chris Wilson 19bb33c756 drm/i915: Introduce i915_address_space.mutex
Add a mutex into struct i915_address_space to be used while operating on
the vma and their lists for a particular vm. As this may be called from
the shrinker, we taint the mutex with fs_reclaim so that from the start
lockdep warns us if we are caught holding the mutex across an
allocation. (With such small steps we will eventually rid ourselves of
struct_mutex recursion!)

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: https://patchwork.freedesktop.org/patch/msgid/20180711073608.20286-2-chris@chris-wilson.co.uk
2018-07-11 13:56:16 +01:00
..
gvt drm/i915: Start returning an error from i915_vma_move_to_active() 2018-07-06 18:22:37 +01:00
selftests drm/i915/selftests: Filter out both physical address swizzles 2018-07-10 09:53:41 +01:00
dvo_ch7xxx.c drm/i915/dvo: switch to kernel unsigned int types 2018-06-18 14:45:58 +03:00
dvo_ch7017.c drm/i915/dvo: switch to kernel unsigned int types 2018-06-18 14:45:58 +03:00
dvo_ivch.c drm/i915/dvo: switch to kernel unsigned int types 2018-06-18 14:45:58 +03:00
dvo_ns2501.c drm/i915/dvo: switch to kernel unsigned int types 2018-06-18 14:45:58 +03:00
dvo_sil164.c drm/i915/dvo: switch to kernel unsigned int types 2018-06-18 14:45:58 +03:00
dvo_tfp410.c drm/i915/dvo: switch to kernel unsigned int types 2018-06-18 14:45:58 +03:00
dvo.h
i915_cmd_parser.c
i915_debugfs.c drm/i915: Provide a timeout to i915_gem_wait_for_idle() 2018-07-09 13:55:41 +01:00
i915_drv.c drm/i915: Unwind HW init after GVT setup failure 2018-07-10 16:46:09 +01:00
i915_drv.h drm/i915: Introduce i915_address_space.mutex 2018-07-11 13:56:16 +01:00
i915_gem_batch_pool.c
i915_gem_batch_pool.h
i915_gem_clflush.c
i915_gem_clflush.h
i915_gem_context.c drm/i915: Record logical context support in driver caps 2018-07-06 14:05:23 +01:00
i915_gem_context.h drm/i915: Forward declare struct intel_context 2018-05-25 08:21:19 +01:00
i915_gem_dmabuf.c
i915_gem_evict.c drm/i915: Provide a timeout to i915_gem_wait_for_idle() 2018-07-09 13:55:41 +01:00
i915_gem_execbuffer.c drm/i915: Move i915_vma_move_to_active() to i915_vma.c 2018-07-06 18:22:41 +01:00
i915_gem_fence_reg.c
i915_gem_fence_reg.h
i915_gem_gtt.c drm/i915: Introduce i915_address_space.mutex 2018-07-11 13:56:16 +01:00
i915_gem_gtt.h drm/i915: Introduce i915_address_space.mutex 2018-07-11 13:56:16 +01:00
i915_gem_internal.c
i915_gem_object.c
i915_gem_object.h drm/i915: Replace drm_gem_object_unreference_unlocked with put function 2018-06-28 19:09:39 +02:00
i915_gem_render_state.c drm/i915: Start returning an error from i915_vma_move_to_active() 2018-07-06 18:22:37 +01:00
i915_gem_render_state.h
i915_gem_shrinker.c drm/i915: Introduce i915_address_space.mutex 2018-07-11 13:56:16 +01:00
i915_gem_stolen.c drm/i915: use the ICL stolen memory 2018-07-10 16:29:56 -07:00
i915_gem_tiling.c
i915_gem_userptr.c drm/i915/userptr: reject zero user_size 2018-05-08 12:24:39 +01:00
i915_gem.c drm/i915: Flush the residual parking on emergency shutdown 2018-07-10 13:59:00 +01:00
i915_gem.h drm/i915/execlists: Direct submission of new requests (avoid tasklet/ksoftirqd) 2018-06-28 22:55:10 +01:00
i915_gemfs.c
i915_gemfs.h
i915_gpu_error.c drm/i915: Track vma activity per fence.context, not per engine 2018-07-06 18:22:43 +01:00
i915_gpu_error.h drm/i915: Track vma activity per fence.context, not per engine 2018-07-06 18:22:43 +01:00
i915_ioc32.c
i915_irq.c drm/i915: Remove support for legacy debugfs crc interface 2018-07-06 14:33:35 +02:00
i915_memcpy.c
i915_mm.c
i915_oa_bdw.c
i915_oa_bdw.h
i915_oa_bxt.c
i915_oa_bxt.h
i915_oa_cflgt2.c
i915_oa_cflgt2.h
i915_oa_cflgt3.c
i915_oa_cflgt3.h
i915_oa_chv.c
i915_oa_chv.h
i915_oa_cnl.c
i915_oa_cnl.h
i915_oa_glk.c
i915_oa_glk.h
i915_oa_hsw.c
i915_oa_hsw.h
i915_oa_icl.c drm/i915/perf: enable perf support on ICL 2018-03-29 13:25:30 +01:00
i915_oa_icl.h drm/i915/perf: enable perf support on ICL 2018-03-29 13:25:30 +01:00
i915_oa_kblgt2.c
i915_oa_kblgt2.h
i915_oa_kblgt3.c
i915_oa_kblgt3.h
i915_oa_sklgt2.c
i915_oa_sklgt2.h
i915_oa_sklgt3.c
i915_oa_sklgt3.h
i915_oa_sklgt4.c
i915_oa_sklgt4.h
i915_params.c drm/i915: Remove unused enable_cmd_parser modparam 2018-05-17 20:52:39 +01:00
i915_params.h drm/i915: Remove unused enable_cmd_parser modparam 2018-05-17 20:52:39 +01:00
i915_pci.c drm/i915/aml: Introducing Amber Lake platform 2018-06-18 10:49:57 -07:00
i915_perf.c drm/i915: Provide a timeout to i915_gem_wait_for_idle() 2018-07-09 13:55:41 +01:00
i915_pmu.c drm/i915/pmu: Do not assume fixed hrtimer period 2018-06-05 16:45:01 +01:00
i915_pmu.h drm/i915/pmu: Do not assume fixed hrtimer period 2018-06-05 16:45:01 +01:00
i915_pvinfo.h - Ice Lake's display enabling patches (Jose, Mahesh, Dhinakaran, Paulo, Manasi, Anusha, Arkadiusz) 2018-06-07 10:24:50 +08:00
i915_query.c drm/i915/query: nospec expects no more than an unsigned long 2018-05-22 16:55:57 +01:00
i915_query.h
i915_reg.h drm/i915: use the ICL stolen memory 2018-07-10 16:29:56 -07:00
i915_request.c drm/i915: Provide a timeout to i915_gem_wait_for_idle() 2018-07-09 13:55:41 +01:00
i915_request.h drm/i915: Track vma activity per fence.context, not per engine 2018-07-06 18:22:43 +01:00
i915_scheduler.h drm/i915: Pack params to engine->schedule() into a struct 2018-04-18 21:09:11 +01:00
i915_selftest.h
i915_suspend.c
i915_sw_fence.c
i915_sw_fence.h
i915_syncmap.c
i915_syncmap.h
i915_sysfs.c
i915_timeline.c drm/i915: Split i915_gem_timeline into individual timelines 2018-05-02 23:57:18 +01:00
i915_timeline.h drm/i915: Replace nested subclassing with explicit subclasses 2018-07-07 08:09:43 +01:00
i915_trace_points.c
i915_trace.h drm/i915/ringbuffer: Fix context restore upon reset 2018-06-11 14:03:47 +01:00
i915_utils.h drm/i915: Retire requests along rings 2018-04-30 16:01:18 +01:00
i915_vgpu.c drm/i915/gtt: Rename i915_hw_ppgtt base member 2018-06-05 21:11:20 +01:00
i915_vgpu.h drm/i915: Add new vGPU cap info bit VGT_CAPS_HUGE_GTT 2018-06-05 16:57:01 +03:00
i915_vma.c drm/i915: Track the last-active inside the i915_vma 2018-07-06 18:23:07 +01:00
i915_vma.h drm/i915: Track the last-active inside the i915_vma 2018-07-06 18:23:07 +01:00
icl_dsi.c drm/i915/icl: Power down unused DSI lanes 2018-07-06 12:14:16 +03:00
intel_acpi.c drm/i915/dsm: remove unnecessary dsm priv structure 2018-06-14 15:59:09 +03:00
intel_atomic_plane.c drm/i915: Print prop name/id when rejecting it 2018-06-19 17:18:24 +03:00
intel_atomic.c drm/i915: Print prop name/id when rejecting it 2018-06-19 17:18:24 +03:00
intel_audio.c drm/i915/audio: constify ELD pointers 2018-06-19 17:41:44 +03:00
intel_bios.c drm/i915/psr: fix copy-paste error with setting of tp2_wakeup_time_us 2018-06-20 12:00:31 -07:00
intel_bios.h
intel_breadcrumbs.c drm/i915: Move the irq_counter inside the spinlock 2018-06-28 20:56:35 +01:00
intel_cdclk.c drm/i915: Mark expected switch fall-throughs 2018-07-05 16:40:51 +03:00
intel_color.c
intel_crt.c drm/i915: Enforce max hdisplay/hblank_start limits on HSW/BDW FDI 2018-06-19 17:18:24 +03:00
intel_csr.c drm/i915: add support for specifying DMC firmware override by module param 2018-05-02 13:05:01 +03:00
intel_ddi.c drm/i915/ddi: Simplify get_encoder_power_domains() 2018-07-06 15:56:38 +03:00
intel_device_info.c drm/i915: Record logical context support in driver caps 2018-07-06 14:05:23 +01:00
intel_device_info.h drm/i915: Record logical context support in driver caps 2018-07-06 14:05:23 +01:00
intel_display.c drm/i915: Flush the residual parking on emergency shutdown 2018-07-10 13:59:00 +01:00
intel_display.h drm/i915/icl: Add power well support 2018-06-27 16:01:19 +03:00
intel_dp_aux_backlight.c drm/i915/backlight: switch to kernel unsigned int types 2018-06-18 14:46:04 +03:00
intel_dp_link_training.c drm/i915/dp: Add support for HBR3 and TPS4 during link training 2018-06-14 14:58:22 -07:00
intel_dp_mst.c drm/i915: Replace drm_connector_{un/reference} with put,get functions 2018-06-28 19:09:21 +02:00
intel_dp.c drm/i915/psr: Begin to handle PSR/PSR2 errors set by sink 2018-06-26 17:11:35 -07:00
intel_dpio_phy.c drm/i915/gen9_lp: Increase DDI PHY0 power well enabling timeout 2018-04-10 13:12:22 +03:00
intel_dpll_mgr.c drm/i915: Mark expected switch fall-throughs 2018-07-05 16:40:51 +03:00
intel_dpll_mgr.h drm/i915/icl: Fix MG PLL setup when refclk is 38.4MHz 2018-06-21 19:01:40 +03:00
intel_drv.h drm/i915: Remove support for legacy debugfs crc interface 2018-07-06 14:33:35 +02:00
intel_dsi_dcs_backlight.c
intel_dsi_vbt.c drm/i915/dsi: use vlv and bxt prefixes for the global DSI functions 2018-07-06 10:54:05 +03:00
intel_dsi.h drm/i915/dsi: use vlv and bxt prefixes for the global DSI functions 2018-07-06 10:54:05 +03:00
intel_dvo.c drm/i915/dvo: switch to kernel unsigned int types 2018-06-18 14:45:58 +03:00
intel_engine_cs.c drm/i915: Replace nested subclassing with explicit subclasses 2018-07-07 08:09:43 +01:00
intel_fbc.c drm/i915: Remove delayed FBC activation. 2018-06-29 10:06:31 +02:00
intel_fbdev.c drm/i915: Use intel_fb_obj() everywhere 2018-05-22 09:44:02 +01:00
intel_fifo_underrun.c
intel_frontbuffer.c drm/i915/psr: Nuke PSR support for VLV and CHV 2018-05-24 16:05:19 +03:00
intel_frontbuffer.h
intel_gpu_commands.h
intel_guc_ads.c drm/i915: Wrap engine->context_pin() and engine->context_unpin() 2018-04-30 16:01:13 +01:00
intel_guc_ads.h
intel_guc_ct.c drm/i915/guc: Replace %phn with %ph 2018-04-10 17:15:29 +01:00
intel_guc_ct.h drm/i915/guc: Prepare to process incoming requests from CT 2018-03-28 20:35:17 +01:00
intel_guc_fw.c
intel_guc_fw.h
intel_guc_fwif.h drm/i915/guc: Move defines with size of GuC logs to intel_guc_log.h 2018-06-12 15:44:45 +01:00
intel_guc_log.c drm/i915/guc: Move defines with size of GuC logs to intel_guc_log.h 2018-06-12 15:44:45 +01:00
intel_guc_log.h drm/i915/guc: Add support for define guc_log_size in megabytes. 2018-06-12 15:44:47 +01:00
intel_guc_reg.h
intel_guc_submission.c drm/i915/gtt: Rename i915_hw_ppgtt base member 2018-06-05 21:11:20 +01:00
intel_guc_submission.h
intel_guc.c drm/i915/guc: Print CTL params passed to Guc 2018-06-29 23:34:17 +01:00
intel_guc.h drm/i915/guc: Use intel_guc_init_misc to hide GuC internals 2018-06-28 22:51:32 +01:00
intel_gvt.c drm/i915: Unwind HW init after GVT setup failure 2018-07-10 16:46:09 +01:00
intel_gvt.h
intel_hangcheck.c drm/i915: Declare the driver wedged if hangcheck makes no progress 2018-06-14 19:20:33 +01:00
intel_hdcp.c drm/i915: Fix memory leak in intel_hdcp auth 2018-04-06 09:57:31 +03:00
intel_hdmi.c drm/i915/icl: Add 10-bit support for hdmi 2018-06-20 13:54:19 -07:00
intel_hotplug.c
intel_huc_fw.c
intel_huc_fw.h
intel_huc.c drm/i915/uc: Fetch GuC/HuC firmwares from guc/huc specific init 2018-06-28 22:51:33 +01:00
intel_huc.h drm/i915/uc: Fetch GuC/HuC firmwares from guc/huc specific init 2018-06-28 22:51:33 +01:00
intel_i2c.c drm/i915/icl: fix gmbus gpio pin mapping 2018-06-12 14:12:34 -07:00
intel_lpe_audio.c
intel_lrc_reg.h
intel_lrc.c drm/i915: Only reset hangcheck at the start of an activity cycle 2018-07-10 11:12:15 +01:00
intel_lrc.h drm/i915: Store a pointer to intel_context in i915_request 2018-05-18 09:35:22 +01:00
intel_lspcon.c drm/i915/lspcon: switch to kernel unsigned int types 2018-06-18 14:46:22 +03:00
intel_lvds.c drm/i915: Allow DBLSCAN user modes with eDP/LVDS/DSI 2018-06-13 21:08:14 +03:00
intel_mocs.c drm/i915/icl: Add configuring MOCS in new Icelake engines 2018-05-03 16:41:04 -07:00
intel_mocs.h
intel_modes.c
intel_opregion.c drm/i915/opregion: move acpi notifier to dev_priv 2018-06-14 13:48:10 +03:00
intel_opregion.h drm/i915/opregion: move acpi notifier to dev_priv 2018-06-14 13:48:10 +03:00
intel_overlay.c
intel_panel.c drm/i915/backlight: switch to kernel unsigned int types 2018-06-18 14:46:04 +03:00
intel_pipe_crc.c drm/i915: Remove support for legacy debugfs crc interface 2018-07-06 14:33:35 +02:00
intel_pm.c drm/i915/icl: Don't update enabled dbuf slices struct until updated in hw 2018-06-04 16:53:55 -07:00
intel_psr.c drm/i915/psr: Lockless version of psr_wait_for_idle 2018-07-02 10:52:39 -07:00
intel_renderstate_gen6.c
intel_renderstate_gen7.c
intel_renderstate_gen8.c
intel_renderstate_gen9.c
intel_renderstate.h
intel_ringbuffer.c drm/i915: Only reset hangcheck at the start of an activity cycle 2018-07-10 11:12:15 +01:00
intel_ringbuffer.h drm/i915/execlists: Trust the CSB 2018-06-28 22:55:09 +01:00
intel_runtime_pm.c drm/i915: Mark expected switch fall-throughs 2018-07-05 16:40:51 +03:00
intel_sdvo_regs.h
intel_sdvo.c drm/i915: Remove pointless if-else from sdvo code 2018-07-05 22:16:56 +03:00
intel_sideband.c
intel_sprite.c drm/i915: Wait for PSR exit before checking for vblank evasion 2018-07-02 10:56:33 -07:00
intel_tv.c drm/i915: Allow DBLSCAN user modes with eDP/LVDS/DSI 2018-06-13 21:08:14 +03:00
intel_uc_fw.c
intel_uc_fw.h drm/i915/firmware: Correct URL for firmware 2018-05-02 13:40:17 -07:00
intel_uc.c drm/i915/uc: Fetch GuC/HuC firmwares from guc/huc specific init 2018-06-28 22:51:33 +01:00
intel_uc.h
intel_uncore.c drm/i915: Add WaKBLVECSSemaphoreWaitPoll 2018-06-08 12:16:20 +03:00
intel_uncore.h drm/i915/uncore: switch to kernel unsigned int types 2018-06-18 14:45:51 +03:00
intel_vbt_defs.h drm/i915/vbt: switch to kernel unsigned int types 2018-06-18 14:44:52 +03:00
intel_wopcm.c drm/i915: Use correct reST syntax for WOPCM and GuC kernel-doc diagrams 2018-03-28 14:42:56 +03:00
intel_wopcm.h
intel_workarounds.c drm/i915: Keep the ctx workarounds tightly packed 2018-06-15 13:27:04 +01:00
intel_workarounds.h drm/i915: Check whitelist registers across resets 2018-04-14 18:36:45 +01:00
Kconfig
Kconfig.debug drm/i915: Squelch very verbose error logging 2018-07-06 11:23:47 +01:00
Makefile drm/i915/icl: Program DSI Escape clock Divider 2018-07-06 12:13:34 +03:00
vlv_dsi_pll.c drm/i915/dsi: use vlv and bxt prefixes for the global DSI functions 2018-07-06 10:54:05 +03:00
vlv_dsi.c drm/i915/dsi: update some of the platform based checks 2018-07-06 10:54:10 +03:00