Daniel Vetter
b45305fce5
drm/i915: Implement workaround for broken CS tlb on i830/845
...
Now that Chris Wilson demonstrated that the key for stability on early
gen 2 is to simple _never_ exchange the physical backing storage of
batch buffers I've tried a stab at a kernel solution. Doesn't look too
nefarious imho, now that I don't try to be too clever for my own good
any more.
v2: After discussing the various techniques, we've decided to always blit
batches on the suspect devices, but allow userspace to opt out of the
kernel workaround assume full responsibility for providing coherent
batches. The principal reason is that avoiding the blit does improve
performance in a few key microbenchmarks and also in cairo-trace
replays.
Signed-Off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
[danvet:
- Drop the hunk which uses HAS_BROKEN_CS_TLB to implement the ring
wrap w/a. Suggested by Chris Wilson.
- Also add the ACTHD check from Chris Wilson for the error state
dumping, so that we still catch batches when userspace opts out of
the w/a.]
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2012-12-17 17:27:02 +01:00
..
accessibility
acpi
ACPI video: Ignore errors after _DOD evaluation.
2012-11-03 09:52:54 +08:00
amba
ata
Merge branch 'samsung_platform_data' into staging/for_v3.7
2012-10-05 22:32:05 -03:00
atm
sections: fix section conflicts in drivers/atm
2012-10-06 03:04:40 +09:00
auxdisplay
base
Power management and ACPI fixes for 3.7-rc3
2012-10-26 14:23:35 -07:00
bcma
bcma: fix unregistration of cores
2012-10-15 14:45:51 -04:00
block
loop: Make explicit loop device destruction lazy
2012-10-30 08:37:31 +01:00
bluetooth
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next
2012-10-02 13:38:27 -07:00
bus
drivers: bus: omap_l3: fixup merge conflict resolution
2012-10-01 19:39:48 -07:00
cdrom
char
Merge branch 'for-airlied' of git://people.freedesktop.org/~danvet/drm-intel into drm-next
2012-11-20 09:22:35 +10:00
clk
spi: Updates for v3.7
2012-10-02 17:26:42 -07:00
clocksource
Power management updates for 3.7-rc1
2012-10-02 18:32:35 -07:00
connector
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next
2012-10-02 13:38:27 -07:00
cpufreq
cpufreq / powernow-k8: Change maintainer's email address
2012-10-31 21:02:57 +01:00
cpuidle
ACPI idle, CPU hotplug: Fix NULL pointer dereference during hotplug
2012-10-08 22:52:54 -04:00
crypto
ARM: soc: late platform updates
2012-10-07 20:55:16 +09:00
dca
devfreq
dio
dma
Merge branch 'fixes' of git://git.infradead.org/users/vkoul/slave-dma
2012-10-26 14:59:01 -07:00
edac
amd64_edac:__amd64_set_scrub_rate(): avoid overindexing scrubrates[]
2012-10-24 16:13:27 +02:00
eisa
extcon
extcon : register for cable interest by cable name
2012-10-23 16:32:18 +09:00
firewire
firewire: cdev: fix user memory corruption (i386 userland on amd64 kernel)
2012-10-09 18:26:28 +02:00
firmware
firmware/memmap: avoid type conflicts with the generic memmap_init()
2012-10-19 14:07:47 -07:00
gpio
Some GPIO fixes for the v3.7 series since -rc1:
2012-10-30 15:56:22 -07:00
gpu
drm/i915: Implement workaround for broken CS tlb on i830/845
2012-12-17 17:27:02 +01:00
hid
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid
2012-10-31 15:39:28 -07:00
hsi
hv
Drivers: hv: Cleanup error handling in vmbus_open()
2012-10-24 15:46:27 -07:00
hwmon
hwmon: Only include of_match_table with CONFIG_OF_GPIO
2012-11-01 17:31:20 -07:00
hwspinlock
i2c
Merge branch 'i2c-embedded/for-current' of git://git.pengutronix.de/git/wsa/linux
2012-11-03 15:14:54 -07:00
ide
sections: fix section conflicts in drivers/ide
2012-10-06 03:04:41 +09:00
idle
iio
iio: Remove duplicates for light/ in Kconfig and Makefile
2012-10-19 19:44:06 +01:00
infiniband
Merge branches 'cxgb4' and 'mlx4' into for-next
2012-10-23 09:03:49 -07:00
input
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input
2012-11-02 16:11:15 -07:00
iommu
iommu/tegra: smmu: Fix deadly typo
2012-10-24 16:58:53 +02:00
irqchip
isdn
bas_gigaset: fix pre_reset handling
2012-10-26 02:20:36 -04:00
leds
Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/cooloney/linux-leds
2012-10-10 20:14:07 +09:00
lguest
Merge branch 'virtio-next' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux
2012-10-07 21:04:56 +09:00
macintosh
Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc
2012-10-06 03:16:12 +09:00
md
MD RAID10: Fix oops when creating RAID10 arrays via dm-raid.c
2012-10-31 11:42:30 +11:00
media
[media] Kconfig: Fix dependencies for driver autoselect options
2012-10-17 16:45:56 -03:00
memory
memstick
message
mfd
1. New drivers:
2012-10-07 17:29:24 +09:00
misc
pwm: Changes for v3.7-rc1
2012-10-10 20:15:24 +09:00
mmc
mmc: mxs-mmc: Fix merge issue causing build error
2012-10-11 17:21:40 -04:00
mtd
mtd: Disable mtdchar mmap on MMU systems
2012-10-09 15:08:42 +01:00
net
vmxnet3: must split too big fragments
2012-11-02 21:58:09 -04:00
nfc
nubus
of
of/platform: sparse fix
2012-10-17 15:53:03 -05:00
oprofile
mm: use mm->exe_file instead of first VM_EXECUTABLE vma->vm_file
2012-10-09 16:22:18 +09:00
parisc
parport
Xtensa patchset for 3.7
2012-10-09 16:11:46 +09:00
pci
Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc
2012-10-06 03:16:12 +09:00
pcmcia
Merge branch 'testing/driver-warnings' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc into fixes
2012-10-19 15:40:18 -07:00
pinctrl
pinctrl/nomadik: pass DT node to the irqdomain
2012-10-23 11:52:25 +02:00
platform
Merge branches 'fixes-for-37', 'ec' and 'thermal' into release
2012-10-09 01:47:35 -04:00
pnp
power
Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux
2012-10-13 11:27:59 +09:00
pps
idr: rename MAX_LEVEL to MAX_IDR_LEVEL
2012-10-06 03:04:56 +09:00
ps3
ptp
pwm
pwm: Changes for v3.7-rc1
2012-10-10 20:15:24 +09:00
rapidio
rapidio: update for destination ID allocation
2012-10-11 08:50:15 +09:00
regulator
MFD bits for the 3.7 merge window.
2012-10-05 12:01:30 +09:00
remoteproc
Merge branch 'virtio-next' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux
2012-10-07 21:04:56 +09:00
rpmsg
Merge branch 'virtio-next' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux
2012-10-07 21:04:56 +09:00
rtc
drivers/rtc/rtc-imxdi.c: add missing spin lock initialization
2012-10-25 14:37:53 -07:00
s390
s390/css: stop stsch loop after cc 3
2012-10-18 17:50:08 +02:00
sbus
scsi
qla2xxx: Update target lookup session tables when a target session changes
2012-10-26 12:29:46 -07:00
sfi
sh
sh: Fix up more fallout from pointless ARM __iomem churn.
2012-10-15 14:08:48 +09:00
sn
spi
spi: Some minor MXS fixes
2012-10-28 11:13:54 -07:00
ssb
staging
Staging driver fixes for 3.7-rc3
2012-10-26 10:25:31 -07:00
target
target: Fix incorrect usage of nested IRQ spinlocks in ABORT_TASK path
2012-11-01 00:38:45 -07:00
tc
thermal
exynos4_tmu_driver_ids should be exynos_tmu_driver_ids.
2012-11-03 09:52:55 +08:00
tty
Revert "serial: omap: fix software flow control"
2012-10-24 11:57:21 -07:00
uio
mm: kill vma flag VM_RESERVED and mm->reserved_vm counter
2012-10-09 16:22:19 +09:00
usb
xhci: trivial: Remove assigned but unused ep_ctx.
2012-10-25 13:13:48 -07:00
uwb
vfio
vfio: Fix PCI INTx disable consistency
2012-10-10 09:10:32 -06:00
vhost
vhost: fix mergeable bufs on BE hosts
2012-10-24 23:19:30 -04:00
video
Bug-fixes:
2012-11-02 13:26:11 -07:00
virt
virtio
vlynq
vme
w1
char/misc driver merge for 3.7-rc1
2012-10-01 12:09:59 -07:00
watchdog
Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu
2012-10-07 21:06:10 +09:00
xen
Bug-fixes:
2012-11-02 13:26:11 -07:00
zorro
Kconfig
ARM: soc: driver specific changes
2012-10-01 18:46:13 -07:00
Makefile
IPMI: Change link order
2012-10-16 18:07:12 -07:00