android_kernel_oneplus_msm8998/drivers/gpu/drm/nouveau
Ben Skeggs 5dffc1be65 drm/nouveau/tmr: fully separate alarm execution/pending lists
commit b4e382ca7586a63b6c1e5221ce0863ff867c2df6 upstream.

Reusing the list_head for both is a bad idea.  Callback execution is done
with the lock dropped so that alarms can be rescheduled from the callback,
which means that with some unfortunate timing, lists can get corrupted.

The execution list should not require its own locking, the single function
that uses it can only be called from a single context.

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2017-06-14 13:16:25 +02:00
..
dispnv04 drm/nouveau/nv1a,nv1f/disp: fix memory clock rate retrieval 2017-02-09 08:02:44 +01:00
include drm/nouveau/tmr: fully separate alarm execution/pending lists 2017-06-14 13:16:25 +02:00
nvif drm/nouveau/nvif: device time mthd 2015-08-28 12:40:33 +10:00
nvkm drm/nouveau/tmr: fully separate alarm execution/pending lists 2017-06-14 13:16:25 +02: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/abi16: implement limited interoperability with usif/nvif 2015-11-03 15:02:18 +10:00
nouveau_abi16.h drm/nouveau/abi16: implement limited interoperability with usif/nvif 2015-11-03 15:02:18 +10:00
nouveau_acpi.c drm/nouveau/bios: return actual size of the buffer retrieved via _ROM 2015-11-25 15:31:21 +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/kms: lvds panel strap moved again on maxwell 2017-01-09 08:07:45 +01:00
nouveau_bios.h
nouveau_bo.c drm: Remove __OS_HAS_AGP 2015-09-30 10:44:48 +02: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: remove unnecessary usage of object handles 2015-11-03 15:02:18 +10:00
nouveau_chan.h drm/nouveau: remove unnecessary usage of object handles 2015-11-03 15:02:18 +10:00
nouveau_connector.c drm/nouveau/kms: take mode_config mutex in connector hotplug path 2016-03-03 15:07:20 -08:00
nouveau_connector.h drm/nouveau: finalise nvkm namespace switch (no binary change) 2015-01-22 12:18:07 +10:00
nouveau_crtc.h
nouveau_debugfs.c
nouveau_debugfs.h
nouveau_display.c drm/nouveau/display: Enable vblank irqs after display engine is on again. 2016-03-03 15:07:20 -08:00
nouveau_display.h drm/irq: Use unsigned int pipe in public API 2015-10-06 12:57:47 +02: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: check for supported chipset before booting fbdev off the hw 2016-08-20 18:09:23 +02:00
nouveau_drm.h drm/nouveau/nvif: allow userspace access to its own client object 2015-11-25 15:31:21 +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: fix for disabled fbdev emulation 2016-07-27 09:47:34 -07: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/abi16: remove unused argument from nouveau_abi16_get() 2015-11-03 15:02:18 +10:00
nouveau_gem.h
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: platform: Fix deferred probe 2016-03-03 15:07:20 -08:00
nouveau_platform.h drm/nouveau/tegra: merge platform setup from nouveau drm 2015-08-28 12:40:49 +10:00
nouveau_prime.c
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: remove unnecessary usage of object handles 2015-11-03 15:02:18 +10:00
nouveau_sysfs.h
nouveau_ttm.c nouveau: don't call pci_dma_supported 2015-11-10 16:32:11 -08:00
nouveau_ttm.h
nouveau_usif.c drm/nouveau/nvif: allow userspace access to its own client object 2015-11-25 15:31:21 +10:00
nouveau_usif.h
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/fbcon: fix font width not divisible by 8 2016-08-20 18:09:23 +02: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
nv17_fence.c drm/nouveau/nvif: simplify and tidy library interfaces 2015-08-28 12:40:32 +10:00
nv50_display.c drm/nouveau: remove unnecessary usage of object handles 2015-11-03 15:02:18 +10:00
nv50_display.h
nv50_fbcon.c drm/nouveau/fbcon: fix font width not divisible by 8 2016-08-20 18:09:23 +02: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/fbcon: fix font width not divisible by 8 2016-08-20 18:09:23 +02:00
nvc0_fence.c