diff options
author | Ingo Molnar <mingo@elte.hu> | 2009-05-07 05:17:13 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2009-05-07 05:17:34 -0400 |
commit | 44347d947f628060b92449702071bfe1d31dfb75 (patch) | |
tree | c6ed74610d5b3295df4296659f80f5feb94b28cc /init | |
parent | d94fc523f3c35bd8013f04827e94756cbc0212f4 (diff) | |
parent | 413f81eba35d6ede9289b0c8a920c013a84fac71 (diff) |
Merge branch 'linus' into tracing/core
Merge reason: tracing/core was on a .30-rc1 base and was missing out on
on a handful of tracing fixes present in .30-rc5-almost.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'init')
-rw-r--r-- | init/initramfs.c | 5 | ||||
-rw-r--r-- | init/main.c | 7 |
2 files changed, 10 insertions, 2 deletions
diff --git a/init/initramfs.c b/init/initramfs.c index 80cd713f6cc..9ee7b781041 100644 --- a/init/initramfs.c +++ b/init/initramfs.c | |||
@@ -310,7 +310,8 @@ static int __init do_name(void) | |||
310 | if (wfd >= 0) { | 310 | if (wfd >= 0) { |
311 | sys_fchown(wfd, uid, gid); | 311 | sys_fchown(wfd, uid, gid); |
312 | sys_fchmod(wfd, mode); | 312 | sys_fchmod(wfd, mode); |
313 | sys_ftruncate(wfd, body_len); | 313 | if (body_len) |
314 | sys_ftruncate(wfd, body_len); | ||
314 | vcollected = kstrdup(collected, GFP_KERNEL); | 315 | vcollected = kstrdup(collected, GFP_KERNEL); |
315 | state = CopyFile; | 316 | state = CopyFile; |
316 | } | 317 | } |
@@ -515,6 +516,7 @@ skip: | |||
515 | initrd_end = 0; | 516 | initrd_end = 0; |
516 | } | 517 | } |
517 | 518 | ||
519 | #ifdef CONFIG_BLK_DEV_RAM | ||
518 | #define BUF_SIZE 1024 | 520 | #define BUF_SIZE 1024 |
519 | static void __init clean_rootfs(void) | 521 | static void __init clean_rootfs(void) |
520 | { | 522 | { |
@@ -561,6 +563,7 @@ static void __init clean_rootfs(void) | |||
561 | sys_close(fd); | 563 | sys_close(fd); |
562 | kfree(buf); | 564 | kfree(buf); |
563 | } | 565 | } |
566 | #endif | ||
564 | 567 | ||
565 | static int __init populate_rootfs(void) | 568 | static int __init populate_rootfs(void) |
566 | { | 569 | { |
diff --git a/init/main.c b/init/main.c index eece40cd8a6..7c6a652d3d7 100644 --- a/init/main.c +++ b/init/main.c | |||
@@ -492,6 +492,11 @@ static int __init do_early_param(char *param, char *val) | |||
492 | return 0; | 492 | return 0; |
493 | } | 493 | } |
494 | 494 | ||
495 | void __init parse_early_options(char *cmdline) | ||
496 | { | ||
497 | parse_args("early options", cmdline, NULL, 0, do_early_param); | ||
498 | } | ||
499 | |||
495 | /* Arch code calls this early on, or if not, just before other parsing. */ | 500 | /* Arch code calls this early on, or if not, just before other parsing. */ |
496 | void __init parse_early_param(void) | 501 | void __init parse_early_param(void) |
497 | { | 502 | { |
@@ -503,7 +508,7 @@ void __init parse_early_param(void) | |||
503 | 508 | ||
504 | /* All fall through to do_early_param. */ | 509 | /* All fall through to do_early_param. */ |
505 | strlcpy(tmp_cmdline, boot_command_line, COMMAND_LINE_SIZE); | 510 | strlcpy(tmp_cmdline, boot_command_line, COMMAND_LINE_SIZE); |
506 | parse_args("early options", tmp_cmdline, NULL, 0, do_early_param); | 511 | parse_early_options(tmp_cmdline); |
507 | done = 1; | 512 | done = 1; |
508 | } | 513 | } |
509 | 514 | ||