X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=kernel%2Fpower%2Fuser.c;h=3f1539fbe48a8be9c9f5ecf86f13042b3fed523d;hb=9464c7cf61b9433057924c36e6e02f303a00e768;hp=0ef5e4ba39e514ea32c853a2141acdd85a8b2856;hpb=41689045f6a3cbe0550e1d34e9cc20d2e8c432ba;p=linux-2.6.git diff --git a/kernel/power/user.c b/kernel/power/user.c index 0ef5e4ba3..3f1539fbe 100644 --- a/kernel/power/user.c +++ b/kernel/power/user.c @@ -19,7 +19,6 @@ #include #include #include -#include #include @@ -140,15 +139,12 @@ static int snapshot_ioctl(struct inode *inode, struct file *filp, if (data->frozen) break; down(&pm_sem); - error = disable_nonboot_cpus(); - if (!error) { - error = freeze_processes(); - if (error) { - thaw_processes(); - error = -EBUSY; - } + disable_nonboot_cpus(); + if (freeze_processes()) { + thaw_processes(); + enable_nonboot_cpus(); + error = -EBUSY; } - enable_nonboot_cpus(); up(&pm_sem); if (!error) data->frozen = 1;