framebuffer: remove lock in fbmem ioctl. [1/1]

PD#SWPL-2497

Problem:
on 32bit kernel, when user space call WAITFORVSYNC,
we cannot send other command to framebuffer.

Solution:
remove lock in fbioctl as fb compat_ioctl do.
Our driver have locks to protect internal resources.

Verify:
verified on franklin.

Change-Id: I1789c09a7ea459aed4b782748847687c7f974526
Signed-off-by: sky zhou <sky.zhou@amlogic.com>
This commit is contained in:
sky zhou
2018-11-24 21:56:30 +08:00
committed by Luan Yuan
parent f9f6129703
commit f451ba5570

View File

@@ -1212,14 +1212,23 @@ static long do_fb_ioctl(struct fb_info *info, unsigned int cmd,
console_unlock();
break;
default:
#ifndef CONFIG_AMLOGIC_MODIFY
/*
* display may have several command passed to fbdev
* at the same time. do as the compat ioctl,
* let hw driver to take care of lock.
*/
if (!lock_fb_info(info))
return -ENODEV;
#endif
fb = info->fbops;
if (fb->fb_ioctl)
ret = fb->fb_ioctl(info, cmd, arg);
else
ret = -ENOTTY;
#ifndef CONFIG_AMLOGIC_MODIFY
unlock_fb_info(info);
#endif
}
return ret;
}