linux_dsm_epyc7002/drivers
Kenneth Graunke ef0f411f51 drm/i915: Drop support for I915_EXEC_CONSTANTS_* execbuf parameters.
This patch makes the I915_PARAM_HAS_EXEC_CONSTANTS getparam return 0
(indicating the optional feature is not supported), and makes execbuf
always return -EINVAL if the flags are used.

Apparently, no userspace ever shipped which used this optional feature:
I checked the git history of Mesa, xf86-video-intel, libva, and Beignet,
and there were zero commits showing a use of these flags.  Kernel commit
72bfa19c8d apparently introduced the feature prematurely.  According
to Chris, the intention was to use this in cairo-drm, but "the use was
broken for gen6", so I don't think it ever happened.

'relative_constants_mode' has always been tracked per-device, but this
has actually been wrong ever since hardware contexts were introduced, as
the INSTPM register is saved (and automatically restored) as part of the
render ring context. The software per-device value could therefore get
out of sync with the hardware per-context value.  This meant that using
them is actually unsafe: a client which tried to use them could damage
the state of other clients, causing the GPU to interpret their BO
offsets as absolute pointers, leading to bogus memory reads.

These flags were also never ported to execlist mode, making them no-ops
on Gen9+ (which requires execlists), and Gen8 in the default mode.

On Gen8+, userspace can write these registers directly, achieving the
same effect.  On Gen6-7.5, it likely makes sense to extend the command
parser to support them.  I don't think anyone wants this on Gen4-5.

Based on a patch by Dave Gordon.

v3: Return -ENODEV for the getparam, as this is what we do for other
    obsolete features.  Suggested by Chris Wilson.

Cc: stable@vger.kernel.org
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=92448
Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
Link: http://patchwork.freedesktop.org/patch/msgid/20170215093446.21291-1-kenneth@whitecape.org
Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2017-02-24 17:51:05 +00:00
..
accessibility
acpi
amba
android
ata
atm
auxdisplay
base memory_hotplug: make zone_can_shift() return a boolean value 2017-01-24 16:26:14 -08:00
bcma
block nbd: only set MSG_MORE when we have more to send 2017-01-19 14:31:50 -07:00
bluetooth
bus
cdrom
char Merge remote-tracking branch 'airlied/drm-next' into drm-intel-next-queued 2017-02-01 10:58:11 +01:00
clk One fix for Samsung Exynos524x SoCs where recent IOMMU patches have 2017-01-21 18:46:45 -08:00
clocksource clocksource/exynos_mct: Clear interrupt when cpu is shut down 2017-01-17 10:08:38 +01:00
connector
cpufreq
cpuidle
crypto
dax
dca
devfreq
dio
dma dmaengine: rcar-dmac: unmap slave resource when channel is freed 2017-01-13 12:14:28 +05:30
dma-buf dma/fence: Export enable-signaling tracepoint for emission by drivers 2017-01-27 15:24:44 -02:00
edac
eisa
extcon
firewire
firmware Merge branch 'efi-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2017-01-15 10:54:39 -08:00
fmc
fpga
gpio gpio: provide lockdep keys for nested/unnested irqchips 2017-01-19 09:57:20 +01:00
gpu drm/i915: Drop support for I915_EXEC_CONSTANTS_* execbuf parameters. 2017-02-24 17:51:05 +00:00
hid HID: wacom: Fix sibling detection regression 2017-01-19 14:19:25 +01:00
hsi
hv
hwmon
hwspinlock
hwtracing
i2c i2c: piix4: Avoid race conditions with IMC 2017-01-12 20:52:12 +01:00
ide
idle
iio
infiniband
input Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input 2017-01-13 11:49:34 -08:00
iommu
ipack
irqchip
isdn
leds
lguest
lightnvm
macintosh
mailbox
mcb
md
media
memory
memstick drivers/memstick/core/memstick.c: avoid -Wnonnull warning 2017-01-24 16:26:14 -08:00
message
mfd
misc
mmc mmc: core: Restore parts of the polling policy when switch to HS/HS DDR 2017-01-16 16:17:42 +01:00
mtd
net net/mlx4_core: Eliminate warning messages for SRQ_LIMIT under SRIOV 2017-01-16 15:08:29 -05:00
nfc
ntb
nubus
nvdimm libnvdimm, namespace: fix pmem namespace leak, delete when size set to zero 2017-01-13 09:50:33 -08:00
nvme nvme: use blk_rq_payload_bytes 2017-01-13 15:17:04 -07:00
nvmem
of
oprofile
parisc
parport
pci PCI/MSI: pci-xgene-msi: Fix CPU hotplug registration handling 2017-01-17 08:41:51 -06:00
pcmcia
perf
phy
pinctrl pinctrl: uniphier: fix Ethernet (RMII) pin-mux setting for LD20 2017-01-19 10:36:40 +01:00
platform platform/x86: ideapad-laptop: handle ACPI event 1 2017-01-22 12:47:06 +02:00
pnp
power
powercap
pps
ps3
ptp
pwm
rapidio
ras
regulator
remoteproc
reset
rpmsg
rtc
s390 virtio/s390: virtio: constify virtio_config_ops structures 2017-01-19 23:46:34 +02:00
sbus
scsi Merge branch 'scsi-target-for-v4.10' of git://git.kernel.org/pub/scm/linux/kernel/git/bvanassche/linux 2017-01-20 14:17:04 -08:00
sfi
sh
sn
soc soc: ti: wkup_m3_ipc: Fix error return code in wkup_m3_ipc_probe() 2017-01-12 13:37:49 -08:00
spi spi: Fixes for v4.10 2017-01-20 12:25:11 -08:00
spmi
ssb
staging
target
tc
thermal Merge branches 'thermal-core' and 'thermal-soc' into for-rc 2017-01-20 16:24:54 +08:00
thunderbolt
tty
uio
usb xhci: remove WARN_ON if dma mask is not set for platform devices 2017-01-20 14:55:20 +01:00
uwb
vfio vfio/type1: Remove pid_namespace.h include 2017-01-13 08:23:33 -07:00
vhost vhost/vsock: handle vhost_vq_init_access() error 2017-01-25 00:33:10 +02:00
video Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux into drm-next 2017-01-27 11:00:42 +10:00
virt
virtio vring: Force use of DMA API for ARM-based systems with legacy devices 2017-01-25 00:33:11 +02:00
vlynq
vme
w1
watchdog
xen xen: fix for 4.10 rc4 2017-01-19 09:38:27 -08:00
zorro
Kconfig
Makefile