1
1
mirror of https://github.com/systemd/systemd-stable.git synced 2025-03-11 04:58:19 +03:00

sysroot: Order systemd-fsck-root after systemd-makefs

(cherry picked from commit 0941ccae3cf28d84db87fb9d50cc10750bc1c962)
(cherry picked from commit addeb4699353636a5f48442dedb624602c370d69)
(cherry picked from commit 3fe7a6534c11706390a096cb6e7a1c00e7f80028)
This commit is contained in:
Will Fancher 2022-12-17 15:06:21 -05:00 committed by Luca Boccassi
parent f5edfc783b
commit 4dc2810d54

View File

@ -457,6 +457,14 @@ int generator_hook_up_mkfs(
unit_file = prefix_roota(dir, unit);
log_debug("Creating %s", unit_file);
const char *fsck_unit;
if (in_initrd() && path_equal(where, "/sysroot"))
fsck_unit = SPECIAL_FSCK_ROOT_SERVICE;
else if (in_initrd() && path_equal(where, "/sysusr/usr"))
fsck_unit = SPECIAL_FSCK_USR_SERVICE;
else
fsck_unit = "systemd-fsck@%i.service";
escaped = cescape(node);
if (!escaped)
return log_oom();
@ -482,7 +490,7 @@ int generator_hook_up_mkfs(
"After=%%i.device\n"
/* fsck might or might not be used, so let's be safe and order
* ourselves before both systemd-fsck@.service and the mount unit. */
"Before=shutdown.target systemd-fsck@%%i.service %s\n"
"Before=shutdown.target %s %s\n"
"\n"
"[Service]\n"
"Type=oneshot\n"
@ -490,6 +498,7 @@ int generator_hook_up_mkfs(
"ExecStart="SYSTEMD_MAKEFS_PATH " %s %s\n"
"TimeoutSec=0\n",
program_invocation_short_name,
fsck_unit,
where_unit,
type,
escaped);