diff options
Diffstat (limited to 'drivers/xen/manage.c')
| -rw-r--r-- | drivers/xen/manage.c | 14 |
1 files changed, 2 insertions, 12 deletions
diff --git a/drivers/xen/manage.c b/drivers/xen/manage.c index 2ac4440e7b08..8943b8ccee1a 100644 --- a/drivers/xen/manage.c +++ b/drivers/xen/manage.c | |||
| @@ -80,12 +80,6 @@ static void do_suspend(void) | |||
| 80 | 80 | ||
| 81 | shutting_down = SHUTDOWN_SUSPEND; | 81 | shutting_down = SHUTDOWN_SUSPEND; |
| 82 | 82 | ||
| 83 | err = stop_machine_create(); | ||
| 84 | if (err) { | ||
| 85 | printk(KERN_ERR "xen suspend: failed to setup stop_machine %d\n", err); | ||
| 86 | goto out; | ||
| 87 | } | ||
| 88 | |||
| 89 | #ifdef CONFIG_PREEMPT | 83 | #ifdef CONFIG_PREEMPT |
| 90 | /* If the kernel is preemptible, we need to freeze all the processes | 84 | /* If the kernel is preemptible, we need to freeze all the processes |
| 91 | to prevent them from being in the middle of a pagetable update | 85 | to prevent them from being in the middle of a pagetable update |
| @@ -93,7 +87,7 @@ static void do_suspend(void) | |||
| 93 | err = freeze_processes(); | 87 | err = freeze_processes(); |
| 94 | if (err) { | 88 | if (err) { |
| 95 | printk(KERN_ERR "xen suspend: freeze failed %d\n", err); | 89 | printk(KERN_ERR "xen suspend: freeze failed %d\n", err); |
| 96 | goto out_destroy_sm; | 90 | goto out; |
| 97 | } | 91 | } |
| 98 | #endif | 92 | #endif |
| 99 | 93 | ||
| @@ -136,12 +130,8 @@ out_resume: | |||
| 136 | out_thaw: | 130 | out_thaw: |
| 137 | #ifdef CONFIG_PREEMPT | 131 | #ifdef CONFIG_PREEMPT |
| 138 | thaw_processes(); | 132 | thaw_processes(); |
| 139 | |||
| 140 | out_destroy_sm: | ||
| 141 | #endif | ||
| 142 | stop_machine_destroy(); | ||
| 143 | |||
| 144 | out: | 133 | out: |
| 134 | #endif | ||
| 145 | shutting_down = SHUTDOWN_INVALID; | 135 | shutting_down = SHUTDOWN_INVALID; |
| 146 | } | 136 | } |
| 147 | #endif /* CONFIG_PM_SLEEP */ | 137 | #endif /* CONFIG_PM_SLEEP */ |
