linux/drivers/gpu/drm/i915
Daniel Vetter d472fcc837 drm/i915: Disallow pin ioctl completely for kms drivers
The problem here is that SNA pins batchbuffers to etch out a bit more
performance. Iirc it started out as a w/a for i830M (which we've
implemented in the kernel since a long time already). The problem is
that the pin ioctl wasn't added in

commit d23db88c3a
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date:   Fri May 23 08:48:08 2014 +0200

    drm/i915: Prevent negative relocation deltas from wrapping

Fix this by simply disallowing pinning from userspace so that the
kernel is in full control of batch placement again. Especially since
distros are moving towards running X as non-root, so most users won't
even be able to see any benefits.

UMS support is dead now, but we need this minimal patch for
backporting. Follow-up patch will remove the pin ioctl code
completely.

Note to backporters: You must have both

commit b45305fce5
Author: Daniel Vetter <daniel.vetter@ffwll.ch>
Date:   Mon Dec 17 16:21:27 2012 +0100

    drm/i915: Implement workaround for broken CS tlb on i830/845

which laned in 3.8 and

commit c4d69da167
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date:   Mon Sep 8 14:25:41 2014 +0100

    drm/i915: Evict CS TLBs between batches

which is also marked cc: stable. Otherwise this could introduce a
regression by disabling the userspace w/a without the kernel w/a being
fully functional on i830/45.

