swap: do not make swap units wanted by its device unit anymore
authorFranck Bui <fbui@suse.com>
Mon, 28 Oct 2019 17:41:59 +0000 (18:41 +0100)
committerFranck Bui <fbui@suse.com>
Mon, 28 Oct 2019 17:46:26 +0000 (18:46 +0100)
It was done for mount units already (see commit 142b8142d7bb84f07). For the
same reasons and for consistency we should also stop activating automagically
swaps when their device is hot-plugged.

src/core/swap.c

index 726bda2..22827a2 100644 (file)
@@ -197,12 +197,11 @@ static int swap_add_device_dependencies(Swap *s) {
                 return 0;
 
         if (is_device_path(s->what))
-                return unit_add_node_dependency(UNIT(s), s->what, MANAGER_IS_SYSTEM(UNIT(s)->manager), UNIT_BINDS_TO, UNIT_DEPENDENCY_FILE);
-        else
-                /* File based swap devices need to be ordered after
-                 * systemd-remount-fs.service, since they might need a
-                 * writable file system. */
-                return unit_add_dependency_by_name(UNIT(s), UNIT_AFTER, SPECIAL_REMOUNT_FS_SERVICE, true, UNIT_DEPENDENCY_FILE);
+                return unit_add_node_dependency(UNIT(s), s->what, false, UNIT_BINDS_TO, UNIT_DEPENDENCY_FILE);
+
+        /* File based swap devices need to be ordered after systemd-remount-fs.service,
+         * since they might need a writable file system. */
+        return unit_add_dependency_by_name(UNIT(s), UNIT_AFTER, SPECIAL_REMOUNT_FS_SERVICE, true, UNIT_DEPENDENCY_FILE);
 }
 
 static int swap_add_default_dependencies(Swap *s) {