- execv(SYSTEMD_BINARY_PATH, argv);
- log_error("Failed to reexecute: %m");
- return -errno;
+ /* Transition to the new context */
+ r = label_get_create_label_from_exe(SYSTEMD_BINARY_PATH, &label);
+ if (r < 0 || label == NULL) {
+ log_open();
+ log_error("Failed to compute init label, ignoring.");
+ } else {
+ r = setcon(label);