[PATCH 0/5] drm: Remove remaining support for kdb

Thomas Zimmermann
2025-11-25T13:06:42Z

Remove the rest of the kbd support from DRM. Driver support has been
broken for years without anyone complaining.

Kdb cannot use regular DRM mode setting, so DRM drivers have to
implement an additional hook to make it work (in theory). As outlined
by Sima in commit 9c79e0b1d096 ("drm/fb-helper: Give up on kgdb for
atomic drivers") from 2017, kdb is not compatible with DRM atomic mode
setting. Non-atomic mode setting meanwhile has become rare.

Only 3 DRM drivers implement the hooks for kdb support. Amdgpu and
nouveau use non-atomic mode setting on older devices. But both drivers
have switched to generic fbdev emulation, which isn't compatible with
kdb. Radeon still runs kdb, but it doesn't work in practice. See the
commits in this series for details

Therefore remove the remaining support for kdb from the DRM drivers
and from DRM fbdev emulation. Also remove the hooks from fbdev, as
there are no fbdev drivers with kdb support.

If we ever want to address kdb support within DRM drivers, a place to
start would be the scanout buffers used by DRM's panic screen. These
use the current display mode. They can be written and flushed without
mode setting involved.

Note: kdb over serial lines is not affected by this series and continues
to work as before.

Thomas Zimmermann (5):
drm/amdgpu: Do not implement mode_set_base_atomic callback
drm/nouveau: Do not implement mode_set_base_atomic callback
drm/radeon: Do not implement mode_set_base_atomic callback
drm/fbdev-helper: Remove drm_fb_helper_debug_enter/_leave()
fbcon: Remove fb_debug_enter/_leave from struct fb_ops

Documentation/process/debugging/kgdb.rst | 28 -----
drivers/gpu/drm/amd/amdgpu/dce_v10_0.c | 35 ++-----
drivers/gpu/drm/amd/amdgpu/dce_v6_0.c | 35 ++-----
drivers/gpu/drm/amd/amdgpu/dce_v8_0.c | 35 ++-----
drivers/gpu/drm/drm_fb_helper.c | 108 --------------------
drivers/gpu/drm/nouveau/dispnv04/crtc.c | 24 +----
drivers/gpu/drm/radeon/atombios_crtc.c | 74 ++++----------
drivers/gpu/drm/radeon/radeon_legacy_crtc.c | 23 ++---
drivers/gpu/drm/radeon/radeon_mode.h | 10 +-
drivers/video/fbdev/core/fbcon.c | 24 -----
drivers/video/fbdev/core/fbcon.h | 1 -
include/drm/drm_fb_helper.h | 21 ----
include/drm/drm_modeset_helper_vtables.h | 23 -----
include/linux/fb.h | 4 -
14 files changed, 63 insertions(+), 382 deletions(-)

base-commit: 0a21e96e0b6840d2a4e0b45a957679eeddeb4362
--
2.51.1