Commit 87884bd8 authored by Magnus Damm's avatar Magnus Damm Committed by Paul Mundt

video: fix deferred io fsync()

If CONFIG_FB_DEFERRED_IO is set, but there are framebuffers
registered that does not make use of deferred io, then fsync()
on those framebuffers will result in a crash. Fix that.

This is needed for sh_mobile_lcdcfb since we always enable
deferred io at compile time but we may disable deferred io
for some types of hardware configurations.
Signed-off-by: default avatarMagnus Damm <damm@igel.co.jp>
Acked-by: default avatarJaya Kumar <jayakumar.lkml@gmail.com>
Signed-off-by: default avatarPaul Mundt <lethal@linux-sh.org>
parent 07905554
...@@ -60,6 +60,10 @@ int fb_deferred_io_fsync(struct file *file, struct dentry *dentry, int datasync) ...@@ -60,6 +60,10 @@ int fb_deferred_io_fsync(struct file *file, struct dentry *dentry, int datasync)
{ {
struct fb_info *info = file->private_data; struct fb_info *info = file->private_data;
/* Skip if deferred io is complied-in but disabled on this fbdev */
if (!info->fbdefio)
return 0;
/* Kill off the delayed work */ /* Kill off the delayed work */
cancel_rearming_delayed_work(&info->deferred_work); cancel_rearming_delayed_work(&info->deferred_work);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment