JSON_BUILD_PAIR_DUAL_TIMESTAMP_NON_NULL("InitRDTimestamp", &m->timestamps[MANAGER_TIMESTAMP_INITRD]),
JSON_BUILD_PAIR_DUAL_TIMESTAMP_NON_NULL("UserspaceTimestamp", &m->timestamps[MANAGER_TIMESTAMP_USERSPACE]),
JSON_BUILD_PAIR_DUAL_TIMESTAMP_NON_NULL("FinishTimestamp", &m->timestamps[MANAGER_TIMESTAMP_FINISH]),
+ JSON_BUILD_PAIR_DUAL_TIMESTAMP_NON_NULL("ShutdownStartTimestamp", &m->timestamps[MANAGER_TIMESTAMP_SHUTDOWN_START]),
+ JSON_BUILD_PAIR_DUAL_TIMESTAMP_NON_NULL("ShutdownFinishTimestamp", &m->timestamps[MANAGER_TIMESTAMP_SHUTDOWN_FINISH]),
+ JSON_BUILD_PAIR_DUAL_TIMESTAMP_NON_NULL("PreviousShutdownStartTimestamp", &m->timestamps[MANAGER_TIMESTAMP_PREVIOUS_SHUTDOWN_START]),
+ JSON_BUILD_PAIR_DUAL_TIMESTAMP_NON_NULL("PreviousShutdownFinishTimestamp", &m->timestamps[MANAGER_TIMESTAMP_PREVIOUS_SHUTDOWN_FINISH]),
+ JSON_BUILD_PAIR_DUAL_TIMESTAMP_NON_NULL("PreviousShutdownLateStartTimestamp", &m->timestamps[MANAGER_TIMESTAMP_PREVIOUS_SHUTDOWN_LATE_START]),
+ JSON_BUILD_PAIR_DUAL_TIMESTAMP_NON_NULL("PreviousShutdownLateFinishTimestamp", &m->timestamps[MANAGER_TIMESTAMP_PREVIOUS_SHUTDOWN_LATE_FINISH]),
JSON_BUILD_PAIR_DUAL_TIMESTAMP_NON_NULL("SecurityStartTimestamp", &m->timestamps[MANAGER_TIMESTAMP_SECURITY_START]),
JSON_BUILD_PAIR_DUAL_TIMESTAMP_NON_NULL("SecurityFinishTimestamp", &m->timestamps[MANAGER_TIMESTAMP_SECURITY_FINISH]),
JSON_BUILD_PAIR_DUAL_TIMESTAMP_NON_NULL("GeneratorsStartTimestamp", &m->timestamps[MANAGER_TIMESTAMP_GENERATORS_START]),
SD_VARLINK_DEFINE_FIELD_BY_TYPE(UserspaceTimestamp, Timestamp, SD_VARLINK_NULLABLE),
SD_VARLINK_FIELD_COMMENT("Timestamp when the system finished booting up"),
SD_VARLINK_DEFINE_FIELD_BY_TYPE(FinishTimestamp, Timestamp, SD_VARLINK_NULLABLE),
+ SD_VARLINK_FIELD_COMMENT("Timestamp when shutdown began, i.e. when units started to be stopped"),
+ SD_VARLINK_DEFINE_FIELD_BY_TYPE(ShutdownStartTimestamp, Timestamp, SD_VARLINK_NULLABLE),
+ SD_VARLINK_FIELD_COMMENT("Timestamp when all units finished stopping during shutdown"),
+ SD_VARLINK_DEFINE_FIELD_BY_TYPE(ShutdownFinishTimestamp, Timestamp, SD_VARLINK_NULLABLE),
+ SD_VARLINK_FIELD_COMMENT("Timestamp when the previous boot began stopping units, restored across a kexec-based live update"),
+ SD_VARLINK_DEFINE_FIELD_BY_TYPE(PreviousShutdownStartTimestamp, Timestamp, SD_VARLINK_NULLABLE),
+ SD_VARLINK_FIELD_COMMENT("Timestamp when the previous boot finished stopping units, restored across a kexec-based live update"),
+ SD_VARLINK_DEFINE_FIELD_BY_TYPE(PreviousShutdownFinishTimestamp, Timestamp, SD_VARLINK_NULLABLE),
+ SD_VARLINK_FIELD_COMMENT("Timestamp when systemd-shutdown began execution during the previous boot, restored across a kexec-based live update"),
+ SD_VARLINK_DEFINE_FIELD_BY_TYPE(PreviousShutdownLateStartTimestamp, Timestamp, SD_VARLINK_NULLABLE),
+ SD_VARLINK_FIELD_COMMENT("Timestamp when systemd-shutdown was about to kexec into the current kernel, restored across a kexec-based live update"),
+ SD_VARLINK_DEFINE_FIELD_BY_TYPE(PreviousShutdownLateFinishTimestamp, Timestamp, SD_VARLINK_NULLABLE),
SD_VARLINK_FIELD_COMMENT("Timestamp when the manager started uploading security policies to the kernel"),
SD_VARLINK_DEFINE_FIELD_BY_TYPE(SecurityStartTimestamp, Timestamp, SD_VARLINK_NULLABLE),
SD_VARLINK_FIELD_COMMENT("Timestamp when the manager finished uploading security policies to the kernel"),