[2.6.22 candidate, IMHO] --- From: Rafael J. Wysocki <[EMAIL PROTECTED]>
Fix oops caused by 'cat /dev/snapshot', reported by Arkadiusz Miskiewicz, and make it impossible to thaw tasks with the help of the swsusp userland interface while there is a snapshot image ready to save. Signed-off-by: Rafael J. Wysocki <[EMAIL PROTECTED]> --- kernel/power/user.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) Index: linux-2.6.22-rc4/kernel/power/user.c =================================================================== --- linux-2.6.22-rc4.orig/kernel/power/user.c 2007-06-10 19:33:36.000000000 +0200 +++ linux-2.6.22-rc4/kernel/power/user.c 2007-06-10 19:35:59.000000000 +0200 @@ -99,6 +99,8 @@ static ssize_t snapshot_read(struct file ssize_t res; data = filp->private_data; + if (!data->ready) + return -ENODATA; res = snapshot_read_next(&data->handle, count); if (res > 0) { if (copy_to_user(buf, data_of(data->handle), res)) @@ -163,7 +165,7 @@ static int snapshot_ioctl(struct inode * break; case SNAPSHOT_UNFREEZE: - if (!data->frozen) + if (!data->frozen || data->ready) break; mutex_lock(&pm_mutex); thaw_processes(); - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/