diff options
author | Richard Braun <rbraun@sceen.net> | 2014-02-05 23:57:40 +0100 |
---|---|---|
committer | Richard Braun <rbraun@sceen.net> | 2014-02-05 23:57:40 +0100 |
commit | 801256914d42b3aa4bb0af22432471b1d911a66c (patch) | |
tree | fb4e59c9d9fe4fdf55dd5068b3dcc51fcb489cf1 | |
parent | 90246df5d413c6b6a2d57d66c48c2fe3206eb42b (diff) |
Revert "trans: fix locking issue in fakeroot"
This reverts commit 672005782e57e049c7c8f4d6d0b2a80c0df512b4.
That change is apparently not needed and introduced a deadlock.
* trans/fakeroot.c (netfs_attempt_mkfile): Unlock directory node before
creating new node.
-rw-r--r-- | trans/fakeroot.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/trans/fakeroot.c b/trans/fakeroot.c index 3dce22e8..b79a37d0 100644 --- a/trans/fakeroot.c +++ b/trans/fakeroot.c @@ -670,11 +670,11 @@ netfs_attempt_mkfile (struct iouser *user, struct node *dir, file_t newfile; error_t err = dir_mkfile (dir->nn->file, O_RDWR|O_EXEC, real_from_fake_mode (mode), &newfile); + pthread_mutex_unlock (&dir->lock); if (err == 0) err = new_node (newfile, MACH_PORT_NULL, 0, O_RDWR|O_EXEC, np); if (err == 0) pthread_mutex_unlock (&(*np)->lock); - pthread_mutex_unlock (&dir->lock); return err; } |