From: Jan Palus Date: Mon, 22 Apr 2019 16:49:01 +0000 (+0200) Subject: use upstream fixes for long systemd shutdown times X-Git-Tag: auto/th/lvm2-2.02.184-1 X-Git-Url: http://git.pld-linux.org/?a=commitdiff_plain;h=15e56835a9bffb0e0458bf37bfd038ac4adfe72f;p=packages%2Flvm2.git use upstream fixes for long systemd shutdown times --- diff --git a/lvm2-systemd_shutdown.patch b/lvm2-systemd_shutdown.patch index 3b7fe02..d9c13dd 100644 --- a/lvm2-systemd_shutdown.patch +++ b/lvm2-systemd_shutdown.patch @@ -1,11 +1,196 @@ -diff -urN LVM2.2.02.183.orig/scripts/lvm2_lvmetad_systemd_red_hat.service.in LVM2.2.02.183/scripts/lvm2_lvmetad_systemd_red_hat.service.in ---- LVM2.2.02.183.orig/scripts/lvm2_lvmetad_systemd_red_hat.service.in 2019-04-01 11:51:35.674457454 +0200 -+++ LVM2.2.02.183/scripts/lvm2_lvmetad_systemd_red_hat.service.in 2019-04-01 11:52:14.364195746 +0200 -@@ -5,6 +5,7 @@ +From 0a726a7e268b31856615491809af73bda5d4d6f9 Mon Sep 17 00:00:00 2001 +From: Peter Rajnoha +Date: Tue, 9 Apr 2019 12:40:55 +0200 +Subject: [PATCH] systemd: add missing Before=shutdown.target to LVM2 services + to fix shutdown ordering + +We already used Conflicts=shutdown target to stop LVM2 services on shutdown. +But we still missed the ordering - the shutdown.target should be reached +only after all the services are really stopped. + +Reported here: https://github.com/lvmteam/lvm2/issues/17 +--- + WHATS_NEW | 1 + + scripts/blk_availability_systemd_red_hat.service.in | 1 + + scripts/lvm2_activation_generator_systemd_red_hat.c | 2 ++ + scripts/lvm2_cluster_activation_systemd_red_hat.service.in | 1 + + scripts/lvm2_clvmd_systemd_red_hat.service.in | 2 +- + scripts/lvm2_cmirrord_systemd_red_hat.service.in | 2 +- + scripts/lvm2_lvmetad_systemd_red_hat.service.in | 1 + + scripts/lvm2_lvmetad_systemd_red_hat.socket.in | 2 -- + scripts/lvm2_lvmpolld_systemd_red_hat.service.in | 1 + + scripts/lvm2_lvmpolld_systemd_red_hat.socket.in | 2 -- + scripts/lvm2_monitoring_systemd_red_hat.service.in | 2 +- + 11 files changed, 10 insertions(+), 7 deletions(-) + +diff --git a/scripts/blk_availability_systemd_red_hat.service.in b/scripts/blk_availability_systemd_red_hat.service.in +index 9462072..05fe2ee 100644 +--- a/scripts/blk_availability_systemd_red_hat.service.in ++++ b/scripts/blk_availability_systemd_red_hat.service.in +@@ -1,5 +1,6 @@ + [Unit] + Description=Availability of block devices ++Before=shutdown.target + After=lvm2-activation.service lvm2-lvmetad.service iscsi-shutdown.service iscsi.service iscsid.service fcoe.service rbdmap.service + DefaultDependencies=no + Conflicts=shutdown.target +diff --git a/scripts/lvm2_activation_generator_systemd_red_hat.c b/scripts/lvm2_activation_generator_systemd_red_hat.c +index 487582f..f85a28f 100644 +--- a/scripts/lvm2_activation_generator_systemd_red_hat.c ++++ b/scripts/lvm2_activation_generator_systemd_red_hat.c +@@ -127,6 +127,8 @@ static int generate_unit(const char *dir, int unit, int sysinit_needed) + "SourcePath=/etc/lvm/lvm.conf\n" + "DefaultDependencies=no\n", f); + ++ fputs("Conflicts=shutdown.target\n", f); ++ + if (unit == UNIT_NET) { + fprintf(f, "After=%s iscsi.service fcoe.service rbdmap.service\n" + "Before=remote-fs-pre.target shutdown.target\n\n" +diff --git a/scripts/lvm2_cluster_activation_systemd_red_hat.service.in b/scripts/lvm2_cluster_activation_systemd_red_hat.service.in +index bf4aa1e..6a966b3 100644 +--- a/scripts/lvm2_cluster_activation_systemd_red_hat.service.in ++++ b/scripts/lvm2_cluster_activation_systemd_red_hat.service.in +@@ -1,6 +1,7 @@ + [Unit] + Description=Clustered LVM volumes activation service + Requires=lvm2-clvmd.service ++Before=shutdown.target + After=lvm2-clvmd.service lvm2-cmirrord.service + OnFailure=lvm2-clvmd.service + DefaultDependencies=no +diff --git a/scripts/lvm2_clvmd_systemd_red_hat.service.in b/scripts/lvm2_clvmd_systemd_red_hat.service.in +index ced2774..2af365f 100644 +--- a/scripts/lvm2_clvmd_systemd_red_hat.service.in ++++ b/scripts/lvm2_clvmd_systemd_red_hat.service.in +@@ -2,7 +2,7 @@ + Description=Clustered LVM daemon + Documentation=man:clvmd(8) + After=dlm.service corosync.service +-Before=remote-fs-pre.target ++Before=remote-fs-pre.target shutdown.target + Requires=network.target dlm.service corosync.service + RefuseManualStart=true + RefuseManualStop=true +diff --git a/scripts/lvm2_cmirrord_systemd_red_hat.service.in b/scripts/lvm2_cmirrord_systemd_red_hat.service.in +index e482b9a..fc73aea 100644 +--- a/scripts/lvm2_cmirrord_systemd_red_hat.service.in ++++ b/scripts/lvm2_cmirrord_systemd_red_hat.service.in +@@ -3,7 +3,7 @@ Description=Clustered LVM mirror log daemon + Documentation=man:cmirrord(8) + Requires=corosync.service + After=corosync.service +-Before=remote-fs-pre.target ++Before=remote-fs-pre.target shutdown.target + DefaultDependencies=no + Conflicts=shutdown.target + +diff --git a/scripts/lvm2_lvmetad_systemd_red_hat.service.in b/scripts/lvm2_lvmetad_systemd_red_hat.service.in +index 92e6d69..960f32d 100644 +--- a/scripts/lvm2_lvmetad_systemd_red_hat.service.in ++++ b/scripts/lvm2_lvmetad_systemd_red_hat.service.in +@@ -2,6 +2,7 @@ + Description=LVM2 metadata daemon + Documentation=man:lvmetad(8) + Requires=lvm2-lvmetad.socket ++Before=shutdown.target After=lvm2-lvmetad.socket DefaultDependencies=no Conflicts=shutdown.target +diff --git a/scripts/lvm2_lvmetad_systemd_red_hat.socket.in b/scripts/lvm2_lvmetad_systemd_red_hat.socket.in +index 2663c72..3201537 100644 +--- a/scripts/lvm2_lvmetad_systemd_red_hat.socket.in ++++ b/scripts/lvm2_lvmetad_systemd_red_hat.socket.in +@@ -1,8 +1,6 @@ + [Unit] + Description=LVM2 metadata daemon socket + Documentation=man:lvmetad(8) +-DefaultDependencies=no +-Conflicts=shutdown.target + + [Socket] + ListenStream=@DEFAULT_RUN_DIR@/lvmetad.socket +diff --git a/scripts/lvm2_lvmpolld_systemd_red_hat.service.in b/scripts/lvm2_lvmpolld_systemd_red_hat.service.in +index 4ad4e61..a06cbe9 100644 +--- a/scripts/lvm2_lvmpolld_systemd_red_hat.service.in ++++ b/scripts/lvm2_lvmpolld_systemd_red_hat.service.in +@@ -2,6 +2,7 @@ + Description=LVM2 poll daemon + Documentation=man:lvmpolld(8) + Requires=lvm2-lvmpolld.socket +Before=shutdown.target + After=lvm2-lvmpolld.socket + DefaultDependencies=no + Conflicts=shutdown.target +diff --git a/scripts/lvm2_lvmpolld_systemd_red_hat.socket.in b/scripts/lvm2_lvmpolld_systemd_red_hat.socket.in +index 0537d7f..743669e 100644 +--- a/scripts/lvm2_lvmpolld_systemd_red_hat.socket.in ++++ b/scripts/lvm2_lvmpolld_systemd_red_hat.socket.in +@@ -1,8 +1,6 @@ + [Unit] + Description=LVM2 poll daemon socket + Documentation=man:lvmpolld(8) +-DefaultDependencies=no +-Conflicts=shutdown.target + + [Socket] + ListenStream=@DEFAULT_RUN_DIR@/lvmpolld.socket +diff --git a/scripts/lvm2_monitoring_systemd_red_hat.service.in b/scripts/lvm2_monitoring_systemd_red_hat.service.in +index ebc069e..4bf87a0 100644 +--- a/scripts/lvm2_monitoring_systemd_red_hat.service.in ++++ b/scripts/lvm2_monitoring_systemd_red_hat.service.in +@@ -3,7 +3,7 @@ Description=Monitoring of LVM2 mirrors, snapshots etc. using dmeventd or progres + Documentation=man:dmeventd(8) man:lvcreate(8) man:lvchange(8) man:vgchange(8) + Requires=dm-event.socket lvm2-lvmetad.socket + After=dm-event.socket dm-event.service lvm2-lvmetad.socket lvm2-activation.service lvm2-lvmetad.service +-Before=local-fs-pre.target ++Before=local-fs-pre.target shutdown.target + DefaultDependencies=no + Conflicts=shutdown.target + +-- +2.9.3 + +From 03d6cfdd99fb1c2fd85721ab6faebbb1b6658873 Mon Sep 17 00:00:00 2001 +From: Peter Rajnoha +Date: Thu, 11 Apr 2019 12:22:27 +0200 +Subject: [PATCH] systemd: put back DefaultDependencies=no for lvmpolld and + lvmetad socket unit + +Previous commit 0a726a7e268b31856615491809af73bda5d4d6f9 removed this +by mistake - we have to keep the DefaultDependencies=no - the +sockets.target is after sysinit.target. +--- + scripts/lvm2_lvmetad_systemd_red_hat.socket.in | 2 ++ + scripts/lvm2_lvmpolld_systemd_red_hat.socket.in | 2 ++ + 2 files changed, 4 insertions(+) + +diff --git a/scripts/lvm2_lvmetad_systemd_red_hat.socket.in b/scripts/lvm2_lvmetad_systemd_red_hat.socket.in +index 3201537..2663c72 100644 +--- a/scripts/lvm2_lvmetad_systemd_red_hat.socket.in ++++ b/scripts/lvm2_lvmetad_systemd_red_hat.socket.in +@@ -1,6 +1,8 @@ + [Unit] + Description=LVM2 metadata daemon socket + Documentation=man:lvmetad(8) ++DefaultDependencies=no ++Conflicts=shutdown.target + + [Socket] + ListenStream=@DEFAULT_RUN_DIR@/lvmetad.socket +diff --git a/scripts/lvm2_lvmpolld_systemd_red_hat.socket.in b/scripts/lvm2_lvmpolld_systemd_red_hat.socket.in +index 743669e..0537d7f 100644 +--- a/scripts/lvm2_lvmpolld_systemd_red_hat.socket.in ++++ b/scripts/lvm2_lvmpolld_systemd_red_hat.socket.in +@@ -1,6 +1,8 @@ + [Unit] + Description=LVM2 poll daemon socket + Documentation=man:lvmpolld(8) ++DefaultDependencies=no ++Conflicts=shutdown.target - [Service] - Type=simple + [Socket] + ListenStream=@DEFAULT_RUN_DIR@/lvmpolld.socket +-- +2.9.3 +