Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE:Leap:15.2:FactoryCandidates
libdlm
0013-dlm_controld-be-sure-we-stop-lockspaces-be...
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File 0013-dlm_controld-be-sure-we-stop-lockspaces-before-shutd.patch of Package libdlm
From e74cc7ee33481dd31d4149b8d8af1b5e364f6294 Mon Sep 17 00:00:00 2001 From: Alexander Aring <aahringo@redhat.com> Date: Thu, 23 Feb 2023 10:36:12 -0500 Subject: [PATCH 13/24] dlm_controld: be sure we stop lockspaces before shutdown The dlm_controld shutdown process will drop all dlm configfs entries of dlm communication settings regarding corosync address configuration. This will end in an socket close in the dlm subsystem of the connection which belongs to it. Newly introduced kernel warnings will check if the lockspace is stopped before we close the socket connection. This is necessary because no new dlm messages should be triggered afterwards. To be sure dlm_controld does stop the lockspaces we will make sure that it does it always in close_cpg_daemon. Currently there is a missing handle to stop all lockspaces when there is no cpg_handle_daemon anymore. --- dlm_controld/daemon_cpg.c | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/dlm_controld/daemon_cpg.c b/dlm_controld/daemon_cpg.c index 2e0634d4624c..10c80ddc5eff 100644 --- a/dlm_controld/daemon_cpg.c +++ b/dlm_controld/daemon_cpg.c @@ -2527,6 +2527,15 @@ int setup_cpg_daemon(void) return -1; } +static void stop_lockspaces(void) +{ + struct lockspace *ls; + + list_for_each_entry(ls, &lockspaces, list) { + cpg_stop_kernel(ls); + } +} + void close_cpg_daemon(void) { struct lockspace *ls; @@ -2534,8 +2543,11 @@ void close_cpg_daemon(void) struct cpg_name name; int i = 0; - if (!cpg_handle_daemon) + if (!cpg_handle_daemon) { + stop_lockspaces(); return; + } + if (cluster_down) goto fin; -- 2.35.3
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor