summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Frysinger2005-07-06 04:39:08 +0000
committerMike Frysinger2005-07-06 04:39:08 +0000
commit95ef16528cd90023244ee459d865f8770d164ac0 (patch)
tree5d071d726cff05f4201e6ced5b77ed6278e82c8c
parent72a4c33568561095fe8d43c8b6f07654c3f593a1 (diff)
downloadbusybox-95ef16528cd90023244ee459d865f8770d164ac0.zip
busybox-95ef16528cd90023244ee459d865f8770d164ac0.tar.gz
2005-07-05 Shaun Jackman <sjackman@gmail.com>
* init/Config.in (CONFIG_FEATURE_INIT_SWAPON): New option. * init/init.c (check_memory): Disable the swapon feature unless CONFIG_FEATURE_INIT_SWAPON is defined.
-rw-r--r--init/Config.in8
-rw-r--r--init/init.c6
2 files changed, 14 insertions, 0 deletions
diff --git a/init/Config.in b/init/Config.in
index 4465e75..521f8fe 100644
--- a/init/Config.in
+++ b/init/Config.in
@@ -35,6 +35,14 @@ config CONFIG_FEATURE_INIT_COREDUMPS
core file sizes. If this option is disabled, processes
will not generate any core files.
+config CONFIG_FEATURE_INIT_SWAPON
+ bool " Should init run swapon if short on memory?"
+ default y
+ depends on CONFIG_INIT
+ help
+ If the system has less than one megabyte of total memory, init
+ will run '/sbin/swapon -a' to add swap memory.
+
config CONFIG_FEATURE_EXTRA_QUIET
bool " Should init be _extra_ quiet on boot?"
default y
diff --git a/init/init.c b/init/init.c
index e0e2f19..5281225 100644
--- a/init/init.c
+++ b/init/init.c
@@ -309,6 +309,7 @@ static void set_term(int fd)
tcsetattr(fd, TCSANOW, &tty);
}
+#ifdef CONFIG_FEATURE_INIT_SWAPON
/* How much memory does this machine have?
Units are kBytes to avoid overflow on 4GB machines */
static unsigned int check_free_memory(void)
@@ -337,6 +338,7 @@ static unsigned int check_free_memory(void)
return(result * u);
}
}
+#endif /* CONFIG_FEATURE_INIT_SWAPON */
static void console_init(void)
{
@@ -910,6 +912,7 @@ static void delete_init_action(struct init_action *action)
}
}
+#ifdef CONFIG_FEATURE_INIT_SWAPON
/* Make sure there is enough memory to do something useful. *
* Calls "swapon -a" if needed so be sure /etc/fstab is present... */
static void check_memory(void)
@@ -937,6 +940,9 @@ static void check_memory(void)
message(CONSOLE, "Sorry, your computer does not have enough memory.");
loop_forever();
}
+#else
+# define check_memory()
+#endif /* CONFIG_FEATURE_INIT_SWAPON */
/* NOTE that if CONFIG_FEATURE_USE_INITTAB is NOT defined,
* then parse_inittab() simply adds in some default