linux/drivers/gpu/drm/nouveau
Ilia Mirkin 2a6c521bb4 drm/nouveau/gem: return only valid domain when there's only one
On nv50+, we restrict the valid domains to just the one where the buffer
was originally created. However after the buffer is evicted to system
memory, we might move it back to a different domain that was not
originally valid. When sharing the buffer and retrieving its GEM_INFO
data, we still want the domain that will be valid for this buffer in a
pushbuf, not the one where it currently happens to be.

This resolves fdo#92504 and several others. These are due to suspend
evicting all buffers, making it more likely that they temporarily end up
in the wrong place.

Cc: stable@vger.kernel.org
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=92504
Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2015-10-22 09:10:52 +10:00
..
dispnv04 drm/nouveau/dispnv04: fix build on powerpc 2015-08-28 20:33:58 +10:00
include drm/nouveau/tegra: merge platform setup from nouveau drm 2015-08-28 12:40:49 +10:00
nvif drm/nouveau/nvif: device time mthd 2015-08-28 12:40:33 +10:00
nvkm drm/nouveau/bios: fix OF loading 2015-10-12 13:54:56 +10:00
Kbuild drm/nouveau/pci: merge agp handling from nouveau drm 2015-08-28 12:40:49 +10:00
Kconfig drm/nouveau: merge nouveau_platform.ko into nouveau.ko 2015-01-22 12:15:09 +10:00
nouveau_abi16.c drm/nouveau/pci: merge agp handling from nouveau drm 2015-08-28 12:40:49 +10:00
nouveau_abi16.h drm/nouveau/nvif: assign internal class identifiers to sw classes 2015-08-28 12:40:32 +10:00
nouveau_acpi.c drm/nouveau/device: remove pci/platform_device from common struct 2015-08-28 12:40:49 +10:00
nouveau_acpi.h drm/nouveau/device: remove pci/platform_device from common struct 2015-08-28 12:40:49 +10:00
nouveau_backlight.c drm/nouveau/nvif: simplify and tidy library interfaces 2015-08-28 12:40:32 +10:00
nouveau_bios.c drm/nouveau/nvif: simplify and tidy library interfaces 2015-08-28 12:40:32 +10:00
nouveau_bios.h
nouveau_bo.c drm/nouveau/pci: merge agp handling from nouveau drm 2015-08-28 12:40:49 +10:00
nouveau_bo.h drm/nouveau: finalise nvkm namespace switch (no binary change) 2015-01-22 12:18:07 +10:00
nouveau_chan.c drm/nouveau/pci: merge agp handling from nouveau drm 2015-08-28 12:40:49 +10:00
nouveau_chan.h drm/nouveau/nvif: simplify and tidy library interfaces 2015-08-28 12:40:32 +10:00
nouveau_connector.c drm/nouveau/gpio: convert to new-style nvkm_subdev 2015-08-28 12:40:43 +10:00
nouveau_connector.h drm/nouveau: finalise nvkm namespace switch (no binary change) 2015-01-22 12:18:07 +10:00
nouveau_crtc.h drm/nouveau/disp: implement nvif event sources for vblank/connector notifiers 2014-08-10 05:28:12 +10:00
nouveau_debugfs.c
nouveau_debugfs.h
nouveau_display.c drm/nouveau/display: allow up to 16k width/height for fermi+ 2015-10-12 13:48:28 +10:00
nouveau_display.h drm/nouveau: finalise nvkm namespace switch (no binary change) 2015-01-22 12:18:07 +10:00
nouveau_dma.c drm/nouveau/nvif: simplify and tidy library interfaces 2015-08-28 12:40:32 +10:00
nouveau_dma.h drm/nouveau/nvif: simplify and tidy library interfaces 2015-08-28 12:40:32 +10:00
nouveau_dp.c drm/nouveau/i2c: transition pad/ports away from being based on nvkm_object 2015-08-28 12:40:29 +10:00
nouveau_drm.c drm/nouveau/pci: merge agp handling from nouveau drm 2015-08-28 12:40:49 +10:00
nouveau_drm.h drm/nouveau: bump driver version for release 2015-08-28 12:40:49 +10:00
nouveau_encoder.h drm/nouveau/i2c: transition pad/ports away from being based on nvkm_object 2015-08-28 12:40:29 +10:00
nouveau_fbcon.c drm/nouveau/fbcon: take runpm reference when userspace has an open fd 2015-10-12 13:54:40 +10:00
nouveau_fbcon.h drm/nouveau: dont switch vt on suspend 2015-01-22 12:15:08 +10:00
nouveau_fence.c drm/nouveau/nvif: simplify and tidy library interfaces 2015-08-28 12:40:32 +10:00
nouveau_fence.h drm/nouveau/sw: turn flip completion into an event 2015-08-28 12:40:38 +10:00
nouveau_gem.c drm/nouveau/gem: return only valid domain when there's only one 2015-10-22 09:10:52 +10:00
nouveau_gem.h drm: Pass dma-buf as argument to gem_prime_import_sg_table 2014-09-30 14:04:00 +02:00
nouveau_hwmon.c drm/nouveau/therm: convert to new-style nvkm_subdev 2015-08-28 12:40:45 +10:00
nouveau_hwmon.h
nouveau_ioc32.c
nouveau_ioctl.h
nouveau_nvif.c drm/nouveau/client: tidy ctor/dtor interfaces 2015-08-28 12:40:30 +10:00
nouveau_platform.c drm/nouveau/tegra: merge platform setup from nouveau drm 2015-08-28 12:40:49 +10:00
nouveau_platform.h drm/nouveau/tegra: merge platform setup from nouveau drm 2015-08-28 12:40:49 +10:00
nouveau_prime.c drm/nouveau: teach nouveau_bo_pin() how to force a contig vram allocation 2014-12-02 15:44:09 +10:00
nouveau_reg.h drm/nouveau/sw: rename from software (no binary change) 2015-01-22 12:17:47 +10:00
nouveau_sgdma.c drm/nouveau: finalise nvkm namespace switch (no binary change) 2015-01-22 12:18:07 +10:00
nouveau_sysfs.c drm/nouveau/device: remove pci/platform_device from common struct 2015-08-28 12:40:49 +10:00
nouveau_sysfs.h drm/nouveau: Display Nouveau boot options at launch 2014-09-15 22:24:58 +10:00
nouveau_ttm.c drm/nouveau/pci: merge agp handling from nouveau drm 2015-08-28 12:40:49 +10:00
nouveau_ttm.h
nouveau_usif.c drm/nouveau: expose the full object/event interfaces to userspace 2014-08-10 05:28:18 +10:00
nouveau_usif.h drm/nouveau: expose the full object/event interfaces to userspace 2014-08-10 05:28:18 +10:00
nouveau_vga.c drm/nouveau/nvif: simplify and tidy library interfaces 2015-08-28 12:40:32 +10:00
nouveau_vga.h
nv04_fbcon.c drm/nouveau/nvif: simplify and tidy library interfaces 2015-08-28 12:40:32 +10:00
nv04_fence.c drm/nouveau/sw/nv04: replace direct context access with GetRef method 2015-08-28 12:40:37 +10:00
nv10_fence.c drm/nouveau/nvif: simplify and tidy library interfaces 2015-08-28 12:40:32 +10:00
nv10_fence.h drm/nouveau: remove as much direct use of core headers as possible 2014-08-10 05:13:16 +10:00
nv17_fence.c drm/nouveau/nvif: simplify and tidy library interfaces 2015-08-28 12:40:32 +10:00
nv50_display.c drm/nouveau/device: remove pci/platform_device from common struct 2015-08-28 12:40:49 +10:00
nv50_display.h
nv50_fbcon.c drm/nouveau/nvif: simplify and tidy library interfaces 2015-08-28 12:40:32 +10:00
nv50_fence.c drm/nouveau/nvif: simplify and tidy library interfaces 2015-08-28 12:40:32 +10:00
nv84_fence.c drm/nouveau/fifo: convert user classes to new-style nvkm_object 2015-08-28 12:40:40 +10:00
nvc0_fbcon.c drm/nouveau/nvif: simplify and tidy library interfaces 2015-08-28 12:40:32 +10:00
nvc0_fence.c drm/nouveau: remove as much direct use of core headers as possible 2014-08-10 05:13:16 +10:00