From: Mike Yuan Date: Wed, 22 Jan 2025 18:36:27 +0000 (+0100) Subject: core/job: never consider reload jobs redundant X-Git-Tag: v257.3~83 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=1e7b1ce928f2fd62ac63299851124aaf977f48d4;p=thirdparty%2Fsystemd.git core/job: never consider reload jobs redundant Follow-up for 656bbffc6c45bdd8d5c28a96ca948ba16c546547 The commit reworked job merging logic so that reload jobs won't get merged. However, they might get dropped from transaction due to being deemed redundant, i.e. way before it even hits job_install(). Let's make sure reload jobs are always kept during transaction construction stage, too. (cherry picked from commit 7b940d8de91aeba6fa171eb42b690fa95641f29e) --- diff --git a/src/core/job.c b/src/core/job.c index 8fbbe757feb..c6c736cc6f8 100644 --- a/src/core/job.c +++ b/src/core/job.c @@ -448,9 +448,8 @@ bool job_type_is_redundant(JobType a, UnitActiveState b) { return IN_SET(b, UNIT_ACTIVE, UNIT_RELOADING, UNIT_REFRESHING); case JOB_RELOAD: - return - b == UNIT_RELOADING; - + /* Reload jobs are never consider redundant/duplicate. Refer jobs_may_late_merge() for + * a detailed justification. */ case JOB_RESTART: /* Restart jobs must always be kept. *