FAILED: patch "[PATCH] drm/fb-helper: Mark screen buffers in system memory with" failed to apply to 5.4-stable tree
Subsystems (3)
[email protected]
maintainerThe patch below does not apply to the 5.4-stable tree.
If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to <[email protected]>.
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
From cd9f7f7ac5932129fe81b4c7559cfcb226ec7c5c Mon Sep 17 00:00:00 2001
From: Thomas Zimmermann <[email protected]>
Date: Tue, 1 Feb 2022 12:53:05 +0100
Subject: [PATCH] drm/fb-helper: Mark screen buffers in system memory with
FBINFO_VIRTFB
Mark screen buffers in system memory with FBINFO_VIRTFB. Otherwise, fbdev deferred I/O marks mmap'ed areas of system memory with VM_IO. (There's an inverse relationship between the two flags.)
For shadow buffers, also set the FBINFO_READS_FAST hint.
v3:
* change FB_ to FBINFO_ in commit description
v2:
* updated commit description (Daniel)
* added Fixes tag
drivers/gpu/drm/drm_fb_helper.c +6 -3
@@ -2340,6 +2340,7 @@ static int drm_fb_helper_generic_probe(struct drm_fb_helper *fb_helper, fbi->fbops = &drm_fbdev_fb_ops; fbi->screen_size = sizes->surface_height * fb->pitches[0 ]; fbi->fix.smem_len = fbi->screen_size; + fbi->flags =FBINFO_DEFAULT ;drm_fb_helper_fill_info (fbi, fb_helper, sizes);
@@ -2347,19 +2348,21 @@ static int drm_fb_helper_generic_probe(struct drm_fb_helper *fb_helper, fbi->screen_buffer =vzalloc (fbi->screen_size);if (!fbi->screen_buffer)return -ENOMEM ; + fbi->flags |=FBINFO_VIRTFB |FBINFO_READS_FAST ; fbi->fbdefio = &drm_fbdev_defio; -fb_deferred_io_init (fbi); }else {/* buffer is mapped for HW framebuffer */ ret =drm_client_buffer_vmap (fb_helper->buffer, &map);if (ret)return ret; -if (map.is_iomem) +if (map.is_iomem) { fbi->screen_base = map.vaddr_iomem; -else + }else { fbi->screen_buffer = map.vaddr; + fbi->flags |=FBINFO_VIRTFB ; + }/* * Shamelessly leak the physical address to user-space. As