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-devel

Re: [Xen-devel] [PATCH] tools/hotplug/Linux: forced to release lock if h

To: Ian Jackson <Ian.Jackson@xxxxxxxxxxxxx>
Subject: Re: [Xen-devel] [PATCH] tools/hotplug/Linux: forced to release lock if holder process is gone
From: Kouya Shimura <kouya@xxxxxxxxxxxxxx>
Date: Wed, 15 Dec 2010 13:26:56 +0900
Cc: xen-devel@xxxxxxxxxxxxxxxxxxx
Delivery-date: Tue, 14 Dec 2010 20:28:06 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <19719.42613.402719.207790@xxxxxxxxxxxxxxxxxxxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Newsgroups: chiark.mail.xen.devel
References: <7kk4jchhpw.fsf@xxxxxxxxxxxxxx> <19719.42613.402719.207790@xxxxxxxxxxxxxxxxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Sorry, the patch was unsafe for mutual exclusion. Please apply this too.
Since there is a case that the owner file doesn't exist yet
when an atomic mkdir operation fails.

Thanks,
Kouya

Ian Jackson writes:
> Kouya Shimura writes ("[Xen-devel] [PATCH] tools/hotplug/Linux: forced to 
> release lock if holder process is gone"):
> > When a script using locking.sh is stopped by ctrl-C, the lock file remains.
> > We have to wait 100 seconds for releasing the lock at the next time.
> 
> Thanks, I have applied your patch.
> 
> This kind of thing is one reason why lockfiles where the lock is
> regarded as held if the file exists are horrible.  It's a shame that
> we don't have any fcntl/flock style locking primitives available in
> shell.
> 
> Ian.

Signed-off-by: Kouya Shimura <kouya@xxxxxxxxxxxxxx>

diff -r 197c0b40423a tools/hotplug/Linux/locking.sh
--- a/tools/hotplug/Linux/locking.sh    Tue Dec 14 19:28:25 2010 +0000
+++ b/tools/hotplug/Linux/locking.sh    Wed Dec 15 11:56:04 2010 +0900
@@ -63,7 +63,7 @@ _claim_lock()
       retries=0
     else
       local pid=$(echo $owner | cut -d : -f 1)
-      if [ ! -f "/proc/$pid/status" ]
+      if [ -n "$pid" -a "$pid" != "unknown" -a ! -f "/proc/$pid/status" ]
       then
         _release_lock $lockdir
       fi
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel