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 <agopik@codeaurora.org>
This commit is contained in:
Gopikrishnaiah Anandan 2015-02-17 20:59:43 -08:00 committed by David Keitel
parent 4be1de768e
commit af6c0571c9

View file

@ -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)