diff options
author | Nick Kralevich <nnk@google.com> | 2015-04-25 23:28:45 +0000 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2015-04-25 23:28:45 +0000 |
commit | 1c2457ffdaf833b06a2619d967fe9def7139180f (patch) | |
tree | 8fbae8b43a5213dea07334e3477a3190fcfde093 | |
parent | 2ae7d4eefddf2cd7ac4bba60fb6d057e2b01731b (diff) | |
parent | b31c3a5a453cd9f472698068af9909e80a96ab2c (diff) | |
download | system_core-1c2457ffdaf833b06a2619d967fe9def7139180f.zip system_core-1c2457ffdaf833b06a2619d967fe9def7139180f.tar.gz system_core-1c2457ffdaf833b06a2619d967fe9def7139180f.tar.bz2 |
am b31c3a5a: am 178299fd: Merge "init: don\'t double mount /proc and /sys"
* commit 'b31c3a5a453cd9f472698068af9909e80a96ab2c':
init: don't double mount /proc and /sys
-rw-r--r-- | init/init.cpp | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/init/init.cpp b/init/init.cpp index b79da89..f76b599 100644 --- a/init/init.cpp +++ b/init/init.cpp @@ -981,14 +981,20 @@ int main(int argc, char** argv) { add_environment("PATH", _PATH_DEFPATH); + bool is_first_stage = (argc == 1) || (strcmp(argv[1], "--second-stage") != 0); + // Get the basic filesystem setup we need put together in the initramdisk // on / and then we'll let the rc file figure out the rest. + // TODO: avoid mounting tmpfs twice, once in the first stage, and once in the + // second stage. mount("tmpfs", "/dev", "tmpfs", MS_NOSUID, "mode=0755"); mkdir("/dev/pts", 0755); mkdir("/dev/socket", 0755); mount("devpts", "/dev/pts", "devpts", 0, NULL); - mount("proc", "/proc", "proc", 0, NULL); - mount("sysfs", "/sys", "sysfs", 0, NULL); + if (is_first_stage) { + mount("proc", "/proc", "proc", 0, NULL); + mount("sysfs", "/sys", "sysfs", 0, NULL); + } // Indicate that booting is in progress to background fw loaders, etc. close(open("/dev/.booting", O_WRONLY | O_CREAT | O_CLOEXEC, 0000)); @@ -1001,7 +1007,6 @@ int main(int argc, char** argv) { klog_init(); klog_set_level(KLOG_NOTICE_LEVEL); - bool is_first_stage = (argc == 1) || (strcmp(argv[1], "--second-stage") != 0); NOTICE("init%s started!\n", is_first_stage ? "" : " second stage"); property_init(); |