From: Franck Bui Date: Wed, 5 Oct 2022 08:26:59 +0000 (+0200) Subject: mount: always use UNIT_DEPENDENCY_FILE in mount_add_quota_dependencies() X-Git-Tag: v252-rc2~84^2~2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=c5d82021ba126a52964753d7327c143b27a54662;p=thirdparty%2Fsystemd.git mount: always use UNIT_DEPENDENCY_FILE in mount_add_quota_dependencies() The quota options have always been read from the unit file and ignored if only present in /proc/self/mountinfo. IOW the quota services are not (automagically) pulled in for mounts initiated by the user running mount(8). --- diff --git a/src/core/mount.c b/src/core/mount.c index fba7c4cac30..f971519dc6c 100644 --- a/src/core/mount.c +++ b/src/core/mount.c @@ -421,7 +421,6 @@ static int mount_add_device_dependencies(Mount *m) { } static int mount_add_quota_dependencies(Mount *m) { - UnitDependencyMask mask; MountParameters *p; int r; @@ -437,13 +436,13 @@ static int mount_add_quota_dependencies(Mount *m) { if (!mount_needs_quota(p)) return 0; - mask = m->from_fragment ? UNIT_DEPENDENCY_FILE : UNIT_DEPENDENCY_MOUNTINFO_IMPLICIT; - - r = unit_add_two_dependencies_by_name(UNIT(m), UNIT_BEFORE, UNIT_WANTS, SPECIAL_QUOTACHECK_SERVICE, true, mask); + r = unit_add_two_dependencies_by_name(UNIT(m), UNIT_BEFORE, UNIT_WANTS, SPECIAL_QUOTACHECK_SERVICE, + /* add_reference= */ true, UNIT_DEPENDENCY_FILE); if (r < 0) return r; - r = unit_add_two_dependencies_by_name(UNIT(m), UNIT_BEFORE, UNIT_WANTS, SPECIAL_QUOTAON_SERVICE, true, mask); + r = unit_add_two_dependencies_by_name(UNIT(m), UNIT_BEFORE, UNIT_WANTS, SPECIAL_QUOTAON_SERVICE, + /* add_reference= */true, UNIT_DEPENDENCY_FILE); if (r < 0) return r;