mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-01-14 05:11:30 -05:00
fbdev: Don't re-validate info->state in fb_ops implementations
The file-op entry points fb_read() and fb_write() verify that
info->state has been set to FBINFO_STATE_RUNNING. Remove the same
test from the implementations of struct fb_ops.{fb_read,fb_write}.
v2:
* also remove test from ivtvfb, braodsheetfb, hecubafb and
metronomefb (Geert)
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Tested-by: Sui Jingfeng <suijingfeng@loongson.cn>
Reviewed-by: Javier Martinez Canillas <javierm@redhat.com>
Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>
Acked-by: Helge Deller <deller@gmx.de>
Link: https://patchwork.freedesktop.org/patch/msgid/20230428122452.4856-17-tzimmermann@suse.de
This commit is contained in:
@@ -378,9 +378,6 @@ static ssize_t ivtvfb_write(struct fb_info *info, const char __user *buf,
|
||||
unsigned long dma_size;
|
||||
u16 lead = 0, tail = 0;
|
||||
|
||||
if (info->state != FBINFO_STATE_RUNNING)
|
||||
return -EPERM;
|
||||
|
||||
total_size = info->screen_size;
|
||||
|
||||
if (total_size == 0)
|
||||
|
||||
@@ -1013,9 +1013,6 @@ static ssize_t broadsheetfb_write(struct fb_info *info, const char __user *buf,
|
||||
int err = 0;
|
||||
unsigned long total_size;
|
||||
|
||||
if (info->state != FBINFO_STATE_RUNNING)
|
||||
return -EPERM;
|
||||
|
||||
total_size = info->fix.smem_len;
|
||||
|
||||
if (p > total_size)
|
||||
|
||||
@@ -22,9 +22,6 @@ ssize_t fb_sys_read(struct fb_info *info, char __user *buf, size_t count,
|
||||
unsigned long total_size, c;
|
||||
ssize_t ret;
|
||||
|
||||
if (info->state != FBINFO_STATE_RUNNING)
|
||||
return -EPERM;
|
||||
|
||||
total_size = info->screen_size;
|
||||
|
||||
if (total_size == 0)
|
||||
@@ -64,9 +61,6 @@ ssize_t fb_sys_write(struct fb_info *info, const char __user *buf,
|
||||
unsigned long total_size, c;
|
||||
size_t ret;
|
||||
|
||||
if (info->state != FBINFO_STATE_RUNNING)
|
||||
return -EPERM;
|
||||
|
||||
total_size = info->screen_size;
|
||||
|
||||
if (total_size == 0)
|
||||
|
||||
@@ -163,9 +163,6 @@ static ssize_t hecubafb_write(struct fb_info *info, const char __user *buf,
|
||||
int err = 0;
|
||||
unsigned long total_size;
|
||||
|
||||
if (info->state != FBINFO_STATE_RUNNING)
|
||||
return -EPERM;
|
||||
|
||||
total_size = info->fix.smem_len;
|
||||
|
||||
if (p > total_size)
|
||||
|
||||
@@ -523,9 +523,6 @@ static ssize_t metronomefb_write(struct fb_info *info, const char __user *buf,
|
||||
int err = 0;
|
||||
unsigned long total_size;
|
||||
|
||||
if (info->state != FBINFO_STATE_RUNNING)
|
||||
return -EPERM;
|
||||
|
||||
total_size = info->fix.smem_len;
|
||||
|
||||
if (p > total_size)
|
||||
|
||||
@@ -1031,9 +1031,6 @@ static ssize_t smtcfb_read(struct fb_info *info, char __user *buf,
|
||||
if (!info || !info->screen_base)
|
||||
return -ENODEV;
|
||||
|
||||
if (info->state != FBINFO_STATE_RUNNING)
|
||||
return -EPERM;
|
||||
|
||||
total_size = info->screen_size;
|
||||
|
||||
if (total_size == 0)
|
||||
@@ -1097,9 +1094,6 @@ static ssize_t smtcfb_write(struct fb_info *info, const char __user *buf,
|
||||
if (!info || !info->screen_base)
|
||||
return -ENODEV;
|
||||
|
||||
if (info->state != FBINFO_STATE_RUNNING)
|
||||
return -EPERM;
|
||||
|
||||
total_size = info->screen_size;
|
||||
|
||||
if (total_size == 0)
|
||||
|
||||
Reference in New Issue
Block a user