alistair23-linux/drivers/gpu/drm/nouveau
Daniel Vetter 9c79e0b1d0 drm/fb-helper: Give up on kgdb for atomic drivers
It just doesn't work. It probably stopped working way, way before that
(e.g. i915 grabbed random mutexes all over in modeset code at least
since gen6), but with atomic and all the ww_mutex stuff it's indeed
hopeless.

Remove ->mode_set_base_atomic from the 2 atomic drivers (i915 and
nouveau) that still had one (both had dummy implementations already
anyway), and shunt atomic drivers in the helpers debug_enter/leave
functions.

I'll leave the code in for radeon and amdgpu, but I think as soon as
amdgpu is atomic we should think about just ripping it out. Only
having it around for radeon and pre-nv50 is rather pointless. This
would also allow us to nuke all that code from fbdev.

Funny part is that _all_ kms drivers set this hook, despite that no
one else provides the required ->mode_set_base_atomic implementation.

The reason I'm jumping on this is that I want to wire up a full
acquire ctx for the benefit of atomic drivers, everywhere. And the
debug_enter/leave implementations call ->gamma_set. And there's just
no way ever we can create an acquire_ctx in the nmi context of kgdb.

Cc: Ben Skeggs <bskeggs@redhat.com>
Cc: Alex Deucher <alexander.deucher@amd.com>
Reviewed-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Acked-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/20170403083304.9083-11-daniel.vetter@ffwll.ch
2017-04-06 10:21:03 +02:00
..
dispnv04 drm: Add acquire ctx parameter to ->set_config 2017-03-29 09:56:25 +02:00
include drm/nouveau/fb/gf100-: rework ram detection 2017-03-07 17:05:17 +10:00
nvif drm/nouveau/core/client: allow creation of subclients 2017-02-17 15:15:00 +10:00
nvkm drm/nouveau/secboot: fix NULL pointer dereference 2017-03-17 12:06:58 +10:00
Kbuild drm/nouveau/drm/nouveau: add a LED driver for the NVIDIA logo 2016-10-12 17:29:29 +10:00
Kconfig drm: fix compilations issues introduced by "drm: allow to use mmuless SoC" 2017-01-09 11:30:30 +01:00
nouveau_abi16.c drm/nouveau: allocate device object for every client 2017-02-17 15:15:04 +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 gpu: drm: drivers: Convert printk(KERN_<LEVEL> to pr_<level> 2017-03-01 09:44:11 +01: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: allocate device object for every client 2017-02-17 15:15:04 +10:00
nouveau_bios.c drm/nouveau: allocate device object for every client 2017-02-17 15:15:04 +10:00
nouveau_bios.h drm/nouveau/nouveau: bios pointers may be unaligned, use proper accessors 2016-10-12 17:29:02 +10:00
nouveau_bo.c drm/nouveau: size is u64 everywhere 2017-02-17 17:38:04 +10:00
nouveau_bo.h drm/nouveau: size is u64 everywhere 2017-02-17 17:38:04 +10:00
nouveau_chan.c drm/nouveau: check for dead channel before trying to idle 2017-02-17 17:38:09 +10:00
nouveau_chan.h drm/nouveau: request notifications for channels that have been killed 2017-02-17 17:38:09 +10:00
nouveau_connector.c drm/nouveau/i2c: modify aux interface to return length actually transferred 2017-03-07 17:05:16 +10:00
nouveau_connector.h drm: Don't include <drm/drm_encoder.h> in <drm/drm_crtc.h> 2016-12-18 16:29:29 +05:30
nouveau_crtc.h drm/nouveau/kms/nv50: remove code to support non-atomic connector properties 2016-11-07 14:05:01 +10:00
nouveau_debugfs.c drm/nouveau: Remove nouveau_drm_debugfs_cleanup() 2017-03-01 16:09:52 +01:00
nouveau_debugfs.h drm/nouveau: Remove nouveau_drm_debugfs_cleanup() 2017-03-01 16:09:52 +01:00
nouveau_display.c drm: Add acquire ctx parameter to ->page_flip(_target) 2017-03-29 09:50:38 +02:00
nouveau_display.h drm: Add acquire ctx parameter to ->set_config 2017-03-29 09:56:25 +02:00
nouveau_dma.c drm/nouveau: rename nouveau_drm.h to nouveau_drv.h 2016-05-20 14:43:04 +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/kms/nv50: initial support for DP 1.2 multi-stream 2016-11-07 14:05:03 +10:00
nouveau_drm.c Merge branch 'drm/next/platform' of git://linuxtv.org/pinchartl/media into drm-misc-next 2017-03-11 11:46:03 +01:00
nouveau_drv.h Linux 4.10-rc8 2017-02-23 12:10:12 +10:00
nouveau_encoder.h drm/nouveau/kms/nv50: initial support for DP 1.2 multi-stream 2016-11-07 14:05:03 +10:00
nouveau_fbcon.c Merge airlied/drm-next into drm-misc-next 2017-02-26 21:34:42 +01:00
nouveau_fbcon.h drm/nouveau/fbcon: refcount the drm_framebuffer 2016-11-07 14:04:44 +10:00
nouveau_fence.c Less anger inducing pull request for 4.11 2017-02-23 18:58:18 -08:00
nouveau_fence.h drm/nouveau/fence/g84-: protect against concurrent access to semaphore buffers 2017-01-31 20:05:25 +10:00
nouveau_gem.c drm/nouveau: size is u64 everywhere 2017-02-17 17:38:04 +10:00
nouveau_gem.h drm/nouveau: size is u64 everywhere 2017-02-17 17:38:04 +10:00
nouveau_hwmon.c drm/nouveau/hwmon: expose power_max and power_crit 2017-02-17 17:38:17 +10:00
nouveau_hwmon.h
nouveau_ioc32.c
nouveau_ioctl.h
nouveau_led.c drm/nouveau/drm/nouveau/led: prevent a possible use-after-free 2017-02-17 17:38:07 +10:00
nouveau_led.h drm/nouveau/nouveau/led: prevent compiling the led-code if nouveau=y and leds=m 2017-01-31 20:05:25 +10:00
nouveau_nvif.c drm/nouveau/core/client: pass notification callback to nvkm_client_new 2017-02-17 15:15:00 +10:00
nouveau_platform.c drm/nouveau/tegra: acquire and enable reference clock if needed 2016-04-06 16:06:51 +10:00
nouveau_platform.h drm/nouveau: rename nouveau_drm.h to nouveau_drv.h 2016-05-20 14:43:04 +10:00
nouveau_prime.c drm/nouveau: pass nvif_client to nouveau_bo_new() instead of drm_device 2017-02-17 15:15:02 +10:00
nouveau_reg.h
nouveau_sgdma.c drm/nouveau: s/mem/reg/ for struct ttm_mem_reg variables 2017-02-17 15:15:04 +10:00
nouveau_ttm.c drm/nouveau: s/mem/reg/ for struct ttm_mem_reg variables 2017-02-17 15:15:04 +10:00
nouveau_ttm.h
nouveau_usif.c drm: Remove drm_pending_event->pid 2017-03-14 14:38:33 +01:00
nouveau_usif.h
nouveau_vga.c drm/nouveau: Don't register Thunderbolt eGPU with vga_switcheroo 2017-03-30 22:42:30 +02:00
nouveau_vga.h
nv04_fbcon.c drm/nouveau: allocate device object for every client 2017-02-17 15:15:04 +10:00
nv04_fence.c dma-buf: Rename struct fence to dma_fence 2016-10-25 14:40:39 +02:00
nv10_fence.c drm/nouveau/kms/nv50: remove code to support non-atomic page flips 2016-11-07 14:05:01 +10:00
nv10_fence.h drm/nouveau/kms/nv50: remove code to support non-atomic page flips 2016-11-07 14:05:01 +10:00
nv17_fence.c drm/nouveau: s/mem/reg/ for struct ttm_mem_reg variables 2017-02-17 15:15:04 +10:00
nv50_display.c drm/fb-helper: Give up on kgdb for atomic drivers 2017-04-06 10:21:03 +02:00
nv50_display.h drm/nouveau/kms/nv50: remove code to support non-atomic page flips 2016-11-07 14:05:01 +10:00
nv50_fbcon.c drm/nouveau/fbcon: make use of drm_fb_helper.fb 2016-11-07 14:04:44 +10:00
nv50_fence.c drm/nouveau: s/mem/reg/ for struct ttm_mem_reg variables 2017-02-17 15:15:04 +10:00
nv84_fence.c Linux 4.10-rc8 2017-02-23 12:10:12 +10:00
nvc0_fbcon.c drm/nouveau/fbcon: make use of drm_fb_helper.fb 2016-11-07 14:04:44 +10:00
nvc0_fence.c drm/nouveau: rename nouveau_drm.h to nouveau_drv.h 2016-05-20 14:43:04 +10:00