From ed10fa8ce2e9cc4b78adb257a1b8fdc636bacea9 Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Tue, 19 May 2015 16:41:14 +0200 Subject: [PATCH] unit: drop support for pre-v44 job serialization No distro ships that old systemd versions anyway, hence let's drop support for live-upgrades for them. Offline updates are still supported. And live-upgrades will only lose the job queue, hence basically still work... --- src/core/unit.c | 20 ++------------------ src/core/unit.h | 6 ------ 2 files changed, 2 insertions(+), 24 deletions(-) diff --git a/src/core/unit.c b/src/core/unit.c index 2da2565503..e380276d49 100644 --- a/src/core/unit.c +++ b/src/core/unit.c @@ -85,7 +85,6 @@ Unit *unit_new(Manager *m, size_t size) { u->manager = m; u->type = _UNIT_TYPE_INVALID; - u->deserialized_job = _JOB_TYPE_INVALID; u->default_dependencies = true; u->unit_file_state = _UNIT_FILE_STATE_INVALID; u->unit_file_preset = -1; @@ -2741,16 +2740,8 @@ int unit_deserialize(Unit *u, FILE *f, FDSet *fds) { job_free(j); return r; } - } else { - /* legacy */ - JobType type; - - type = job_type_from_string(v); - if (type < 0) - log_unit_debug(u, "Failed to parse job type value: %s", v); - else - u->deserialized_job = type; - } + } else /* legacy for pre-44 */ + log_unit_warning(u, "Update from too old systemd versions are unsupported, cannot deserialize job: %s", v); continue; } else if (streq(l, "inactive-exit-timestamp")) { dual_timestamp_deserialize(v, &u->inactive_exit_timestamp); @@ -2899,13 +2890,6 @@ int unit_coldplug(Unit *u) { r = job_coldplug(u->job); if (r < 0) return r; - } else if (u->deserialized_job >= 0) { - /* legacy */ - r = manager_add_job(u->manager, u->deserialized_job, u, JOB_IGNORE_REQUIREMENTS, false, NULL, NULL); - if (r < 0) - return r; - - u->deserialized_job = _JOB_TYPE_INVALID; } return 0; diff --git a/src/core/unit.h b/src/core/unit.h index 7ef970e9b8..9491ef64f9 100644 --- a/src/core/unit.h +++ b/src/core/unit.h @@ -166,12 +166,6 @@ struct Unit { /* Used during GC sweeps */ unsigned gc_marker; - /* When deserializing, temporarily store the job type for this - * unit here, if there was a job scheduled. - * Only for deserializing from a legacy version. New style uses full - * serialized jobs. */ - int deserialized_job; /* This is actually of type JobType */ - /* Error code when we didn't manage to load the unit (negative) */ int load_error;