linux/drivers/gpu/drm/i915
Eric Anholt 3de09aa3b3 drm/i915: Fix lock order reversal in GTT pwrite path.
Since the pagefault path determines that the lock order we use has to be
mmap_sem -> struct_mutex, we can't allow page faults to occur while the
struct_mutex is held.  To fix this in pwrite, we first try optimistically to
see if we can copy from user without faulting.  If it fails, fall back to
using get_user_pages to pin the user's memory, and map those pages
atomically when copying it to the GPU.

Signed-off-by: Eric Anholt <eric@anholt.net>
Reviewed-by: Jesse Barnes <jbarnes@virtuousgeek.org>
2009-03-27 14:45:52 -07:00
..
dvo_ch7xxx.c
dvo_ch7017.c
dvo_ivch.c
dvo_sil164.c
dvo_tfp410.c
dvo.h
i915_dma.c drm/i915: Fix bad \n in MTRR failure notice. 2009-03-10 13:11:35 -07:00
i915_drv.c i915: suspend/resume interrupt state 2009-02-23 17:23:57 -08:00
i915_drv.h drm/i915: Don't restore palettes through VGA registers. 2009-03-10 13:11:12 -07:00
i915_gem_debug.c
i915_gem_proc.c
i915_gem_tiling.c drm/i915: Change DCC tiling detection case to cover only mobile parts. 2009-03-27 14:45:10 -07:00
i915_gem.c drm/i915: Fix lock order reversal in GTT pwrite path. 2009-03-27 14:45:52 -07:00
i915_ioc32.c
i915_irq.c drm/i915: Fix use-before-null-check in i915_irq_emit(). 2009-03-03 09:53:05 +10:00
i915_mem.c
i915_opregion.c
i915_reg.h drm/i915: fix 945 fence register writes for fence 8 and above. 2009-03-11 11:02:06 -07:00
i915_suspend.c drm/i915: Don't restore palettes through VGA registers. 2009-03-10 13:11:12 -07:00
intel_bios.c drm/i915: handle bogus VBT panel timing 2009-02-25 14:10:42 +10:00
intel_bios.h
intel_crt.c
intel_display.c drm/i915: Read the right SDVO register when detecting SVDO/HDMI. 2009-03-27 14:45:14 -07:00
intel_drv.h drm/i915: sync SDVO code with stable userland modesetting driver 2009-02-08 21:38:14 +10:00
intel_dvo.c
intel_fb.c drm/i915: Unpin the fb on error during construction. 2009-02-20 12:21:11 +10:00
intel_hdmi.c
intel_i2c.c
intel_lvds.c drm/i915: Don't add panel_fixed_mode to the probed modes list at LVDS init. 2009-02-20 12:21:12 +10:00
intel_modes.c
intel_sdvo_regs.h drm/i915: sync SDVO code with stable userland modesetting driver 2009-02-08 21:38:14 +10:00
intel_sdvo.c drm/i915: Storage class should be before const qualifier 2009-02-20 12:21:08 +10:00
intel_tv.c drm/i915: Storage class should be before const qualifier 2009-02-20 12:21:08 +10:00
Makefile