diff options
author | Jeremie Koenig <jk@jk.fr.eu.org> | 2010-08-21 09:25:27 +0000 |
---|---|---|
committer | Jeremie Koenig <jk@jk.fr.eu.org> | 2010-08-30 14:19:08 +0200 |
commit | 7eff83acaac2167ffdc7a297a0ed6a78354aa062 (patch) | |
tree | a3b60d39250ed15b925d27fe53ef6c8e980dc162 | |
parent | 5baed27bd3b7a7d20ecb77068546b158d131fc1c (diff) |
Handle the ref counter spinlock on cleanup
* netfs.c (netfs_node_norefs): Handle the reference counters
spinlock so as to avoid deadlocking on reentry.
-rw-r--r-- | netfs.c | 4 |
1 files changed, 4 insertions, 0 deletions
@@ -163,8 +163,12 @@ error_t netfs_attempt_lookup (struct iouser *user, struct node *dir, free all its associated storage. */ void netfs_node_norefs (struct node *np) { + spin_unlock (&netfs_node_refcnt_lock); + procfs_cleanup (np); free (np); + + spin_lock (&netfs_node_refcnt_lock); } |