References: https://bugs.freedesktop.org/show_bug.cgi?id=76554#c116
Cc: stable@vger.kernel.org # requires c4d69da167 and v3.8
Cc: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
2014-12-03 09:29:35 +01:00
..
dvo.h
dvo_ch7xxx.c
dvo_ch7017.c
dvo_ivch.c
dvo_ns2501.c
dvo_sil164.c
dvo_tfp410.c
i915_cmd_parser.c drm/i915: Add the predicate source registers to the register whitelist 2014-11-14 10:29:24 +01:00
i915_debugfs.c drm/i915: Don't pin LRC in GGTT when dumping in debugfs 2014-12-02 15:23:30 +01:00
i915_dma.c Linux 3.18-rc7 2014-12-02 10:58:33 +10:00
i915_drv.c Merge tag 'drm-intel-next-2014-11-21-fixed' of git://anongit.freedesktop.org/drm-intel into drm-next 2014-12-03 08:25:59 +10:00
i915_drv.h Merge tag 'drm-intel-next-2014-11-21-fixed' of git://anongit.freedesktop.org/drm-intel into drm-next 2014-12-03 08:25:59 +10:00
i915_gem.c drm/i915: Disallow pin ioctl completely for kms drivers 2014-12-03 09:29:35 +01:00
i915_gem_context.c drm/i915: Initialize workarounds in logical ring mode too 2014-11-14 10:29:25 +01:00
i915_gem_debug.c
i915_gem_dmabuf.c
i915_gem_evict.c
i915_gem_execbuffer.c Merge tag 'drm-intel-next-2014-11-21-fixed' of git://anongit.freedesktop.org/drm-intel into drm-next 2014-12-03 08:25:59 +10:00
i915_gem_gtt.c Linux 3.18-rc7 2014-12-02 10:58:33 +10:00
i915_gem_gtt.h drm/i915: Can i915_gem_init_ioctl 2014-11-20 13:03:31 +01:00
i915_gem_render_state.c
i915_gem_render_state.h
i915_gem_stolen.c
i915_gem_tiling.c Linux 3.18-rc7 2014-12-02 10:58:33 +10:00
i915_gem_userptr.c
i915_gpu_error.c drm/i915: Use ggtt error obj capture helper for gen8 semaphores 2014-11-20 16:59:49 +01:00
i915_ioc32.c
i915_irq.c drm/i915: Only call mod_timer() if not already pending 2014-11-20 22:48:34 +01:00
i915_params.c
i915_reg.h drm/i915: Pin tiled objects for L-shaped configs 2014-11-20 13:03:33 +01:00
i915_suspend.c drm/i915: unify remaining register save/restore code a bit 2014-11-14 10:29:28 +01:00
i915_sysfs.c
i915_trace.h drm/i915: Add tracepoints to track a vm during its lifetime 2014-11-14 10:29:13 +01:00
i915_trace_points.c
i915_ums.c drm/i915: don't save/restore backlight hist ctl registers 2014-11-14 10:29:28 +01:00
intel_acpi.c
intel_audio.c drm/i915/audio: fix monitor presence indication after disable 2014-11-18 11:17:37 +01:00
intel_bios.c
intel_bios.h
intel_crt.c
intel_ddi.c drm/i915: Don't rely upon encoder->type for infoframe hw state readout 2014-11-20 22:37:04 +01:00
intel_display.c drm/i915: Don't clobber crtc->new_config when nothing changes 2014-12-03 09:29:34 +01:00
intel_dp.c Merge tag 'drm-intel-next-2014-11-21-fixed' of git://anongit.freedesktop.org/drm-intel into drm-next 2014-12-03 08:25:59 +10:00
intel_dp_mst.c drm: Miscellaneous fixes for v3.19-rc1 2014-11-15 09:37:20 +10:00
intel_drv.h drm/i915: sanitize rps irq enabling 2014-11-19 15:03:17 +01:00
intel_dsi.c
intel_dsi.h
intel_dsi_cmd.c
intel_dsi_cmd.h
intel_dsi_panel_vbt.c
intel_dsi_pll.c
intel_dvo.c
intel_fbdev.c drm/i915: Make intel_pin_and_fence_fb_obj take plane and framebuffer 2014-11-07 18:41:51 +01:00
intel_fifo_underrun.c
intel_frontbuffer.c drm/i915: Introduce intel_psr.c 2014-11-17 19:12:28 +01:00
intel_hdmi.c drm/i915/chv: Enable AVI, SPD and HDMI infoframes for CHV. 2014-12-03 09:29:34 +01:00
intel_i2c.c
intel_lrc.c drm/i915/bdw: Pin the ringbuffer backing object to GGTT on-demand 2014-11-19 19:56:44 +01:00
intel_lrc.h drm/i915/bdw: Pin the context backing objects to GGTT on-demand 2014-11-19 19:32:58 +01:00
intel_lvds.c drm/i915: Pass the current pipe from eDP init to backlight setup 2014-11-14 10:29:20 +01:00
intel_modes.c
intel_opregion.c
intel_overlay.c
intel_panel.c Linux 3.18-rc7 2014-12-02 10:58:33 +10:00
intel_pm.c Linux 3.18-rc7 2014-12-02 10:58:33 +10:00
intel_psr.c drm/i915: Add PSR docbook 2014-11-17 19:13:24 +01:00
intel_renderstate.h
intel_renderstate_gen6.c
intel_renderstate_gen7.c
intel_renderstate_gen8.c
intel_renderstate_gen9.c
intel_ringbuffer.c drm/i915: Remove DRI1 ring accessors and API 2014-11-19 21:17:11 +01:00
intel_ringbuffer.h drm/i915: Remove DRI1 ring accessors and API 2014-11-19 21:17:11 +01:00
intel_runtime_pm.c drm/i915: Reinit display irqs and hpd from chv pipe-a power well 2014-11-17 09:16:53 +01:00
intel_sdvo.c
intel_sdvo_regs.h
intel_sideband.c
intel_sprite.c drm/i915: use the correct obj when preparing the sprite plane 2014-11-14 10:29:13 +01:00
intel_tv.c
intel_uncore.c drm/i915: Only warn the first time we attempt to mmio whilst suspended 2014-12-03 09:29:35 +01:00
Kconfig
Makefile drm/i915: Introduce intel_psr.c 2014-11-17 19:12:28 +01:00