Files
linux-stable-mirror/include/linux
Thomas ZimmermannandGreg Kroah-Hartman 4fda0d6b45 fbdev: defio: Disconnect deferred I/O from the lifetime of struct fb_info
[ Upstream commit 9ded47ad00 ]

Hold state of deferred I/O in struct fb_deferred_io_state. Allocate an
instance as part of initializing deferred I/O and remove it only after
the final mapping has been closed. If the fb_info and the contained
deferred I/O meanwhile goes away, clear struct fb_deferred_io_state.info
to invalidate the mapping. Any access will then result in a SIGBUS
signal.

Fixes a long-standing problem, where a device hot-unplug happens while
user space still has an active mapping of the graphics memory. The hot-
unplug frees the instance of struct fb_info. Accessing the memory will
operate on undefined state.

Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Fixes: 60b59beafb ("fbdev: mm: Deferred IO support")
Cc: Helge Deller <deller@gmx.de>
Cc: linux-fbdev@vger.kernel.org
Cc: dri-devel@lists.freedesktop.org
Cc: stable@vger.kernel.org # v2.6.22+
Signed-off-by: Helge Deller <deller@gmx.de>
[ context + _obj() conversion ]
Signed-off-by: Sasha Levin <sashal@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2026-06-19 13:37:20 +02:00
..
2026-03-04 07:19:30 -05:00
2026-03-25 11:03:01 +01:00
2025-09-11 17:19:15 +02:00
2026-01-11 15:19:01 +01:00
2025-07-06 10:58:04 +02:00
2026-01-11 15:18:35 +01:00
2025-06-04 14:40:25 +02:00
2026-06-01 17:39:24 +02:00
2025-08-15 12:04:54 +02:00
2026-01-11 15:18:48 +01:00
2026-01-11 15:19:13 +01:00