From af6c0571c981a321f4f383a74bac28d2c6b6e0d5 Mon Sep 17 00:00:00 2001 From: Gopikrishnaiah Anandan Date: Tue, 17 Feb 2015 20:59:43 -0800 Subject: [PATCH] msm: mdss: Return ESHUTDOWN error when driver is shutting down When MDP driver is being shutdown, driver clients can make ioctl calls. Driver was returning a generic error which results in clients re-issuing the ioctl. Driver should return ESHUTDOWN error to notify the clients that it is shutting down and cannot accept any ioctls. Change returns the shutdown error for ioctls issued during shutdown sequence. Change-Id: Ie5a8e557565feb50edd858f9a2ee98637efb55d0 Signed-off-by: Gopikrishnaiah Anandan --- drivers/video/fbdev/msm/mdss_fb.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/video/fbdev/msm/mdss_fb.c b/drivers/video/fbdev/msm/mdss_fb.c index 402574c97966..be037b0e1fcc 100644 --- a/drivers/video/fbdev/msm/mdss_fb.c +++ b/drivers/video/fbdev/msm/mdss_fb.c @@ -2218,7 +2218,7 @@ static int mdss_fb_open(struct fb_info *info, int user) pr_err_once("Shutdown pending. Aborting operation. Request from pid:%d name=%s\n", pid, task->comm); sysfs_notify(&mfd->fbi->dev->kobj, NULL, "show_blank_event"); - return -EPERM; + return -ESHUTDOWN; } file_info = kmalloc(sizeof(*file_info), GFP_KERNEL); @@ -2671,7 +2671,7 @@ static int mdss_fb_pan_idle(struct msm_fb_data_type *mfd) MDSS_XLOG_TOUT_HANDLER("mdp", "panic"); } else if (mfd->shutdown_pending) { pr_debug("Shutdown signalled\n"); - return -EPERM; + return -ESHUTDOWN; } return 0; @@ -2696,7 +2696,7 @@ static int mdss_fb_wait_for_kickoff(struct msm_fb_data_type *mfd) MDSS_XLOG_TOUT_HANDLER("mdp", "panic"); } else if (mfd->shutdown_pending) { pr_debug("Shutdown signalled\n"); - return -EPERM; + return -ESHUTDOWN; } return 0; @@ -3790,7 +3790,7 @@ int mdss_fb_do_ioctl(struct fb_info *info, unsigned int cmd, return -EINVAL; if (mfd->shutdown_pending) - return -EPERM; + return -ESHUTDOWN; pdata = dev_get_platdata(&mfd->pdev->dev); if (!pdata || pdata->panel_info.dynamic_switch_pending)