xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
* [PATCH for-4.7 1/2] hotplug: Fix xendomains lock path for RHEL-based systems
@ 2016-05-11 11:14 George Dunlap
  2016-05-11 11:14 ` [PATCH for-4.7 2/2] tools/xendomains: Create lockfile on start unconditionally George Dunlap
                   ` (3 more replies)
  0 siblings, 4 replies; 10+ messages in thread
From: George Dunlap @ 2016-05-11 11:14 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson, Olaf Hering, Wei Liu, George Dunlap

Commit c996572 changed the LOCKFILE path from a check between two
hardcoded paths (/var/lock/subsys/ or /var/lock) to using the
XEN_LOCK_DIR variable designated at configure time.  Since
XEN_LOCK_DIR doesn't (and shouldn't) have the 'subsys' postfix, this
effectively moves all the lock files by default to /var/lock instead.

Unfortunately, this breaks xendomains on RedHat-based SYSV init
systems.  RedHat-based SYSV init systems try to only call "${SERVICE}
shutdown" on systems which actually have an actively running
component; and they use the existence of /var/lock/subsys/${SERVICE}
to determine which systems are running.

Changing XEN_LOCK_DIR to /var/lock/subsys is not suitable, as only
system services like xendomains should create lockfiles there; other
locks (such as the console locks) should be created in /var/lock
instead.

Instead, re-instate the check for the subsys/ subdirectory of the lock
directory in the xendomains script.

Signed-off-by: George Dunlap <george.dunlap@citrix.com>
---

Release justification: This is a regression in functionality (although
it's been there for the entire 4.6 cycle now).


CC: Ian Jackson <ian.jackson@citrix.com>
CC: Wei Liu <wei.liu2@citrix.com>
CC: Olaf Hering <olaf@aepfle.de>
---
 tools/hotplug/Linux/xendomains.in | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/tools/hotplug/Linux/xendomains.in b/tools/hotplug/Linux/xendomains.in
index 9f88649..727cd42 100644
--- a/tools/hotplug/Linux/xendomains.in
+++ b/tools/hotplug/Linux/xendomains.in
@@ -49,7 +49,13 @@ if [ ! -e /dev/xen/privcmd ] && [ ! -e /proc/xen/privcmd ]; then
 	exit 0
 fi
 
-LOCKFILE=${XEN_LOCK_DIR}/xendomains
+# RHEL-based systems only shutdown a service if they find a lockfile
+# in /var/lock/subsys
+if [[ -d ${XEN_LOCK_DIR}/subsys ]] ; then
+    LOCKFILE=${XEN_LOCK_DIR}/subsys/xendomains
+else
+    LOCKFILE=${XEN_LOCK_DIR}/xendomains
+fi
 
 XENDOM_CONFIG=@CONFIG_DIR@/@CONFIG_LEAF_DIR@/xendomains
 
-- 
2.1.4


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel

^ permalink raw reply related	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2016-05-25 12:57 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-05-11 11:14 [PATCH for-4.7 1/2] hotplug: Fix xendomains lock path for RHEL-based systems George Dunlap
2016-05-11 11:14 ` [PATCH for-4.7 2/2] tools/xendomains: Create lockfile on start unconditionally George Dunlap
2016-05-11 11:19   ` George Dunlap
2016-05-11 14:31     ` Wei Liu
2016-05-11 14:30   ` Wei Liu
2016-05-11 14:38   ` Olaf Hering
2016-05-25 12:57   ` George Dunlap
2016-05-11 14:31 ` [PATCH for-4.7 1/2] hotplug: Fix xendomains lock path for RHEL-based systems Wei Liu
2016-05-11 14:37 ` Olaf Hering
2016-05-25 12:55 ` George Dunlap

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).