From: Lennart Poettering Date: Wed, 19 Aug 2020 15:45:33 +0000 (+0200) Subject: core: merge a few if blocks X-Git-Tag: v247-rc1~403^2~1 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=3196e423931666511b24c701fb382416af5dc709;p=thirdparty%2Fsystemd.git core: merge a few if blocks arg_system == true and getpid() == 1 hold under the very same condition this early in the main() function (this only changes later when we start parsing command lines, where arg_system = true is set if users invoke us in test mode even when getpid() != 1. Hence, let's simplify things, and merge a couple of if branches and not pretend they were orthogonal. --- diff --git a/src/core/main.c b/src/core/main.c index 4a376976e94..8d53c0bf859 100644 --- a/src/core/main.c +++ b/src/core/main.c @@ -2653,22 +2653,6 @@ int main(int argc, char *argv[]) { goto finish; } - } else { - /* Running as user instance */ - arg_system = false; - log_set_target(LOG_TARGET_AUTO); - log_open(); - - /* clear the kernel timestamp, because we are not PID 1 */ - kernel_timestamp = DUAL_TIMESTAMP_NULL; - - if (mac_selinux_init() < 0) { - error_message = "Failed to initialize SELinux support"; - goto finish; - } - } - - if (arg_system) { /* Try to figure out if we can use colors with the console. No need to do that for user instances since * they never log into the console. */ log_show_color(colors_enabled()); @@ -2676,15 +2660,12 @@ int main(int argc, char *argv[]) { r = make_null_stdio(); if (r < 0) log_warning_errno(r, "Failed to redirect standard streams to /dev/null, ignoring: %m"); - } - - /* Mount /proc, /sys and friends, so that /proc/cmdline and /proc/$PID/fd is available. */ - if (getpid_cached() == 1) { /* Load the kernel modules early. */ if (!skip_setup) kmod_setup(); + /* Mount /proc, /sys and friends, so that /proc/cmdline and /proc/$PID/fd is available. */ r = mount_setup(loaded_policy, skip_setup); if (r < 0) { error_message = "Failed to mount API filesystems"; @@ -2697,6 +2678,19 @@ int main(int argc, char *argv[]) { /* Cache command-line options passed from EFI variables */ if (!skip_setup) (void) cache_efi_options_variable(); + } else { + /* Running as user instance */ + arg_system = false; + log_set_target(LOG_TARGET_AUTO); + log_open(); + + /* clear the kernel timestamp, because we are not PID 1 */ + kernel_timestamp = DUAL_TIMESTAMP_NULL; + + if (mac_selinux_init() < 0) { + error_message = "Failed to initialize SELinux support"; + goto finish; + } } /* Save the original RLIMIT_NOFILE/RLIMIT_MEMLOCK so that we can reset it later when