]>
Commit | Line | Data |
---|---|---|
12f2d15d | 1 | diff -ur linux-2.6.0-test1.orig/Documentation/kernel-parameters.txt linux-2.6.0-test1/Documentation/kernel-parameters.txt |
2 | --- linux-2.6.0-test1.orig/Documentation/kernel-parameters.txt 2003-07-14 05:39:36.000000000 +0200 | |
3 | +++ linux-2.6.0-test1/Documentation/kernel-parameters.txt 2003-08-01 01:19:46.000000000 +0200 | |
4 | @@ -816,6 +816,8 @@ | |
5 | ||
6 | resume= [SWSUSP] Specify the partition device for software suspension | |
7 | ||
8 | + resume_initrd [SWSUSP] Run initrd before resuming from software suspension | |
9 | + | |
10 | riscom8= [HW,SERIAL] | |
11 | Format: <io_board1>[,<io_board2>[,...<io_boardN>]] | |
12 | ||
13 | diff -ur linux-2.6.0-test1.orig/init/do_mounts.c linux-2.6.0-test1/init/do_mounts.c | |
14 | --- linux-2.6.0-test1.orig/init/do_mounts.c 2003-07-14 05:32:44.000000000 +0200 | |
15 | +++ linux-2.6.0-test1/init/do_mounts.c 2003-08-01 01:21:44.000000000 +0200 | |
16 | @@ -49,6 +49,15 @@ | |
17 | __setup("ro", readonly); | |
18 | __setup("rw", readwrite); | |
19 | ||
20 | +static int resume_initrd = 0; | |
21 | +static int __init set_resume_initrd(char *str) | |
22 | +{ | |
23 | + resume_initrd = 1; | |
24 | + return 1; | |
25 | +} | |
26 | + | |
27 | +__setup("resume_initrd", set_resume_initrd); | |
28 | + | |
29 | static dev_t __init try_name(char *name, int part) | |
30 | { | |
31 | char path[64]; | |
7e0ca210 | 32 | @@ -365,8 +374,20 @@ |
12f2d15d | 33 | |
34 | is_floppy = MAJOR(ROOT_DEV) == FLOPPY_MAJOR; | |
35 | ||
12f2d15d | 36 | + /* software_resume() has to be before mounting root, because even |
37 | + readonly mount of reiserfs would replay log corrupting stuff. | |
38 | + However, users may still want to run initrd first. */ | |
39 | + if (resume_initrd) { | |
40 | + if (initrd_load()) { | |
41 | + software_resume(); | |
42 | + goto out; | |
43 | + } | |
44 | + } | |
45 | + else { | |
46 | + software_resume(); | |
12f2d15d | 47 | - if (initrd_load()) |
48 | - goto out; | |
49 | + if (initrd_load()) | |
50 | + goto out; | |
51 | + } | |
52 | ||
53 | if (is_floppy && rd_doload && rd_load_disk(0)) | |
54 | ROOT_DEV = Root_RAM0; | |
55 |