]> git.michaelhowe.org Git - packages/o/openafs.git/commitdiff
Check if AFS is mounted before killing processes with open files debian/1.4.12+dfsg-5
authorRuss Allbery <rra@debian.org>
Tue, 4 May 2010 23:26:15 +0000 (16:26 -0700)
committerRuss Allbery <rra@debian.org>
Tue, 4 May 2010 23:26:15 +0000 (16:26 -0700)
* Skip killing processes with files open in AFS if AFS does not appear
  to be mounted according to /etc/mtab.  Otherwise, we may call lsof
  without a specific mount point and kill far more processes than we
  intend to.  (This code is disabled by default, so this problem would
  only be seen by people who enabled it.)

debian/changelog
debian/openafs-client.init

index 398946ea6491dd3d308a20f18c237adc605723b3..b99719110bc92a45ae8391d4aa6d6ba424faa80d 100644 (file)
@@ -1,3 +1,13 @@
+openafs (1.4.12+dfsg-5) unstable; urgency=low
+
+  * Skip killing processes with files open in AFS if AFS does not appear
+    to be mounted according to /etc/mtab.  Otherwise, we may call lsof
+    without a specific mount point and kill far more processes than we
+    intend to.  (This code is disabled by default, so this problem would
+    only be seen by people who enabled it.)
+
+ -- Russ Allbery <rra@debian.org>  Tue, 04 May 2010 16:26:06 -0700
+
 openafs (1.4.12+dfsg-4) unstable; urgency=low
 
   * Apply upstream deltas:
index 6ad150da9d1e0a6563cfdb6d8abdacb70fbfe884..02de249b56e01a930331d9bcf8f18996272e211d 100755 (executable)
@@ -178,10 +178,12 @@ start_client() {
 kill_afs() {
     signal=$1
     mount=`grep ^'AFS ' /etc/mtab | awk '{ print $2 }'`
-    pids=`/usr/bin/lsof -Fp $mount | sed 's/p//'`
-    if [ -n "$pids" ] ; then
-        kill -$signal $pids > /dev/null 2>&1
-        sleep 1
+    if [ -n "$mount" ] ; then
+        pids=`/usr/bin/lsof -Fp $mount | sed 's/p//'`
+        if [ -n "$pids" ] ; then
+            kill -$signal $pids > /dev/null 2>&1
+            sleep 1
+        fi
     fi
 }