init: downgrade ENABLE_DEBUG_INIT to just a #define to prevent people

from selecting it in error. It has to be used ONLY for debugging
 init, never in production, as resulting init has serious differences.
1_13_stable
Denis Vlasenko 2008-10-21 17:14:26 +00:00
parent 37890e2f37
commit 5cb54b5adc
4 changed files with 7 additions and 13 deletions

View File

@ -369,7 +369,6 @@ CONFIG_FEATURE_XARGS_SUPPORT_ZERO_TERM=y
# Init Utilities
#
CONFIG_INIT=y
# CONFIG_DEBUG_INIT is not set
CONFIG_FEATURE_USE_INITTAB=y
CONFIG_FEATURE_KILL_REMOVED=y
CONFIG_FEATURE_KILL_DELAY=1

View File

@ -12,14 +12,6 @@ config INIT
help
init is the first program run when the system boots.
config DEBUG_INIT
bool "Debugging aid"
default n
depends on INIT
help
Turn this on to disable all the dangerous
rebooting stuff when debugging.
config FEATURE_USE_INITTAB
bool "Support reading an inittab file"
default y

View File

@ -14,6 +14,10 @@
#include <paths.h>
#include <sys/reboot.h>
/* Was a CONFIG_xxx option. A lot of people were building
* not fully functional init by switching it on! */
#define DEBUG_INIT 0
#define COMMAND_SIZE 256
#define CONSOLE_NAME_SIZE 32
#define MAXENV 16 /* Number of env. vars */
@ -103,7 +107,7 @@ static void loop_forever(void)
* "where" may be bitwise-or'd from L_LOG | L_CONSOLE
* NB: careful, we can be called after vfork!
*/
#define messageD(...) do { if (ENABLE_DEBUG_INIT) message(__VA_ARGS__); } while (0)
#define messageD(...) do { if (DEBUG_INIT) message(__VA_ARGS__); } while (0)
static void message(int where, const char *fmt, ...)
__attribute__ ((format(printf, 2, 3)));
static void message(int where, const char *fmt, ...)
@ -275,7 +279,7 @@ static void open_stdio_to_tty(const char* tty_name, int exit_on_failure)
tty_name, strerror(errno));
if (exit_on_failure)
_exit(EXIT_FAILURE);
if (ENABLE_DEBUG_INIT)
if (DEBUG_INIT)
_exit(2);
/* NB: we don't reach this if we were called after vfork.
* Thus halt_reboot_pwoff() itself need not be vfork-safe. */
@ -788,7 +792,7 @@ int init_main(int argc UNUSED_PARAM, char **argv)
return kill(1, SIGHUP);
}
if (!ENABLE_DEBUG_INIT) {
if (!DEBUG_INIT) {
/* Expect to be invoked as init with PID=1 or be invoked as linuxrc */
if (getpid() != 1
&& (!ENABLE_FEATURE_INITRD || !strstr(applet_name, "linuxrc"))

View File

@ -367,7 +367,6 @@ CONFIG_FEATURE_XARGS_SUPPORT_ZERO_TERM=y
# Init Utilities
#
CONFIG_INIT=y
# CONFIG_DEBUG_INIT is not set
CONFIG_FEATURE_USE_INITTAB=y
# CONFIG_FEATURE_KILL_REMOVED is not set
CONFIG_FEATURE_KILL_DELAY=0