WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-changelog

[Xen-changelog] [xen-unstable] hotplug: Avoid race condition when creati

To: xen-changelog@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-changelog] [xen-unstable] hotplug: Avoid race condition when creating or destroying network bridges
From: Xen patchbot-unstable <patchbot-unstable@xxxxxxxxxxxxxxxxxxx>
Date: Mon, 15 Mar 2010 06:35:10 -0700
Delivery-date: Mon, 15 Mar 2010 06:35:22 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-changelog-request@lists.xensource.com?subject=help>
List-id: BK change log <xen-changelog.lists.xensource.com>
List-post: <mailto:xen-changelog@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=unsubscribe>
Reply-to: xen-devel@xxxxxxxxxxxxxxxxxxx
Sender: xen-changelog-bounces@xxxxxxxxxxxxxxxxxxx
# HG changeset patch
# User Keir Fraser <keir.fraser@xxxxxxxxxx>
# Date 1268658995 0
# Node ID 9300248eaad2f82f997c06ae7305b50c85298751
# Parent  4152a3ce90a76c96b6c7540271595793ba510df2
hotplug: Avoid race condition when creating or destroying network bridges

I saw the following message when I created or destroyed two bridges by
using network-bridge script at same time.  Of course names of the
bridges are different.  But, a temporal name "tmpbridge" is used by
the script to create or destroy the bridges.  I think that the message
was shown by "tmpbridge".

  SIOCSIFNAME: File exists

This patch avoids race condition when creating or destroying the
bridges.

Signed-off-by: Masaki Kanno <kanno.masaki@xxxxxxxxxxxxxx>
---
 tools/hotplug/Linux/network-bridge |   10 ++++++++++
 1 files changed, 10 insertions(+)

diff -r 4152a3ce90a7 -r 9300248eaad2 tools/hotplug/Linux/network-bridge
--- a/tools/hotplug/Linux/network-bridge        Thu Mar 11 17:40:35 2010 +0000
+++ b/tools/hotplug/Linux/network-bridge        Mon Mar 15 13:16:35 2010 +0000
@@ -50,8 +50,10 @@
 
 
 dir=$(dirname "$0")
+. "$dir/logging.sh"
 . "$dir/xen-script-common.sh"
 . "$dir/xen-network-common.sh"
+. "$dir/locking.sh"
 
 findCommand "$@"
 evalVariables "$@"
@@ -219,6 +221,8 @@ op_start () {
         return
     fi
 
+    claim_lock "network-bridge"
+
     create_bridge ${tdev}
 
     preiftransfer ${netdev}
@@ -249,6 +253,8 @@ op_start () {
     if [ ${antispoof} = 'yes' ] ; then
        antispoofing
     fi
+
+    release_lock "network-bridge"
 }
 
 op_stop () {
@@ -259,6 +265,8 @@ op_stop () {
        return
     fi
 
+    claim_lock "network-bridge"
+
     transfer_addrs ${bridge} ${pdev}
     if ! ifdown ${bridge}; then
        get_ip_info ${bridge}
@@ -274,6 +282,8 @@ op_stop () {
     do_ifup ${netdev}
 
     brctl delbr ${tdev}
+
+    release_lock "network-bridge"
 }
 
 # adds $dev to $bridge but waits for $dev to be in running state first

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-changelog] [xen-unstable] hotplug: Avoid race condition when creating or destroying network bridges, Xen patchbot-unstable <=