[PATCH 0/4] hyperv, sysfb: Do not use screen_info in drivers

Thomas Zimmermann tzimmermann at suse.de
Wed Jan 3 10:15:08 UTC 2024


The global screen_info state is only meant for architecture and
firmware code. Replace its use in hyperv graphics drivers with the
correct aperture helpers.

Patches 1 and 2 update hyperv-drm and hyperv-fb to use the correct
aperture helpers instead of screen_info for removing existing firmware
framebuffers.

Hyperv-fb also modifies screen_info for better use with kexec. While
that update makes sense, it's not supposed to be done by the driver.
Patch 3 adds similar code to sysfb and patch 4 removes the code from
the driver.

An intented side effect of this patchset is that all systems now
benefit from better kexec support. After rebooting with kexec, the
kernel operated on stale settings on screen_info. Patch 3 fixes this
and the kexec kernel will use screen_info in any meaningful way.

Thomas Zimmermann (4):
  drm/hyperv: Remove firmware framebuffers with aperture helper
  fbdev/hyperv_fb: Remove firmware framebuffers with aperture helpers
  firmware/sysfb: Clear screen_info state after consuming it
  fbdev/hyperv_fb: Do not clear global screen_info

 drivers/firmware/sysfb.c                | 14 +++++++++++++-
 drivers/gpu/drm/hyperv/hyperv_drm_drv.c |  8 ++------
 drivers/video/fbdev/hyperv_fb.c         | 20 +++++++-------------
 3 files changed, 22 insertions(+), 20 deletions(-)


base-commit: 25232eb8a9ac7fa0dac7e846a4bf7fba2b6db39a
-- 
2.43.0



More information about the dri-devel mailing list