]> www.pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - kernel/power/user.c
pm: rework disabling of user mode helpers during suspend/hibernation
[linux-2.6-omap-h63xx.git] / kernel / power / user.c
index a6332a3132620b4563e3be8a0fbfb9639b1e5405..005b93d839ba1268da0c80c3106739ee388d996a 100644 (file)
@@ -212,13 +212,20 @@ static long snapshot_ioctl(struct file *filp, unsigned int cmd,
        case SNAPSHOT_FREEZE:
                if (data->frozen)
                        break;
+
                printk("Syncing filesystems ... ");
                sys_sync();
                printk("done.\n");
 
-               error = freeze_processes();
+               error = usermodehelper_disable();
                if (error)
+                       break;
+
+               error = freeze_processes();
+               if (error) {
                        thaw_processes();
+                       usermodehelper_enable();
+               }
                if (!error)
                        data->frozen = 1;
                break;
@@ -227,6 +234,7 @@ static long snapshot_ioctl(struct file *filp, unsigned int cmd,
                if (!data->frozen || data->ready)
                        break;
                thaw_processes();
+               usermodehelper_enable();
                data->frozen = 0;
                break;