mirror of
https://github.com/systemd/systemd
synced 2024-07-22 02:34:54 +00:00
Merge pull request #24044 from dtardon/default-device-timeout
Add a configuration option for setting default device timeout
This commit is contained in:
commit
d096265708
|
@ -426,6 +426,8 @@ node /org/freedesktop/systemd1 {
|
|||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||
readonly t DefaultTimeoutAbortUSec = ...;
|
||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("const")
|
||||
readonly t DefaultDeviceTimeoutUSec = ...;
|
||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("const")
|
||||
readonly t DefaultRestartUSec = ...;
|
||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("const")
|
||||
readonly t DefaultStartLimitIntervalUSec = ...;
|
||||
|
@ -674,6 +676,8 @@ node /org/freedesktop/systemd1 {
|
|||
|
||||
<!--property DefaultTimeoutAbortUSec is not documented!-->
|
||||
|
||||
<!--property DefaultDeviceTimeoutUSec is not documented!-->
|
||||
|
||||
<!--property DefaultRestartUSec is not documented!-->
|
||||
|
||||
<!--property DefaultStartLimitIntervalUSec is not documented!-->
|
||||
|
@ -1082,6 +1086,8 @@ node /org/freedesktop/systemd1 {
|
|||
|
||||
<variablelist class="dbus-property" generated="True" extra-ref="DefaultTimeoutAbortUSec"/>
|
||||
|
||||
<variablelist class="dbus-property" generated="True" extra-ref="DefaultDeviceTimeoutUSec"/>
|
||||
|
||||
<variablelist class="dbus-property" generated="True" extra-ref="DefaultRestartUSec"/>
|
||||
|
||||
<variablelist class="dbus-property" generated="True" extra-ref="DefaultStartLimitIntervalUSec"/>
|
||||
|
|
|
@ -370,6 +370,17 @@
|
|||
100ms.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>DefaultDeviceTimeoutSec=</varname></term>
|
||||
|
||||
<listitem><para>Configures the default timeout for waiting for devices. It can be changed per
|
||||
device via the <varname>x-systemd.device-timeout=</varname> option in <filename>/etc/fstab</filename>
|
||||
and <filename>/etc/crypttab</filename> (see
|
||||
<citerefentry><refentrytitle>systemd.mount</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>crypttab</refentrytitle><manvolnum>5</manvolnum></citerefentry>).
|
||||
Defaults to 90s.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>DefaultStartLimitIntervalSec=</varname></term>
|
||||
<term><varname>DefaultStartLimitBurst=</varname></term>
|
||||
|
|
|
@ -2791,6 +2791,7 @@ const sd_bus_vtable bus_manager_vtable[] = {
|
|||
SD_BUS_PROPERTY("DefaultTimeoutStartUSec", "t", bus_property_get_usec, offsetof(Manager, default_timeout_start_usec), SD_BUS_VTABLE_PROPERTY_CONST),
|
||||
SD_BUS_PROPERTY("DefaultTimeoutStopUSec", "t", bus_property_get_usec, offsetof(Manager, default_timeout_stop_usec), SD_BUS_VTABLE_PROPERTY_CONST),
|
||||
SD_BUS_PROPERTY("DefaultTimeoutAbortUSec", "t", property_get_default_timeout_abort_usec, 0, 0),
|
||||
SD_BUS_PROPERTY("DefaultDeviceTimeoutUSec", "t", bus_property_get_usec, offsetof(Manager, default_device_timeout_usec), SD_BUS_VTABLE_PROPERTY_CONST),
|
||||
SD_BUS_PROPERTY("DefaultRestartUSec", "t", bus_property_get_usec, offsetof(Manager, default_restart_usec), SD_BUS_VTABLE_PROPERTY_CONST),
|
||||
SD_BUS_PROPERTY("DefaultStartLimitIntervalUSec", "t", bus_property_get_usec, offsetof(Manager, default_start_limit_interval), SD_BUS_VTABLE_PROPERTY_CONST),
|
||||
/* The following two items are obsolete alias */
|
||||
|
|
|
@ -101,7 +101,7 @@ static void device_init(Unit *u) {
|
|||
* indefinitely for plugged in devices, something which cannot
|
||||
* happen for the other units since their operations time out
|
||||
* anyway. */
|
||||
u->job_running_timeout = u->manager->default_timeout_start_usec;
|
||||
u->job_running_timeout = u->manager->default_device_timeout_usec;
|
||||
|
||||
u->ignore_on_isolate = true;
|
||||
|
||||
|
|
|
@ -134,6 +134,7 @@ static usec_t arg_default_restart_usec;
|
|||
static usec_t arg_default_timeout_start_usec;
|
||||
static usec_t arg_default_timeout_stop_usec;
|
||||
static usec_t arg_default_timeout_abort_usec;
|
||||
static usec_t arg_default_device_timeout_usec;
|
||||
static bool arg_default_timeout_abort_set;
|
||||
static usec_t arg_default_start_limit_interval;
|
||||
static unsigned arg_default_start_limit_burst;
|
||||
|
@ -627,6 +628,7 @@ static int parse_config_file(void) {
|
|||
{ "Manager", "DefaultTimeoutStartSec", config_parse_sec, 0, &arg_default_timeout_start_usec },
|
||||
{ "Manager", "DefaultTimeoutStopSec", config_parse_sec, 0, &arg_default_timeout_stop_usec },
|
||||
{ "Manager", "DefaultTimeoutAbortSec", config_parse_default_timeout_abort, 0, NULL },
|
||||
{ "Manager", "DefaultDeviceTimeoutSec", config_parse_sec, 0, &arg_default_device_timeout_usec },
|
||||
{ "Manager", "DefaultRestartSec", config_parse_sec, 0, &arg_default_restart_usec },
|
||||
{ "Manager", "DefaultStartLimitInterval", config_parse_sec, 0, &arg_default_start_limit_interval }, /* obsolete alias */
|
||||
{ "Manager", "DefaultStartLimitIntervalSec", config_parse_sec, 0, &arg_default_start_limit_interval },
|
||||
|
@ -716,6 +718,7 @@ static void set_manager_defaults(Manager *m) {
|
|||
m->default_timeout_stop_usec = arg_default_timeout_stop_usec;
|
||||
m->default_timeout_abort_usec = arg_default_timeout_abort_usec;
|
||||
m->default_timeout_abort_set = arg_default_timeout_abort_set;
|
||||
m->default_device_timeout_usec = arg_default_device_timeout_usec;
|
||||
m->default_restart_usec = arg_default_restart_usec;
|
||||
m->default_start_limit_interval = arg_default_start_limit_interval;
|
||||
m->default_start_limit_burst = arg_default_start_limit_burst;
|
||||
|
@ -2389,6 +2392,7 @@ static void reset_arguments(void) {
|
|||
arg_default_timeout_stop_usec = DEFAULT_TIMEOUT_USEC;
|
||||
arg_default_timeout_abort_usec = DEFAULT_TIMEOUT_USEC;
|
||||
arg_default_timeout_abort_set = false;
|
||||
arg_default_device_timeout_usec = DEFAULT_TIMEOUT_USEC;
|
||||
arg_default_start_limit_interval = DEFAULT_START_LIMIT_INTERVAL;
|
||||
arg_default_start_limit_burst = DEFAULT_START_LIMIT_BURST;
|
||||
arg_runtime_watchdog = 0;
|
||||
|
|
|
@ -835,6 +835,7 @@ int manager_new(LookupScope scope, ManagerTestRunFlags test_run_flags, Manager *
|
|||
.default_timeout_start_usec = DEFAULT_TIMEOUT_USEC,
|
||||
.default_timeout_stop_usec = DEFAULT_TIMEOUT_USEC,
|
||||
.default_restart_usec = DEFAULT_RESTART_USEC,
|
||||
.default_device_timeout_usec = DEFAULT_TIMEOUT_USEC,
|
||||
|
||||
.original_log_level = -1,
|
||||
.original_log_target = _LOG_TARGET_INVALID,
|
||||
|
|
|
@ -356,6 +356,7 @@ struct Manager {
|
|||
ExecOutput default_std_output, default_std_error;
|
||||
|
||||
usec_t default_restart_usec, default_timeout_start_usec, default_timeout_stop_usec;
|
||||
usec_t default_device_timeout_usec;
|
||||
usec_t default_timeout_abort_usec;
|
||||
bool default_timeout_abort_set;
|
||||
|
||||
|
|
|
@ -46,6 +46,7 @@
|
|||
#DefaultTimeoutStartSec=90s
|
||||
#DefaultTimeoutStopSec=90s
|
||||
#DefaultTimeoutAbortSec=
|
||||
#DefaultDeviceTimeoutSec=90s
|
||||
#DefaultRestartSec=100ms
|
||||
#DefaultStartLimitIntervalSec=10s
|
||||
#DefaultStartLimitBurst=5
|
||||
|
|
Loading…
Reference in a new issue