1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 |
- Index: b/suspend.c
- ===================================================================
- --- a/suspend.c
- +++ b/suspend.c
- @@ -1772,11 +1772,10 @@ int suspend_system(int snapshot_fd, int
- if (error)
- goto Shutdown;
- reset_signature(resume_fd);
- free_swap_pages(snapshot_fd);
- free_snapshot(snapshot_fd);
- - s2ram_resume();
- goto Unfreeze;
- }
- Shutdown:
- #endif
- close(resume_fd);
- @@ -2268,11 +2267,11 @@ int main(int argc, char *argv[])
- struct stat stat_buf;
- int resume_fd, snapshot_fd, vt_fd, orig_vc = -1, suspend_vc = -1;
- int test_fd = -1;
- dev_t resume_dev;
- int orig_loglevel, orig_swappiness, ret;
- - struct rlimit rlim;
- + struct rlimit rlim, rlim_saved;
- static char chroot_path[MAX_STR_LEN];
-
- my_name = basename(argv[0]);
-
- /* Make sure the 0, 1, 2 descriptors are open before opening the
- @@ -2500,19 +2499,19 @@ int main(int argc, char *argv[])
- goto Restore_console;
- }
-
- splash.progress(5);
-
- +#ifdef CONFIG_ENCRYPT
- + if (do_encrypt && ! use_RSA)
- + splash.read_password(password, 1);
- +#endif
- #ifdef CONFIG_BOTH
- /* If s2ram_hacks returns != 0, better not try to suspend to RAM */
- if (s2ram)
- s2ram = !s2ram_hacks();
- #endif
- -#ifdef CONFIG_ENCRYPT
- - if (do_encrypt && ! use_RSA)
- - splash.read_password(password, 1);
- -#endif
-
- open_printk();
- orig_loglevel = get_kernel_console_loglevel();
- set_kernel_console_loglevel(suspend_loglevel);
-
- @@ -2522,18 +2521,25 @@ int main(int argc, char *argv[])
-
- sync();
-
- splash.progress(10);
-
- + getrlimit(RLIMIT_NOFILE, &rlim_saved);
- rlim.rlim_cur = 0;
- rlim.rlim_max = 0;
- setrlimit(RLIMIT_NOFILE, &rlim);
- setrlimit(RLIMIT_NPROC, &rlim);
- setrlimit(RLIMIT_CORE, &rlim);
-
- ret = suspend_system(snapshot_fd, resume_fd, test_fd);
-
- + setrlimit(RLIMIT_NOFILE, &rlim_saved);
- +#ifdef CONFIG_BOTH
- + if (s2ram)
- + s2ram_resume();
- +#endif
- +
- if (orig_loglevel >= 0)
- set_kernel_console_loglevel(orig_loglevel);
-
- close_printk();
-
|