projects
/
platform
/
kernel
/
linux-rpi.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
7821bcc
)
drm/fb-helper: generic: Don't take module ref for fbcon
author
Noralf Trønnes
<noralf@tronnes.org>
Sun, 10 Feb 2019 13:10:39 +0000
(14:10 +0100)
committer
Greg Kroah-Hartman
<gregkh@linuxfoundation.org>
Wed, 10 Jul 2019 07:53:45 +0000
(09:53 +0200)
[ Upstream commit
6ab20a05f4c7ed45632e24d5397d6284e192567d
]
It's now safe to let fbcon unbind automatically on fbdev unregister.
The crash problem was fixed in commit
2122b40580dd
("fbdev: fbcon: Fix unregister crash when more than one framebuffer")
Signed-off-by: Noralf Trønnes <noralf@tronnes.org>
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link:
https://patchwork.freedesktop.org/patch/msgid/20190210131039.52664-13-noralf@tronnes.org
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/gpu/drm/drm_fb_helper.c
patch
|
blob
|
history
diff --git
a/drivers/gpu/drm/drm_fb_helper.c
b/drivers/gpu/drm/drm_fb_helper.c
index
a0663f4
..
8b546fd
100644
(file)
--- a/
drivers/gpu/drm/drm_fb_helper.c
+++ b/
drivers/gpu/drm/drm_fb_helper.c
@@
-2957,7
+2957,8
@@
static int drm_fbdev_fb_open(struct fb_info *info, int user)
{
struct drm_fb_helper *fb_helper = info->par;
- if (!try_module_get(fb_helper->dev->driver->fops->owner))
+ /* No need to take a ref for fbcon because it unbinds on unregister */
+ if (user && !try_module_get(fb_helper->dev->driver->fops->owner))
return -ENODEV;
return 0;
@@
-2967,7
+2968,8
@@
static int drm_fbdev_fb_release(struct fb_info *info, int user)
{
struct drm_fb_helper *fb_helper = info->par;
- module_put(fb_helper->dev->driver->fops->owner);
+ if (user)
+ module_put(fb_helper->dev->driver->fops->owner);
return 0;
}