summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libnetfs/ChangeLog4
-rw-r--r--libnetfs/io-revoke.c10
2 files changed, 8 insertions, 6 deletions
diff --git a/libnetfs/ChangeLog b/libnetfs/ChangeLog
index 2bb14653..9b8011ce 100644
--- a/libnetfs/ChangeLog
+++ b/libnetfs/ChangeLog
@@ -1,3 +1,7 @@
+Sat Feb 20 20:54:26 1999 Thomas Bushnell, BSG <tb@mit.edu>
+
+ * io-revoke.c (netfs_S_io_revoke): Release lock before iteration.
+
1999-02-16 Roland McGrath <roland@baalperazim.frob.com>
* io-revoke.c (netfs_S_io_revoke): Fix typos.
diff --git a/libnetfs/io-revoke.c b/libnetfs/io-revoke.c
index 640a6a6e..b32a776c 100644
--- a/libnetfs/io-revoke.c
+++ b/libnetfs/io-revoke.c
@@ -48,15 +48,13 @@ netfs_S_io_revoke (struct protid *cred)
err = netfs_validate_stat (np, cred->user);
if (!err)
err = fshelp_isowner (&np->nn_stat, cred->user);
+
+ mutex_unlock (&np->lock);
+
if (err)
- {
- mutex_unlock (&np->lock);
- return err;
- }
+ return err;
ports_bucket_iterate (netfs_port_bucket, iterator_function);
- mutex_unlock (&np->lock);
-
return 0;
}