summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--kernel/power/user.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/kernel/power/user.c b/kernel/power/user.c
index 4401cfe26e5c..be77f3556bd7 100644
--- a/kernel/power/user.c
+++ b/kernel/power/user.c
@@ -322,11 +322,14 @@ static long snapshot_ioctl(struct file *filp, unsigned int cmd,
error = snapshot_write_finalize(&data->handle);
if (error)
break;
- if (data->mode != O_WRONLY || !data->frozen ||
- !snapshot_image_loaded(&data->handle)) {
+ if (data->mode != O_WRONLY || !data->frozen) {
error = -EPERM;
break;
}
+ if (!snapshot_image_loaded(&data->handle)) {
+ error = -ENODATA;
+ break;
+ }
error = hibernation_restore(data->platform_support);
break;