From: Harry Butterworth <harry@hebutterworth.freeserve.co.uk>
To: ewan@xensource.com, xen-devel@lists.xensource.com
Subject: [PATCH] fix for bug#515
Date: Fri, 24 Mar 2006 13:05:24 +0000 [thread overview]
Message-ID: <1143205525.7690.2.camel@localhost.localdomain> (raw)
[-- Attachment #1: Type: text/plain, Size: 1422 bytes --]
# HG changeset patch
# User harry@localhost.localdomain
# Node ID 78704d769fb2f758bc9c05b0911081375fae018d
# Parent 8c21c8ea5fff320d1cc4abd18d11c648cdca322e
Fix bug 515 by adding a global lock around the hotplug scripts in the
non-udev hotplug case only.
There are two possible root causes for 515, both of which are only
problems in the non-udev hotplug case because udev uses udevsend which
already implements the required serialisation.
1) Script concurrency.
2) Kernel reordering hotplug events.
This changeset fixes (1) but not (2). Since (1) is the problem that
seems to be happening this is probably OK.
A fix for (2) for the hotplug case might be to add extra serialisation
using state changes in the store but this would impact all the drivers
and the code and extra complexity would be redundant once everyone had
moved to udev. This doesn't seem worthwhile unless we actually start to
see (2) happening.
diff -r 8c21c8ea5fff -r 78704d769fb2 tools/examples/xen-backend.agent
--- a/tools/examples/xen-backend.agent Fri Mar 24 09:47:48 2006
+++ b/tools/examples/xen-backend.agent Fri Mar 24 12:58:04 2006
@@ -1,6 +1,10 @@
#! /bin/sh
PATH=/etc/xen/scripts:$PATH
+
+. /etc/xen/scripts/locking.sh
+
+claim_lock xenbus_hotplug_global
case "$XENBUS_TYPE" in
vbd)
@@ -25,3 +29,5 @@
offline)
;;
esac
+
+release_lock xenbus_hotplug_global
Signed-off-by: Harry Butterworth <butterwo@uk.ibm.com>
[-- Attachment #2: 515.patch --]
[-- Type: text/x-patch, Size: 1366 bytes --]
# HG changeset patch
# User harry@localhost.localdomain
# Node ID 78704d769fb2f758bc9c05b0911081375fae018d
# Parent 8c21c8ea5fff320d1cc4abd18d11c648cdca322e
Fix bug 515 by adding a global lock around the hotplug scripts in the non-udev hotplug case only.
There are two possible root causes for 515, both of which are only problems in the non-udev hotplug case because udev uses udevsend which already implements the required serialisation.
1) Script concurrency.
2) Kernel reordering hotplug events.
This changeset fixes (1) but not (2). Since (1) is the problem that seems to be happening this is probably OK.
A fix for (2) for the hotplug case might be to add extra serialisation using state changes in the store but this would impact all the drivers and the code and extra complexity would be redundant once everyone had moved to udev. This doesn't seem worthwhile unless we actually start to see (2) happening.
diff -r 8c21c8ea5fff -r 78704d769fb2 tools/examples/xen-backend.agent
--- a/tools/examples/xen-backend.agent Fri Mar 24 09:47:48 2006
+++ b/tools/examples/xen-backend.agent Fri Mar 24 12:58:04 2006
@@ -1,6 +1,10 @@
#! /bin/sh
PATH=/etc/xen/scripts:$PATH
+
+. /etc/xen/scripts/locking.sh
+
+claim_lock xenbus_hotplug_global
case "$XENBUS_TYPE" in
vbd)
@@ -25,3 +29,5 @@
offline)
;;
esac
+
+release_lock xenbus_hotplug_global
[-- Attachment #3: Type: text/plain, Size: 138 bytes --]
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel
next reply other threads:[~2006-03-24 13:05 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-03-24 13:05 Harry Butterworth [this message]
2006-03-24 13:40 ` [PATCH] fix for bug#515 Ewan Mellor
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1143205525.7690.2.camel@localhost.localdomain \
--to=harry@hebutterworth.freeserve.co.uk \
--cc=ewan@xensource.com \
--cc=xen-devel@lists.xensource.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.